diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 34505590e57dcf5466427da4183d027e6a244eb3..ff5fef043f1a4bc2b3a85d49cac5481bb7430db9 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -82,7 +82,6 @@
             android:label="Approved Leave(s)"
             android:screenOrientation="portrait"
             android:theme="@style/AppTheme1"></activity>
-        <activity android:name=".actionareas.od_display"></activity>
 
     </application>
 
diff --git a/app/src/main/java/com/peruse/saran/amritaod/actionareas/applyodActivity.java b/app/src/main/java/com/peruse/saran/amritaod/actionareas/applyodActivity.java
index f0dc01863618c2b1956a54a9ee23a3053d5e42b7..3d7841c767ec655115e3a2f052a899100d540850 100644
--- a/app/src/main/java/com/peruse/saran/amritaod/actionareas/applyodActivity.java
+++ b/app/src/main/java/com/peruse/saran/amritaod/actionareas/applyodActivity.java
@@ -88,7 +88,7 @@ public class applyodActivity extends AppCompatActivity implements AdapterView.On
         recievedRollno = intent.getExtras().getString("recievedRollno");
         recievedSemester = intent.getExtras().getString("recievedSemester");
         recievedBranch = intent.getExtras().getString("recievedBranch");
-        currentdate = ""+startdate+'/'+startmonth+"/"+startyear;
+        currentdate = ""+startdate+'/'+(startmonth+1)+"/"+startyear;
         currentdatesend = ""+startyear+'/'+(startmonth+1)+'/'+startdate;
         oddatedisp.setText(currentdate);
         odnamedisp.setText(recievedUsername);
@@ -181,7 +181,7 @@ public class applyodActivity extends AppCompatActivity implements AdapterView.On
         if(bitmap==null){
             Toast.makeText(this, "Please Select an Image", Toast.LENGTH_SHORT).show();
         }
