Frontend site editing without having to know about the backend
Frontend site editing without having to know about the backend
I started using CMSMS and think it is my system of choice now. But I think it is important that it is possible for people to modify a website who are not good with computers. I made some changes to the system that make this work very easy.
A summary of the changes are here...
modules/FrontEndUsers/action.do_login.php
modules/FrontEndUsers/action.logout.php
- If an Admin user with the same username exists and the backlink parameter is set to true, do a backend login for that user. The password is the frontend password, so no additional backend functions are needed.
modules/FrontEndUsers/lang/en_US.php
- Added a description for the new backlink parameter
plugins/function.edit.php
- Added parameter description for text
- Added method=site parameter to the admin link
- Improved the check for edit rights
admin/header.php
- Do not show admin menu if method==site (optional)
admin/editcontent.php
- Changed redirects of submit and cancel to site if method==site
- Added method=$method to the forms action
Since I cannot upload php files, I would like a reply of someone who would like to receive the changed files. I tried to modify as little as possible.
A summary of the changes are here...
modules/FrontEndUsers/action.do_login.php
modules/FrontEndUsers/action.logout.php
- If an Admin user with the same username exists and the backlink parameter is set to true, do a backend login for that user. The password is the frontend password, so no additional backend functions are needed.
modules/FrontEndUsers/lang/en_US.php
- Added a description for the new backlink parameter
plugins/function.edit.php
- Added parameter description for text
- Added method=site parameter to the admin link
- Improved the check for edit rights
admin/header.php
- Do not show admin menu if method==site (optional)
admin/editcontent.php
- Changed redirects of submit and cancel to site if method==site
- Added method=$method to the forms action
Since I cannot upload php files, I would like a reply of someone who would like to receive the changed files. I tried to modify as little as possible.
Re: Frontend site editing without having to know about the backend
Me too. I would like to try and see how this would work.
br,
K
br,
K
Re: Frontend site editing without having to know about the backend
If you want to upload files by the way, you can just rename them to have an additional ".txt" behind the filename. Those files van be uploaded and downloaded by others. When they remove the added extension the file is available again.
Ronny
Ronny
Re: Frontend site editing without having to know about the backend
Because there is interest....
Here the trick of Frontend login and edit pages. The trick is that after a FrontEnd login you try to login as a backend user with the same username. Since this is possible without password verification the password of the FrontEndUsers module will be the leading one. To make it possible to implement this trick in the system I added this function only if the backlink parameter of the FrontEndUsers is set to true
Then put the {edit} tag somewhere in the template. I changed the edit function to also check for authorship.
(This "new" edit function should be implemented in a new version of CMSMS since it can be seen as a bug)
The good thing of this system is that you can assign one person to one page in the site by making a group without permissions and add the person as an author in the page options.
If that person logs in, then only the page where he/she is set as author will display the {edit} thing. The password is the frontend password, so no additional backend functions are needed.
The rest of my modifications is to achieve that when after clicking the edit link and doing a submit or cancel, the person is send back to the page, since he/she has nothing to do with the backend system. So the admin menu should also not be displayed. (maybe this should become a setting in the future).
Here is the modification list again to place the files in the right location. Just replace the files and it should work.
ps. I added my name to the changes I made so developers can find the changes faster and review them.
I would like to hear some feedback on this one.
modules/FrontEndUsers/action.do_login.php
modules/FrontEndUsers/action.logout.php
modules/FrontEndUsers/lang/en_US.php
- Added a description for the new backlink parameter
plugins/function.edit.php
- Added parameter description for text
- Added method=site parameter to the admin link
- Improved the check for edit rights
admin/header.php
- Do not show admin menu if method==site (optional)
admin/editcontent.php
- Changed redirects of submit and cancel to site if method==site
- Added method=$method to the forms action
since I get the message that the upload folder is full, I made the files available on my server by:
http://www.companytools.nl/index.php?pa ... te-editing
Here the trick of Frontend login and edit pages. The trick is that after a FrontEnd login you try to login as a backend user with the same username. Since this is possible without password verification the password of the FrontEndUsers module will be the leading one. To make it possible to implement this trick in the system I added this function only if the backlink parameter of the FrontEndUsers is set to true
Code: Select all
{cms_module module=FrontEndUsers backlink=1}
(This "new" edit function should be implemented in a new version of CMSMS since it can be seen as a bug)
The good thing of this system is that you can assign one person to one page in the site by making a group without permissions and add the person as an author in the page options.
If that person logs in, then only the page where he/she is set as author will display the {edit} thing. The password is the frontend password, so no additional backend functions are needed.
The rest of my modifications is to achieve that when after clicking the edit link and doing a submit or cancel, the person is send back to the page, since he/she has nothing to do with the backend system. So the admin menu should also not be displayed. (maybe this should become a setting in the future).
Here is the modification list again to place the files in the right location. Just replace the files and it should work.
ps. I added my name to the changes I made so developers can find the changes faster and review them.
I would like to hear some feedback on this one.
modules/FrontEndUsers/action.do_login.php
modules/FrontEndUsers/action.logout.php
modules/FrontEndUsers/lang/en_US.php
- Added a description for the new backlink parameter
plugins/function.edit.php
- Added parameter description for text
- Added method=site parameter to the admin link
- Improved the check for edit rights
admin/header.php
- Do not show admin menu if method==site (optional)
admin/editcontent.php
- Changed redirects of submit and cancel to site if method==site
- Added method=$method to the forms action
since I get the message that the upload folder is full, I made the files available on my server by:
http://www.companytools.nl/index.php?pa ... te-editing
Last edited by bterkuile on Wed Aug 22, 2007 9:34 pm, edited 1 time in total.
Re: Frontend site editing without having to know about the backend
Thanks for sharing this. When I got time I will definately try this to see how it works. I'll send comments for you then.
Br,
K
Br,
K
Re: Frontend site editing without having to know about the backend
which CMSMS Version files did you modify?
Last edited by SimonSchaufi on Sun Jul 19, 2009 8:19 pm, edited 1 time in total.
Re: Frontend site editing without having to know about the backend
I modified files from a CMS Made Simple version 1.1 and FrontEndUsers version 1.2.0 Installation. To keep track of modifications I did, I created a website this afternoon (very easy with CMS Made Simple
) where the description and the files are listed. The link is:
http://www.companytools.nl/index.php?pa ... te-editing

