diff --git a/app/app.iml b/app/app.iml
index 34642f2..81c682e 100644
--- a/app/app.iml
+++ b/app/app.iml
@@ -73,10 +73,11 @@
+
-
+
@@ -107,6 +108,8 @@
+
+
@@ -120,12 +123,11 @@
-
+
-
diff --git a/app/build.gradle b/app/build.gradle
index 2582b06..0e61857 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -47,7 +47,7 @@ dependencies {
compile 'com.google.android.gms:play-services-plus:8.3.0'
compile 'com.google.android.gms:play-services-location:8.3.0'
compile 'com.google.android.gms:play-services-ads:8.3.0'
- compile 'com.facebook.android:facebook-android-sdk:4.1.0'
+ compile 'com.facebook.android:facebook-android-sdk:4.8.1'
compile 'com.beardedhen:androidbootstrap:2.0.1'
compile 'com.mcxiaoke.volley:library:1.0.19'
compile 'com.android.support:design:23.1.1'
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index c1c339a..f0db859 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -24,6 +24,7 @@
+
-
getParams() {
Map params = new HashMap<>();
params.put("tag", "getincidentcount");
- params.put("uid", user.get("uid"));
- params.put("token", user.get("token"));
-
+ params.put("uid", user.get(SessionManager.KEY_UID));
+ params.put("token", user.get(SessionManager.TOKEN));
return params;
}
};
diff --git a/app/src/main/java/org/deke/risk/riskahead/MapsActivity.java b/app/src/main/java/org/deke/risk/riskahead/MapsActivity.java
index da72bd3..51bc1b7 100644
--- a/app/src/main/java/org/deke/risk/riskahead/MapsActivity.java
+++ b/app/src/main/java/org/deke/risk/riskahead/MapsActivity.java
@@ -44,6 +44,7 @@ import org.deke.risk.riskahead.helper.AppController;
import org.deke.risk.riskahead.helper.BaseActivity;
import org.deke.risk.riskahead.helper.OwnIconRendered;
import org.deke.risk.riskahead.helper.PlaceProvider;
+import org.deke.risk.riskahead.helper.SessionManager;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
@@ -154,12 +155,12 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
{
mHeatMapPositionList.add(item.getPosition());
//If the item isn't already being displayed
- if(isMarkerShown && !visibleMarkers.containsKey(item.getID()))
+ if(isMarkerShown && !visibleMarkers.containsKey(item.getId()))
{
mClusterManager.addItem(item);
mClusterManager.cluster();
- visibleMarkers.put(item.getID(),item);
+ visibleMarkers.put(item.getId(),item);
}
} else {
/*
@@ -238,29 +239,29 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
@Override
public View getInfoWindow(Marker marker) {
+ LinearLayout layCategoryColor = ((LinearLayout) myContentsView.findViewById(R.id.lay_infowindow_color));
- TextView tvTitle = ((TextView) myContentsView
- .findViewById(R.id.txt_infowindow_title));
- TextView tvSnippet = ((TextView) myContentsView
- .findViewById(R.id.txt_infowindow_description));
- TextView tvCategory = ((TextView) myContentsView
- .findViewById(R.id.txt_infowindow_category));
- LinearLayout layCategory = ((LinearLayout) myContentsView
- .findViewById(R.id.lay_infowindow_color));
- TextView tvUsername = ((TextView) myContentsView
- .findViewById(R.id.txt_infowindow_fromuser));
- TextView tvPoints = ((TextView) myContentsView
- .findViewById(R.id.txt_infowindow_points));
- RatingBar rbScore = ((RatingBar) myContentsView
- .findViewById(R.id.rb_infowindow_rating));
+ TextView tvCategory = ((TextView) myContentsView.findViewById(R.id.txt_infowindow_category));
+ TextView tvSubcategory = ((TextView) myContentsView.findViewById(R.id.txt_infowindow_subcategory));
+ TextView tvVictim = ((TextView) myContentsView.findViewById(R.id.txt_infowindow_victim));
+ TextView tvSuspect = ((TextView) myContentsView.findViewById(R.id.txt_infowindow_subject));
+ TextView tvTime = ((TextView) myContentsView.findViewById(R.id.txt_infowindow_time));
+
+ TextView tvUsername = ((TextView) myContentsView.findViewById(R.id.txt_infowindow_fromuser));
+ TextView tvScore = ((TextView) myContentsView.findViewById(R.id.txt_infowindow_points));
+ RatingBar rbScore = ((RatingBar) myContentsView.findViewById(R.id.rb_infowindow_rating));
if (clickedClusterItem != null) {
- tvTitle.setText(clickedClusterItem.getTitle());
- tvSnippet.setText(clickedClusterItem.getSnippet());
- tvCategory.setText(clickedClusterItem.getCategory());
- layCategory.setBackgroundColor(Color.parseColor("#" + clickedClusterItem.getColor()));
- tvUsername.setText(getString(R.string.lbl_mapsinfowindow_author) + ": " + clickedClusterItem.getUsername());
- tvPoints.setText(getString(R.string.lbl_mapsinfowindow_score) + ": " + clickedClusterItem.getScore());
+ layCategoryColor.setBackgroundColor(clickedClusterItem.getCategoryColor());
+
+ tvCategory.setText(clickedClusterItem.getIncidentCategoryName(getApplicationContext()));
+ tvSubcategory.setText(clickedClusterItem.getIncidentSubCategoryName(getApplicationContext()));
+ tvSuspect.setText(clickedClusterItem.getSuspectString(getApplicationContext()));
+
+ tvUsername.setText(getString(R.string.lbl_mapsinfowindow_author) + ": " + clickedClusterItem.getFromUsername());
+ tvScore.setText(getString(R.string.lbl_mapsinfowindow_score) + ": " + clickedClusterItem.getVotedScore());
+ tvVictim.setText(clickedClusterItem.getFidVictimCategory());
+ tvTime.setText(clickedClusterItem.getTimeString(getApplicationContext()));
rbScore.setRating(clickedClusterItem.getScoreStars());
}
return myContentsView;
@@ -278,7 +279,7 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
mHeatMapPositionList.add(new LatLng(53.252151,10.422109));
mProvider = new HeatmapTileProvider.Builder()
- .radius(40)
+ .radius(50)
.data(mHeatMapPositionList)
.opacity(0.7)
.build();
@@ -339,7 +340,6 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
position = new LatLng(Double.parseDouble(c.getString(1)),Double.parseDouble(c.getString(2)));
markerOptions.position(position);
markerOptions.title(c.getString(0));
- //mMarker = mMap.addMarker(markerOptions);
}
if(position!=null){
CameraUpdate cameraPosition = CameraUpdateFactory.newLatLng(position);
@@ -354,7 +354,6 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
@Override
public void onLoaderReset(Loader arg0) {
- // TODO Auto-generated method stub
}
@Override
@@ -426,6 +425,7 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
if (!error) {
JSONArray incidents = jObj.getJSONArray("message");
+
for(int i=0;i getParams() {
Map params = new HashMap<>();
- params.put("tag", "getincidentswithpositionandscore");
- params.put("uid", user.get("uid"));
- params.put("token", user.get("token"));
+ params.put("tag", "getincidentswithpositionandscorev2");
+ params.put("uid", user.get(SessionManager.KEY_UID));
+ params.put("token", user.get(SessionManager.TOKEN));
return params;
}
@@ -466,7 +466,7 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
@Override
public void onClusterItemInfoWindowClick(IncidentReport incidentReport) {
- gotoViewReportActivity(incidentReport.getID());
+ gotoViewReportActivity(incidentReport.getId());
}
@Override
diff --git a/app/src/main/java/org/deke/risk/riskahead/ReportActivity.java b/app/src/main/java/org/deke/risk/riskahead/ReportActivity.java
deleted file mode 100644
index 24c1dcd..0000000
--- a/app/src/main/java/org/deke/risk/riskahead/ReportActivity.java
+++ /dev/null
@@ -1,437 +0,0 @@
-package org.deke.risk.riskahead;
-
-import android.app.DatePickerDialog;
-import android.app.Dialog;
-import android.app.TimePickerDialog;
-import android.content.Intent;
-import android.content.SharedPreferences;
-import android.location.Address;
-import android.location.Geocoder;
-import android.os.Bundle;
-import android.util.Log;
-import android.view.View;
-import android.widget.ArrayAdapter;
-import android.widget.DatePicker;
-import android.widget.EditText;
-import android.widget.Spinner;
-import android.widget.TextView;
-import android.widget.TimePicker;
-import android.widget.Toast;
-
-import com.android.volley.Request;
-import com.android.volley.Response;
-import com.android.volley.VolleyError;
-import com.android.volley.toolbox.StringRequest;
-
-import org.deke.risk.riskahead.helper.AppConfig;
-import org.deke.risk.riskahead.helper.AppController;
-import org.deke.risk.riskahead.helper.BaseActivity;
-import org.deke.risk.riskahead.helper.TextValidator;
-import org.json.JSONArray;
-import org.json.JSONException;
-import org.json.JSONObject;
-
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Calendar;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Locale;
-import java.util.Map;
-
-public class ReportActivity extends BaseActivity {
-
- private final static String mActivityTitle = "Report";
- private final static String TAG = ReportActivity.class.getSimpleName();
- private static final int DATE_DIALOG_ID = 999;
- private static final int TIME_DIALOG_ID = 998;
-
- private static final String SAVED_TITLE = "801";
- private static final String SAVED_DESCRIPTION_LONG = "802";
- private static final String SAVED_CRIME_CATEGORY = "803";
- private static final String SAVED_DATE_INCIDENT = "804";
- private static final String SAVED_DATE_TIME = "805";
- private static final String SAVED_POSITION = "806";
- private static final String SAVED_POSITION_DETAIL = "807";
-
- private EditText txtTitle;
- private EditText txtDescription;
- private Spinner txtCrimeCategory;
- private EditText txtPosition;
- private EditText txtDay;
- private EditText txtTime;
- private TextView txtPositionDetail;
-
- private String latitude, longitude;
-
- private int year, month, day;
- private int hour, minute;
-
- public HashMap categories;
- public ArrayList incidentCategoryList;
-
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- userHasToBeLoggedIn();
-
- Intent intent = getIntent();
- String pos = intent.getStringExtra(EXTRA_MESSAGE);
- getCategories();
-
- final Calendar c = Calendar.getInstance();
- year = c.get(Calendar.YEAR);
- month = c.get(Calendar.MONTH);
- day = c.get(Calendar.DAY_OF_MONTH);
- hour = c.get(Calendar.HOUR_OF_DAY);
- minute = c.get(Calendar.MINUTE);
-
- txtTitle = (EditText) findViewById(R.id.input_report_short);
- txtDescription = (EditText) findViewById(R.id.input_report_long);
- txtCrimeCategory = (Spinner) findViewById(R.id.dd_report_category);
- txtDay = (EditText) findViewById(R.id.input_report_date);
- txtTime = (EditText) findViewById(R.id.input_report_time);
- txtPosition = (EditText) findViewById(R.id.input_report_position);
- txtPositionDetail = (TextView) findViewById(R.id.lbl_report_position_detail);
-
- if(txtDay.getText().toString().equals("")) {
- txtDay.setText(new StringBuilder()
- .append(year).append("-").append(month + 1).append("-")
- .append(day).append(" "));
- }
-
- if(txtTime.getText().toString().equals("")) {
- txtTime.setText(new StringBuilder().append(hour)
- .append(":").append(minute).append(" "));
- }
-
- findViewById(R.id.btn_report_position).setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- gotoMapActivity();
- }
- });
-
- findViewById(R.id.btn_report_report).setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- String tag_string_req = "addincidentwithposition";
- StringRequest strReq = getStringRequestAddIncidentWithPosition(txtTitle.getText().toString(), txtDescription.getText().toString(), Integer.valueOf(categories.get(txtCrimeCategory.getSelectedItem().toString())[0]), latitude, longitude, 10, 1, txtDay.getText().toString(), txtTime.getText().toString());
- AppController.getInstance().addToRequestQueue(strReq, tag_string_req);
- }
- });
-
- txtDay.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- showDialog(DATE_DIALOG_ID);
- }
- });
-
- txtPosition.setEnabled(false);
- txtTime.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- showDialog(TIME_DIALOG_ID);
- }
- });
-
- restoreSharedPreferences();
-
- if(pos != null) {
- String[] position = pos.split(":");
- Geocoder geocoder = new Geocoder(getApplicationContext(), Locale.getDefault());
-
- try {
- List addressList = geocoder.getFromLocation(Double.parseDouble(position[0]), Double.parseDouble(position[1]), 1);
-
- if (addressList != null && addressList.size() > 0) {
- Address address = addressList.get(0);
- StringBuilder sb = new StringBuilder();
-
- for (int i = 0; i < address.getMaxAddressLineIndex(); i++) {
-
- if(address.getAddressLine(i) != null) sb.append(address.getAddressLine(i)).append("\n");
-
- }
-
- //if(address.getLocality() != null) sb.append(address.getLocality()).append("\n");
- //if(address.getPostalCode() != null) sb.append(address.getPostalCode()).append("\n");
- if(address.getCountryName() != null) sb.append(address.getCountryName());
-
- txtPosition.setText(address.getLocality());
- txtPositionDetail.setText(sb.toString());
- }
-
- latitude = position[0];
- longitude = position[1];
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
-
- txtTitle.addTextChangedListener(new TextValidator(txtTitle,getApplicationContext()) {
- @Override
- public void validate(TextView textView, String text) {
- if (text.length() < 5) {
- textView.setError("Title must be at least\n" +
- "5 characters in length.");
- }
- }
- });
-
- txtDescription.addTextChangedListener(new TextValidator(txtDescription, getApplicationContext()) {
- @Override
- public void validate(TextView textView, String text) {
- if (text.length() < 5) {
- textView.setError("Description must be at least\n" +
- "5 characters in length.");
- }
- }
- });
-
-
- }
-
- @Override
- protected void onResume() {
- super.onResume();
- result.setSelection(reportAvtivityID, false);
- }
-
- @Override
- protected Dialog onCreateDialog(int id) {
- switch (id) {
- case DATE_DIALOG_ID:
- return new DatePickerDialog(this, datePickerListener,
- year, month,day);
- case TIME_DIALOG_ID:
- return new TimePickerDialog(this, timePickerListener,
- hour,minute,true);
- }
- return null;
- }
-
- private DatePickerDialog.OnDateSetListener datePickerListener
- = new DatePickerDialog.OnDateSetListener() {
-
- // when dialog box is closed, below method will be called.
- public void onDateSet(DatePicker view, int selectedYear,
- int selectedMonth, int selectedDay) {
- year = selectedYear;
- month = selectedMonth;
- day = selectedDay;
-
- txtDay.setText(new StringBuilder().append(year)
- .append("-").append(month + 1).append("-").append(day)
- .append(" "));
- }
- };
-
- private TimePickerDialog.OnTimeSetListener timePickerListener
- = new TimePickerDialog.OnTimeSetListener() {
-
- // when dialog box is closed, below method will be called.
- public void onTimeSet(TimePicker view, int selectedHour,
- int selectedMinute) {
- hour = selectedHour;
- minute = selectedMinute;
-
- txtTime.setText(new StringBuilder().append(hour)
- .append(":").append(minute).append(" "));
- }
- };
-
-
-
- @Override
- protected void onStop() {
- super.onStop();
-
- SharedPreferences.Editor editor = getPreferences(MODE_PRIVATE).edit();
- editor.putString(SAVED_TITLE, txtTitle.getText().toString());
- editor.putString(SAVED_DESCRIPTION_LONG, txtDescription.getText().toString());
- editor.putInt(SAVED_CRIME_CATEGORY, txtCrimeCategory.getSelectedItemPosition());
- editor.putString(SAVED_DATE_INCIDENT, txtDay.getText().toString());
- editor.putString(SAVED_DATE_TIME, txtTime.getText().toString());
- editor.putString(SAVED_POSITION, txtPosition.getText().toString());
- editor.putString(SAVED_POSITION_DETAIL, txtPositionDetail.getText().toString());
- editor.putString("latitude", latitude);
- editor.putString("longitude", longitude);
- editor.apply();
- }
-
- private void restoreSharedPreferences() {
- SharedPreferences prefs = getPreferences(MODE_PRIVATE);
-
- txtTitle.setText(prefs.getString(SAVED_TITLE, ""));
- txtDescription.setText(prefs.getString(SAVED_DESCRIPTION_LONG, ""));
- txtCrimeCategory.setSelection(prefs.getInt(SAVED_CRIME_CATEGORY, 0));
- txtDay.setText(prefs.getString(SAVED_DATE_INCIDENT, new StringBuilder()
- .append(year).append("-").append(month + 1).append("-")
- .append(day).append(" ").toString()));
-
- txtTime.setText(prefs.getString(SAVED_DATE_TIME, new StringBuilder().append(hour)
- .append(":").append(minute).append(" ").toString()));
-
- txtPosition.setText(prefs.getString(SAVED_POSITION, ""));
- txtPositionDetail.setText(prefs.getString(SAVED_POSITION_DETAIL, ""));
- latitude = prefs.getString("latitude","0");
- longitude = prefs.getString("longitude","0");
-
- findViewById(R.id.btn_report_position).setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- gotoMapActivity(latitude + ":" + longitude);
- }
- });
- }
-
- public void getCategories(){
- String tag_string_req = "getincidentcategories";
- StringRequest strReq = getStringRequestGetIncidentCategories();
- AppController.getInstance().addToRequestQueue(strReq, tag_string_req);
- }
-
- private StringRequest getStringRequestAddIncidentWithPosition(final String textshort, final String textlong, final int crimecategory, final String latitude, final String longitude, final int status, final int radius, final String day, final String time) {
- showDialog();
- return new StringRequest(Request.Method.POST, AppConfig.URL_REGISTER, new Response.Listener() {
-
- @Override
- public void onResponse(String response) {
- Log.d(TAG, "Report response: " + response);
- hideDialog();
- try {
- JSONObject jObj = new JSONObject(response);
- boolean error = jObj.getBoolean("error");
-
- if (!error) {
- showMessage("Report added!");
- SharedPreferences.Editor editor = getPreferences(MODE_PRIVATE).edit();
- editor.clear().commit();
- txtTitle.setText("");
- txtDescription.setText("");
- txtCrimeCategory.setSelection(0);
- txtDay.setText("");
- txtTime.setText("");
- txtPosition.setText("");
- findViewById(R.id.btn_report_position).setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- gotoMapActivity();
- }
- });
- showAd();
- gotoMapActivity(latitude+":"+longitude);
- } else {
- String errorMsg = jObj.getString("error_msg");
- Log.e(TAG, "Error adding incident (Server returned error): " + errorMsg);
- showMessage(errorMsg);
- }
- } catch (JSONException e) {
- e.printStackTrace();
- }
- }
- }, new Response.ErrorListener() {
- @Override
- public void onErrorResponse(VolleyError error) {
- Log.e(TAG, "Error adding incident: " + error.getMessage());
- showMessage(getString(R.string.errormsg_couldnotretrieve));
- hideDialog();
- }
- }) {
-
- @Override
- protected Map getParams() {
- Map params = new HashMap<>();
- params.put("tag", "addincidentwithposition");
- params.put("uid", user.get("uid"));
- params.put("token", user.get("token"));
- params.put("textshort",textshort);
- params.put("textlong",textlong);
- params.put("fiduser",user.get("uid"));
- params.put("fidcategory", Integer.toString(crimecategory));
- params.put("latitude",latitude);
- params.put("longitude",longitude);
- params.put("status",Integer.toString(status));
- params.put("radius",Integer.toString(radius));
- params.put("happened_at",year+"-"+month+"-"+day+" "+hour+":"+minute+":00");
-
- return params;
- }
- };
- }
-
-
- private StringRequest getStringRequestGetIncidentCategories() {
- showDialog();
- return new StringRequest(Request.Method.POST, AppConfig.URL_REGISTER, new Response.Listener() {
- @Override
- public void onResponse(String response) {
- Log.d(TAG, "Incident categories response: " + response);
- hideDialog();
- try {
- JSONObject jObj = new JSONObject(response);
- boolean error = jObj.getBoolean("error");
-
- if (!error) {
- JSONArray jsoncategories = jObj.getJSONArray("msg");
- categories = new HashMap<>();
- incidentCategoryList = new ArrayList<>();
-
- for(int i=0;i adapter = new ArrayAdapter<>(ReportActivity.this, android.R.layout.simple_spinner_item,incidentCategoryList);
- adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
- spinner.setAdapter(adapter);
-
- } else {
- String errorMsg = jObj.getString("error_msg");
- Log.e(TAG, "Error getting incident categories (Server returned error): " + errorMsg);
- showMessage(errorMsg);
- }
- } catch (JSONException e) {
- e.printStackTrace();
- }
-
- }
- }, new Response.ErrorListener() {
-
- @Override
- public void onErrorResponse(VolleyError error) {
- Log.e(TAG, "Error getting incident categories: " + error.getMessage());
- showMessage(getString(R.string.errormsg_couldnotretrieve));
- hideDialog();
- }
- }) {
-
- @Override
- protected Map getParams() {
- Map params = new HashMap<>();
- params.put("tag", "getincidentcategories");
- params.put("uid", user.get("uid"));
- params.put("token", user.get("token"));
-
- return params;
- }
- };
- }
-
- @Override
- protected int getLayoutResourceId() {
- return R.layout.activity_report;
- }
-
- @Override
- protected String getActivityName() {
- return mActivityTitle;
- }
-}
diff --git a/app/src/main/java/org/deke/risk/riskahead/ReportWFActivity.java b/app/src/main/java/org/deke/risk/riskahead/ReportWFActivity.java
index 24172cc..d409cec 100644
--- a/app/src/main/java/org/deke/risk/riskahead/ReportWFActivity.java
+++ b/app/src/main/java/org/deke/risk/riskahead/ReportWFActivity.java
@@ -27,6 +27,7 @@ import org.deke.risk.riskahead.helper.IncidentReport;
import org.deke.risk.riskahead.helper.AppConfig;
import org.deke.risk.riskahead.helper.AppController;
import org.deke.risk.riskahead.helper.BaseActivity;
+import org.deke.risk.riskahead.helper.SessionManager;
import org.json.JSONException;
import org.json.JSONObject;
@@ -107,7 +108,7 @@ public class ReportWFActivity extends BaseActivity implements ReportWF_1_Fragmen
}
if(address.getCountryName() != null) sb.append(address.getCountryName());
- incident.setmPosDescription(sb.toString());
+ incident.setIncidentPositionDescription(sb.toString());
}
incident.setPosition(latlngpos);
} catch (IOException e) {
@@ -267,7 +268,8 @@ public class ReportWFActivity extends BaseActivity implements ReportWF_1_Fragmen
protected Map getParams() {
Map params = new HashMap<>();
params.put("tag", "addincidentwithposition");
- params.put("uid", user.get("uid"));
+ params.put("uid", user.get(SessionManager.KEY_UID));
+ params.put("token", user.get(SessionManager.TOKEN));
return params;
}
diff --git a/app/src/main/java/org/deke/risk/riskahead/SettingsActivity.java b/app/src/main/java/org/deke/risk/riskahead/SettingsActivity.java
index 9bef09a..53e3a93 100644
--- a/app/src/main/java/org/deke/risk/riskahead/SettingsActivity.java
+++ b/app/src/main/java/org/deke/risk/riskahead/SettingsActivity.java
@@ -17,6 +17,7 @@ import com.android.volley.toolbox.StringRequest;
import org.deke.risk.riskahead.helper.AppConfig;
import org.deke.risk.riskahead.helper.AppController;
import org.deke.risk.riskahead.helper.BaseActivity;
+import org.deke.risk.riskahead.helper.SessionManager;
import org.deke.risk.riskahead.helper.TextValidator;
import org.json.JSONException;
import org.json.JSONObject;
@@ -131,11 +132,9 @@ public class SettingsActivity extends BaseActivity {
});
if(user.get("providerType") != null && user.get("providerType").equals("local")){
- findViewById(R.id.lbl_settings_password).setVisibility(View.VISIBLE);
findViewById(R.id.txt_settings_password).setVisibility(View.VISIBLE);
findViewById(R.id.btn_settings_req_password).setVisibility(View.VISIBLE);
}else{
- findViewById(R.id.lbl_settings_password).setVisibility(View.INVISIBLE);
findViewById(R.id.txt_settings_password).setVisibility(View.INVISIBLE);
findViewById(R.id.btn_settings_req_password).setVisibility(View.INVISIBLE);
}
@@ -171,7 +170,7 @@ public class SettingsActivity extends BaseActivity {
if (!error) {
showMessage(jObj.getString("msg"));
JSONObject tmpuser = jObj.getJSONObject("user");
- session.addUser(jObj.getString("uid"), tmpuser.getString("username"), tmpuser.getString("name"), tmpuser.getString("surname"), tmpuser.getString("email"), tmpuser.getString("status"), user.get("providerType"), tmpuser.getString("created_at"), tmpuser.getString("updated_at"), tmpuser.getString("token"));
+ session.addUser(jObj.getString("uid"), tmpuser.getString("username"), tmpuser.getString("name"), tmpuser.getString("surname"), tmpuser.getString("email"), tmpuser.getString("status"), user.get("providerType"), tmpuser.getString("created_at"), tmpuser.getString("updated_at"), tmpuser.getString("lastlogin_at"), tmpuser.getString("token"));
finish();
startActivity(getIntent());
} else {
@@ -199,8 +198,8 @@ public class SettingsActivity extends BaseActivity {
// Posting params to register url
Map params = new HashMap<>();
params.put("tag", "updateuser");
- params.put("uid", user.get("uid"));
- params.put("token", user.get("token"));
+ params.put("uid", user.get(SessionManager.KEY_UID));
+ params.put("token", user.get(SessionManager.TOKEN));
params.put("username", txtUsername.getText().toString());
params.put("name", txtName.getText().toString());
params.put("surname", txtSurname.getText().toString());
diff --git a/app/src/main/java/org/deke/risk/riskahead/ViewReportActivity.java b/app/src/main/java/org/deke/risk/riskahead/ViewReportActivity.java
index cd93127..ff5fc0a 100644
--- a/app/src/main/java/org/deke/risk/riskahead/ViewReportActivity.java
+++ b/app/src/main/java/org/deke/risk/riskahead/ViewReportActivity.java
@@ -20,6 +20,7 @@ import com.beardedhen.androidbootstrap.BootstrapLabel;
import org.deke.risk.riskahead.helper.AppConfig;
import org.deke.risk.riskahead.helper.AppController;
import org.deke.risk.riskahead.helper.BaseActivity;
+import org.deke.risk.riskahead.helper.SessionManager;
import org.json.JSONException;
import org.json.JSONObject;
@@ -164,8 +165,8 @@ public class ViewReportActivity extends BaseActivity {
// Posting parameters to login url
Map params = new HashMap<>();
params.put("tag", "deactivateincident");
- params.put("uid", user.get("uid"));
- params.put("token", user.get("token"));
+ params.put("uid", user.get(SessionManager.KEY_UID));
+ params.put("token", user.get(SessionManager.TOKEN));
params.put("incidentid", incidentid.toString());
@@ -260,8 +261,8 @@ public class ViewReportActivity extends BaseActivity {
// Posting parameters to login url
Map params = new HashMap<>();
params.put("tag", "getincidentfromid");
- params.put("uid", user.get("uid"));
- params.put("token", user.get("token"));
+ params.put("uid", user.get(SessionManager.KEY_UID));
+ params.put("token", user.get(SessionManager.TOKEN));
params.put("incidentid", incidentid.toString());
@@ -315,8 +316,8 @@ public class ViewReportActivity extends BaseActivity {
protected Map getParams() {
Map params = new HashMap<>();
params.put("tag", "getincidentvotescore");
- params.put("uid", user.get("uid"));
- params.put("token", user.get("token"));
+ params.put("uid", user.get(SessionManager.KEY_UID));
+ params.put("token", user.get(SessionManager.TOKEN));
params.put("incidentid", incidentid.toString());
return params;
@@ -377,8 +378,8 @@ public class ViewReportActivity extends BaseActivity {
protected Map getParams() {
Map params = new HashMap<>();
params.put("tag", "addvote");
- params.put("uid", user.get("uid"));
- params.put("token", user.get("token"));
+ params.put("uid", user.get(SessionManager.KEY_UID));
+ params.put("token", user.get(SessionManager.TOKEN));
params.put("incidentid", incidentid.toString());
params.put("votetype", votetype);
diff --git a/app/src/main/java/org/deke/risk/riskahead/adapter/ReportListAdapter.java b/app/src/main/java/org/deke/risk/riskahead/adapter/ReportListAdapter.java
index ff2d4a1..3915b5e 100644
--- a/app/src/main/java/org/deke/risk/riskahead/adapter/ReportListAdapter.java
+++ b/app/src/main/java/org/deke/risk/riskahead/adapter/ReportListAdapter.java
@@ -58,19 +58,17 @@ public class ReportListAdapter extends BaseAdapter {
LinearLayout ll = (LinearLayout) vi.findViewById(R.id.lay_reportlist_color);
ImageView iv = (ImageView) vi.findViewById(R.id.ic_reportlist_row);
+ IncidentReport item = new IncidentReport(data.get(position));
- try {
- titleText.setText(data.get(position).getString("created_at")+" : "+data.get(position).getString("text_short"));
- itemText.setText(data.get(position).getString("text_long"));
- categoryText.setText(data.get(position).getString("cat_name"));
- titleText.setTypeface(null, Typeface.BOLD);
- ll.setBackgroundColor(Color.parseColor("#" + data.get(position).getString("color")));
+ titleText.setText(item.getIncidentCategoryName(vi.getContext()));
+ itemText.setText(item.getIncidentSubCategoryName(vi.getContext()));
+ categoryText.setText(item.getTimeString(vi.getContext()));
+
+ titleText.setTypeface(null, Typeface.BOLD);
+ ll.setBackgroundColor(item.getCategoryColor());
+
+ iv.setBackground(parent.getContext().getDrawable(item.getIconDrawable()));
- IncidentReport item = new IncidentReport(data.get(position));
- iv.setBackground(parent.getContext().getDrawable(item.getIconDrawable()));
- } catch (JSONException e) {
- e.printStackTrace();
- }
return vi;
}
}
\ No newline at end of file
diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/FacebookButtonFragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/FacebookButtonFragment.java
index bcc1b20..73db232 100644
--- a/app/src/main/java/org/deke/risk/riskahead/fragment/FacebookButtonFragment.java
+++ b/app/src/main/java/org/deke/risk/riskahead/fragment/FacebookButtonFragment.java
@@ -1,25 +1,32 @@
package org.deke.risk.riskahead.fragment;
-import android.app.Activity;
+
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.support.v4.app.Fragment;
+import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import com.beardedhen.androidbootstrap.BootstrapButton;
+import com.facebook.AccessToken;
import com.facebook.CallbackManager;
import com.facebook.FacebookCallback;
import com.facebook.FacebookException;
import com.facebook.FacebookSdk;
+import com.facebook.GraphRequest;
+import com.facebook.GraphResponse;
+import com.facebook.login.LoginBehavior;
import com.facebook.login.LoginManager;
import com.facebook.login.LoginResult;
import org.deke.risk.riskahead.LoginActivity;
import org.deke.risk.riskahead.R;
+import org.json.JSONException;
+import org.json.JSONObject;
import java.util.Arrays;
@@ -46,7 +53,7 @@ public class FacebookButtonFragment extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
view = inflater.inflate(R.layout.fragment_facebook_button, container, false);
- initFacebookButton();
+
return view;
}
@@ -57,20 +64,16 @@ public class FacebookButtonFragment extends Fragment {
}
@Override
- public void onAttach(Activity activity) {
- super.onAttach(activity);
- try {
- mListener = (OnFragmentInteractionListener) activity;
- } catch (ClassCastException e) {
- throw new ClassCastException(activity.toString()
- + " must implement OnFragmentInteractionListener");
- }
-
- FacebookSdk.sdkInitialize(activity.getApplicationContext());
+ public void onResume() {
+ super.onResume();
+ FacebookSdk.sdkInitialize(getContext());
callbackManager = CallbackManager.Factory.create();
+ initFacebookButton();
+
+
}
- @Override
+ @Override
public void onDetach() {
super.onDetach();
mListener = null;
@@ -78,6 +81,7 @@ public class FacebookButtonFragment extends Fragment {
public interface OnFragmentInteractionListener {
void onFragmentInteraction(Uri uri);
+
}
private void initFacebookButton() {
@@ -86,7 +90,8 @@ public class FacebookButtonFragment extends Fragment {
btnLoginFB.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
- LoginManager.getInstance().logInWithReadPermissions(getActivity(), Arrays.asList("public_profile", "user_friends"));
+ LoginManager.getInstance().setLoginBehavior(LoginBehavior.WEB_ONLY);
+ LoginManager.getInstance().logInWithReadPermissions(getActivity(), Arrays.asList("public_profile", "email"));
}
});
@@ -94,18 +99,38 @@ public class FacebookButtonFragment extends Fragment {
new FacebookCallback() {
@Override
public void onSuccess(LoginResult loginResult) {
- ((LoginActivity) getActivity()).handleSocialMediaLogin(loginResult.getAccessToken().getToken(),"facebook",loginResult.getAccessToken().getUserId(),"");
+ getUserMailAndLogin(loginResult.getAccessToken());
}
@Override
public void onCancel() {
+ Log.d("FB","OnCancel");
((LoginActivity) getActivity()).showMessage("Facebook LogIn canceled");
}
@Override
public void onError(FacebookException exception) {
+ Log.d("FB","OnError");
((LoginActivity) getActivity()).showMessage("Error while SignIn: ErrorMsg: " + exception.toString());
}
});
}
+
+ private void getUserMailAndLogin(AccessToken accesstoken){
+ GraphRequest request = GraphRequest.newMeRequest(accesstoken, new GraphRequest.GraphJSONObjectCallback() {
+ @Override
+ public void onCompleted(JSONObject objects, GraphResponse response) {
+
+ try {
+ ((LoginActivity) getActivity()).handleSocialMediaLogin(objects.getString("id"), "facebook", objects.getString("first_name"), objects.getString("email"));
+ } catch (JSONException e) {
+ e.printStackTrace();
+ }
+ }
+ });
+ Bundle parameters = new Bundle();
+ parameters.putString("fields", "id,first_name,last_name,email");
+ request.setParameters(parameters);
+ request.executeAsync();
+ }
}
diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/GooglePlusButtonFragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/GooglePlusButtonFragment.java
index df0714f..1f1bd6f 100644
--- a/app/src/main/java/org/deke/risk/riskahead/fragment/GooglePlusButtonFragment.java
+++ b/app/src/main/java/org/deke/risk/riskahead/fragment/GooglePlusButtonFragment.java
@@ -72,14 +72,15 @@ public class GooglePlusButtonFragment extends Fragment implements GoogleApiClien
performClickAction();
}
});
- updateUI(mGoogleApiClient.isConnected());
return view;
}
private void performClickAction() {
if(mGoogleApiClient.isConnected()){
- signOutFromGplus();
+ //signOutFromGplus();
+ Person currentPerson = getProfileInformation();
+ ((LoginActivity) getActivity()).handleSocialMediaLogin(currentPerson.getId(),"google",currentPerson.getDisplayName(),Plus.AccountApi.getAccountName(mGoogleApiClient));
}else{
signInWithGplus();
}
@@ -143,23 +144,14 @@ public class GooglePlusButtonFragment extends Fragment implements GoogleApiClien
if(mSignInClicked) ((LoginActivity) getActivity()).handleSocialMediaLogin(currentPerson.getId(),"google",currentPerson.getDisplayName(),Plus.AccountApi.getAccountName(mGoogleApiClient));
mSignInClicked = false;
- updateUI(true);
}
@Override
public void onConnectionSuspended(int arg0) {
mGoogleApiClient.connect();
- updateUI(false);
-
}
- private void updateUI(boolean isSignedIn) {
- if (isSignedIn) {
- this.btnSignIn.setText("Log out from G+");
- } else {
- this.btnSignIn.setText("Google+");
- }
- }
+
/**
* Sign-in into google
@@ -220,7 +212,14 @@ public class GooglePlusButtonFragment extends Fragment implements GoogleApiClien
private void signOutFromGplus() {
if (mGoogleApiClient.isConnected()) {
mGoogleApiClient.clearDefaultAccountAndReconnect();
- updateUI(false);
+ }
+ }
+
+ public void logoutFromGplus() {
+ if (mGoogleApiClient.isConnected()) {
+ Plus.AccountApi.clearDefaultAccount(mGoogleApiClient);
+ mGoogleApiClient.disconnect();
+ mGoogleApiClient.connect();
}
}
diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/ProfileStatisticsFragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/ProfileStatisticsFragment.java
index 112a234..e0d8b92 100644
--- a/app/src/main/java/org/deke/risk/riskahead/fragment/ProfileStatisticsFragment.java
+++ b/app/src/main/java/org/deke/risk/riskahead/fragment/ProfileStatisticsFragment.java
@@ -17,6 +17,7 @@ import org.deke.risk.riskahead.ProfileActivity;
import org.deke.risk.riskahead.R;
import org.deke.risk.riskahead.helper.AppConfig;
import org.deke.risk.riskahead.helper.AppController;
+import org.deke.risk.riskahead.helper.SessionManager;
import org.json.JSONException;
import org.json.JSONObject;
@@ -90,8 +91,8 @@ public class ProfileStatisticsFragment extends Fragment {
// Posting params to register url
Map params = new HashMap<>();
params.put("tag", "getuserstats");
- params.put("uid", parent.user.get("uid"));
- params.put("token", parent.user.get("token"));
+ params.put("uid", parent.user.get(SessionManager.KEY_UID));
+ params.put("token", parent.user.get(SessionManager.TOKEN));
return params;
}
diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportListFragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportListFragment.java
index 6e8e619..0b1364c 100644
--- a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportListFragment.java
+++ b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportListFragment.java
@@ -20,6 +20,7 @@ import org.deke.risk.riskahead.R;
import org.deke.risk.riskahead.helper.AppConfig;
import org.deke.risk.riskahead.helper.AppController;
import org.deke.risk.riskahead.adapter.ReportListAdapter;
+import org.deke.risk.riskahead.helper.SessionManager;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
@@ -58,7 +59,7 @@ public class ReportListFragment extends Fragment{
@Override
public void onItemClick(AdapterView> parentview, View view, int position, long id) {
try {
- parent.gotoViewReportActivity(resultList.get(position).getInt("uid"));
+ parent.gotoViewReportActivity(resultList.get(position).getInt("id"));
} catch (JSONException e) {
e.printStackTrace();
}
@@ -120,8 +121,8 @@ public class ReportListFragment extends Fragment{
protected Map getParams() {
Map params = new HashMap<>();
params.put("tag", "getincidentsfromuserid");
- params.put("uid", parent.user.get("uid"));
- params.put("token", parent.user.get("token"));
+ params.put("uid", parent.user.get(SessionManager.KEY_UID));
+ params.put("token", parent.user.get(SessionManager.TOKEN));
return params;
}
diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_1_Fragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_1_Fragment.java
index 67174cc..46c1354 100644
--- a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_1_Fragment.java
+++ b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_1_Fragment.java
@@ -132,7 +132,7 @@ public class ReportWF_1_Fragment extends Fragment{
spinner_sub_1.setVisibility(View.VISIBLE);
}
- incident.setmFidCat1_Main(position);
+ incident.setFidIncidentCategory(position);
isMandatoryCategoryFilled = false;
checkIfFinished();
}
@@ -188,10 +188,10 @@ public class ReportWF_1_Fragment extends Fragment{
checkIfFinished();
}
- if ((position == 0) && (incident.getmFidCat1_Sub() != 0))
- crimeSubCategory.setSelection(incident.getmFidCat1_Sub());
+ if ((position == 0) && (incident.getFidIncidentSubCategory() != 0))
+ crimeSubCategory.setSelection(incident.getFidIncidentSubCategory());
- incident.setmFidCat1_Sub(position);
+ incident.setFidIncidentSubCategory(position);
}
@Override
@@ -224,19 +224,19 @@ public class ReportWF_1_Fragment extends Fragment{
if(incident != null){
if(incident.getPosition() != null){
timeLayout.setVisibility(View.VISIBLE);
- txtPositionInformation.setText(incident.getmPosDescription());
+ txtPositionInformation.setText(incident.getIncidentPositionDescription());
}
- if(incident.getmFidCat1_Main() != 0){
- crimeCategory.setSelection(incident.getmFidCat1_Main());
+ if(incident.getFidIncidentCategory() != 0){
+ crimeCategory.setSelection(incident.getFidIncidentCategory());
}
- if(incident.getmFidCat1_Sub() != 0){
- crimeSubCategory.setSelection(incident.getmFidCat1_Sub());
+ if(incident.getFidIncidentSubCategory() != 0){
+ crimeSubCategory.setSelection(incident.getFidIncidentSubCategory());
}
- if(incident.getmCat1_Sub_etc() != null){
- crimeSubOther.setText(incident.getmCat1_Sub_etc());
+ if(incident.getEtcIncidentCategory() != null){
+ crimeSubOther.setText(incident.getEtcIncidentCategory());
}
}
@@ -247,9 +247,9 @@ public class ReportWF_1_Fragment extends Fragment{
public void onPause() {
super.onPause();
- incident.setmFidCat1_Main(crimeCategory.getSelectedItemPosition());
- incident.setmFidCat1_Sub(crimeSubCategory.getSelectedItemPosition());
- incident.setmCat1_Sub_etc(crimeSubOther.getText().toString());
+ incident.setFidIncidentCategory(crimeCategory.getSelectedItemPosition());
+ incident.setFidIncidentSubCategory(crimeSubCategory.getSelectedItemPosition());
+ incident.setEtcIncidentCategory(crimeSubOther.getText().toString());
((ReportWFActivity)getActivity()).setIncident(incident);
}
diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_2_Fragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_2_Fragment.java
index 115b2d1..1c26093 100644
--- a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_2_Fragment.java
+++ b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_2_Fragment.java
@@ -197,7 +197,7 @@ public class ReportWF_2_Fragment extends Fragment {
- incident.setmFidTimeMainCat(position);
+ incident.setFidTimeCategory(position);
}
@Override
@@ -215,11 +215,11 @@ public class ReportWF_2_Fragment extends Fragment {
public void onItemSelected(AdapterView> parent, View view, int position, long id) {
isMandatoryCategoryFilled = !((SpinnerHintAdapter) timeSubCategory.getAdapter()).isInInitialState();
- if ((position == 0) && (incident.getmFidTimeSubCat() != 0))
- timeSubCategory.setSelection(incident.getmFidTimeSubCat());
+ if ((position == 0) && (incident.getFidTimeSubCategory() != 0))
+ timeSubCategory.setSelection(incident.getFidTimeSubCategory());
checkIfFinished();
- incident.setmFidTimeSubCat(position);
+ incident.setFidTimeSubCategory(position);
}
@Override
@@ -248,12 +248,12 @@ public class ReportWF_2_Fragment extends Fragment {
incident = ((ReportWFActivity)getActivity()).getIncident();
if(incident != null){
- if(incident.getmFidTimeMainCat() != 0){
- timeCategory.setSelection(incident.getmFidTimeMainCat());
+ if(incident.getFidTimeCategory() != 0){
+ timeCategory.setSelection(incident.getFidTimeCategory());
}
- if(incident.getmFidTimeSubCat() != 0){
- timeSubCategory.setSelection(incident.getmFidTimeSubCat());
+ if(incident.getFidTimeSubCategory() != 0){
+ timeSubCategory.setSelection(incident.getFidTimeSubCategory());
}
if(incident.getFromDate() != null && !incident.getFromDate().equals("")){
@@ -280,8 +280,8 @@ public class ReportWF_2_Fragment extends Fragment {
public void onPause() {
super.onPause();
- incident.setmFidTimeMainCat(timeCategory.getSelectedItemPosition());
- incident.setmFidTimeSubCat(timeSubCategory.getSelectedItemPosition());
+ incident.setFidTimeCategory(timeCategory.getSelectedItemPosition());
+ incident.setFidTimeSubCategory(timeSubCategory.getSelectedItemPosition());
incident.setFromDate(inputDateFrom.getText().toString());
incident.setFromTime(inputTimeFrom.getText().toString());
incident.setToDate(inputDateTo.getText().toString());
diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_3_Fragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_3_Fragment.java
index 5648572..4ebc96c 100644
--- a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_3_Fragment.java
+++ b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_3_Fragment.java
@@ -128,7 +128,7 @@ public class ReportWF_3_Fragment extends Fragment {
}
checkIfFinished();
- incident.setmFidSuspectMainCat(position);
+ incident.setFidSuspectCategory(position);
}
@Override
@@ -147,11 +147,11 @@ public class ReportWF_3_Fragment extends Fragment {
isMandatoryCategoryFilled = !((SpinnerHintAdapter) suspectOriginCategory.getAdapter()).isInInitialState();
- if ((position == 0) && (incident.getmFidTimeSubCat() != 0))
- suspectOriginCategory.setSelection(incident.getmFidSuspectOrigin());
+ if ((position == 0) && (incident.getFidSuspectSubCategory() != 0))
+ suspectOriginCategory.setSelection(incident.getFidSuspectSubCategory());
checkIfFinished();
- incident.setmFidTimeSubCat(position);
+ incident.setFidSuspectSubCategory(position);
}
@Override
@@ -180,9 +180,9 @@ public class ReportWF_3_Fragment extends Fragment {
incident = ((ReportWFActivity)getActivity()).getIncident();
if(incident != null){
- if(incident.getmFidSuspectMainCat() != 0) suspectCategory.setSelection(incident.getmFidSuspectMainCat());
- if(incident.getmFidSuspectOrigin() != 0) suspectOriginCategory.setSelection(incident.getmFidSuspectOrigin());
- if(incident.getmSuspectEtc() != null && !incident.getmSuspectEtc().equals("")) suspectEtcInput.setText(incident.getmSuspectEtc());
+ if(incident.getFidSuspectCategory() != 0) suspectCategory.setSelection(incident.getFidSuspectCategory());
+ if(incident.getFidSuspectSubCategory() != 0) suspectOriginCategory.setSelection(incident.getFidSuspectSubCategory());
+ if(incident.getEtcSuspectCategory() != null && !incident.getEtcSuspectCategory().equals("")) suspectEtcInput.setText(incident.getEtcSuspectCategory());
}
checkIfFinished();
@@ -192,9 +192,9 @@ public class ReportWF_3_Fragment extends Fragment {
public void onPause() {
super.onPause();
- incident.setmFidSuspectMainCat(suspectCategory.getSelectedItemPosition());
- incident.setmFidSuspectOrigin(suspectOriginCategory.getSelectedItemPosition());
- incident.setmSuspectEtc(suspectEtcInput.getText().toString());
+ incident.setFidSuspectCategory(suspectCategory.getSelectedItemPosition());
+ incident.setFidSuspectSubCategory(suspectOriginCategory.getSelectedItemPosition());
+ incident.setEtcSuspectCategory(suspectEtcInput.getText().toString());
((ReportWFActivity)getActivity()).setIncident(incident);
}
diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/Top10Fragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/Top10Fragment.java
index 17938b1..9393b54 100644
--- a/app/src/main/java/org/deke/risk/riskahead/fragment/Top10Fragment.java
+++ b/app/src/main/java/org/deke/risk/riskahead/fragment/Top10Fragment.java
@@ -19,6 +19,7 @@ import org.deke.risk.riskahead.R;
import org.deke.risk.riskahead.helper.AppConfig;
import org.deke.risk.riskahead.helper.AppController;
import org.deke.risk.riskahead.adapter.Top10ListAdapter;
+import org.deke.risk.riskahead.helper.SessionManager;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
@@ -70,9 +71,9 @@ public class Top10Fragment extends Fragment {
JSONObject jObj = new JSONObject(response);
boolean error = jObj.getBoolean("error");
if (!error) {
- JSONArray users = jObj.getJSONArray("msg");
+ JSONArray users = jObj.getJSONArray("top10");
resultList = new ArrayList<>();
- Log.d(TAG,"Writing stuff in resultList!");
+
for(int i=0;i getParams() {
Map params = new HashMap<>();
params.put("tag", "gettop10");
- params.put("uid", parent.user.get("uid"));
- params.put("token", parent.user.get("token"));
+ params.put("uid", parent.user.get(SessionManager.KEY_UID));
+ params.put("token", parent.user.get(SessionManager.TOKEN));
return params;
}
diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/TwitterButtonFragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/TwitterButtonFragment.java
index fce3f91..2513a33 100644
--- a/app/src/main/java/org/deke/risk/riskahead/fragment/TwitterButtonFragment.java
+++ b/app/src/main/java/org/deke/risk/riskahead/fragment/TwitterButtonFragment.java
@@ -75,7 +75,7 @@ public class TwitterButtonFragment extends Fragment {
String token = authToken.token;
String secret = authToken.secret;
- ((LoginActivity) getActivity()).handleSocialMediaLogin((Long.toString(session.getUserId())),"twitter",session.getUserName(),"");
+ ((LoginActivity) getActivity()).handleSocialMediaLogin((Long.toString(session.getUserId())), "twitter", session.getUserName(), "");
}
@Override
diff --git a/app/src/main/java/org/deke/risk/riskahead/helper/BaseActivity.java b/app/src/main/java/org/deke/risk/riskahead/helper/BaseActivity.java
index 9e463e3..7680c43 100644
--- a/app/src/main/java/org/deke/risk/riskahead/helper/BaseActivity.java
+++ b/app/src/main/java/org/deke/risk/riskahead/helper/BaseActivity.java
@@ -24,6 +24,9 @@ import android.widget.Toast;
import com.google.android.gms.ads.AdListener;
import com.google.android.gms.ads.AdRequest;
import com.google.android.gms.ads.InterstitialAd;
+import com.google.android.gms.common.ConnectionResult;
+import com.google.android.gms.common.api.GoogleApiClient;
+import com.google.android.gms.plus.Plus;
import com.mikepenz.google_material_typeface_library.GoogleMaterial;
import com.mikepenz.iconics.context.IconicsLayoutInflater;
import com.mikepenz.materialdrawer.AccountHeader;
@@ -44,6 +47,7 @@ import org.deke.risk.riskahead.ReportWFActivity;
import org.deke.risk.riskahead.SettingsActivity;
import org.deke.risk.riskahead.SubscriptionsActivity;
import org.deke.risk.riskahead.ViewReportActivity;
+import org.deke.risk.riskahead.fragment.GooglePlusButtonFragment;
import java.util.HashMap;
@@ -64,6 +68,7 @@ public abstract class BaseActivity extends AppCompatActivity {
public HashMap user;
public ProgressDialog pDialog;
+ GoogleApiClient mGoogleApiClient;
private final static int INTERVAL = 1000 * 300; //300 seconds
InterstitialAd mInterstitialAd;
@@ -218,16 +223,13 @@ public abstract class BaseActivity extends AppCompatActivity {
intent = new Intent(BaseActivity.this, SubscriptionsActivity.class);
break;
case 7:
- session.removeUser();
- session.setLogin(false);
- intent = new Intent(BaseActivity.this, LoginActivity.class);
- intent.putExtra(EXTRA_MESSAGE, "login");
+ logoutUser();
break;
default:
Log.d("Unknown switch page: ", Integer.toString(position));
break;
}
- BaseActivity.this.startActivity(intent);
+ if(intent != null) BaseActivity.this.startActivity(intent);
return false;
}
}).build();
@@ -276,9 +278,9 @@ public abstract class BaseActivity extends AppCompatActivity {
public void logout() {
session.setLogin(false);
- Intent intent = new Intent(this, LoginActivity.class);
+ Intent intent = new Intent(BaseActivity.this, LoginActivity.class);
intent.putExtra(EXTRA_MESSAGE, "login");
- startActivity(intent);
+ BaseActivity.this.startActivity(intent);
finish();
}
diff --git a/app/src/main/java/org/deke/risk/riskahead/helper/IncidentReport.java b/app/src/main/java/org/deke/risk/riskahead/helper/IncidentReport.java
index 04c691b..b5feb7c 100644
--- a/app/src/main/java/org/deke/risk/riskahead/helper/IncidentReport.java
+++ b/app/src/main/java/org/deke/risk/riskahead/helper/IncidentReport.java
@@ -1,6 +1,7 @@
package org.deke.risk.riskahead.helper;
-import android.graphics.drawable.Drawable;
+import android.content.Context;
+import android.graphics.Color;
import com.google.android.gms.maps.model.BitmapDescriptor;
import com.google.android.gms.maps.model.BitmapDescriptorFactory;
@@ -16,107 +17,124 @@ import org.json.JSONObject;
*/
public class IncidentReport implements ClusterItem {
- private LatLng mPosition;
- private Integer mID;
- private String mTitle;
- private String mDescription;
- private String mFidUser;
- private String mFidCategory;
- private String mHappenedAt;
- private String mCreatedAt;
- private String mUpdatedAt;
- private String mRadius;
- private String mCatName;
- private String mCatDescription;
- private String mColor;
- private String mUsername;
- private int mScore;
+ private int id;
+ private LatLng incidentPosition;
+ private String incidentPositionDescription;
+ private int fidFromUser;
+ private String fromUsername;
- private int mFidCat1_Main;
- private int mFidCat1_Sub;
- private String mCat1_Sub_etc;
- private String mPosDescription;
+ private int votedScore;
- private int mFidTimeMainCat;
- private int mFidTimeSubCat;
+ private String createdAt;
+ private String updatedAt;
+
+ private int fidIncidentCategory;
+ private int fidIncidentSubCategory;
+ private String etcIncidentCategory;
+
+ private int fidTimeCategory;
+ private int fidTimeSubCategory;
private String fromTime;
private String fromDate;
private String toTime;
private String toDate;
- private int mFidSuspectMainCat;
- private int mFidSuspectOrigin;
- private String mSuspectEtc;
+ private int fidSuspectCategory;
+ private int fidSuspectSubCategory;
+ private String etcSuspectCategory;
+ private int fidSuspectWeaponCategory;
+ private int fidSuspectWeaponSubCategory;
+ private String etcSuspectWeaponCategory;
+ private int fidSuspectCountCategory;
+ private String etcSuspectCountCategory;
- private BitmapDescriptor icon;
+ private int fidVictimCategory;
+ private int fidVictimOriginCategory;
+ private String etcVictimOriginCategory;
- public IncidentReport(JSONObject mIncident, LatLng pos) {
+ private int fidSuspectTransportationCategory;
+ private String etcSuspectTransportationCategory;
- try {
- this.mID = mIncident.getInt("uid");
- this.mTitle = mIncident.getString("text_short");
- this.mDescription = mIncident.getString("text_long");
- this.mFidUser = mIncident.getString("fid_user");
- this.mFidCategory = mIncident.getString("fid_category");
- this.mHappenedAt = mIncident.getString("happened_at");
- this.mCreatedAt = mIncident.getString("created_at");
- this.mUpdatedAt = mIncident.getString("updated_at");
- this.mRadius = mIncident.getString("radius");
- this.mCatName = mIncident.getString("cat_name");
- this.mCatDescription = mIncident.getString("cat_description");
- this.mColor = mIncident.getString("color");
- this.mUsername = mIncident.getString("username");
- this.mScore = mIncident.getInt("votescore");
- this.mPosition = pos;
- } catch (JSONException e) {
- e.printStackTrace();
- }
+ private int fidVictimBelongingCategory;
+ private String etcVictimBelongingCategory;
+
+ private int fidSuspectCharacteristicsCategory;
+ private String etcSuspectCharacteristicsCategory;
+
+ private int fidOthersCategory;
+ private String etcOthersCategory;
+
+ public IncidentReport(JSONObject mIncident, LatLng position) {
+ setAllAttributes(mIncident, position);
}
public IncidentReport(JSONObject mIncident) {
-
- try {
- this.mID = mIncident.getInt("uid");
- this.mTitle = mIncident.getString("text_short");
- this.mDescription = mIncident.getString("text_long");
- this.mFidUser = mIncident.getString("fid_user");
- this.mFidCategory = mIncident.getString("fid_category");
- this.mHappenedAt = mIncident.getString("happened_at");
- this.mCreatedAt = mIncident.getString("created_at");
- this.mUpdatedAt = mIncident.getString("updated_at");
- this.mRadius = mIncident.getString("radius");
- this.mCatName = mIncident.getString("cat_name");
- this.mCatDescription = mIncident.getString("cat_description");
- this.mColor = mIncident.getString("color");
- this.mUsername = mIncident.getString("username");
- this.mScore = mIncident.getInt("votescore");
- this.mPosition = new LatLng(mIncident.getDouble("latitude"),mIncident.getDouble("longitude"));
- } catch (JSONException e) {
- e.printStackTrace();
- }
+ setAllAttributes(mIncident,null);
}
public IncidentReport(){
}
- @Override
- public LatLng getPosition() {
- return mPosition;
+ private void setAllAttributes(JSONObject mIncident, LatLng position) {
+ try {
+ this.id = mIncident.getInt("id");
+
+ if(position != null) {
+ this.incidentPosition = position;
+ }else{
+ this.incidentPosition = new LatLng(mIncident.getDouble("latitude"),mIncident.getDouble("longitude"));
+ }
+
+ this.votedScore = mIncident.getInt("id");
+ this.createdAt = mIncident.getString("created_at");
+ this.updatedAt = mIncident.getString("updated_at");
+ this.fromUsername = mIncident.getString("username");
+
+ this.fidFromUser = mIncident.getInt("fid_user");
+ this.fidIncidentCategory = mIncident.getInt("fid_incident");
+ this.fidIncidentSubCategory = mIncident.getInt("fid_subincident");
+ this.etcIncidentCategory = mIncident.getString("etc_incident");
+ this.fidTimeCategory = mIncident.getInt("fid_time");
+ this.fidTimeSubCategory = mIncident.getInt("fid_subtime");
+ this.fromTime = mIncident.getString("happened_from_datetime").split(" ")[1];
+ this.fromDate = mIncident.getString("happened_from_datetime").split(" ")[0];
+ this.toTime = mIncident.getString("happened_to_datetime").split(" ")[1];
+ this.toDate = mIncident.getString("happened_to_datetime").split(" ")[0];
+ this.fidSuspectCategory = mIncident.getInt("fid_suspect");
+ this.fidSuspectSubCategory = mIncident.getInt("fid_subsuspect");
+ this.etcSuspectCategory = mIncident.getString("etc_suspect");
+ this.fidSuspectWeaponCategory = mIncident.getInt("fid_weapon");
+ this.fidSuspectWeaponSubCategory = mIncident.getInt("fid_subweapon");
+ this.etcSuspectWeaponCategory = mIncident.getString("etc_weapon");
+ this.fidSuspectCountCategory = mIncident.getInt("fid_suspectcount");
+ this.etcSuspectCountCategory = mIncident.getString("etc_suspectcount");
+ this.fidVictimCategory = mIncident.getInt("fid_victim");
+ this.fidVictimOriginCategory = mIncident.getInt("fid_victimorigin");
+ this.etcVictimOriginCategory = mIncident.getString("etc_victimorigin");
+ this.fidSuspectTransportationCategory = mIncident.getInt("fid_suspecttransportation");
+ this.etcSuspectTransportationCategory = mIncident.getString("etc_suspecttransportation");
+ this.fidVictimBelongingCategory = mIncident.getInt("fid_victimbelonging");
+ this.etcVictimBelongingCategory = mIncident.getString("etc_victimbelonging");
+ this.fidSuspectCharacteristicsCategory = mIncident.getInt("fid_suspectcharacteristics");
+ this.etcSuspectCharacteristicsCategory = mIncident.getString("etc_suspectcharacteristics");
+ this.fidOthersCategory = mIncident.getInt("fid_others");
+ this.etcOthersCategory = mIncident.getString("etc_others");
+ } catch (JSONException e) {
+ e.printStackTrace();
+ }
}
- public void setPosition(LatLng pos) {
- mPosition = pos;
- }
+
public BitmapDescriptor getIcon() {
BitmapDescriptor mIcon;
- switch (Integer.valueOf(this.mFidCategory)) {
+ switch (Integer.valueOf(this.fidIncidentCategory)) {
case 1:
mIcon = BitmapDescriptorFactory.fromResource(R.drawable.icon_general);
break;
@@ -142,10 +160,11 @@ public class IncidentReport implements ClusterItem {
return mIcon;
}
+
public int getIconDrawable() {
int mIcon;
- switch (Integer.valueOf(this.mFidCategory)) {
+ switch (Integer.valueOf(this.fidIncidentCategory)) {
case 1:
mIcon = R.drawable.icon_general;
break;
@@ -171,104 +190,222 @@ public class IncidentReport implements ClusterItem {
return mIcon;
}
- public String getSnippet() {
- return this.mDescription;
- }
-
- public String getTitle() {
- return this.mTitle;
- }
-
- public String getCategory(){
- return this.mCatName;
- }
-
- public int getScore() { return this.mScore; }
-
- public String getUsername() { return this.mUsername; }
-
public float getScoreStars() {
- if(mScore > 0){
+ if(this.votedScore > 0){
return 0.5f;
- }else if(mScore > 2){
+ }else if(this.votedScore > 1){
return 1.0f;
- }else if(mScore > 4){
+ }else if(this.votedScore > 2){
return 1.5f;
- }else if(mScore > 6){
+ }else if(this.votedScore > 3){
return 2.0f;
- }else if(mScore > 8){
+ }else if(this.votedScore > 4){
return 2.5f;
- }else if(mScore > 10){
+ }else if(this.votedScore > 5){
return 3.0f;
- }else if(mScore > 12){
+ }else if(this.votedScore > 6){
return 3.5f;
- }else if(mScore > 14){
+ }else if(this.votedScore > 7){
return 4.0f;
- }else if(mScore > 16){
+ }else if(this.votedScore > 8){
return 4.5f;
- }else if(mScore > 18){
+ }else if(this.votedScore > 9){
return 5.0f;
}else{
return 0f;
}
}
- public String getColor(){
- return this.mColor;
+ public void resetDatetime() {
+ toTime = "";
+ toDate = "";
+ fromTime = "";
+ fromDate = "";
}
- public Integer getID() {
- return mID;
+ @Override
+ public LatLng getPosition() {
+ return this.incidentPosition;
}
-
-
- public String getmPosDescription() {
- return mPosDescription;
+ public void setPosition(LatLng position) {
+ this.incidentPosition = position;
}
- public void setmPosDescription(String mLocDetail) {
- this.mPosDescription = mLocDetail;
+ public String getFromUsername() {
+ return fromUsername;
}
- public int getmFidCat1_Main() {
- return mFidCat1_Main;
+ public void setFromUsername(String fromUsername) {
+ this.fromUsername = fromUsername;
}
- public void setmFidCat1_Main(int mFidCat1_Main) {
- this.mFidCat1_Main = mFidCat1_Main;
+ public int getFidIncidentCategory() {
+ return fidIncidentCategory;
}
- public int getmFidCat1_Sub() {
- return mFidCat1_Sub;
+ public void setFidIncidentCategory(int fidIncidentCategory) {
+ this.fidIncidentCategory = fidIncidentCategory;
}
- public void setmFidCat1_Sub(int mFidCat1_Sub) {
- this.mFidCat1_Sub = mFidCat1_Sub;
+ public int getId() {
+ return id;
}
- public String getmCat1_Sub_etc() {
- return mCat1_Sub_etc;
+ public void setId(int id) {
+ this.id = id;
}
- public void setmCat1_Sub_etc(String mCat1_Sub_etc) {
- this.mCat1_Sub_etc = mCat1_Sub_etc;
+ public String getIncidentCategoryName(Context context){
+ return context.getResources().getStringArray(R.array.cat_situation_main)[this.fidIncidentCategory];
}
- public int getmFidTimeMainCat() {
- return mFidTimeMainCat;
+ public String getIncidentSubCategoryName(Context context){
+ String returnName = "";
+ switch(this.fidIncidentCategory){
+ case 1:
+ returnName = context.getResources().getStringArray(R.array.cat_situation_sub_general)[this.fidIncidentSubCategory];
+ break;
+ case 2:
+ returnName = context.getResources().getStringArray(R.array.cat_situation_sub_verbal)[this.fidIncidentSubCategory];
+ break;
+ case 3:
+ returnName = context.getResources().getStringArray(R.array.cat_situation_sub_force)[this.fidIncidentSubCategory];
+ break;
+ case 4:
+ returnName = context.getResources().getStringArray(R.array.cat_situation_sub_force_serious)[this.fidIncidentSubCategory];
+ break;
+ case 5:
+ returnName = context.getResources().getStringArray(R.array.cat_situation_sub_nature)[this.fidIncidentSubCategory];
+ break;
+ case 6:
+ returnName = context.getResources().getStringArray(R.array.cat_situation_sub_infrastructure)[this.fidIncidentSubCategory];
+ break;
+ }
+ return returnName;
}
- public void setmFidTimeMainCat(int mFidTimeMainCat) {
- this.mFidTimeMainCat = mFidTimeMainCat;
+ public String getTimeString(Context context){
+ String returnString = "";
+ switch (this.fidTimeCategory){
+ case 1:
+ returnString = context.getResources().getStringArray(R.array.cat_time_main)[this.fidTimeCategory];
+ break;
+ case 2:
+ returnString = context.getResources().getStringArray(R.array.cat_time_sub_periodical)[this.fidTimeSubCategory];
+ break;
+ case 3:
+ if((this.fromTime != null) && !(this.fromTime.equals("00:00:00"))){
+ returnString = this.fromDate+" "+this.fromTime;
+ }else{
+ returnString = this.fromDate;
+ }
+ break;
+ case 4:
+ if((this.fromTime != null) && !(this.fromTime.equals("00:00")) && (this.toTime != null) && !(this.toTime.equals("00:00"))){
+ returnString = this.fromDate+" "+this.fromTime+" -> "+this.toDate+" "+this.toTime;
+ }else{
+ returnString = this.fromDate+" -> "+this.toDate;
+ }
+ break;
+ case 5:
+ returnString = context.getResources().getStringArray(R.array.cat_time_main)[this.fidTimeCategory];
+ break;
+ }
+ return returnString;
}
- public int getmFidTimeSubCat() {
- return mFidTimeSubCat;
+ public String getSuspectString(Context context){
+ return context.getResources().getStringArray(R.array.cat_suspect_main)[this.fidSuspectCategory];
}
- public void setmFidTimeSubCat(int mFidTimeSubCat) {
- this.mFidTimeSubCat = mFidTimeSubCat;
+ public int getCategoryColor(){
+ String color = "FFFFFF";
+ switch (this.fidIncidentCategory) {
+ case 1:
+ color = "3ac1e2";
+ break;
+ case 2:
+ color = "3ed78d";
+ break;
+ case 3:
+ color = "ed8d53";
+ break;
+ case 4:
+ color = "ff3433";
+ break;
+ case 5:
+ color = "3f7efd";
+ break;
+ case 6:
+ color = "929292";
+ break;
+ }
+ return Color.parseColor("#" + color);
+ }
+
+ public int getVotedScore(){
+ return this.votedScore;
+ }
+
+ public void setVotedScore(int votedScore){
+ this.votedScore = votedScore;
+ }
+
+ public int getFidFromUser() {
+ return fidFromUser;
+ }
+
+ public void setFidFromUser(int fidFromUser) {
+ this.fidFromUser = fidFromUser;
+ }
+
+ public String getCreatedAt() {
+ return createdAt;
+ }
+
+ public void setCreatedAt(String createdAt) {
+ this.createdAt = createdAt;
+ }
+
+ public String getUpdatedAt() {
+ return updatedAt;
+ }
+
+ public void setUpdatedAt(String updatedAt) {
+ this.updatedAt = updatedAt;
+ }
+
+ public int getFidIncidentSubCategory() {
+ return fidIncidentSubCategory;
+ }
+
+ public void setFidIncidentSubCategory(int fidIncidentSubCategory) {
+ this.fidIncidentSubCategory = fidIncidentSubCategory;
+ }
+
+ public String getEtcIncidentCategory() {
+ return etcIncidentCategory;
+ }
+
+ public void setEtcIncidentCategory(String etcIncidentCategory) {
+ this.etcIncidentCategory = etcIncidentCategory;
+ }
+
+ public int getFidTimeCategory() {
+ return fidTimeCategory;
+ }
+
+ public void setFidTimeCategory(int fidTimeCategory) {
+ this.fidTimeCategory = fidTimeCategory;
+ }
+
+ public int getFidTimeSubCategory() {
+ return fidTimeSubCategory;
+ }
+
+ public void setFidTimeSubCategory(int fidTimeSubCategory) {
+ this.fidTimeSubCategory = fidTimeSubCategory;
}
public String getFromTime() {
@@ -300,37 +437,166 @@ public class IncidentReport implements ClusterItem {
}
public void setToDate(String toDate) {
- toDate = toDate;
+ this.toDate = toDate;
}
- public void resetDatetime() {
- toTime = "";
- toDate = "";
- fromTime = "";
- fromDate = "";
+ public int getFidSuspectCategory() {
+ return fidSuspectCategory;
}
- public int getmFidSuspectMainCat() {
- return mFidSuspectMainCat;
+ public void setFidSuspectCategory(int fidSuspectCategory) {
+ this.fidSuspectCategory = fidSuspectCategory;
}
- public void setmFidSuspectMainCat(int mFidSuspectMainCat) {
- this.mFidSuspectMainCat = mFidSuspectMainCat;
+ public int getFidSuspectSubCategory() {
+ return fidSuspectSubCategory;
}
- public int getmFidSuspectOrigin() {
- return mFidSuspectOrigin;
+ public void setFidSuspectSubCategory(int fidSuspectSubCategory) {
+ this.fidSuspectSubCategory = fidSuspectSubCategory;
}
- public void setmFidSuspectOrigin(int mFidSuspectOrigin) {
- this.mFidSuspectOrigin = mFidSuspectOrigin;
+ public String getEtcSuspectCategory() {
+ return etcSuspectCategory;
}
- public String getmSuspectEtc() {
- return mSuspectEtc;
+ public void setEtcSuspectCategory(String etcSuspectCategory) {
+ this.etcSuspectCategory = etcSuspectCategory;
}
- public void setmSuspectEtc(String mSuspectEtc) {
- this.mSuspectEtc = mSuspectEtc;
+ public int getFidSuspectWeaponCategory() {
+ return fidSuspectWeaponCategory;
+ }
+
+ public void setFidSuspectWeaponCategory(int fidSuspectWeaponCategory) {
+ this.fidSuspectWeaponCategory = fidSuspectWeaponCategory;
+ }
+
+ public int getFidSuspectWeaponSubCategory() {
+ return fidSuspectWeaponSubCategory;
+ }
+
+ public void setFidSuspectWeaponSubCategory(int fidSuspectWeaponSubCategory) {
+ this.fidSuspectWeaponSubCategory = fidSuspectWeaponSubCategory;
+ }
+
+ public String getEtcSuspectWeaponCategory() {
+ return etcSuspectWeaponCategory;
+ }
+
+ public void setEtcSuspectWeaponCategory(String etcSuspectWeaponCategory) {
+ this.etcSuspectWeaponCategory = etcSuspectWeaponCategory;
+ }
+
+ public int getFidSuspectCountCategory() {
+ return fidSuspectCountCategory;
+ }
+
+ public void setFidSuspectCountCategory(int fidSuspectCountCategory) {
+ this.fidSuspectCountCategory = fidSuspectCountCategory;
+ }
+
+ public String getEtcSuspectCountCategory() {
+ return etcSuspectCountCategory;
+ }
+
+ public void setEtcSuspectCountCategory(String etcSuspectCountCategory) {
+ this.etcSuspectCountCategory = etcSuspectCountCategory;
+ }
+
+ public int getFidVictimCategory() {
+ return fidVictimCategory;
+ }
+
+ public void setFidVictimCategory(int fidVictimCategory) {
+ this.fidVictimCategory = fidVictimCategory;
+ }
+
+ public int getFidVictimOriginCategory() {
+ return fidVictimOriginCategory;
+ }
+
+ public void setFidVictimOriginCategory(int fidVictimOriginCategory) {
+ this.fidVictimOriginCategory = fidVictimOriginCategory;
+ }
+
+ public String getEtcVictimOriginCategory() {
+ return etcVictimOriginCategory;
+ }
+
+ public void setEtcVictimOriginCategory(String etcVictimOriginCategory) {
+ this.etcVictimOriginCategory = etcVictimOriginCategory;
+ }
+
+ public int getFidSuspectTransportationCategory() {
+ return fidSuspectTransportationCategory;
+ }
+
+ public void setFidSuspectTransportationCategory(int fidSuspectTransportationCategory) {
+ this.fidSuspectTransportationCategory = fidSuspectTransportationCategory;
+ }
+
+ public String getEtcSuspectTransportationCategory() {
+ return etcSuspectTransportationCategory;
+ }
+
+ public void setEtcSuspectTransportationCategory(String etcSuspectTransportationCategory) {
+ this.etcSuspectTransportationCategory = etcSuspectTransportationCategory;
+ }
+
+ public int getFidVictimBelongingCategory() {
+ return fidVictimBelongingCategory;
+ }
+
+ public void setFidVictimBelongingCategory(int fidVictimBelongingCategory) {
+ this.fidVictimBelongingCategory = fidVictimBelongingCategory;
+ }
+
+ public String getEtcVictimBelongingCategory() {
+ return etcVictimBelongingCategory;
+ }
+
+ public void setEtcVictimBelongingCategory(String etcVictimBelongingCategory) {
+ this.etcVictimBelongingCategory = etcVictimBelongingCategory;
+ }
+
+ public int getFidSuspectCharacteristicsCategory() {
+ return fidSuspectCharacteristicsCategory;
+ }
+
+ public void setFidSuspectCharacteristicsCategory(int fidSuspectCharacteristicsCategory) {
+ this.fidSuspectCharacteristicsCategory = fidSuspectCharacteristicsCategory;
+ }
+
+ public String getEtcSuspectCharacteristicsCategory() {
+ return etcSuspectCharacteristicsCategory;
+ }
+
+ public void setEtcSuspectCharacteristicsCategory(String etcSuspectCharacteristicsCategory) {
+ this.etcSuspectCharacteristicsCategory = etcSuspectCharacteristicsCategory;
+ }
+
+ public int getFidOthersCategory() {
+ return fidOthersCategory;
+ }
+
+ public void setFidOthersCategory(int fidOthersCategory) {
+ this.fidOthersCategory = fidOthersCategory;
+ }
+
+ public String getEtcOthersCategory() {
+ return etcOthersCategory;
+ }
+
+ public void setEtcOthersCategory(String etcOthersCategory) {
+ this.etcOthersCategory = etcOthersCategory;
+ }
+
+ public String getIncidentPositionDescription() {
+ return incidentPositionDescription;
+ }
+
+ public void setIncidentPositionDescription(String incidentPositionDescription) {
+ this.incidentPositionDescription = incidentPositionDescription;
}
}
diff --git a/app/src/main/java/org/deke/risk/riskahead/helper/OwnIconRendered.java b/app/src/main/java/org/deke/risk/riskahead/helper/OwnIconRendered.java
index 97a48ab..db7fc9d 100644
--- a/app/src/main/java/org/deke/risk/riskahead/helper/OwnIconRendered.java
+++ b/app/src/main/java/org/deke/risk/riskahead/helper/OwnIconRendered.java
@@ -12,15 +12,18 @@ import com.google.maps.android.clustering.view.DefaultClusterRenderer;
*/
public class OwnIconRendered extends DefaultClusterRenderer {
+ Context context;
+
public OwnIconRendered(Context context, GoogleMap map,ClusterManager clusterManager) {
super(context, map, clusterManager);
+ this.context = context;
}
@Override
protected void onBeforeClusterItemRendered(IncidentReport item, MarkerOptions markerOptions) {
markerOptions.icon(item.getIcon());
- markerOptions.snippet(item.getSnippet());
- markerOptions.title(item.getTitle());
+ markerOptions.snippet(item.getIncidentSubCategoryName(context));
+ markerOptions.title(item.getIncidentCategoryName(context));
super.onBeforeClusterItemRendered(item, markerOptions);
}
}
diff --git a/app/src/main/java/org/deke/risk/riskahead/helper/SessionManager.java b/app/src/main/java/org/deke/risk/riskahead/helper/SessionManager.java
index 49556f1..3171f03 100644
--- a/app/src/main/java/org/deke/risk/riskahead/helper/SessionManager.java
+++ b/app/src/main/java/org/deke/risk/riskahead/helper/SessionManager.java
@@ -22,17 +22,18 @@ public class SessionManager {
private static final String PREF_NAME = "AndroidLogin";
private static final String USERDATA_NAME = "AndroidLoginUser";
- private static final String KEY_UID = "uid";
- private static final String KEY_USERNAME = "username";
- private static final String KEY_NAME = "name";
- private static final String KEY_SURNAME = "surname";
- private static final String KEY_EMAIL = "email";
- private static final String KEY_STATUS = "status";
- private static final String PROVIDER_TYPE = "providerType";
- private static final String KEY_CREATED_AT = "created_at";
- private static final String KEY_UPDATED_AT = "updated_at";
- private static final String TOKEN = "token";
- private static final String KEY_IS_LOGGEDIN = "isLoggedIn";
+ public static final String KEY_UID = "uid";
+ public static final String KEY_USERNAME = "username";
+ public static final String KEY_NAME = "name";
+ public static final String KEY_SURNAME = "surname";
+ public static final String KEY_EMAIL = "email";
+ public static final String KEY_STATUS = "status";
+ public static final String PROVIDER_TYPE = "providerType";
+ public static final String KEY_CREATED_AT = "created_at";
+ public static final String KEY_UPDATED_AT = "updated_at";
+ public static final String KEY_LASTLOGIN_AT = "lastlogin_at";
+ public static final String TOKEN = "accesskey";
+ public static final String KEY_IS_LOGGEDIN = "isLoggedIn";
@@ -53,7 +54,7 @@ public class SessionManager {
return status.getBoolean(KEY_IS_LOGGEDIN, false);
}
- public void addUser(String uid, String username, String name, String surname, String email, String status, String provider_type, String created_at, String updated_at, String token) {
+ public void addUser(String uid, String username, String name, String surname, String email, String status, String provider_type, String created_at, String updated_at, String lastlogin_at, String token) {
userDataEditor.putString(KEY_UID, uid); //UID
userDataEditor.putString(KEY_USERNAME, username); // Username
@@ -64,6 +65,7 @@ public class SessionManager {
userDataEditor.putString(PROVIDER_TYPE, provider_type); // ProviderType
userDataEditor.putString(KEY_CREATED_AT, created_at); // Created At
userDataEditor.putString(KEY_UPDATED_AT, updated_at); // Updated At
+ userDataEditor.putString(KEY_LASTLOGIN_AT, lastlogin_at); // Last Login
userDataEditor.putString(TOKEN, token); // TOKEN
userDataEditor.apply();
@@ -86,6 +88,7 @@ public class SessionManager {
user.put(PROVIDER_TYPE, userdata.getString(PROVIDER_TYPE, null));
user.put(KEY_CREATED_AT, userdata.getString(KEY_CREATED_AT, null));
user.put(KEY_UPDATED_AT, userdata.getString(KEY_UPDATED_AT, null));
+ user.put(KEY_LASTLOGIN_AT, userdata.getString(KEY_LASTLOGIN_AT, null));
user.put(TOKEN, userdata.getString(TOKEN, null));
Log.d(TAG, "Fetching user from sharedPrefs: " + user.toString());
diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml
index 052bf69..489e361 100644
--- a/app/src/main/res/layout/activity_main.xml
+++ b/app/src/main/res/layout/activity_main.xml
@@ -38,7 +38,7 @@
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:layout_marginTop="52dp"
- android:textColor="#aa4b4b4b"/>
+ android:textColor="@color/text_light_grey"/>
+ android:textColor="@color/text_light_grey"/>
@@ -63,7 +63,7 @@
android:id="@+id/layoutFooter"
android:gravity="center"
android:layout_height="wrap_content"
- android:background="#d5ddff"
+ android:background="#7fbfbfbf"
android:layout_width="match_parent"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
diff --git a/app/src/main/res/layout/activity_report.xml b/app/src/main/res/layout/activity_report.xml
deleted file mode 100644
index be57276..0000000
--- a/app/src/main/res/layout/activity_report.xml
+++ /dev/null
@@ -1,195 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/app/src/main/res/layout/activity_settings.xml b/app/src/main/res/layout/activity_settings.xml
index ffa0404..1b03a93 100644
--- a/app/src/main/res/layout/activity_settings.xml
+++ b/app/src/main/res/layout/activity_settings.xml
@@ -30,128 +30,123 @@
android:layout_weight="1"
android:layout_centerInParent="true"
android:layout_margin="10dp"
- android:layout_marginBottom="20dp"
- android:padding="8dp"
- android:orientation="vertical">
+ android:layout_marginBottom="20dp">
-
+
+
+
+
+
+
+
+
+ android:layout_below="@+id/til_settings_username">
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ android:layout_alignParentEnd="true" />
+ android:layout_alignParentBottom="true"
+ android:layout_alignParentLeft="true"
+ android:layout_alignParentStart="true">
-
-
-
+ style="?android:attr/borderlessButtonStyle"
+ android:text="@string/btn_settings_change" />
diff --git a/app/src/main/res/layout/fragment_profile_stats.xml b/app/src/main/res/layout/fragment_profile_stats.xml
index 2f244e5..e04e4f5 100644
--- a/app/src/main/res/layout/fragment_profile_stats.xml
+++ b/app/src/main/res/layout/fragment_profile_stats.xml
@@ -23,7 +23,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
- android:textColor="#aa999999"/>
+ android:textColor="@color/text_light_grey"/>
+ android:textColor="@color/text_light_grey"/>
+ android:textColor="@color/text_light_grey"/>
+ android:textColor="@color/text_light_grey"/>
+ android:textColor="@color/text_light_grey"/>
diff --git a/app/src/main/res/layout/fragment_reportlist_row.xml b/app/src/main/res/layout/fragment_reportlist_row.xml
index 57affd1..8e8c398 100644
--- a/app/src/main/res/layout/fragment_reportlist_row.xml
+++ b/app/src/main/res/layout/fragment_reportlist_row.xml
@@ -3,9 +3,17 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
- android:padding="5dp"
+ android:paddingRight="5dp"
android:weightSum="1">
+
+
-
-
+
@@ -49,7 +50,7 @@
diff --git a/app/src/main/res/layout/fragment_top10list_row.xml b/app/src/main/res/layout/fragment_top10list_row.xml
index 7376921..9e0c66c 100644
--- a/app/src/main/res/layout/fragment_top10list_row.xml
+++ b/app/src/main/res/layout/fragment_top10list_row.xml
@@ -11,7 +11,7 @@
@@ -48,7 +48,7 @@
@@ -57,7 +57,7 @@
@@ -56,10 +56,28 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColor="#b9000000"
- android:text="Category"
+ android:text="subject"
+ android:paddingLeft="5dp"
+ android:id="@+id/txt_infowindow_subject"
+ android:typeface="serif" />
+
+
+
+
@@ -82,7 +100,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColor="#b9000000"
- android:text="Points:"
+ android:text="points:"
android:id="@+id/txt_infowindow_points"
android:typeface="serif" />
diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml
index 0c3eeb8..713b33a 100644
--- a/app/src/main/res/values-de/strings.xml
+++ b/app/src/main/res/values-de/strings.xml
@@ -1,7 +1,5 @@
RiskAhead
- 658657714234846
- ca-app-pub-3940256099942544/6300978111
Login
Register
@@ -22,8 +20,6 @@
RiskAhead
RiskAhead
- {fa_pencil} Confirm changes
-
Open navigation drawer
Close navigation drawer
@@ -50,7 +46,7 @@
We have currently ...
... reported incidents
{fa_map_marker} Report
- {fa_info} View Map
+ {fa_map} View Map
Short Description
Long Descpription
@@ -68,6 +64,10 @@
Surname
E-Mail
Username
+ Confirm Password
+ {fa_envelope} Reset Password
+ Retype Password
+ Confirm changes
Profile Stats
Member Since
@@ -77,9 +77,6 @@
{fa_search} View Posts
Top 10
- Confirm Password
- {fa_envelope} Reset Password
- Retype Password
{fa_paint_brush} Report this position!
diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml
index b0d27ef..4325450 100644
--- a/app/src/main/res/values/colors.xml
+++ b/app/src/main/res/values/colors.xml
@@ -9,7 +9,7 @@
#333333
#fdfdfd
-
+ #aa4b4b4b
#ffffff
#ffffff
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 1aad1e7..5b4c518 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -22,8 +22,6 @@
RiskAhead
RiskAhead
- {fa_pencil} Confirm changes
-
Open navigation drawer
Close navigation drawer
@@ -68,6 +66,10 @@
Surname
E-Mail
Username
+ Confirm Password
+ {fa_envelope} Reset Password
+ Retype Password
+ Confirm changes
Profile Stats
Member Since
@@ -77,9 +79,6 @@
{fa_search} View Posts
Top 10
- Confirm Password
- {fa_envelope} Reset Password
- Retype Password
{fa_paint_brush} Report this position!