diff --git a/WebApp/.idea/libraries/Java_EE_6_Java_EE_6.xml b/WebApp/.idea/libraries/Java_EE_6_Java_EE_6.xml
new file mode 100644
index 0000000000000000000000000000000000000000..e8b47f724e8536080ab442fe668608fa43d68dfa
--- /dev/null
+++ b/WebApp/.idea/libraries/Java_EE_6_Java_EE_6.xml
@@ -0,0 +1,17 @@
+<component name="libraryTable">
+  <library name="Java EE 6-Java EE 6">
+    <CLASSES>
+      <root url="jar://$PROJECT_DIR$/lib/javax.annotation.jar!/" />
+      <root url="jar://$PROJECT_DIR$/lib/javax.ejb.jar!/" />
+      <root url="jar://$PROJECT_DIR$/lib/javax.jms.jar!/" />
+      <root url="jar://$PROJECT_DIR$/lib/javax.persistence.jar!/" />
+      <root url="jar://$PROJECT_DIR$/lib/javax.transaction.jar!/" />
+      <root url="jar://$PROJECT_DIR$/lib/javax.servlet.jar!/" />
+      <root url="jar://$PROJECT_DIR$/lib/javax.resource.jar!/" />
+      <root url="jar://$PROJECT_DIR$/lib/javax.servlet.jsp.jar!/" />
+      <root url="jar://$PROJECT_DIR$/lib/javax.servlet.jsp.jstl.jar!/" />
+    </CLASSES>
+    <JAVADOC />
+    <SOURCES />
+  </library>
+</component>
\ No newline at end of file
diff --git a/WebApp/.idea/uiDesigner.xml b/WebApp/.idea/uiDesigner.xml
new file mode 100644
index 0000000000000000000000000000000000000000..e96534fb27b68192f27f985d3879e173ec77adb8
--- /dev/null
+++ b/WebApp/.idea/uiDesigner.xml
@@ -0,0 +1,124 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="Palette2">
+    <group name="Swing">
+      <item class="com.intellij.uiDesigner.HSpacer" tooltip-text="Horizontal Spacer" icon="/com/intellij/uiDesigner/icons/hspacer.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="1" hsize-policy="6" anchor="0" fill="1" />
+      </item>
+      <item class="com.intellij.uiDesigner.VSpacer" tooltip-text="Vertical Spacer" icon="/com/intellij/uiDesigner/icons/vspacer.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="6" hsize-policy="1" anchor="0" fill="2" />
+      </item>
+      <item class="javax.swing.JPanel" icon="/com/intellij/uiDesigner/icons/panel.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3" />
+      </item>
+      <item class="javax.swing.JScrollPane" icon="/com/intellij/uiDesigner/icons/scrollPane.png" removable="false" auto-create-binding="false" can-attach-label="true">
+        <default-constraints vsize-policy="7" hsize-policy="7" anchor="0" fill="3" />
+      </item>
+      <item class="javax.swing.JButton" icon="/com/intellij/uiDesigner/icons/button.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="3" anchor="0" fill="1" />
+        <initial-values>
+          <property name="text" value="Button" />
+        </initial-values>
+      </item>
+      <item class="javax.swing.JRadioButton" icon="/com/intellij/uiDesigner/icons/radioButton.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
+        <initial-values>
+          <property name="text" value="RadioButton" />
+        </initial-values>
+      </item>
+      <item class="javax.swing.JCheckBox" icon="/com/intellij/uiDesigner/icons/checkBox.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" />
+        <initial-values>
+          <property name="text" value="CheckBox" />
+        </initial-values>
+      </item>
+      <item class="javax.swing.JLabel" icon="/com/intellij/uiDesigner/icons/label.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="0" anchor="8" fill="0" />
+        <initial-values>
+          <property name="text" value="Label" />
+        </initial-values>
+      </item>
+      <item class="javax.swing.JTextField" icon="/com/intellij/uiDesigner/icons/textField.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
+          <preferred-size width="150" height="-1" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JPasswordField" icon="/com/intellij/uiDesigner/icons/passwordField.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
+          <preferred-size width="150" height="-1" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JFormattedTextField" icon="/com/intellij/uiDesigner/icons/formattedTextField.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1">
+          <preferred-size width="150" height="-1" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JTextArea" icon="/com/intellij/uiDesigner/icons/textArea.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+          <preferred-size width="150" height="50" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JTextPane" icon="/com/intellij/uiDesigner/icons/textPane.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+          <preferred-size width="150" height="50" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JEditorPane" icon="/com/intellij/uiDesigner/icons/editorPane.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+          <preferred-size width="150" height="50" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JComboBox" icon="/com/intellij/uiDesigner/icons/comboBox.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="0" hsize-policy="2" anchor="8" fill="1" />
+      </item>
+      <item class="javax.swing.JTable" icon="/com/intellij/uiDesigner/icons/table.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+          <preferred-size width="150" height="50" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JList" icon="/com/intellij/uiDesigner/icons/list.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="6" hsize-policy="2" anchor="0" fill="3">
+          <preferred-size width="150" height="50" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JTree" icon="/com/intellij/uiDesigner/icons/tree.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3">
+          <preferred-size width="150" height="50" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JTabbedPane" icon="/com/intellij/uiDesigner/icons/tabbedPane.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
+          <preferred-size width="200" height="200" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JSplitPane" icon="/com/intellij/uiDesigner/icons/splitPane.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3">
+          <preferred-size width="200" height="200" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JSpinner" icon="/com/intellij/uiDesigner/icons/spinner.png" removable="false" auto-create-binding="true" can-attach-label="true">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
+      </item>
+      <item class="javax.swing.JSlider" icon="/com/intellij/uiDesigner/icons/slider.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" />
+      </item>
+      <item class="javax.swing.JSeparator" icon="/com/intellij/uiDesigner/icons/separator.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3" />
+      </item>
+      <item class="javax.swing.JProgressBar" icon="/com/intellij/uiDesigner/icons/progressbar.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1" />
+      </item>
+      <item class="javax.swing.JToolBar" icon="/com/intellij/uiDesigner/icons/toolbar.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1">
+          <preferred-size width="-1" height="20" />
+        </default-constraints>
+      </item>
+      <item class="javax.swing.JToolBar$Separator" icon="/com/intellij/uiDesigner/icons/toolbarSeparator.png" removable="false" auto-create-binding="false" can-attach-label="false">
+        <default-constraints vsize-policy="0" hsize-policy="0" anchor="0" fill="1" />
+      </item>
+      <item class="javax.swing.JScrollBar" icon="/com/intellij/uiDesigner/icons/scrollbar.png" removable="false" auto-create-binding="true" can-attach-label="false">
+        <default-constraints vsize-policy="6" hsize-policy="0" anchor="0" fill="2" />
+      </item>
+    </group>
+  </component>
+</project>
\ No newline at end of file
diff --git a/WebApp/WebApp.iml b/WebApp/WebApp.iml
index abfa2d4ac6b4c3aa8501116ecb37c0ff73d39473..6cc039a5b9196d16ff5e79d32df4cda0c2fecc78 100644
--- a/WebApp/WebApp.iml
+++ b/WebApp/WebApp.iml
@@ -19,5 +19,6 @@
     </content>
     <orderEntry type="inheritedJdk" />
     <orderEntry type="sourceFolder" forTests="false" />
