On the site [url removed, login to view] (which is a demo), users can set up their own personalized startpage based on their preferences. Currently, customizing the personal page is only possible for users who register and log in.
The current project entails the following: enable the possibility to edit the default page ([url removed, login to view]) by the user without the need to register or be logged in. The current register/login process needs to remain in place.
Likely solution: Unlock the default page ([url removed, login to view]) so the user can edit this page. Implement a cookie which tracks and saves all settings altered by the user (who does not register and does not log in).
The site basically consists of several ‘default pages' and ‘user pages'. To clarify: a default page is the page offered to users who do not log in – [url removed, login to view] Users who go through the register procedure and log in obtain their own ‘user page': a page such as [url removed, login to view]
1. All settings can be edited while not having logged in.
2. All changes to the user page need to be logged and remembered. This includes page aspects (such as color, selected active blocks, block settings, language).
3. The default page should remain unchanged for all other users who visit the site. This means that the changes made to the default page are not visible/accessible for other users who visit the default page.
4. The cookie should store all relevant information to create a similar page as provided to the registered users, except that the registered user gets a page which is stored in the database.
5. The use of the MYSQL database is allowed.
6. The user should be warned by a small message displayed in the header of the default page when the user edits the page without having registered (displayed only when the user starts editing).
7. The job should not affect other functionality of the site.
8. Currently, the site is offered in different languages. Each language has its own default page. Since the language is a setting itself, the user may set their language at any time. Still, the user is only taken to the localized default page when there haven't been made any changes to the site yet (otherwise these settings would be lost).
The coder may come up with a different solution to handle the non-registered user settings (e.g. via a table in mysql with the temp-information of non-registered users).
Note: it is best to create an account on the demosite MyBaze so you understand what is meant by all the logged in options for a user.