-        else if(leavetype[0].equals("-Select Leave Type-")){
+        else if(setleavetype.equals("-Select Leave Type-")){
             Toast.makeText(this,"Please Select the Leave Type", Toast.LENGTH_SHORT).show();
         }
         else if(sendstartdate==null){
diff --git a/app/src/main/java/com/peruse/saran/amritaod/actionareas/od_display.java b/app/src/main/java/com/peruse/saran/amritaod/actionareas/od_display.java
deleted file mode 100644
index e183a94a3d6e0f7d815b70f4e14afa6c2e82fa99..0000000000000000000000000000000000000000
--- a/app/src/main/java/com/peruse/saran/amritaod/actionareas/od_display.java
+++ /dev/null
@@ -1,15 +0,0 @@
-package com.peruse.saran.amritaod.actionareas;
-
-import android.support.v7.app.AppCompatActivity;
-import android.os.Bundle;
-
-import com.peruse.saran.amritaod.R;
-
-public class od_display extends AppCompatActivity {
-
-    @Override
-    protected void onCreate(Bundle savedInstanceState) {
-        super.onCreate(savedInstanceState);
-        setContentView(R.layout.activity_od_display);
-    }
-}
diff --git a/app/src/main/java/com/peruse/saran/amritaod/actionareas/userAreaActivity.java b/app/src/main/java/com/peruse/saran/amritaod/actionareas/userAreaActivity.java
index 32d03e294b4c59ab0a8cee89c2e992bef31e6f7b..5febc94f8677ca91df4e7998a50d4e6c53cbf670 100644
--- a/app/src/main/java/com/peruse/saran/amritaod/actionareas/userAreaActivity.java
+++ b/app/src/main/java/com/peruse/saran/amritaod/actionareas/userAreaActivity.java
@@ -9,6 +9,7 @@ import android.widget.TextView;
 import android.widget.Toast;
 
 import com.peruse.saran.amritaod.R;
+import com.peruse.saran.amritaod.odhistory.history_approvedActivity;
 import com.peruse.saran.amritaod.recycler.odApproveActivity;
 
 public class userAreaActivity extends AppCompatActivity {
@@ -67,12 +68,8 @@ public class userAreaActivity extends AppCompatActivity {
     }
 
     protected void list(View view){
-        Intent newintent = new Intent(this,od_display.class);
-        newintent.putExtra("recievedUsername",recievedUsername)
-                .putExtra("recievedRollno",recievedRollno)
-                .putExtra("recievedSemester",recievedSemester)
-                .putExtra("recievedBranch",recievedBranch);
-        startActivity(newintent);
+        Intent intent = new Intent(this,history_approvedActivity.class);
+        startActivity(intent);
     }
 
 }
diff --git a/app/src/main/java/com/peruse/saran/amritaod/approvedrecycler/CardAdapter.java b/app/src/main/java/com/peruse/saran/amritaod/approvedrecycler/CardAdapter.java
index a0449a86f6f857a8a2ad5ad1c7563aa87cc4f4d1..60c0252cff1e68953179aeb04b2db2b43457bf79 100644
--- a/app/src/main/java/com/peruse/saran/amritaod/approvedrecycler/CardAdapter.java
+++ b/app/src/main/java/com/peruse/saran/amritaod/approvedrecycler/CardAdapter.java
@@ -58,7 +58,7 @@ public class CardAdapter extends RecyclerView.Adapter<com.peruse.saran.amritaod.
     }
 
 
-    class ViewHolder extends RecyclerView.ViewHolder{
+    public class ViewHolder extends RecyclerView.ViewHolder{
         public NetworkImageView imageView;
         public TextView textViewName;
         public TextView textViewPublisher;
diff --git a/app/src/main/java/com/peruse/saran/amritaod/odhistory/history_CustomVolleyRequest.java b/app/src/main/java/com/peruse/saran/amritaod/odhistory/history_CustomVolleyRequest.java
new file mode 100644
index 0000000000000000000000000000000000000000..7bc0e8d9a5911982e98162dc2ec19f6f0d19e2c9
--- /dev/null
+++ b/app/src/main/java/com/peruse/saran/amritaod/odhistory/history_CustomVolleyRequest.java
@@ -0,0 +1,64 @@
+package com.peruse.saran.amritaod.odhistory;
+
+import android.content.Context;
+import android.graphics.Bitmap;
+import android.support.v4.util.LruCache;
+
+import com.android.volley.Cache;
+import com.android.volley.Network;
+import com.android.volley.RequestQueue;
+import com.android.volley.toolbox.BasicNetwork;
+import com.android.volley.toolbox.DiskBasedCache;
+import com.android.volley.toolbox.HurlStack;
+import com.android.volley.toolbox.ImageLoader;
+
+/**
+ * Created by Yazhini on 4/21/2017.
+ */
+
+public class history_CustomVolleyRequest {
+    private static com.peruse.saran.amritaod.recycler.CustomVolleyRequest customVolleyRequest;
+    private static Context context;
+    private RequestQueue requestQueue;
+    private ImageLoader imageLoader;
+    public history_CustomVolleyRequest(Context context) {
+        this.context = context;
+        this.requestQueue = getRequestQueue();
+
+        imageLoader = new ImageLoader(requestQueue,
+                new ImageLoader.ImageCache() {
+                    private final LruCache<String, Bitmap>
+                            cache = new LruCache<String, Bitmap>(20);
+
+                    @Override
+                    public Bitmap getBitmap(String url) {
+                        return cache.get(url);
+                    }
+
+                    @Override
+                    public void putBitmap(String url, Bitmap bitmap) {
+                        cache.put(url, bitmap);
+                    }
+                });
+    }
+    public static synchronized com.peruse.saran.amritaod.recycler.CustomVolleyRequest getInstance(Context context) {
+        if (customVolleyRequest == null) {
+            customVolleyRequest = new com.peruse.saran.amritaod.recycler.CustomVolleyRequest(context);
+        }
+        return customVolleyRequest;
+    }
+
+    public RequestQueue getRequestQueue() {
+        if (requestQueue == null) {
+            Cache cache = new DiskBasedCache(context.getCacheDir(), 10 * 1024 * 1024);
+            Network network = new BasicNetwork(new HurlStack());
+            requestQueue = new RequestQueue(cache, network);
+            requestQueue.start();
+        }
+        return requestQueue;
+    }
+    public ImageLoader getImageLoader() {
+        return imageLoader;
+    }
+
+}
diff --git a/app/src/main/java/com/peruse/saran/amritaod/odhistory/history_approvedActivity.java b/app/src/main/java/com/peruse/saran/amritaod/odhistory/history_approvedActivity.java
new file mode 100644
index 0000000000000000000000000000000000000000..9b701b573f00914955cd7b250a684e900553a28d
--- /dev/null
+++ b/app/src/main/java/com/peruse/saran/amritaod/odhistory/history_approvedActivity.java
@@ -0,0 +1,126 @@
+package com.peruse.saran.amritaod.odhistory;
+
+import android.os.Build;
+import android.os.Bundle;
+import android.support.annotation.RequiresApi;
+import android.support.v7.app.AppCompatActivity;
+import android.support.v7.widget.LinearLayoutManager;
+import android.support.v7.widget.RecyclerView;
+import android.view.View;
+import android.widget.ProgressBar;
+
+import com.android.volley.RequestQueue;
+import com.android.volley.Response;
+import com.android.volley.VolleyError;
+import com.android.volley.toolbox.JsonArrayRequest;
+import com.android.volley.toolbox.Volley;
+import com.peruse.saran.amritaod.R;
+import com.peruse.saran.amritaod.approvedrecycler.CardAdapter;
+import com.peruse.saran.amritaod.templates.oddetailstemplate;
+
+import org.json.JSONArray;
+import org.json.JSONException;
+import org.json.JSONObject;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * Created by Yazhini on 4/21/2017.
+ */
+@RequiresApi(api = Build.VERSION_CODES.M)
+
+
+public class history_approvedActivity extends AppCompatActivity implements View.OnScrollChangeListener {
+    private List<oddetailstemplate> listOdApprove;
+    private RecyclerView recyclerView;
+    private RecyclerView.LayoutManager layoutManager;
+    private RecyclerView.Adapter adapter;
+    private RequestQueue requestQueue;
+    private int requestCount = 1;
+    private boolean mLoading = false;
+    @Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        setContentView(R.layout.activity_history_odapprove);
+        recyclerView = (RecyclerView) findViewById(R.id.recyclerView);
+        recyclerView.setHasFixedSize(true);
+        layoutManager = new LinearLayoutManager(this);
+        recyclerView.setLayoutManager(layoutManager);
+        listOdApprove = new ArrayList<>();
+        requestQueue = Volley.newRequestQueue(this);
+        getData();
+        recyclerView.setOnScrollChangeListener(this);
+        adapter = new CardAdapter(listOdApprove, this);
+        recyclerView.setAdapter(adapter);
+    }
+
+    private JsonArrayRequest getDataFromServer(int requestCount) {
+        //Initializing ProgressBar
+        final ProgressBar progressBar = (ProgressBar) findViewById(R.id.progressBar1);
+
+        //Displaying Progressbar
+        progressBar.setVisibility(View.VISIBLE);
+        setProgressBarIndeterminateVisibility(true);
+
+        //JsonArrayRequest of volley
+        JsonArrayRequest jsonArrayRequest = new JsonArrayRequest("https://amritaod.000webhostapp.com/androidmain.php?page=" + String.valueOf(requestCount),
+                new Response.Listener<JSONArray>() {
+                    @Override
+                    public void onResponse(JSONArray response) {
+                        //Calling method parseData to parse the json response
+                        parseData(response);
+                        //Hiding the progressbar
+                        progressBar.setVisibility(View.GONE);
+                    }
+                },
+                new Response.ErrorListener() {
+                    @Override
+                    public void onErrorResponse(VolleyError error) {
+                        progressBar.setVisibility(View.GONE);
+                        //If an error occurs that means end of the list has reached
+                    }
+                });
+
+        //Returning the request
+        return jsonArrayRequest;
+    }
+
+    private void getData() {
+        requestQueue.add(getDataFromServer(requestCount));
+        requestCount++;
+    }
+    private void parseData(JSONArray array) {
+        for (int i = 0; i < array.length(); i++) {
+            oddetailstemplate odDetailsObject = new oddetailstemplate();
+            JSONObject json = null;
+            try {
+                json = array.getJSONObject(i);
+                odDetailsObject.setImageUrl(json.getString("photo"));
+                odDetailsObject.setName(json.getString("rollno"));
+                odDetailsObject.setPublisher(json.getString("odtype"));
+                odDetailsObject.setId(json.getString("id"));
+                odDetailsObject.setFromdate(json.getString("fromdate"));
+                odDetailsObject.setTodate(json.getString("todate"));
+                odDetailsObject.setFromdateperiod(json.getString("fromperiod"));
+                odDetailsObject.setTodateperiod(json.getString("toperiod"));
+                odDetailsObject.setReason(json.getString("reason"));
+            } catch (JSONException e) {
+                e.printStackTrace();
+            }
+            listOdApprove.add(odDetailsObject);
+        }
+        adapter.notifyDataSetChanged();
+    }
+    @Override
+    public void onScrollChange(View v, int scrollX, int scrollY, int oldScrollX, int oldScrollY) {
+        int totalItem = recyclerView.getAdapter().getItemCount();
+        int lastVisibleItem = ((LinearLayoutManager) recyclerView.getLayoutManager()).findLastVisibleItemPosition();
+        if (!mLoading && lastVisibleItem == totalItem - 1) {
+            mLoading = true;
+            getData();
+            mLoading = false;
+        }
+    }
+
+}
diff --git a/app/src/main/java/com/peruse/saran/amritaod/odhistory/history_cardadapter.java b/app/src/main/java/com/peruse/saran/amritaod/odhistory/history_cardadapter.java
new file mode 100644
index 0000000000000000000000000000000000000000..554711560f4d489a245f12f2caa03e4507c98fff
--- /dev/null
+++ b/app/src/main/java/com/peruse/saran/amritaod/odhistory/history_cardadapter.java
@@ -0,0 +1,88 @@
+package com.peruse.saran.amritaod.odhistory;
+
+import android.content.Context;
+import android.support.v7.widget.RecyclerView;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.Button;
+import android.widget.TextView;
+
+import com.android.volley.toolbox.ImageLoader;
+import com.android.volley.toolbox.NetworkImageView;
+import com.peruse.saran.amritaod.R;
+import com.peruse.saran.amritaod.recycler.CustomVolleyRequest;
+import com.peruse.saran.amritaod.templates.oddetailstemplate;
+
+import java.util.List;
+
+/**
+ * Created by Yazhini on 4/21/2017.
+ */
+
+public class history_cardadapter extends RecyclerView.Adapter<com.peruse.saran.amritaod.odhistory.history_cardadapter.ViewHolder> {
+    List<oddetailstemplate> listOdApprove;
+    private ImageLoader imageLoader;
+    private Context context;
+
+    public history_cardadapter(List<oddetailstemplate> listOdApprove, Context context){
+        super();
+        this.listOdApprove = listOdApprove;
+        this.context = context;
+    }
+
+
+
+    @Override
+    public com.peruse.saran.amritaod.odhistory.history_cardadapter.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
+        View v = LayoutInflater.from(parent.getContext()).inflate(R.layout.odlist, parent, false);
+        com.peruse.saran.amritaod.odhistory.history_cardadapter.ViewHolder viewHolder = new com.peruse.saran.amritaod.odhistory.history_cardadapter.ViewHolder(v);
+        return viewHolder;
+    }
+    @Override
+    public void onBindViewHolder(final com.peruse.saran.amritaod.odhistory.history_cardadapter.ViewHolder holder, int position) {
+        oddetailstemplate superHero =  listOdApprove.get(position);
+        final String id = superHero.getId();
+        imageLoader = CustomVolleyRequest.getInstance(context).getImageLoader();
+        imageLoader.get(superHero.getImageUrl(), ImageLoader.getImageListener(holder.imageView, R.drawable.image, R.drawable.loaderror));
+        holder.imageView.setImageUrl(superHero.getImageUrl(), imageLoader);
+        holder.textViewName.setText(superHero.getName());
+        holder.textViewPublisher.setText(superHero.getPublisher());
+        holder.textViewfromdate.setText(superHero.getFromdate());
+        holder.textViewtodate.setText(superHero.getTodate());
+        holder.textViewfromdateperiod.setText(superHero.getFromdateperiod());
+        holder.textViewtodateperiod.setText(superHero.getTodateperiod());
+        holder.textViewreason.setText(superHero.getReason());
+    }
+    @Override
+    public int getItemCount() {
+        return listOdApprove.size();
+    }
+
+
+    class ViewHolder extends RecyclerView.ViewHolder{
+        public NetworkImageView imageView;
+        public TextView textViewName;
+        public TextView textViewPublisher;
+        public TextView textViewfromdate;
+        public TextView textViewtodate;
+        public Button approvebutton,denybutton;
+        public TextView textViewfromdateperiod;
+        public TextView textViewtodateperiod;
+        public TextView textViewreason;
+        public ViewHolder(View itemView) {
+            super(itemView);
+            imageView = (NetworkImageView) itemView.findViewById(R.id.imageViewHero);
+            textViewName = (TextView) itemView.findViewById(R.id.textViewName);
+            textViewPublisher = (TextView) itemView.findViewById(R.id.textViewPublisher);
+            approvebutton = (Button) itemView.findViewById(R.id.odapprovebutton_id);
+            denybutton = (Button) itemView.findViewById(R.id.oddenybutton_id);
+            textViewfromdate = (TextView)itemView.findViewById(R.id.fromdateid);
+            textViewtodate = (TextView)itemView.findViewById(R.id.todateid);
+            textViewfromdateperiod = (TextView)itemView.findViewById(R.id.fromdateperiodid);
+            textViewtodateperiod = (TextView)itemView.findViewById(R.id.todateperiodid);
+            textViewreason = (TextView)itemView.findViewById(R.id.textviewreasonid);
+        }
+    }
+
+}
diff --git a/app/src/main/res/layout/activity_history_odapprove.xml b/app/src/main/res/layout/activity_history_odapprove.xml
new file mode 100644
index 0000000000000000000000000000000000000000..a2526ce74703ccd7f2ce311bade653e47b834933
--- /dev/null
+++ b/app/src/main/res/layout/activity_history_odapprove.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="utf-8"?>
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:background="@drawable/rep">
+
+    <android.support.v7.widget.RecyclerView
+        android:id="@+id/recyclerView"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        android:layout_centerInParent="true"
+        android:background="@color/cardview_light_background" />
+
+    <ProgressBar
+        android:id="@+id/progressBar1"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_centerInParent="true" />
+
+</RelativeLayout>
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_od_approve.xml b/app/src/main/res/layout/activity_od_approve.xml
index 8aa9d4e0175cfb4887abbcddebaa4efb9765f320..a2526ce74703ccd7f2ce311bade653e47b834933 100644
--- a/app/src/main/res/layout/activity_od_approve.xml
+++ b/app/src/main/res/layout/activity_od_approve.xml
@@ -1,7 +1,8 @@
 <?xml version="1.0" encoding="utf-8"?>
 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
-    android:layout_height="match_parent">
+    android:layout_height="match_parent"
+    android:background="@drawable/rep">
 
     <android.support.v7.widget.RecyclerView
         android:id="@+id/recyclerView"
diff --git a/app/src/main/res/layout/odapprovedlist.xml b/app/src/main/res/layout/odapprovedlist.xml
index 9e3ff9c1c45c3672a98bc17e034dd1bfebfad198..4ff0b5f9abd80ed963bb0984d7c1df2f950db95d 100644
--- a/app/src/main/res/layout/odapprovedlist.xml
+++ b/app/src/main/res/layout/odapprovedlist.xml
@@ -2,7 +2,8 @@
 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:card_view="http://schemas.android.com/apk/res-auto"
     android:layout_width="match_parent"
-    android:layout_height="670dp">
+    android:layout_height="670dp"
+    >
 
     <android.support.v7.widget.CardView
         android:id="@+id/cardView"
@@ -13,7 +14,8 @@
         android:layout_gravity="center_horizontal"
         card_view:cardCornerRadius="5dp"
         card_view:cardElevation="10dp"
-        card_view:cardUseCompatPadding="true">
+        card_view:cardUseCompatPadding="true"
+        >
 
         <LinearLayout
             android:layout_width="match_parent"
diff --git a/app/src/main/res/layout/activity_od_display.xml b/app/src/main/res/layout/odlist.xml
similarity index 99%
rename from app/src/main/res/layout/activity_od_display.xml
rename to app/src/main/res/layout/odlist.xml
index 49df4712d8d73fbf206750ab22af59c8843b6903..9e02d353e9ae5133a303a762cfae93c7422fb93f 100644
--- a/app/src/main/res/layout/activity_od_display.xml
+++ b/app/src/main/res/layout/odlist.xml
@@ -3,6 +3,7 @@
     xmlns:card_view="http://schemas.android.com/apk/res-auto"
     android:layout_width="match_parent"
     android:layout_height="670dp">
+
     <android.support.v7.widget.CardView
         android:id="@+id/cardView"
         android:layout_width="375dp"
@@ -166,6 +167,4 @@
     </android.support.v7.widget.CardView>
 
 
-
-
-</RelativeLayout>
+</RelativeLayout>
\ No newline at end of file