+    <orderEntry type="library" name="Java EE 6-Java EE 6" level="project" />
   </component>
 </module>
\ No newline at end of file
diff --git a/WebApp/lib/javax.annotation.jar b/WebApp/lib/javax.annotation.jar
new file mode 100644
index 0000000000000000000000000000000000000000..52dca7f561c5d579ca764cb25b96d3f539cf242a
Binary files /dev/null and b/WebApp/lib/javax.annotation.jar differ
diff --git a/WebApp/lib/javax.ejb.jar b/WebApp/lib/javax.ejb.jar
new file mode 100644
index 0000000000000000000000000000000000000000..4ebf5ecd4c9ab83540ef206f6c5a1906db008098
Binary files /dev/null and b/WebApp/lib/javax.ejb.jar differ
diff --git a/WebApp/lib/javax.jms.jar b/WebApp/lib/javax.jms.jar
new file mode 100644
index 0000000000000000000000000000000000000000..d31451ada1ad9a4471d9bae383df647c9b4b5235
Binary files /dev/null and b/WebApp/lib/javax.jms.jar differ
diff --git a/WebApp/lib/javax.persistence.jar b/WebApp/lib/javax.persistence.jar
new file mode 100644
index 0000000000000000000000000000000000000000..21d80e0ed3b5e20aa787087247a006398cda7679
Binary files /dev/null and b/WebApp/lib/javax.persistence.jar differ
diff --git a/WebApp/lib/javax.resource.jar b/WebApp/lib/javax.resource.jar
new file mode 100644
index 0000000000000000000000000000000000000000..696a2345878907025784d2e6e49c6e6b41d1cfac
Binary files /dev/null and b/WebApp/lib/javax.resource.jar differ
diff --git a/WebApp/lib/javax.servlet.jar b/WebApp/lib/javax.servlet.jar
new file mode 100644
index 0000000000000000000000000000000000000000..0519e4a4e16c207f18527175c6a4425b2b1bacbd
Binary files /dev/null and b/WebApp/lib/javax.servlet.jar differ
diff --git a/WebApp/lib/javax.servlet.jsp.jar b/WebApp/lib/javax.servlet.jsp.jar
new file mode 100644
index 0000000000000000000000000000000000000000..9c0631cea0fd56031db19fc3edbb4db4bfbb923a
Binary files /dev/null and b/WebApp/lib/javax.servlet.jsp.jar differ
diff --git a/WebApp/lib/javax.servlet.jsp.jstl.jar b/WebApp/lib/javax.servlet.jsp.jstl.jar
new file mode 100644
index 0000000000000000000000000000000000000000..7be17cc742fde5e957696dd98f6d0cf6520ed294
Binary files /dev/null and b/WebApp/lib/javax.servlet.jsp.jstl.jar differ
diff --git a/WebApp/lib/javax.transaction.jar b/WebApp/lib/javax.transaction.jar
new file mode 100644
index 0000000000000000000000000000000000000000..729c6952389cd4769d5d840b3d1a7941b3c0f63e
Binary files /dev/null and b/WebApp/lib/javax.transaction.jar differ
diff --git a/WebApp/src/Controller.java b/WebApp/src/Controller.java
new file mode 100644
index 0000000000000000000000000000000000000000..5d6aebe21fed25ce465e00726431bb7f6bb4c66e
--- /dev/null
+++ b/WebApp/src/Controller.java
@@ -0,0 +1,32 @@
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import javax.servlet.http.HttpSession;
+import java.io.IOException;
+import java.io.PrintWriter;
+
+@javax.servlet.annotation.WebServlet(name = "Controller")
+public class Controller extends HttpServlet {
+
+    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
+        HttpSession session = request.getSession();
+        Object token = session.getAttribute("token");
+
+        if (token == null) {
+            request.getRequestDispatcher("/login.jsp").forward(request, response);
+            return;
+        }
+
+        // TODO : redirect to home
+    }
+
+    public static String formatUrl(String url) {
+
+        if (url.charAt(url.length()-1) == '/') {
+            url = url.substring(0, url.length()-1);
+        }
+
+        return url;
+    }
+}
diff --git a/WebApp/src/LoginController.java b/WebApp/src/LoginController.java
new file mode 100644
index 0000000000000000000000000000000000000000..a0933742dd95a447758b21dfff5882842b8b0471
--- /dev/null
+++ b/WebApp/src/LoginController.java
@@ -0,0 +1,33 @@
+import javax.servlet.ServletException;
+import javax.servlet.annotation.WebServlet;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.io.PrintWriter;
+
+@WebServlet(name = "LoginController", urlPatterns = "/login")
+public class LoginController extends HttpServlet {
+
+    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
+        PrintWriter out = response.getWriter();
+        String username = request.getParameter("username");
+        String password = request.getParameter("password");
+
+        if (username == null || password == null) {
+            response.setStatus(500);
+            out.println("Wrong parameter!");
+            return;
+        }
+
+        // TODO : Implement http request to identity service
+        out.println("Request to identity service ...");
+
+    }
+
+    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
+        String url = request.getRequestURI();
+        PrintWriter out = response.getWriter();
+        request.getRequestDispatcher("/login.jsp").forward(request, response);
+    }
+}
diff --git a/WebApp/src/MainController.java b/WebApp/src/MainController.java
new file mode 100644
index 0000000000000000000000000000000000000000..01f3c9189e1948c0b3aeaad688897491cbf5ada7
--- /dev/null
+++ b/WebApp/src/MainController.java
@@ -0,0 +1,40 @@
+import javax.servlet.ServletException;
+import javax.servlet.annotation.WebServlet;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import javax.servlet.http.HttpSession;
+import java.io.IOException;
+import java.io.PrintWriter;
+
+@WebServlet(name = "MainController")
+public class MainController extends HttpServlet {
+
+    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
+        String url = request.getRequestURI();
+        PrintWriter out = response.getWriter();
+        url = Controller.formatUrl(url);
+
+        switch (url) {
+            case "/main/profil" :
+                displayProfile(request, response);
+                return;
+            case "/main/order" :
+                displayOrder(request, response);
+                return;
+        }
+
+        out.println(url + " will be cooming soon!");
+    }
+
+    private void displayOrder(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
+        request.getRequestDispatcher("/order.jsp").forward(request, response);
+    }
+
+
+    private void displayProfile(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{
+        // TODO : request data from web service
+        request.getRequestDispatcher("/profil.jsp").forward(request, response);
+    }
+
+}
diff --git a/WebApp/web/WEB-INF/web.xml b/WebApp/web/WEB-INF/web.xml
index 69d652e69852696c60d6f1fe9e073a49e426eaae..8c2833e449ddb37f6e23a7535bb4108a582d4862 100644
--- a/WebApp/web/WEB-INF/web.xml
+++ b/WebApp/web/WEB-INF/web.xml
@@ -4,8 +4,34 @@
          xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
          version="3.1">
 
