finally had time to repackage a few changes we are using in our MWPSK-based solutions. They've been in place for many months so I hope there aren't (many) bugs. This involves changing a few MWPSK core files but we ensured that our changes stay backward compatible
so Sections and other code should be able to work without hassle. Code has been tested with v1.1.2 and v1.1.4 RC: no problems reported. This first version will be released using MS-PL while subsequent will use a custom license to serve our own purposes. This
is our way to give back to community and thank MWPSK developers which is really a good solution.
- enables role-based security for pages (not sections!) so admins can set which roles can access a specific page (when not shown to all users). Each user can be assigned to multiple roles and code will check permission against any of them. Pages whom users
don't have access to won't be displayed in menu
- includes a roles editor (to add and delete roles) and a roles mapper (to assign users to roles)
- roles editor and mapper are implemented as sections so they can be deployed on any page
- includes a new page in Administration folder which already includes both controls (deploy and start using in a click)
- enables a "Visible in menu" option for pages, which can hide a specific page from menu while still letting this page to be directly linked
(this is based on Rickard Magnusson code but his code was improved as it only allowed to hide first-level pages. Our code will allow to hide pages on any depth)
- enables a "Hide to authenticated users" option for pages, which allows admin to hide specific pages when user has been authenticated. Can be used to hide a registration page or pages which include contents suitable for anonymous users only.
- enables a "Sidebard HTML contents" option for each pages, so any HTML extra content can be shown right after the sidebar. This allows admins to put extra contents where sidebar is and enables more complex scenarios for real-world portals. HTML
contents can be customized on a per-page basis.
Again, we tried to ensure that once our modifications will be installed, there will be no modifications in MWPSK base code unless our functions will be enabled. This should ensure maximum backward compatibility with standard code.
Our internal code has been implemented using AJAX but such functionalities has been stripped off since standard MWPSK doesn't support AJAX. If any of you have extended your portals using AJAX, you should be able to put our code inside an UpdatePanel for better
We would be glad if any of you who will find any bug will report to me even if, as I said, we're using this code since 4-5 months without problems. Hope I exported all relevant files ;-)