Menorcan Magic

Abstract - Holiday accommodation site for properties in Menorca. Includes info on accommodation, prices, available bookings etc. all stored inside a database and displayed dynamically. Content Management System allows admin to make changes to this information.

Application Type - Web Application (Commercial)
Technology Used - J2EE, JavaServlets, JSP, MySQL
URL - http://www.menorcanmagic.co.uk

Overview

Menorcan Magic

Menorcan Magic

This website is a promotional/information site for holiday accommodation on the Island of Menorca, Spain. All information about the properties is stored inside a database and is dynamically rendered to the screen.

This was my first full production live project in Java Servlets and JSP, and using a MySQL backend database server.

This property information includes a general text description of the property, prices, availability, floorplan, and photographs.

Photographs aren’t physically stored inside the database however, only meta data about them (captions etc.), they are stored in a folder where the filename of the photo corresponds to the database entries primary key field (1.jpg, 2.jpg etc.).

Content Management System

Property details page on the Content Management System

Property details page on the Content Management System

A sophisticated content management system allows the administrator to make their own updates to the properties including setting prices, description, adding new bookings, deleting and uploading photos, even creating new properties.

What’s more the CMS is web based allowing the owners to make changes anywhere in the world.

Every web page in the CMS section authenticates the user (not just the log on page) to ensure hackers can’t just break in by guessing the names of pages, thus bypassing the log on page (otherwise known as security by obscurity).

All fields are properly validated for correctness and well-formedness. In the screen shot below left the page is informing the user that the booking date selected overlaps with another booking date.
Form validation logic in action

Form validation logic in action

Images can be uploaded from the CMS

Images can be uploaded from the CMS

 

Design

I was also responsible for the design of the website, which is fully XHTML 1.1 and CSS compliant, and cross browser friendly. Dreamweaver was used for the initial static design, with graphics, such as the rounded corners, produced with Macromedia Fireworks and Paint Shop Pro.

The layout uses a combination tables and CSS positioning. I tried to go with an all CSS Div positional layouts but Internet Explorer CSS rendering bugs prevented me from adopting this approach for achieving the design I was after.

I prefer to design my websites by writing the HTML mark-up myself, rather than use WYSIWYG style editors, whereas some people prefer the WYSIWYG approach. I used Dreamweaver for the design which caters to both tastes with a powerful text editor.

Tools Used

  • Dreamweaver: For initial design and HTML/CSS mark-up of the site.
  • Fireworks: For site graphics, rounded corners etc.
  • Paint Shop Pro: For site graphics, rounded corners etc.
  • Netbeans 5.0: Open source Java development IDE, used for development of the dynamic server side portions of the web application.
  • MySQL & Tools: Development and maintenance of database

Contact

For more information, or for a reference, contact the owner Michael Pettifer using one of the methods below...