diff --git a/app/src/main/java/com/example/chan24/smartplanner/MapsActivity.java b/app/src/main/java/com/example/chan24/smartplanner/MapsActivity.java
index 75d7ef6674fe3cfa455ed5f7996324fa52c7835c..bfec7954f4d90e21c710546567426b1db7e7b21d 100644
--- a/app/src/main/java/com/example/chan24/smartplanner/MapsActivity.java
+++ b/app/src/main/java/com/example/chan24/smartplanner/MapsActivity.java
@@ -28,6 +28,8 @@ import com.google.android.gms.maps.CameraUpdateFactory;
 import com.google.android.gms.maps.GoogleMap;
 import com.google.android.gms.maps.OnMapReadyCallback;
 import com.google.android.gms.maps.SupportMapFragment;
+import com.google.android.gms.maps.model.BitmapDescriptor;
+import com.google.android.gms.maps.model.BitmapDescriptorFactory;
 import com.google.android.gms.maps.model.LatLng;
 import com.google.android.gms.maps.model.MarkerOptions;
 
@@ -35,6 +37,7 @@ import org.json.JSONArray;
 import org.json.JSONException;
 import org.json.JSONObject;
 
+
 import static com.example.chan24.smartplanner.AppConfig.*;
 
 public class MapsActivity extends FragmentActivity implements OnMapReadyCallback,LocationListener {
@@ -42,6 +45,11 @@ public class MapsActivity extends FragmentActivity implements OnMapReadyCallback
     private GoogleMap mMap;
     LocationManager locationManager;
     CoordinatorLayout mainCoordinateLayout;
+    String shopping;
+    String dining;
+    String supermarket;
+    int distance;
+    String type;
 
     @Override
     protected void onCreate(Bundle savedInstanceState) {
@@ -61,6 +69,42 @@ public class MapsActivity extends FragmentActivity implements OnMapReadyCallback
         if (!locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER)) {
             showLocationSettings();
         }
+
+
+        Intent i = getIntent();
+        shopping =i.getStringExtra("shopping");
+        dining=i.getStringExtra("dining");
+        supermarket=i.getStringExtra("supermarket");
+        distance= Integer.parseInt(i.getStringExtra("distance"));
+
+
+        StringBuilder typeBuilder=new StringBuilder();
+        if (shopping.contentEquals("yes")) {
+            typeBuilder.append("shopping_mall");
+
+            if (dining.contentEquals("yes")){
+                typeBuilder.append("_or_restaurant");
+            }
+            if (supermarket.contentEquals("yes")){
+                typeBuilder.append("_or_department_store");
+            }
+        }
+
+        else{
+            if (dining.contentEquals("yes")){
+                typeBuilder.append("restaurant");
+                if (supermarket.contentEquals("yes")){
+                    typeBuilder.append("_or_department_store");
+                }
+            }
+            else {
+                if (supermarket.contentEquals("yes")){
+                    typeBuilder.append("department_store");
+                }
+            }
+        }
+        type=typeBuilder.toString();
+        //Toast.makeText(getApplicationContext(),type,Toast.LENGTH_LONG).show();
     }
 
     private void showLocationSettings() {
@@ -162,32 +206,34 @@ public class MapsActivity extends FragmentActivity implements OnMapReadyCallback
     }
 
     private void loadNearByPlaces(double latitude, double longitude) {
-        String type = "restaurant";
-        StringBuilder googlePlacesUrl =
-                new StringBuilder("https://maps.googleapis.com/maps/api/place/nearbysearch/json?");
-        googlePlacesUrl.append("location=").append(latitude).append(",").append(longitude);
-        googlePlacesUrl.append("&radius=").append(PROXIMITY_RADIUS);
-        googlePlacesUrl.append("&types=").append(type);
-        googlePlacesUrl.append("&sensor=true");
-        googlePlacesUrl.append("&key=" + GOOGLE_BROWSER_API_KEY);
-
-        JsonObjectRequest request = new JsonObjectRequest(googlePlacesUrl.toString(),
-                new Response.Listener<JSONObject>() {
-                    @Override
-                    public void onResponse(JSONObject result) {
-
-                        Log.i(TAG, "onResponse: Result= " + result.toString());
-                        parseLocationResult(result);
-                    }
-                },
-                new Response.ErrorListener() {
-                    @Override                    public void onErrorResponse(VolleyError error) {
-                        Log.e(TAG, "onErrorResponse: Error= " + error);
-                        Log.e(TAG, "onErrorResponse: Error= " + error.getMessage());
-                    }
-                });
 
-        AppController.getInstance().addToRequestQueue(request);
+            StringBuilder googlePlacesUrl =
+                    new StringBuilder("https://maps.googleapis.com/maps/api/place/nearbysearch/json?");
+            googlePlacesUrl.append("location=").append(latitude).append(",").append(longitude);
+            googlePlacesUrl.append("&radius=").append(distance);
+            googlePlacesUrl.append("&types=").append(type);
+            googlePlacesUrl.append("&sensor=true");
+            googlePlacesUrl.append("&key=" + GOOGLE_BROWSER_API_KEY);
+
+            JsonObjectRequest request = new JsonObjectRequest(googlePlacesUrl.toString(),
+                    new Response.Listener<JSONObject>() {
+                        @Override
+                        public void onResponse(JSONObject result) {
+
+                            Log.i(TAG, "onResponse: Result= " + result.toString());
+                            parseLocationResult(result);
+                        }
+                    },
+                    new Response.ErrorListener() {
+                        @Override                    public void onErrorResponse(VolleyError error) {
+                            Log.e(TAG, "onErrorResponse: Error= " + error);
+                            Log.e(TAG, "onErrorResponse: Error= " + error.getMessage());
+                        }
+                    });
+
+            AppController.getInstance().addToRequestQueue(request);
+
+
     }
 
     private void parseLocationResult(JSONObject result) {
@@ -219,16 +265,41 @@ public class MapsActivity extends FragmentActivity implements OnMapReadyCallback
                     reference = place.getString(REFERENCE);
                     icon = place.getString(ICON);
 
+                   String t=place.getString("types");
+                    //Toast.makeText(getApplicationContext(),t,Toast.LENGTH_SHORT).show();
+
                     MarkerOptions markerOptions = new MarkerOptions();
                     LatLng latLng = new LatLng(latitude, longitude);
-                    markerOptions.position(latLng);
+                    if (t.contains("restaurant") || t.contains("food")){
+                        markerOptions.position(latLng);
+                        markerOptions.title(placeName + " : " + vicinity);
+                        markerOptions.icon((BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_ORANGE)));
+
+                        mMap.addMarker(markerOptions);
+                    }
+                    else if (t.contains("department_store")){
+                        markerOptions.position(latLng);
+                        markerOptions.title(placeName + " : " + vicinity);
+                        markerOptions.icon((BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_GREEN)));
+
+                        mMap.addMarker(markerOptions);
+                    }
+                    else {
+                        markerOptions.position(latLng);
+                        markerOptions.title(placeName + " : " + vicinity);
+                        markerOptions.icon((BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_BLUE)));
+
+                        mMap.addMarker(markerOptions);
+                    }
+
+                    /*markerOptions.position(latLng);
                     markerOptions.title(placeName + " : " + vicinity);
+                    markerOptions.icon((BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_BLUE)));
 
-                    mMap.addMarker(markerOptions);
+                    mMap.addMarker(markerOptions);*/
                 }
 
