diff --git a/src/main/java/com/ellisdon/portal/mv/controller/VacationEntryViewController.java b/src/main/java/com/ellisdon/portal/mv/controller/VacationEntryViewController.java
index aa02af7..0474b7f 100644
--- a/src/main/java/com/ellisdon/portal/mv/controller/VacationEntryViewController.java
+++ b/src/main/java/com/ellisdon/portal/mv/controller/VacationEntryViewController.java
@@ -21,6 +21,7 @@
 import org.zkoss.zk.ui.WrongValueException;

 import org.zkoss.zk.ui.event.Event;

 import org.zkoss.zk.ui.util.GenericForwardComposer;

+import org.zkoss.zul.Checkbox;

 import org.zkoss.zul.Datebox;

 import org.zkoss.zul.Spinner;

 import org.zkoss.zul.Textbox;

@@ -44,6 +45,7 @@
 	private Datebox toDate;

 	private Spinner daysTaken;

 	private Textbox comments;

+	private Checkbox halfDayCheck;

 

 	private static final Logger logger = MyVacationLogger.getLogger(VacationEntryViewController.class);

 	

@@ -73,14 +75,16 @@
 	    

 	    //Validate comments

 	    validate_Comments();

-		

+	    

+	    float takenDays = calculateDaysTaken();

+			    

 		//Save the Vacation for User

 		VacationHistoryDTO vachistdto = new VacationHistoryDTO();

 		Calendar cal = Utility.getOnlyDate(fromDate.getValue());

 		vachistdto.setFromdate(cal.getTime());

 		cal = Utility.getOnlyDate(toDate.getValue());

 	    vachistdto.setTodate(cal.getTime());

-	    vachistdto.setDaystaken(daysTaken.getValue());

+	    vachistdto.setDaystaken(takenDays);

 	    vachistdto.setComments(comments.getText());		

 	    userVacation.takeUserVacation(vachistdto);

 

@@ -114,8 +118,27 @@
 	private void clearForm(){

 		fromDate.setValue(new Date());	

 		toDate.setValue(new Date());

-		daysTaken.setValue(1);

-		comments.setValue("");		

+		daysTaken.setValue(0);

+		comments.setValue("");	

+		halfDayCheck.setChecked(false);

+	}

+	

+	private float calculateDaysTaken(){

+		float dtaken = daysTaken.getValue();

+		float totalDays=0;

+		

+		if ((!halfDayCheck.isChecked())&& (dtaken==0)) {

+			throw new WrongValueException(daysTaken, "Please select the vacation days");	

+		}else if((halfDayCheck.isChecked())&& (dtaken==0)){

+			totalDays = new Float(0.5).floatValue(); 

+		}else if((halfDayCheck.isChecked())&& (dtaken > 0)){

+				totalDays = new Float(0.5).floatValue();

+				totalDays = dtaken + totalDays; 

+		}else{

+			totalDays = dtaken;

+		}

+		

+		return totalDays;		

 	}

 	

 	

diff --git a/src/main/webapp/myvacation.zul b/src/main/webapp/myvacation.zul
index 2e8a0b7..91288ee 100644
--- a/src/main/webapp/myvacation.zul
+++ b/src/main/webapp/myvacation.zul
@@ -94,12 +94,15 @@
 

 		     <row>

 			   <label value="Days taken" width="150px" />

-			   <spinner id="daysTaken" value="1" constraint="no negative,no zero, no empty" />

+			   <div>

+			     <spinner id="daysTaken" value="1" constraint="no negative, no empty" />

+			     <checkbox id="halfDayCheck" label="Half Day"/>

+			   </div>

 		    </row>

 

 		     <row>

 			   <label value="Comments" width="150px" />

-			   <textbox id="comments" value="" width="350px" maxlength="45" />

+			   <textbox id="comments" value="" width="350px" maxlength="45" />			    

 		    </row>

 

 		   </rows>