Application to display information from database - joomla

I understand that this is a very broad question and could get flagged but I need inputs from experienced programmers and will ask it anyway. If there is another forum where I can post this question, please let me know.
Currently we manage all our application information in an Excel spreadsheet. At a high level it contains an app id, the server names that it is hosted on and the name of the environment. The Excel spreadsheet has become too large and I am looking to build a simple application for it.
Ideally, I would like to write this app on Windows as everyone uses Windows but dont know how to go about it in Windows. I then thought of using MySQL and PHP or Perl (CGI) to build this but thought of exploring something new. I read about Joomla and a few other CMS products which make it very easy to build websites but am not sure whether these allows me to pull information from a database.
I am seeking inputs on what would be a good way to way to build this application.

Use Joomla! CMS is a good choice and to pull data from database you may use webservice calls. So, you will able to create a CMS website using joomla and will able to pull data easily from database with the help of webservice.
You can get webservice support in joomla by installing component redCORE in joomla.
Component: https://github.com/redCOMPONENT-COM/redCORE
Wiki: http://redcomponent-com.github.io/redCORE/?chapters/webservices/overview.md
Other videos: https://www.youtube.com/watch?v=UzJkC7f9fJE
https://www.youtube.com/watch?v=1NRT5jh3Ewc
Joomla dev group discussion https://groups.google.com/d/msg/joomla-dev-cms/3OctbkIZlQw/5d_1MLrzbgYJ
You can also post questions in Joomla forum http://forum.joomla.org/

I think Joomla is a great option to handle big loads of information. If you already know PHP and don't need to reinvent the wheel, it's cool. The way of handling data in Joomla is using Components.
If you want to try, it would be as easy as installing a local copy of Joomla, building the field structure on component-creator.com installing it and importing the data inside the component using phpmyadmin.

Related

CS-Cart: integrating Fishbowl

I am developing a cs-cart based website and my client wants to integrate Fishbowl into his website.
I have searched an add-on for it, but there is no one for me.
I have experience developed a simple add-on and, now I am going to build one add-on to integrate fishbowl.
Please guide me if you have solid experience on integrating fishbowl and cs-cart or another warehouse solution for cs-cart.
I don't understand why the fishbowl doesn't provide or developed the add-on for it.
Please help!
Thanks for reading!
Well, there are a few things to watch out for, and therefore a number of options.
Firstly, what does your client really want. Does he want the stock to be updated on the fly, or once a night? If the client wants to stock to be updated on the fly you will need to add some sort of post function for updating products to also execute your code. If your client wants it only once a night you could just get away by sending every product in the database (with your selected columns).
Secondly, try using object oriented code. If you are really into PHP you will know what I mean by this. Otherwise dont bother (or try learing PHP Object Oriented), though I must note that this can make your addon significantly faster.
Thirdly, use the provided dbquery function
If you have any more questions regarding this, feel free to ask.

Create a Plugin-Based System Like Wordpress With Laravel / PHP