-                Toast.makeText(getBaseContext(), jsonArray.length() + " Supermarkets found!",
-                        Toast.LENGTH_LONG).show();
+                Toast.makeText(getBaseContext(), jsonArray.length() + " Supermarkets found!",Toast.LENGTH_LONG).show();
             } else if (result.getString(STATUS).equalsIgnoreCase(ZERO_RESULTS)) {
                 Toast.makeText(getBaseContext(), "No Supermarket found in 5KM radius!!!",
                         Toast.LENGTH_LONG).show();
diff --git a/app/src/main/java/com/example/chan24/smartplanner/UserArea.java b/app/src/main/java/com/example/chan24/smartplanner/UserArea.java
index 8319f12a2609fa91c6c6d37c904b0bb6cd75ee65..18eb323b17535876424c5f9ed5c57c353fcb7e0d 100644
--- a/app/src/main/java/com/example/chan24/smartplanner/UserArea.java
+++ b/app/src/main/java/com/example/chan24/smartplanner/UserArea.java
@@ -12,6 +12,7 @@ import android.os.Bundle;
 import android.view.MenuItem;
 import android.view.View;
 import android.widget.Button;
+import android.widget.CheckBox;
 import android.widget.TextView;
 import android.widget.Toast;
 
@@ -80,7 +81,6 @@ public class UserArea extends AppCompatActivity {
                 switch (item.getItemId()){
                     case R.id.my_profile :
                         Intent i =new Intent(getApplicationContext(),ProfileActivity.class);
-                        i.putExtra("Name",s);
                         startActivity(i);
                         mDrawerLayout.closeDrawers();
                         break;
@@ -101,6 +101,41 @@ public class UserArea extends AppCompatActivity {
                 return false;
             }
         });
+
+        Button save =(Button)findViewById(R.id.save);
+        save.setOnClickListener(new View.OnClickListener() {
+            @Override
+            public void onClick(View v) {
+                CheckBox sh =(CheckBox)findViewById(R.id.shopping);
+                CheckBox d =(CheckBox)findViewById(R.id.dining);
+                CheckBox s =(CheckBox)findViewById(R.id.supermarket);
+                TextView dist =(TextView)findViewById(R.id.distance);
+                String shopping="no";
+                String dining="no";
+                String supermarket="no";
+                String distance;
+
+                if(sh.isChecked()){
+                    shopping="yes";
+                }
+                if (d.isChecked()){
+                    dining="yes";
+                }
+                if (s.isChecked()){
+                    supermarket="yes";
+                }
+
+                distance=dist.getText().toString();
+
+                Intent i = new Intent(getApplicationContext(),MapsActivity.class);
+                i.putExtra("shopping",shopping);
+                i.putExtra("dining",dining);
+                i.putExtra("supermarket",supermarket);
+                i.putExtra("distance",distance);
+                startActivity(i);
+
+            }
+        });
     }
 
     @Override
