In this project, I was called to integrate a new functionality to an existing website. The client, a farm holidays with a website entirely custom developed with old HTML and PHP language, want to add a functionality that allows him to propose to the guests many recipes and allow them to select their favourite dishes. In this way the owner of the farm holidays will be able to plan custom menus for his guests.
The "Kitchen" section of the website, presented in the above picture, allow users to:
To design and implement the whole functionality, it took me two weeks of work, splitted over two months. The development was entirely custom developed from scratch using: HTML, CSS, SQL, PHP and jQuery. The functionality was integrated in an already existing system, this required a careful analyses of the possibilities of reuse existing data. The requirements, analysis and designing parts where significantly important for a good result.
The users can browse the recipes and choose their favourites. Each recipe page gives the opportunity to add the recipe to the guest's requests during their stay at the farm holidays. In the top right part of the page, as it is possible to see in the picture below, a star indicates the access to this functionality. The user can add more than one recipe at the same time for each request. Once the user has logged and expressed his request, he receives an email with the feedback that his request was correctly submitted. All the data are stored in the database and presented on the front-end to other users in the "Guest's Requests" page (without names for the privacy), and on the back-end (this time with names of the guests) in order to be used to plan the custom menus for the week.
On the back-end the client can plan the menu through the Menu Planner. When he wants to add a new menu, he can choose the date, look at the requests of the guest that are staying at the farm holidays during that week and select a first course, second course and a dessert from the list of the available recipes stored in the database. Moreover he can see the already planned menus, in order to avoid repetitions of the same dishes during the week. Finally there are also available statistics about the more requested recipes that gives him suggestions when guests don't express preferences. Once the weekly menu is posted the users can see it on the front-end in the "Weekly Menu" page of the "Kitchen" section.
The Menu Planner functionality allows the client, also to add and edit seasonal menus. Those are presented in the same section in a separate page on the front-end.