http://www.companytools.nl/index.php?pa ... te-editing
Last edited by bterkuile on Wed Aug 22, 2007 9:35 pm, edited 1 time in total.
Re: Frontend site editing without having to know about the backend
Thanks, I immediately validated the page, now it should be OK. I hope the page is clear, otherwise you can always ask 

Re: Frontend site editing without having to know about the backend
HI,
First of all, thanks to Benjamin Ter Kuile. I have already tested all the changes in CMSMS version samoa 1.1 and Frontend users module version 1.2.0, it's working. It was easy to change the content because his name were in.
Benjamin changed content of few pages :
modules/Frontendusers/action.do_login.php
modules/frontendusers/action.logout.php
modules/frontendusers/lang/en_US.php
plugins/function.edit.php
admin/header.php
admin/editcontent.php
But now I would like to implement it in CMSMS version 1.5.2 Caguas, Frontend users module version 1.6.2 and I can't, the content of pages which Benjamin changed are not the same. His name isn't in the content anymore.
Do you think it still possible ?
Many thanks for your help
First of all, thanks to Benjamin Ter Kuile. I have already tested all the changes in CMSMS version samoa 1.1 and Frontend users module version 1.2.0, it's working. It was easy to change the content because his name were in.
Benjamin changed content of few pages :
modules/Frontendusers/action.do_login.php
modules/frontendusers/action.logout.php
modules/frontendusers/lang/en_US.php
plugins/function.edit.php
admin/header.php
admin/editcontent.php
But now I would like to implement it in CMSMS version 1.5.2 Caguas, Frontend users module version 1.6.2 and I can't, the content of pages which Benjamin changed are not the same. His name isn't in the content anymore.
Do you think it still possible ?
Many thanks for your help
Re: Frontend site editing without having to know about the backend
Is there any more development with this? It'd be great.
Alternatively, implementing a TinyMCE in to the existing SimpleWiki module would give the same result yes?
Alternatively, implementing a TinyMCE in to the existing SimpleWiki module would give the same result yes?
Re: Frontend site editing without having to know about the backend
The front-end edit ability was broken when the dev team plugged a security hole that allowed admin sessions to be click-jacked.
To prevent this they added a string in the URL that is unique to the logged-in session. I'm not sure in greater depth how it works, or whether this permanently prevents front-end edit.
I just think it hasn't been a high priority to re-add that functionality.
Ken
To prevent this they added a string in the URL that is unique to the logged-in session. I'm not sure in greater depth how it works, or whether this permanently prevents front-end edit.
I just think it hasn't been a high priority to re-add that functionality.
Ken
Re: Frontend site editing without having to know about the backend
NO... nothing prevents a true front end editor, but hack... yes may-be... If I ever get the time I'll finish the fronend editor I have made... It's totaly hack free and is a mod that you treat just like any other... just have not been able to fit it in on the pay jobs... heck I have not even made the project in the forge yet it's so far on the back burner... lol... but yes one can still in the lastest greatest CMSMS version do front end editing...whether this permanently prevents front-end edit.
Cheers
Jeremy
Re: Frontend site editing without having to know about the backend
Well, I meant front-end admin. Obviously some modules have their fe-edit action built in.
Re: Frontend site editing without having to know about the backend
um ... what would be the diff? if you want the back to look like the front you can skin it...
-
- Support Guru
- Posts: 8169
- Joined: Tue Oct 19, 2004 6:44 pm
- Location: Fernie British Columbia, Canada
Re: Frontend site editing without having to know about the backend
Okay... let me ask this, quite honestly...NO... nothing prevents a true front end editor,
How do you for see front end editing working considering these possibilities:
3+ content blocks per page
Some of them with the ability for a wysiwyg, some without
Some of them narrow in scope (i.e: for a left or right sidebar)
Some of them of different types... i.e: for a news category, and/or a number of news items per page
It's all quite simple when there is only one content area per page... and easy for them (editors) to see without having a page that isn't 300 miles long. but when the layout is complex, or the content more than one or two screens long, and/or you want the editor to be able to specify a number of different things than just the content for one area, the question isn't so simple any more. i.e: How do you make that one page useable, reasonably friendly?, accessible? How can they (editors) preview their work before submitting it? How can they reasonably understand that this wysiwyg editor, or that dropdown box is associated with a certain box on the screen?
And I'm sure there are other caveats... I just haven't thought of them yet.
Please try to put some indepth thought into all of your wishes and wants, and all of their complexities before you say things like 'no, nothing prevents...'. After all, the develpers have to try to think of this stuff and much more when they/we attempt to implement things.
Edit:
Perhaps, just perhaps, you may consider that the reason that functionality such as this, and some of the other functionality that is or isn't in the product is because the developers have considered the caveats, and implications of the functionality, and then continuing to support it as more functionality is added. And perhaps, that is the reason that some of the features that you think you want or need have not been implemented. Not saying that we are the gurus of product development, but we generally do have a good understanding of things.
Also, there have been times when we've been wrong, and changed our thoughts, and implemented things that the public wanted. Other times when we've implemented things that the public thought about and we considered good at the time. Later, due to many circumstances, we changed our thoughts and reverted those changes. Countless more times we've implemented ideas (either our own or from the public), tested them, and discarded them.
Nobody can rightfully say that the development team ignores the user community. We don't.... We also aren't naive enough to think that any decision we make will please 100% of the users.... you can please 80% of the people 20% of the time, or...
No offence intended.
Last edited by calguy1000 on Fri Aug 21, 2009 2:31 am, edited 1 time in total.
Follow me on twitter
Please post system information from "Extensions >> System Information" (there is a bbcode option) on all posts asking for assistance.
--------------------
If you can't bother explaining your problem well, you shouldn't expect much in the way of assistance.
Please post system information from "Extensions >> System Information" (there is a bbcode option) on all posts asking for assistance.
--------------------
If you can't bother explaining your problem well, you shouldn't expect much in the way of assistance.