diff --git a/app/src/main/res/drawable/blue_marker.png b/app/src/main/res/drawable/blue_marker.png
new file mode 100644
index 0000000000000000000000000000000000000000..cf1f5e5187c5a90f69df96ffc6902068be499093
Binary files /dev/null and b/app/src/main/res/drawable/blue_marker.png differ
diff --git a/app/src/main/res/drawable/green_marker.png b/app/src/main/res/drawable/green_marker.png
new file mode 100644
index 0000000000000000000000000000000000000000..ebb52576442ed2bb9b5307127b162928487a9a8f
Binary files /dev/null and b/app/src/main/res/drawable/green_marker.png differ
diff --git a/app/src/main/res/drawable/orange_marker.jpg b/app/src/main/res/drawable/orange_marker.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..54a28c7453fc2468ed566e33374f1e6f9de446f9
--- /dev/null
+++ b/app/src/main/res/drawable/orange_marker.jpg
@@ -0,0 +1,9 @@
+<?xml version="1.0"?><svg width="2481" height="2073" xmlns="http://www.w3.org/2000/svg">
+ <title>map marker</title>
+
+ <g>
+  <title>Layer 1</title>
+  <path fill-rule="evenodd" clip-rule="evenodd" fill="#ff7f00" stroke="#000000" stroke-width="37" stroke-miterlimit="10" d="m1075.939941,1959.629028c-38.765869,-190.301025 -107.115906,-348.665039 -189.902954,-495.439941c-61.406982,-108.87207 -132.543945,-209.363037 -198.364014,-314.937988c-21.971985,-35.244019 -40.93396,-72.477051 -62.046997,-109.054077c-42.215942,-73.136963 -76.44397,-157.934998 -74.268982,-267.932007c2.125,-107.472961 33.208008,-193.68396 78.029968,-264.171997c73.719055,-115.934967 197.20105,-210.988983 362.884033,-235.968994c135.466064,-20.423981 262.475098,14.082031 352.542969,66.748016c73.600098,43.037994 130.596069,100.527008 173.920044,168.279999c45.219971,70.716003 76.359009,154.26001 78.970947,263.231995c1.337036,55.830017 -7.804932,107.531982 -20.68396,150.417969c-13.033936,43.409058 -33.995972,79.695007 -52.645996,118.454102c-36.406006,75.658936 -82.04895,144.981934 -127.85498,214.345947c-136.437012,206.605957 -264.496094,417.309937 -320.580078,706.026978z" id="svg_2"/>
+  <circle fill-rule="evenodd" clip-rule="evenodd" cx="1080.546" cy="740.047" r="183.332031" id="svg_4" fill="black"/>
+ </g>
+</svg>
\ No newline at end of file
diff --git a/app/src/main/res/drawable/red_marker.jpg b/app/src/main/res/drawable/red_marker.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..319981f0261c95acde54f1ef80651dd86f883b53
Binary files /dev/null and b/app/src/main/res/drawable/red_marker.jpg differ
diff --git a/app/src/main/res/layout/activity_user_area.xml b/app/src/main/res/layout/activity_user_area.xml
index 4e67af3b6a085441d9723e59e71089581b18c6bd..3ed831822b542d6c15009f0df53dd1bd199c5681 100644
--- a/app/src/main/res/layout/activity_user_area.xml
+++ b/app/src/main/res/layout/activity_user_area.xml
@@ -38,13 +38,13 @@
         android:text="Shopping" />
 
     <CheckBox
-        android:id="@+id/Movies"
+        android:id="@+id/supermarket"
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
-        android:text="Movies" />
+        android:text="Supermarket" />
 
     <CheckBox
-        android:id="@+id/Dining"
+        android:id="@+id/dining"
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
         android:text="Dining" />
@@ -57,14 +57,15 @@
         android:textColor="@color/colorPrimary"
         android:layout_marginTop="30dp"
         />
+
     <EditText
+        android:id="@+id/distance"
         android:layout_width="match_parent"
         android:layout_height="45dp"
         android:layout_marginTop="20dp"
-        android:inputType="number"
         android:hint="Distance in km"
 
-        />
+        android:inputType="number" />
     <Button
         android:id="@+id/save"
         android:layout_width="wrap_content"