From 46c3d46f6ce0ad09b900207774f57c77df3b1738 Mon Sep 17 00:00:00 2001
From: Shubham Maheshwari <shub97@gmail.com>
Date: Sun, 23 Apr 2017 20:50:55 +0530
Subject: [PATCH] done with calculation

---
 .../example/taskboxx/AnalyticsFragment.java   | 30 +++++++++++++++----
 .../example/taskboxx/DashboardFragment.java   |  2 +-
 2 files changed, 26 insertions(+), 6 deletions(-)

diff --git a/app/src/main/java/com/example/taskboxx/AnalyticsFragment.java b/app/src/main/java/com/example/taskboxx/AnalyticsFragment.java
index 0d2d088..c109ed6 100644
--- a/app/src/main/java/com/example/taskboxx/AnalyticsFragment.java
+++ b/app/src/main/java/com/example/taskboxx/AnalyticsFragment.java
@@ -26,6 +26,7 @@ import com.google.firebase.database.FirebaseDatabase;
 import com.google.firebase.database.ValueEventListener;
 
 import java.util.ArrayList;
+import java.util.Collections;
 import java.util.HashMap;
 import java.util.Iterator;
 import java.util.Map;
@@ -40,6 +41,7 @@ public class AnalyticsFragment extends Fragment {
     private DatabaseReference mDatabase;
     private ArrayList<Float> yData = new ArrayList<>();
     private ArrayList<String> xData = new ArrayList<>();
+    HashMap<String,Integer> type;
     PieChart pieChart;
     ProgressDialog pd;
 
@@ -51,6 +53,7 @@ public class AnalyticsFragment extends Fragment {
         mAuth = FirebaseAuth.getInstance();
         mDatabase = FirebaseDatabase.getInstance().getReference();
         pd = new ProgressDialog(Dashboard.getContext1());
+        type = new HashMap<>();
 
 
         pieChart = (PieChart) rootView.findViewById(R.id.idPieChart);
@@ -72,15 +75,28 @@ public class AnalyticsFragment extends Fragment {
             public void onDataChange(DataSnapshot dataSnapshot) {
                 // This method is called once with the initial value and again
                 // whenever data at this location is updated.
-                HashMap<String,Float> values = (HashMap)dataSnapshot.child("users").child(mAuth.getCurrentUser().getUid()).child("Data").getValue();
+                ArrayList<String> occur = new ArrayList<>();
+                HashMap<String,String> values = (HashMap)dataSnapshot.child("users").child(mAuth.getCurrentUser().getUid()).child("BookmarkType").getValue();
                 Log.d(TAG, "Hashmap values: "+values);
                 Set mapSet = (Set) values.entrySet();
                 Iterator mapIterator = mapSet.iterator();
                 while(mapIterator.hasNext())
                 {
                     Map.Entry mapEntry = (Map.Entry) mapIterator.next();
-                    xData.add(mapEntry.getKey().toString());
-                    yData.add(Double.valueOf((Double)mapEntry.getValue()).floatValue());
+                    occur.add(mapEntry.getValue().toString());
+                    type.put(mapEntry.getValue().toString(), Collections.frequency(occur,mapEntry.getValue().toString()));
+                }
+                Log.d(TAG, "hashes: "+type);
+                Set mapSet1 = (Set) type.entrySet();
+                Iterator mapIterator1 = mapSet1.iterator();
+                while(mapIterator1.hasNext()){
+                    Map.Entry mapEntry1 = (Map.Entry) mapIterator1.next();
+                    Log.d(TAG, "values.size(): " + values.size());
+                    xData.add(mapEntry1.getKey().toString());
+                    Log.d(TAG, "Type: "+mapEntry1.getKey().toString());
+                    float percentValue = (int)((((float) (Integer.parseInt(mapEntry1.getValue().toString())))/values.size())*100);
+                    yData.add(percentValue);
+                    Log.d(TAG, "Percent: "+percentValue);
                 }
                 addDataSet();
             }
@@ -101,11 +117,12 @@ public class AnalyticsFragment extends Fragment {
                 for(int i = 0; i < yData.size(); i++){
                     if(yData.get(i) == Float.parseFloat(percent)){
                         pos1 = i;
+                        Log.d(TAG, "onValueSelected: "+pos1);
                         break;
                     }
                 }
-                String type = xData.get(pos1);
-                Toast.makeText(getActivity(), "You browse for " + type + "\n" + "for " + percent + "% of the time", Toast.LENGTH_LONG).show();
+                String type1 = xData.get(pos1);
+                Toast.makeText(getActivity(), "You browse for " + type1 + "\n" + "for " + percent + "% of the time", Toast.LENGTH_LONG).show();
             }
 
 
@@ -120,6 +137,9 @@ public class AnalyticsFragment extends Fragment {
 
     private void addDataSet() {
 
+        Log.d(TAG, "xData: "+xData);
+        Log.d(TAG, "yData: "+yData);
+
         final ArrayList<PieEntry> yEntrys = new ArrayList<>();
 
         for(int i = 0; i < yData.size(); i++){
diff --git a/app/src/main/java/com/example/taskboxx/DashboardFragment.java b/app/src/main/java/com/example/taskboxx/DashboardFragment.java
index 0096c6b..5ad7ca0 100644
--- a/app/src/main/java/com/example/taskboxx/DashboardFragment.java
+++ b/app/src/main/java/com/example/taskboxx/DashboardFragment.java
@@ -73,7 +73,7 @@ public class DashboardFragment extends Fragment {
             public void onItemClick(AdapterView<?> adapterView, View view, int position, long l) {
                 String selectedbookmark = bookmarks.get(position);
                 String URL;
-                if (bookmarkdetails.get(selectedbookmark).contains("http://") || bookmarkdetails.get(selectedbookmark).contains("http://")){
+                if (bookmarkdetails.get(selectedbookmark).contains("http://") || bookmarkdetails.get(selectedbookmark).contains("https://")){
                     URL = bookmarkdetails.get(selectedbookmark);
                 } else {
                     URL = "http://"+bookmarkdetails.get(selectedbookmark);
-- 
GitLab