This question has been bugging me for quite some time now, I want to create a cms, a School Mnagement System to be more specific, and what matters to me the most, is making this system plugin based, in a way that administrators can download and install plugins right through their admin panel, just like wordpress.
Now I've read about wordpress Hooks, Actions and Filters, and in all honesty i can say i'm just a little familiar with their functionality, but to apply same functionality to a Laravel App... , It's a bit hard to figure out, at least for me.
I've also searched about this question and found out that almost everyone is suggesting packages, But while packages can work great for other developers wanting to get use of the package's functionality, they can't be easily installed by a user not familiar with any programming language, And that's exactly what i want in my application.
Now what i have in my mind so far, as in Wordpress Actions and Filters, almost everything one would want to use in Wordpress theme files ( to make that piece of code flexible for adding plugin functionality ) should be called as functions, and calling that function by Wordpress do_action() is kind of a must-take path, which of course makes sense.
This way plugin developers can just call add_action() / add_filter() in their files and put their plugins into the flow of the application.
So...
Basically what I'm asking here is:
How to apply such functionality to a laravel app?
Is there an easier way than calling everything by a function like do_action()?
Should i write some kind of a file management module for downloading and updating plugins?
Again I must say that I am not very familiar with wordpress ways to achieve this kind of functionality, So I may be wrong about some of the description I mentioned above, But please, I appreciate any clarification around this subject if you can.
Thanks in advance for any insight.
*P.S. I've tried to be as clear as I possibly can about the problem, And I'm not looking for any specific method for the system I`m developing.
What i want is to know Common / Best methods ( If there is a best method ) for achieving such functionality, preferably in Laravel, but a general algorithm would still be very appreciated.
I know lots of people have the same question and are tackling with the same issue, so if you even only provide a link to a useful article it would be great.*
I have been working as a Wordpress Developer for a very long time and I also have sufficient experience in Laravel... and to be honest, making this kind of functionality is not that difficult at all.
How?
First of all, you must understand that the web app that you will be making will have all the functionalities, but they can only be enabled/disabled from the front-end (Admin Panel/Dashboard). In other words, your School Management System app is actually having all the features/functionalities pre-installed, but you are just allowing the users to enable/disable it. This is much simpler.
So, if for eg. you want to provide someone attendance management functionality, you will have to give the admin of the site, the access to enable/disable it.
Why?
Wordpress has a built-in UI for adding/updating plugins. But in Laravel, everything is code based and therefore this I believe is the simplest way to go (especially for making things in your app pluggable).
Steps
Make a site with UI etc...
Create a config and migration file which will have the names of all the plugins you are going to allow the user to enable/disable.
Make a sync command that will sync all the plugins in your app.
Use it render a page from the front-end and manage their status from the back-end (is_active etc etc...)
Now once, these plugins are active, make sure the user (say moderator, editor) has access to manage them, for which you will obviously have to create roles/permissions and use Laravel Policies for such stuff.
Lastly, only the admin will have the enabling/disabling writes and no one else.
For the other part where you want the people to perform their own functions with filters/actions. I'd say this is completely contradictory to the part where you say Installing Laravel Packages isn't easy. Well, if you would really want a developer a way into this, why not straight away ask them to make a package for your app alone? Hmmmm.... Think about it :)
But, even then, if you would like to create such a functionality, create a simple class which the user can call and user its functions to call their own functions... Something like -> SMSPlugin::do_action(). But then again, making things like updating/deleting the plugin will require you to build your own Plugin Store and ask users to upload to it. Then you'll have to make an API to constantly check for updates for all the installed plugins and blah blah.... It's a really long procedure... And I don't believe that feasible too!
Hope I answered everything. Let me know in the comments if you have any doubts :)
I know it was 2 years ago, but for now you can achieve this with laravel with some packages:
So i think the steps will be:
Create new Laravel App and add some packages for BASIC admin UI and things you will need like:
Authentication (https://laravel.com/docs/5.7/authentication)
Roles and Permissions (https://github.com/spatie/laravel-permission)
Users managment
Modules (https://nwidart.com/laravel-modules/v4/introduction)
At this point you must configure and write a UI for manage every thing from every package mentioned.
So i think this is the way or at least some try to do it in 2019 :D
Happy new year to all!
There's a package for this, it supports version 5, didn't test yet with 6:
https://github.com/oneso/laravel-plugins

Analyzing community builder database

My server is Joomla 2.5, the version of CB is 1.8.1 and it runs on a MySQL database.
I would like to analyze the data in my database and create simple reports, for example: a list of all email addresses of all subscribers in a given period in time.
Is the right tool for this available in CB, in Joomla as an extension or should I go for a separate tool to dive into the database directly?
I searched in the CB site for reporting but didn't find a plugin for it, did find some 'advanced search' extensions for Joomla but they do not support reports as such.
I had to write custom components for this kind of requirements a few times, if you are familiar with Joomla coding I strongly suggest this approach it will be the most effective unless you need strong business intelligence, in which case you'd better switch to a bi tool.
The difference is: if you can pull all the data you need with just a few simple queries, write them yourself; if you need to analyze data, use a proper tool.
If you however are not a developer you might get away with a reporting tool, or a versatile CCK for Joomla.
Community Builder won't do this on it's own.
The easiest and quickest way to achieve this is to use an extension like ChronoForms and/or ChronoConnectivity which can help retrieve and display the required data from one or more tables.
ChronoForms: http://extensions.joomla.org/extensions/contacts-and-feedback/forms/1508
ChronoConnectivity: http://extensions.joomla.org/extensions/directory-a-documentation/directory/5661
These extensions make it easy to restrict a report to a particular group etc without having to write code.
There are plenty of examples in the chronoengine.com FAQs and the forum if you need help.
Probably the original question is not valide anymore, about an year later, but now there is a component that does what you need if you use ”registerDate” field as search criteria. The name of the component is JEmbedAll and you can find more information about that here: http://www.goldengravel.eu/jembedall-manual#.VVph_bvyNC0

Joomla external API and data access after 1.5

I am wondering by what the old XML RPC API will be replaced ? We developed a quite complete native(iOS+Android) and HTML5 implementation for the front-end and we'd like to offer that as SDK and REST API.
Right now we are trying to avoid any additional PHP plugin/extension for Joomla and we are currently very interested how we can automate else the data flow for customers. Currently we already support SQL direct access, complete Akeeba backups, or a local/remote Jave-App which feeds the apps from SQL directly, as cron job for instance. At the end and it should go all into our JSON format.
Is there any other project which provides a sort a formal or specified access to Joomla content and functions beyond the internal PHP Joomla API ? We just don't know what will be the replacement(it was too basic anyway). The Joomla website and the docs doesn't help at all to figure such things out.
I hope this question is legitim here. Any suggestion is welcome. thanks,
g.

Codeigniter admin/auth system?

I'm starting a new project with codeigniter, and I'd like to start on a system that's already built so I can reduce the time of development.
Is there a good system that handles user authentication along with an admin interface to manage users that can be easily expanded to a web-app?
If this is too vague, I can expand
This thread here appears to have some answers
But the question was more about libraries. Either way, implementing some of the things on that thread would save you time.
You're looking for is a Content Management System (CMS).
There are a few ones out there that use Codeigniter as a framework for their CMS.
Edit: Even if you can't find a boilerplate CMS that you like, you can google about CMS's to design a simple one of your own as there's LOTS of tutorials and information about requirements and such when you know the term CMS.
I recommend Redux Auth for CodeIgniter. It comes with an example implementation, and can easily be used to manage user authentication for your CodeIgniter site. I just implemented Beta2 with the latest version of CodeIgniter, so while it's not actively updated, it still works with the latest build.
I'm using Bonfire as default admin interface.
I've just started looking into Bonfire:
Bonfire helps you build CodeIgniter-based PHP web applications even faster, by providing powerful tools and a beautiful interface you won't be ashamed to show your client.
Ready to customize Admin Interface.
User Management with Role-Based Access Control.
Fully Modular codebase.
Built around HMVC.
Database backup, migration, and maintenance.
Powerful, parent/child capable theme engine.
Simple Email Queue to keep your ISP happy.
UI-based module builder.
Looks good at first glance!

Resources