Wednesday (day 3)
Adding dynamic pages
Today, I’ve decided to add some extra functionality to the application by adding a dynamic pages functionality. The main reason why I did this was because this system needed an “About the application” page as well as other pages and I’d preferred to leave this task to the clients. I also think that with small effort I am giving good impression to the client.
Instead of replacing fully the pages controller, I’ve decided to leave them due to use them for some system pages such as, “Thank for registration” and some other simple pages which are required.
Simple horizontal menu
Added a very light horizontal menu. I like it because it’s really small and works perfect for 1-2 level menus.
Using textile for formatting
I’ve decided to use textile for the formatting of the dynamic page’s content. There is a solution with behavior class, but I found a helper solution, so the installation and configuration was quite easy. I’ve also find a nice help description which briefly explains how to use textile format which I placed above of the page content field.
The main work to turn the textile formatting is to wrap the long text field of the dynamic page with following code:
Adding lost password functionality
I realized that the Authentication functionality missing the lost password part. Using quite standard process of the lost password.
- Submitting the form with username and E-mail
- Script changes the password with random string
- Sending the new password to user’s e-mail
I’ve used build in Email Component of CakePHP for sending the mails both for this and for the registration confirmation. It was quite easy task, but I was annoyed because I’ve completely forgot this feature of the Auth.
Working on the layout
Today I’ve also set some design guidelines for the layouts /both internal and external/, but I will leave the main design work to the end.
Start creating the interface for search and external users
I’ve started to work on the profile search part. The good thing is that the search criteria is only for Fields of Experience fields. The work so far is the preparation of the search form. I’ve copy the interface from the external form, so there wasn’t so much effort.
The conclusion of the day:
I didn’t work so much today. I need to go outside, so work which I did is about max few hours. I am quite happy with the amount of work so far.
See also:
Building cake application (Part I)
Building cake application (Part II)