I'm hoping eventually the Manager backend (can a backend have a backend?) will become more flexible; I've already hacked it three times:
1. to allow for the management of an upload and a download area for web users (my client's freelance workers needed access to documents they need to work on, and a place to upload the finished work). I completely removed the File Management item, I shudder to think of the havoc my clients could wreak on their site if they had unfettered access like that, while they do need to be able to have controlled access to the upload/download directories their workers will use. I didn't want that to be front-end access, because that would confuse them to sometimes manage their stuff from Manager and sometimes from the website.
2. database access for other web users (created a new table for this data, with an additional field for username, so when the web user logs in he goes to the page and the only data he sees is his data) that also needs to be managed from Manager (uploading a .csv file for insertion, either a new user's data or replace/append an existing user's data, editing of specific user's data, etc). Again, I wanted all of their management tasks to be in one place.
3. move the web user management to its own page, adding the ability to search for specific users by username/full name/email, and listing by alphabet. (Ajax here? Yes!!!)
The part I can most easily visualize automating is the Manager menu (frame 2.php right now); there can be a table in the database for it, with section, name, and various ID and action fields. Then adding/deleting menu items would be quite simple.
The Manager index.php file's switch section would have to be built in a similar manner, possibly from the same table, if all the necessary stuff is stored there. This could be leveraged to make a more organized switch section, too.
These could be cached? Since they usually wouldn't change all that much (except on my dev machine...)
Actions, includes, and processors could be handled the same as they are now; saved as .php files in the same directories they are now.
Very cool info, infoclipper!
Now, is there any real reason that you see to keep everything in frames? I'd love to get rid of them and restore proper back-button functionality to the browsers.
Ryan Thrash, MODX Co-Founder
Follow me on Twitter at @rthrash or catch my occasional unofficial thoughts at thrash.me
-
- 1,732 Posts
Wow! This is looking great!
Is it possible for you to share those menus and layout? Can we integrate it as another layout option? Did you say it's cross-browser? Wow!
Link me up if the above is ok with you.
I like your new menu arrangement
I've actually done something similiar on my own copy:
I took the frame using the document tree and made it fill the entire column.
I then moved the menu to a DHTML dropdown menu, just like an application, that is in a frame above the main content frame.
Using a homegrown permission system and some new calls, menus and submenus register themselves with the system and only show choices the account can actually perform.
The nice thing: the entire thing works identically cross browser, too.
You can see a screenshot here:
Wait for any code changes until after tomorrow, when there should be a MAJOR commit to the CVS. Were you able to login/checkout?
Ryan Thrash, MODX Co-Founder
Follow me on Twitter at @rthrash or catch my occasional unofficial thoughts at thrash.me