+    <servlet>
+        <servlet-name>Controller</servlet-name>
+        <servlet-class>Controller</servlet-class>
+    </servlet>
+    <servlet>
+        <servlet-name>LoginController</servlet-name>
+        <servlet-class>LoginController</servlet-class>
+    </servlet>
+    <servlet>
+        <servlet-name>MainController</servlet-name>
+        <servlet-class>MainController</servlet-class>
+    </servlet>
+
+    <servlet-mapping>
+        <servlet-name>Controller</servlet-name>
+        <url-pattern>/</url-pattern>
+    </servlet-mapping>
+    <servlet-mapping>
+        <servlet-name>LoginController</servlet-name>
+        <url-pattern>/login</url-pattern>
+    </servlet-mapping>
+    <servlet-mapping>
+        <servlet-name>MainController</servlet-name>
+        <url-pattern>/main/*</url-pattern>
+    </servlet-mapping>
+
     <welcome-file-list>
-        <welcome-file>login.jsp</welcome-file>
+        <welcome-file>main</welcome-file>
     </welcome-file-list>
 
 </web-app>
\ No newline at end of file
diff --git a/WebApp/web/order.js b/WebApp/web/order.js
new file mode 100644
index 0000000000000000000000000000000000000000..955b590549c1df16c3954125fd6c737f9e0c664b
--- /dev/null
+++ b/WebApp/web/order.js
@@ -0,0 +1,191 @@
+
+// Hide other page section
+(function() {
+    showLocationPage();
+})();
+
+var resultData;
+
+function makeOrder() {
+    var customerID = document.getElementById('customer-id').innerHTML;
+    var orderPickup = document.getElementById('orderPickup').value;
+    var orderDestination = document.getElementById('orderDestination').value;
+    var orderPreferredDriver = document.getElementById('orderPreferredDriver').value;
+    var data = "id="+customerID+"&pickup="+orderPickup+"&destination="+orderDestination+"&driver="+orderPreferredDriver;
+
+    if (orderPickup.trim() == "" || orderDestination.trim() == "") {
+        alert("Source and destination is required!");
+        return;
+    }
+
+    var xhttp = new XMLHttpRequest();
+    xhttp.onreadystatechange = function() {
+        if (this.readyState == 4 && this.status == 200) {
+            resultData = JSON.parse(this.responseText);
+            bindSearchResult(JSON.parse(this.responseText));
+            showDriverPage();
+
+            document.getElementById('orderPickup').disabled = true;
+            document.getElementById('orderDestination').disabled = true;
+            document.getElementById('orderPreferredDriver').disabled = true;
+
+        }
+    };
+    xhttp.open("POST", "/index.php/main/order/new", true);
+    xhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
+    xhttp.send(data);
+}
+
+function bindSearchResult(data) {
+    var preferred = data.preferred;
+    if (preferred != null) {
+        var vote = (preferred.sum_order > 1) ? 'votes' : 'vote';
+        document.getElementById('driver-preferred-result').innerHTML = '' +
+            '<div class="row">\n' +
+            '   <img src="'+preferred.photo+'" style="float: left; border: 1px solid black; margin: 10px" width="120" height="125">\n' +
+            '   <p style="font-size: 1.4em; margin:20px 10px 3px 10px">'+preferred.name+'</p>\n' +
+            '   <p style="margin-top: 0"><span class="text-orange"><b><i class="icon icon-star"></i> '+preferred.rating+'</b></span> ('+preferred.sum_order+' '+vote+')</p>\n' +
+            '   <span class="btn green" style="float: right; margin: 10px" onclick="finishOrder(\''+preferred.id+'\')">I CHOOSE YOU!</span>\n' +
+            '</div>';
+    }
+
+    var html = '';
+    var results = data.result;
+    if (results != null && results.length != 0) {
+        results.forEach(function (driverItem) {
+            var vote = (driverItem.sum_order > 1) ? 'votes' : 'vote';
+            html += '' +
+                '<div class="row">\n' +
+                '   <img src="'+driverItem.photo+'" style="float: left; border: 1px solid black; margin: 10px" width="120" height="125">\n' +
+                '   <p style="font-size: 1.4em; margin:20px 10px 3px 10px">'+driverItem.name+'</p>\n' +
+                '   <p style="margin-top: 0"><span class="text-orange"><b><i class="icon icon-star"></i> '+driverItem.rating+'</b></span> ('+driverItem.sum_order+' '+vote+')</p>\n' +
+                '   <a href="#" class="btn green" style="float: right; margin: 10px" onclick="finishOrder(\''+driverItem.id+'\')">I CHOOSE YOU!</a>\n' +
+                '</div>';
+        });
+        document.getElementById('driver-search-result').innerHTML = html;
+    }
+}
+
+function finishOrder(id) {
+    var photo;
+    var name;
+    var username;
+    var preferred = resultData.preferred;
+    if (preferred != null && preferred.id == id) {
+        photo = preferred.photo;
+        name = preferred.name;
+        username = preferred.username;
+    } else {
+        var results = resultData.result;
+        var i = 0;
+        while (results[i].id != id) {
+            i++;
+        }
+        photo = results[i].photo;
+        name = results[i].name;
+        username = results[i].username;
+    }
+
+    bindFinishPage(id, name, photo, username);
+    showFinishPage();
+}
+
+function bindFinishPage(id, name, photo, username) {
+    document.getElementById('driver-finish-order').innerHTML = '' +
+        '<img class="img-circle" src="'+photo+'"/><br>\n' +
+        '<h2 style="margin-bottom: 0px">@'+username+'</h2>\n' +
+        '<p style="margin-top: 10px">'+name+'</p>\n' +
+        '<i id="star-1" class="icon icon-star-full big" onclick="setRating(1)"></i>\n' +
+        '<i id="star-2" class="icon icon-star-full big" onclick="setRating(2)"></i>\n' +
+        '<i id="star-3" class="icon icon-star-full big" onclick="setRating(3)"></i>\n' +
+        '<i id="star-4" class="icon icon-star-full big" onclick="setRating(4)"></i>\n' +
+        '<i id="star-5" class="icon icon-star-full big" onclick="setRating(5)"></i>\n' +
+        '<input type="hidden" id="order-rating" value="0"> \n' +
+        '<br>\n' +
+        '<br>\n' +
+        '<br>\n' +
+        '<textarea id="order-comment" style="width: 100%; height: 100px; padding: 10px; resize: none" placeholder="Your comment..." ></textarea>\n' +
+        '<a class="btn green" style="float: right; margin: 10px" onclick="completeOrder(\''+id+'\')">COMPLETE<br>ORDER</a>'
+}
+
+function setRating(val) {
+    for (var i = 1; i <= 5; i++) {
+        if (i <= val) {
+            document.getElementById('star-'+i).style.color = "orange";
+        } else {
+            document.getElementById('star-'+i).style.color = "#c2c2c2";
+        }
+    }
+    document.getElementById('order-rating').value = val;
+}
+
+function completeOrder(id) {
+    var customerID = document.getElementById('customer-id').innerHTML;
+    var orderPickup = document.getElementById('orderPickup').value;
+    var orderDestination = document.getElementById('orderDestination').value;
+    var rating = document.getElementById('order-rating').value;
+    var comment = document.getElementById('order-comment').value;
+    var data = 'id='+id+'&id_customer='+customerID+'&source='+orderPickup+'&destination='+orderDestination+'&rating='+rating+'&comment='+comment;
+
+    if (rating == 0) {
+        alert("You must give rating to your driver");
+        return;
+    }
+
+    if (comment.trim() == "") {
+        alert("You must give feedback to your driver");
+        return;
+    }
+
+    var xhttp = new XMLHttpRequest();
+    xhttp.onreadystatechange = function() {
+        if (this.readyState == 4 && this.status == 200) {
+            if (this.responseText == "Error") {
+                alert("Fail completing your order");
+            } else {
+                alert("Thanks for your order :D");
+                window.location.href = "/index.php/main/order?u="+customerID;
+            }
+        }
+    };
+    xhttp.open("POST", "/index.php/main/order/finish?u", true);
+    xhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
+    xhttp.send(data);
+
+}
+
+function showLocationPage() {
+    var finishPage = document.getElementById('order-page-finish');
+    finishPage.style.display = 'none';
+    var driverPage = document.getElementById('order-page-driver');
+    driverPage.style.display = 'none';
+    var locationPage = document.getElementById('order-page-location');
+    locationPage.style.display = 'block';
+    document.getElementById('page-tab-driver').classList.remove("selected");
+    document.getElementById('page-tab-finish').classList.remove("selected");
+    document.getElementById('page-tab-location').classList.add("selected");
+}
+
+function showDriverPage() {
+    var locationPage = document.getElementById('order-page-location');
+    locationPage.style.display = 'none';
+    var finishPage = document.getElementById('order-page-finish');
+    finishPage.style.display = 'none';
+    var driverPage = document.getElementById('order-page-driver');
+    driverPage.style.display = 'block';
+    document.getElementById('page-tab-driver').classList.add("selected");
+    document.getElementById('page-tab-finish').classList.remove("selected");
+    document.getElementById('page-tab-location').classList.remove("selected");
+}
+
+function showFinishPage() {
+    var locationPage = document.getElementById('order-page-location');
+    locationPage.style.display = 'none';
+    var driverPage = document.getElementById('order-page-driver');
+    driverPage.style.display = 'none';
+    var finishPage = document.getElementById('order-page-finish');
+    finishPage.style.display = 'block';
+    document.getElementById('page-tab-driver').classList.remove("selected");
+    document.getElementById('page-tab-finish').classList.add("selected");
+    document.getElementById('page-tab-location').classList.remove("selected");
+}
\ No newline at end of file
diff --git a/WebApp/web/order.jsp b/WebApp/web/order.jsp
new file mode 100644
index 0000000000000000000000000000000000000000..ee9d6c89c3318c14c4419d3778a29ac6cf1b1457
--- /dev/null
+++ b/WebApp/web/order.jsp
@@ -0,0 +1,131 @@
+<%--
+  Created by IntelliJ IDEA.
+  User: fadhilimamk
+  Date: 07/11/17
+  Time: 11:36
+  To change this template use File | Settings | File Templates.
+--%>
+<%@ page contentType="text/html;charset=UTF-8" language="java" %>
+
+<html>
+<head>
+    <title>DAGO-JEK | Order</title>
+    <link rel="stylesheet" type="text/css" href="/style.css">
+</head>
+<body>
+<div class="container">
+    <div class="row">
+        <div class="col-3"><span class="logo"></span></div>
+        <div class="col-3 text-right">
+            <p class="user-action">
+                Hi, <b>fadhilimamk</b> !<br>
+                <a href="/">Logout</a>
+            </p>
+        </div>
+    </div>
+    <div class="row">
+        <a class="col-2 tab text-center active" href="/main/order">ORDER</a>
+        <a class="col-2 tab text-center" href="/main/history">HISTORY</a>
+        <a class="col-2 tab text-center" href="/main/profil">MY PROFILE</a>
+    </div>
+    <div class="row">
+        <div class="col-6"><h1>MAKE AN ORDER</h1></div>
+    </div>
+    <div class="row">
+        <div class="col-2">
+            <div id="page-tab-location" class="page-tab selected">
+                <div class="page-tab-image">
+                    <div class="circle">1</div>
+                </div>
+                <div class="page-tab-content">
+                    Select Destination
+                </div>
+            </div>
+        </div>
+        <div class="col-2">
+            <div id="page-tab-driver" class="page-tab">
+                <div class="page-tab-image">
+                    <div class="circle">2</div>
+                </div>
+                <div class="page-tab-content">
+                    Select a Driver
+                </div>
+            </div>
+        </div>
+        <div class="col-2">
+            <div id="page-tab-finish" class="page-tab">
+                <div class="page-tab-image">
+                    <div class="circle">3</div>
+                </div>
+                <div class="page-tab-content">
+                    Complete your order
+                </div>
+            </div>
+        </div>
+    </div>
+    <br>
+    <br>
+    <div id="order-page-location">
+        <form id="orderForm">
+            <div class="row">
+                <div class="col-2" style="line-height: 40px">
+                    <span style="padding-left: 30%;">Picking Point</span> <br>
+                </div>
+                <div class="col-4" style="line-height: 30px">
+                    <input id="orderPickup" style="width: 80%;height: 30px;padding-left: 5px;font-size: medium" type="text" name="picking_point" placeholder="Pick up point">
+                </div>
+            </div>
+            <div class="row">
+                <div class="col-2" style="line-height: 40px">
+                    <span style="padding-left: 30%">Destination</span> <br>
+                </div>
+                <div class="col-4" style="line-height: 30px">
+                    <input id="orderDestination" style="width: 80%; height: 30px;padding-left: 5px;font-size: medium" type="text" name="destination" placeholder="Destination">
+                </div>
+            </div>
+            <div class="row">
+                <div class="col-2" style="line-height: 40px">
+                    <span style="padding-left: 30%">Preferred Driver</span>
+                </div>
+                <div class="col-4">
+                    <input id="orderPreferredDriver" style="width: 80%;height: 30px;padding-left: 5px;font-size: medium" type="text" name="driver" placeholder="(optional)"><br>
+                </div>
+            </div>
+            <br>
+            <br>
+            <br>
+            <div class="row text-center">
+                <a href="#" class="btn green" style="font-size: 2em" onclick="makeOrder()">Next</a>
+            </div>
+        </form>
+    </div>
+
+    <div id="order-page-driver">
+        <div style="width: 100%; border: 1px solid black; border-radius: 10px;">
+            <h2 style="margin-left: 10px; margin-top: 0px">PREFERRED DRIVERS: </h2>
+            <div id="driver-preferred-result" style="margin: 0 30px 30px 30px">
+                <p id="driver-preferred-empty" class="text-center" style="font-size: large; color: #989898; margin: 30px">Nothing to display :(</p>
+            </div>
+        </div>
+        <br>
+        <div style="width: 100%; border: 1px solid black; border-radius: 10px;">
+            <h2 style="margin-left: 10px; margin-top: 0px">OTHER DRIVERS: </h2>
+            <div id="driver-search-result" style="margin: 0 30px 30px 30px">
+                <p id="driver-preferred-empty" class="text-center" style="font-size: large; color: #989898; margin: 30px">Nothing to display :(</p>
+            </div>
+        </div>
+    </div>
+
+    <div id="order-page-finish" style="width: 100%;">
+        <h2 style="margin-left: 10px; margin-top: 0px">HOW WAS IT? </h2>
+        <div id="driver-finish-order" class="text-center profil" style="padding-bottom: 60px">
+            <p id="driver-preferred-empty" class="text-center" style="font-size: large; color: #989898; margin: 30px">Nothing to display :(</p>
+        </div>
+    </div>
+
+
+</div>
+
+<script type="text/javascript" src="/order.js"></script>
+</body>
+</html>
diff --git a/WebApp/web/profil.jsp b/WebApp/web/profil.jsp
new file mode 100644
index 0000000000000000000000000000000000000000..1d2ad30c73715d8c60abd134195845d8fc07de8e
--- /dev/null
+++ b/WebApp/web/profil.jsp
@@ -0,0 +1,56 @@
+<%--
+  Created by IntelliJ IDEA.
+  User: fadhilimamk
+  Date: 07/11/17
+  Time: 11:28
+  To change this template use File | Settings | File Templates.
+--%>
+<%@ page contentType="text/html;charset=UTF-8" language="java" %>
+<html>
+<head>
+    <title>DAGO-JEK | Profil</title>
+    <link rel="stylesheet" type="text/css" href="/style.css">
+</head>
+<body>
+<div class="container">
+    <div class="row">
+        <div class="col-3"><span class="logo"></span></div>
+        <div class="col-3 text-right">
+            <p class="user-action">
+                Hi, <b>fadhilimamk</b> !<br>
+                <a href="/logout">Logout</a>
+            </p>
+        </div>
+    </div>
+    <div class="row">
+        <a class="col-2 tab text-center" href="/main/order">ORDER</a>
+        <a class="col-2 tab text-center" href="/main/history">HISTORY</a>
+        <a class="col-2 tab text-center active" href="/main/profil">MY PROFILE</a>
+    </div>
+    <div class="row">
+        <div class="col-5"><h1>MY PROFILE</h1></div>
+        <div class="col-1 text-right"><a class="edit" href="/edit/profil"></a></div>
+    </div>
+    <div class="text-center profil">
+        <img class="img-circle" src="#"/><br>
+        <h2>@fadhilimamk</h2>
+        <p>Fadhil Imam</p>
+        <p>Driver | <span class="text-orange"><b><i class="icon icon-star"></i> 4.15</b></span> (122 votes)</p>
+        <p><i class="icon icon-mail"></i> 13515146@std.stei.itb.ac.id</p>
+        <p><i class="icon icon-phone"></i> 085797490039</p>
+    </div>
+    <div class="row">
+        <div class="col-5"><h2>PREFERED LOCATIONS</h2></div>
+        <div class="col-1 text-right"><a class="edit" href="/edit/location"></a></div>
+    </div>
+    <div class="row">
+        <ul class="location-list">
+            <li style="margin-left: 0px"><b>Cipaganti</b></li>
+            <li style="margin-left: 35px"><b>Dago Pojok</b></li>
+            <li style="margin-left: 70px"><b>Tubagus</b></li>
+            <li style="margin-left: 105px"><b>Unpad</b></li>
+        </ul>
+    </div>
+</div>
+</body>
+</html>