Hi.
I hope this is the good place to ask.
I’m new to ModX. I’m a web designer used to "hand-made" development, mainly using the Symfony framework.
I’m currently trying ModX. I chose it because of it’s flexibility.
I’m really impressed by the templating system with variables (TV), chuncks and snippets.
Much things can be done easily.
But, as I see it, at some point i’m stuck in term of functionnalities.
I studied the documentation, the wiki and the forum. Maybe I missed something.
My problem is : how can I add an enhanced "application" ? Let’s say a HelpDesk system.
I studied some plugins in the Ressources Repository. By instance Star_rating. It seems to use
a special table in the modx database.
How can I build a HelpDesk (that need a whole tables system) ? How modX help me to create this
"application" ?
Let’s say I want to add a forum. I checked the Repository and it seems there are only bridge systems.
Is it the solution ? Should I build a standalone HelpDesk and then bridge it with modX ?
Maybe I misunderstood the whole thing.
Thanks for any response and sorry if you find my english a bit poor.
Best regards.
-
☆ A M B ☆
- 24,524 Posts
You are talking about modules. I’ve got a three-part article on my sottwell.com site about building modules, based on an actual module I built for a client involving an AJAX-based editable data grid. URL and login details in my sig below.
-
☆ A M B ☆
- 24,524 Posts
Once you get the "hang" of making modules, it becomes addictive. I need to write a couple more articles, one on how I’ve embedded the Dada mailing list application (a very powerful perl mailinglist) seamlessly into a module, and how I modified the default Help into a customizable tabbed help section (although others have taken that and improved upon it a great deal, the principle is the point here).
The thing is, you can either customize your module to look any way you like, since it’s a frame, or you can make it look and behave exactly like a core MODx manager page. Just pick a page that sort of looks like what you want yours to look like, find out which file it’s using, and rip off most of it! That’s what I do. You can find out which page it’s using by looking at the URL when you hover over the link to it, it will say "index.php?a=123" or something like that. Go to the manager’s index.php page and search the 123, and you’ll see the file that’s included for that function. The rest of it comes from manager/includes/header.inc.php and footer.inc.php.
And even modifying the main menu or the "Welcome" page isn’t all that hard once you know which files to fiddle with. I’ll be including that in the tabbed help section articles, since I added a Help link and icon to the Welcome page for the client I did this for. The Welcome page uses two files, manager/actions/weclome.static.php and the template at manager/media/style/<whichever style you are using here, usuallly MODxLight>/welcome.html. The menu is all in manager/frames/menu.php.
Ok I see.
So I’ll create a module for the backend and link it to a snippet to use in a template for the frontend.
Thanks again.
I wrote a few modules that work fine, but I always wondered about two things:
Can someone post a practical example on dependencies? (3rd tab)
And the "resource" input-field in the "general" tab?
I’ve tied one simple snippet to a test-module and was under the (false?) impression that the snippet would inherit the module’s variables or vice versa. But that doesn’t seem to be the case.
Is the "resource" supposed to be a path to a php file on the server? Like a config file or some such? i.e. the same as an include() or require()?
I felt that I maybe missed out on some extra nifty features (especially re: dependencies)... can anyone shed some light on this?
Could we use modules for creating new documents, use it like an input for a new news article for example? This would be a great feature to make adding new content easier for clients who do not understand the article=document principle. I will need to re-read the tutorials and take a closer look at modules.
-
☆ A M B ☆
- 24,524 Posts
Don’t see why not, just copy the parts of the regular mutate_content file that you want, hard-code what you want to be default as hidden fields (such as the parent), and copy the relevant code from the save_content processor. I believe you could even add a bit of javascript to hide the document tree.
-
☆ A M B ☆
- 24,524 Posts
All of the pages in the Manager are in manager/actions. Some are dynamic, some are static (like the Welcome page is static; it doesn’t do anything but display). Most of the pages that have forms to change things are called mutate_whatever.dynamic.php. All of the actual processing of these forms is done in the corresponding processor files in the manager/processors folder.