diff --git a/app/app.iml b/app/app.iml
index c49ca7c..59eae33 100644
--- a/app/app.iml
+++ b/app/app.iml
@@ -98,13 +98,13 @@
+
-
diff --git a/app/build.gradle b/app/build.gradle
index 434e880..006bbbf 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -9,8 +9,8 @@ android {
applicationId "org.deke.risk.riskahead"
minSdkVersion 19
targetSdkVersion 26
- versionCode 48
- versionName "3.1.4"
+ versionCode 49
+ versionName "3.1.5"
}
buildTypes {
release {
diff --git a/app/release/app-release.apk b/app/release/app-release.apk
index fdb2ddf..c684c7b 100644
Binary files a/app/release/app-release.apk and b/app/release/app-release.apk differ
diff --git a/app/release/output.json b/app/release/output.json
index e15676b..f7f2831 100644
--- a/app/release/output.json
+++ b/app/release/output.json
@@ -1 +1 @@
-[{"outputType":{"type":"APK"},"apkInfo":{"type":"MAIN","splits":[],"versionCode":48,"versionName":"3.1.4","enabled":true,"outputFile":"app-release.apk","fullName":"release","baseName":"release"},"path":"app-release.apk","properties":{}}]
\ No newline at end of file
+[{"outputType":{"type":"APK"},"apkInfo":{"type":"MAIN","splits":[],"versionCode":49,"versionName":"3.1.5","enabled":true,"outputFile":"app-release.apk","fullName":"release","baseName":"release"},"path":"app-release.apk","properties":{}}]
\ No newline at end of file
diff --git a/app/src/main/java/org/deke/risk/riskahead/LoginActivity.java b/app/src/main/java/org/deke/risk/riskahead/LoginActivity.java
index 9821060..abf4de2 100644
--- a/app/src/main/java/org/deke/risk/riskahead/LoginActivity.java
+++ b/app/src/main/java/org/deke/risk/riskahead/LoginActivity.java
@@ -3,14 +3,11 @@ package org.deke.risk.riskahead;
import android.app.AlertDialog;
import android.app.ProgressDialog;
import android.content.Context;
-import android.content.DialogInterface;
import android.content.pm.PackageManager;
import android.content.res.Resources;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.support.design.widget.TextInputLayout;
-import android.support.v4.app.FragmentManager;
-import android.support.v4.app.FragmentTransaction;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
@@ -23,7 +20,6 @@ import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.CheckBox;
-import android.widget.CompoundButton;
import android.widget.LinearLayout;
import android.widget.TextView;
import android.widget.Toast;
@@ -40,8 +36,6 @@ import org.json.JSONException;
import org.json.JSONObject;
import com.android.volley.Request.Method;
-import com.android.volley.Response;
-import com.android.volley.VolleyError;
import com.android.volley.toolbox.StringRequest;
import com.beardedhen.androidbootstrap.BootstrapButton;
import com.crashlytics.android.Crashlytics;
@@ -95,7 +89,6 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
startActivity(intent);
finish();
}
-
}
public void isNetworkAvailable() {
@@ -113,10 +106,8 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
.setTitle(getString(R.string.alert_internetconnection_title))
.setMessage(getString(R.string.alert_internetconnection_text))
.setCancelable(false)
- .setNeutralButton(android.R.string.yes, new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialog, int which) {
- //todo What to do when no internet connection is available?
- }
+ .setNeutralButton(android.R.string.yes, (dialog, which) -> {
+ //todo What to do when no internet connection is available?
})
.setIcon(android.R.drawable.ic_dialog_alert)
.show();
@@ -152,18 +143,10 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
TextView btn_requestPW = findViewById(R.id.lbl_login_resendPW);
BootstrapButton btn_gotoregistration = findViewById(R.id.btn_switchtoregistration);
- btn_gotoregistration.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- gotoRegister(v);
- }
- });
+ btn_gotoregistration.setOnClickListener(this::gotoRegister);
BootstrapButton btn_login = findViewById(R.id.btn_login);
- btn_login.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
-
+ btn_login.setOnClickListener((View v) -> {
String email = input_email.getText().toString();
String password = input_password.getText().toString();
@@ -173,7 +156,6 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
showDialog();
performLogin(email, password);
}
- }
});
input_email.addTextChangedListener(new TextValidator(input_email, inputLayoutEmail, getApplicationContext()) {
@@ -198,12 +180,7 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
}
});
- btn_requestPW.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- onRequestNewPasswordClick(v);
- }
- });
+ btn_requestPW.setOnClickListener(this::onRequestNewPasswordClick);
}
private void initRegisterView() {
@@ -251,38 +228,25 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
}
});
- btn_login.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- String email = input_email.getText().toString();
- String password = input_password.getText().toString();
+ btn_login.setOnClickListener(v -> {
+ String email = input_email.getText().toString();
+ String password = input_password.getText().toString();
- String name = input_username.getText().toString();
- if (inputLayoutPassword.getError() != null || inputLayoutEmail.getError() != null || inputLayoutUsername.getError() != null || input_email.getText().toString().trim().length() == 0 || input_username.getText().toString().trim().length() == 0 || input_password.getText().toString().trim().length() == 0) {
- showMessage(getString(R.string.error_validation));
- } else {
- showDialog();
- checkForUserAndPerformRegistration(name, email, password);
- }
+ String name = input_username.getText().toString();
+ if (inputLayoutPassword.getError() != null || inputLayoutEmail.getError() != null || inputLayoutUsername.getError() != null || input_email.getText().toString().trim().length() == 0 || input_username.getText().toString().trim().length() == 0 || input_password.getText().toString().trim().length() == 0) {
+ showMessage(getString(R.string.error_validation));
+ } else {
+ showDialog();
+ checkForUserAndPerformRegistration(name, email, password);
}
});
- btn_switchtologin.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- gotoLogin(v);
- }
- });
+ btn_switchtologin.setOnClickListener(this::gotoLogin);
}
private void initSocialLoginButtons() {
- FragmentManager fragmentManager = getSupportFragmentManager();
new FacebookButtonFragment();
- GooglePlusButtonFragment fragmentGP = new GooglePlusButtonFragment();
-
- FragmentTransaction transaction = fragmentManager.beginTransaction();
- transaction.add(R.id.frag_login_btnGP, fragmentGP);
- transaction.commit();
+ new GooglePlusButtonFragment();
}
private void checkForMaintenance() {
@@ -292,32 +256,24 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
}
private StringRequest getStringRequestCheckForMaintenance() {
- return new StringRequest(Method.POST, AppConfig.REST_CHECK_MAINTENANCE, new Response.Listener() {
+ return new StringRequest(Method.POST, AppConfig.REST_CHECK_MAINTENANCE, response -> {
+ Log.d(TAG, "Check for Maintenance Response: " + response);
+ hideDialog();
- @Override
- public void onResponse(String response) {
- Log.d(TAG, "Check for Maintenance Response: " + response);
- hideDialog();
+ try {
+ JSONObject jObj = new JSONObject(response);
+ boolean error = jObj.getBoolean("error");
- try {
- JSONObject jObj = new JSONObject(response);
- boolean error = jObj.getBoolean("error");
-
- if (!error) {
- if(jObj.getBoolean("maintenancemode")){
- showMessage(jObj.getString("maintenancemsg"));
- }
+ if (!error) {
+ if(jObj.getBoolean("maintenancemode")){
+ showMessage(jObj.getString("maintenancemsg"));
}
- } catch (JSONException e) {
- Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
- Crashlytics.logException(e);
}
+ } catch (JSONException e) {
+ Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
+ Crashlytics.logException(e);
}
- }, new Response.ErrorListener() {
-
- @Override
- public void onErrorResponse(VolleyError error) {
- }
+ }, error -> {
}) {
@Override
@@ -346,34 +302,26 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
}
private StringRequest getStringRequestCheckIfVersionSupported() {
- return new StringRequest(Method.POST, AppConfig.REST_CHECK_VERSION, new Response.Listener() {
+ return new StringRequest(Method.POST, AppConfig.REST_CHECK_VERSION, response -> {
+ Log.d(TAG, "Check Version Response: " + response);
+ hideDialog();
- @Override
- public void onResponse(String response) {
- Log.d(TAG, "Check Version Response: " + response);
- hideDialog();
+ try {
+ JSONObject jObj = new JSONObject(response);
+ boolean error = jObj.getBoolean("error");
- try {
- JSONObject jObj = new JSONObject(response);
- boolean error = jObj.getBoolean("error");
-
- if (!error) {
- if(!jObj.getBoolean("supported")){
- showNotSupportedDialog();
- }else if(!jObj.getBoolean("recommended")){
- showNotRecommendDialog();
- }
+ if (!error) {
+ if(!jObj.getBoolean("supported")){
+ showNotSupportedDialog();
+ }else if(!jObj.getBoolean("recommended")){
+ showNotRecommendDialog();
}
- } catch (JSONException e) {
- Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
- Crashlytics.logException(e);
}
+ } catch (JSONException e) {
+ Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
+ Crashlytics.logException(e);
}
- }, new Response.ErrorListener() {
-
- @Override
- public void onErrorResponse(VolleyError error) {
- }
+ }, error -> {
}) {
@Override
@@ -399,18 +347,12 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
.setTitle(getString(R.string.alert_notsupported_title))
.setMessage(getString(R.string.alert_notsupported_text))
.setCancelable(false)
- .setPositiveButton(R.string.update, new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialog, int which) {
- startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=" + getPackageName())));
- }
- })
- .setNegativeButton(R.string.exit, new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialog, int which) {
- Intent intent = new Intent(Intent.ACTION_MAIN);
- intent.addCategory(Intent.CATEGORY_HOME);
- intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
- startActivity(intent);
- }
+ .setPositiveButton(R.string.update, (dialog, which) -> startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=" + getPackageName()))))
+ .setNegativeButton(R.string.exit, (dialog, which) -> {
+ Intent intent = new Intent(Intent.ACTION_MAIN);
+ intent.addCategory(Intent.CATEGORY_HOME);
+ intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
+ startActivity(intent);
})
.setIcon(android.R.drawable.ic_dialog_alert)
.show();
@@ -421,15 +363,9 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
.setTitle(getString(R.string.alert_notrecommended_title))
.setMessage(getString(R.string.alert_notrecommended_text))
.setCancelable(false)
- .setPositiveButton(R.string.update, new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialog, int which) {
- startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=" + getPackageName())));
- }
- })
- .setNegativeButton(R.string.later, new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialog, int which) {
+ .setPositiveButton(R.string.update, (dialog, which) -> startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=" + getPackageName()))))
+ .setNegativeButton(R.string.later, (dialog, which) -> {
- }
})
.setIcon(android.R.drawable.ic_dialog_alert)
.show();
@@ -480,15 +416,9 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
new AlertDialog.Builder(LoginActivity.this)
.setTitle(getString(R.string.alert_passwordreset_title))
.setMessage(getString(R.string.alert_passwordreset_text))
- .setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialog, int which) {
- performRequestNewPassword();
- }
- })
- .setNegativeButton(android.R.string.no, new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialog, int which) {
- // do nothing
- }
+ .setPositiveButton(android.R.string.yes, (dialog, which) -> performRequestNewPassword())
+ .setNegativeButton(android.R.string.no, (dialog, which) -> {
+ // do nothing
})
.setIcon(android.R.drawable.ic_dialog_alert)
.show();
@@ -507,75 +437,67 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
}
private StringRequest getStringRequestSocialMediaLogin(final String key, final String providerType, final String username, final String email) {
- return new StringRequest(Method.POST,AppConfig.REST_LOGIN_SOCIAL, new Response.Listener() {
+ return new StringRequest(Method.POST,AppConfig.REST_LOGIN_SOCIAL, response -> {
+ Log.d(TAG, "Social Media Login Response: " + response);
+ hideDialog();
- @Override
- public void onResponse(String response) {
- Log.d(TAG, "Social Media Login Response: " + response);
- hideDialog();
+ try {
+ JSONObject jObj = new JSONObject(response);
+ boolean error = jObj.getBoolean("error");
+ if (!error) {
+ session.setLogin(true);
- try {
- JSONObject jObj = new JSONObject(response);
- boolean error = jObj.getBoolean("error");
- if (!error) {
- session.setLogin(true);
+ JSONObject user = jObj.getJSONObject("user");
+ String id = user.getString("id");
+ String username1 = user.getString("username");
+ String name = user.getString("name");
+ String surname = user.getString("surname");
+ String email1 = user.getString("email");
+ String status = user.getString("status");
+ String created_at = user.getString("created_at");
+ String updated_at = user.getString("updated_at");
+ String lastlogin_at = user.getString("lastlogin_at");
+ String providerType1 = user.getString("providerType");
+ String token = user.getString("accesskey");
- JSONObject user = jObj.getJSONObject("user");
- String id = user.getString("id");
- String username = user.getString("username");
- String name = user.getString("name");
- String surname = user.getString("surname");
- String email = user.getString("email");
- String status = user.getString("status");
- String created_at = user.getString("created_at");
- String updated_at = user.getString("updated_at");
- String lastlogin_at = user.getString("lastlogin_at");
- String providerType = user.getString("providerType");
- String token = user.getString("accesskey");
+ JSONArray jSubs = user.getJSONArray("subs");
+ boolean isPremium = false;
+ boolean isAdFree = false;
- JSONArray jSubs = user.getJSONArray("subs");
- boolean isPremium = false;
- boolean isAdFree = false;
+ if(jSubs.length() > 0){
+ for(int i = 0; i < jSubs.length();i++) {
+ if(jSubs.getJSONObject(i).getString("productId").contains("extra_functions")){
+ isPremium = true;
+ }
- if(jSubs.length() > 0){
- for(int i = 0; i < jSubs.length();i++) {
- if(jSubs.getJSONObject(i).getString("productId").contains("extra_functions")){
- isPremium = true;
- }
-
- if(jSubs.getJSONObject(i).getString("productId").contains("no_ads")){
- isAdFree = true;
- }
+ if(jSubs.getJSONObject(i).getString("productId").contains("no_ads")){
+ isAdFree = true;
}
}
-
- session.addUser(id, username, name, surname, email, status, providerType, created_at, updated_at, lastlogin_at, token,isPremium,isAdFree);
-
- Intent intent = new Intent(
- LoginActivity.this,
- MapsActivity.class);
- intent.putExtra(AppConfig.EXTRA_MESSAGE, AppConfig.INTENT_SOCIALMEDIALOGIN);
- startActivity(intent);
- finish();
- } else {
- String errorMsg = jObj.getString("error_msg");
- Crashlytics.log(Log.ERROR, TAG, "Error at social media login (Server returned error): " + errorMsg);
- Toast.makeText(getApplicationContext(), getResources().getString(R.string.txt_errormsg_login)+getResources().getString(R.string.txt_errormsg_suffix), Toast.LENGTH_LONG).show();
}
- } catch (JSONException e) {
- Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
- Crashlytics.logException(e);
+
+ session.addUser(id, username1, name, surname, email1, status, providerType1, created_at, updated_at, lastlogin_at, token,isPremium,isAdFree);
+
+ Intent intent = new Intent(
+ LoginActivity.this,
+ MapsActivity.class);
+ intent.putExtra(AppConfig.EXTRA_MESSAGE, AppConfig.INTENT_SOCIALMEDIALOGIN);
+ startActivity(intent);
+ finish();
+ } else {
+ String errorMsg = jObj.getString("error_msg");
+ Crashlytics.log(Log.ERROR, TAG, "Error at social media login (Server returned error): " + errorMsg);
+ Toast.makeText(getApplicationContext(), getResources().getString(R.string.txt_errormsg_login)+getResources().getString(R.string.txt_errormsg_suffix), Toast.LENGTH_LONG).show();
}
-
+ } catch (JSONException e) {
+ Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
+ Crashlytics.logException(e);
}
- }, new Response.ErrorListener() {
- @Override
- public void onErrorResponse(VolleyError error) {
- Crashlytics.log(Log.ERROR, TAG, "Social Media Login Error: " + error.getMessage());
- Toast.makeText(getApplicationContext(), getResources().getString(R.string.txt_errormsg_login)+getResources().getString(R.string.txt_errormsg_suffix), Toast.LENGTH_LONG).show();
- hideDialog();
- }
+ }, error -> {
+ Crashlytics.log(Log.ERROR, TAG, "Social Media Login Error: " + error.getMessage());
+ Toast.makeText(getApplicationContext(), getResources().getString(R.string.txt_errormsg_login)+getResources().getString(R.string.txt_errormsg_suffix), Toast.LENGTH_LONG).show();
+ hideDialog();
}) {
@Override
@@ -593,95 +515,83 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
}
private StringRequest getStringRequestLogin(final String email, final String password) {
- return new StringRequest(Method.POST, AppConfig.REST_LOGIN, new Response.Listener() {
+ return new StringRequest(Method.POST, AppConfig.REST_LOGIN, response -> {
+ Log.d(TAG, "Login Response: " + response);
+ hideDialog();
- @Override
- public void onResponse(String response) {
- Log.d(TAG, "Login Response: " + response);
- hideDialog();
+ try {
+ JSONObject jObj = new JSONObject(response);
+ boolean error = jObj.getBoolean("error");
- try {
- JSONObject jObj = new JSONObject(response);
- boolean error = jObj.getBoolean("error");
+ if (!error) {
+ JSONObject user = jObj.getJSONObject("user");
+ String id = user.getString("id");
+ String username = user.getString("username");
+ String name = user.getString("name");
+ String surname = user.getString("surname");
+ String email1 = user.getString("email");
+ String status = user.getString("status");
+ String created_at = user.getString("created_at");
+ String updated_at = user.getString("updated_at");
+ String lastlogin_at = user.getString("lastlogin_at");
+ String token = user.getString("accesskey");
+ String providerType = "local";
- if (!error) {
- JSONObject user = jObj.getJSONObject("user");
- String id = user.getString("id");
- String username = user.getString("username");
- String name = user.getString("name");
- String surname = user.getString("surname");
- String email = user.getString("email");
- String status = user.getString("status");
- String created_at = user.getString("created_at");
- String updated_at = user.getString("updated_at");
- String lastlogin_at = user.getString("lastlogin_at");
- String token = user.getString("accesskey");
- String providerType = "local";
+ JSONArray jSubs = user.getJSONArray("subs");
+ boolean isPremium = false;
+ boolean isAdFree = false;
- JSONArray jSubs = user.getJSONArray("subs");
- boolean isPremium = false;
- boolean isAdFree = false;
+ if(jSubs.length() > 0){
+ for(int i = 0; i < jSubs.length();i++) {
+ if(jSubs.getJSONObject(i).getString("productId").contains("extra_functions")){
+ isPremium = true;
+ }
- if(jSubs.length() > 0){
- for(int i = 0; i < jSubs.length();i++) {
- if(jSubs.getJSONObject(i).getString("productId").contains("extra_functions")){
- isPremium = true;
- }
-
- if(jSubs.getJSONObject(i).getString("productId").contains("no_ads")){
- isAdFree = true;
- }
+ if(jSubs.getJSONObject(i).getString("productId").contains("no_ads")){
+ isAdFree = true;
}
}
-
- if(status.equals("0")){
- new AlertDialog.Builder(LoginActivity.this)
- .setTitle(getString(R.string.alert_accactivation_title))
- .setMessage(getString(R.string.alert_accactivation_text))
- .setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialog, int which) {
- String tag_string_req = "resendactivationusermail";
-
- StringRequest strReq = getStringRequestActivationLinkUser(input_email.getText().toString());
-
- AppController.getInstance().addToRequestQueue(strReq, tag_string_req);
- showMessage(getString(R.string.alert_accactivation_confirmation));
- }
- })
- .setNegativeButton(android.R.string.no, new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialog, int which) {
- }
- })
- .setIcon(android.R.drawable.ic_dialog_alert)
- .show();
- }else {
- session.addUser(id, username, name, surname, email, status, providerType, created_at, updated_at, lastlogin_at, token, isPremium, isAdFree);
- session.setLogin(true);
-
- hideDialog();
-
- Intent intent = new Intent(LoginActivity.this, MapsActivity.class);
- startActivity(intent);
- finish();
- }
- } else {
- String errorMsg = jObj.getString("error_msg");
- Crashlytics.log(Log.ERROR, TAG, "Error at login (Server returned error): " + errorMsg);
- Toast.makeText(getApplicationContext(), getResources().getString(R.string.txt_errormsg_login), Toast.LENGTH_LONG).show();
}
- } catch (JSONException e) {
- Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
- Crashlytics.logException(e);
- }
- }
- }, new Response.ErrorListener() {
- @Override
- public void onErrorResponse(VolleyError error) {
- Crashlytics.log(Log.ERROR, TAG, "Login Error: " + error.getMessage());
- Toast.makeText(getApplicationContext(), getResources().getString(R.string.txt_errormsg_login), Toast.LENGTH_LONG).show();
- hideDialog();
+ if(status.equals("0")){
+ new AlertDialog.Builder(LoginActivity.this)
+ .setTitle(getString(R.string.alert_accactivation_title))
+ .setMessage(getString(R.string.alert_accactivation_text))
+ .setPositiveButton(android.R.string.yes, (dialog, which) -> {
+ String tag_string_req = "resendactivationusermail";
+
+ StringRequest strReq = getStringRequestActivationLinkUser(input_email.getText().toString());
+
+ AppController.getInstance().addToRequestQueue(strReq, tag_string_req);
+ showMessage(getString(R.string.alert_accactivation_confirmation));
+ })
+ .setNegativeButton(android.R.string.no, (dialog, which) -> {
+ })
+ .setIcon(android.R.drawable.ic_dialog_alert)
+ .show();
+ }else {
+ session.addUser(id, username, name, surname, email1, status, providerType, created_at, updated_at, lastlogin_at, token, isPremium, isAdFree);
+ session.setLogin(true);
+
+ hideDialog();
+
+ Intent intent = new Intent(LoginActivity.this, MapsActivity.class);
+ startActivity(intent);
+ finish();
+ }
+ } else {
+ String errorMsg = jObj.getString("error_msg");
+ Crashlytics.log(Log.ERROR, TAG, "Error at login (Server returned error): " + errorMsg);
+ Toast.makeText(getApplicationContext(), getResources().getString(R.string.txt_errormsg_login), Toast.LENGTH_LONG).show();
+ }
+ } catch (JSONException e) {
+ Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
+ Crashlytics.logException(e);
}
+ }, error -> {
+ Crashlytics.log(Log.ERROR, TAG, "Login Error: " + error.getMessage());
+ Toast.makeText(getApplicationContext(), getResources().getString(R.string.txt_errormsg_login), Toast.LENGTH_LONG).show();
+ hideDialog();
}) {
@Override
@@ -696,46 +606,38 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
}
private StringRequest getStringRequestCheckUserExists(final String username, final String email, final String password) {
- return new StringRequest(Method.POST, AppConfig.REST_USEREXISTS, new Response.Listener() {
+ return new StringRequest(Method.POST, AppConfig.REST_USEREXISTS, response -> {
+ Log.d(TAG, "Check User Exists Response: " + response);
+ hideDialog();
- @Override
- public void onResponse(String response) {
- Log.d(TAG, "Check User Exists Response: " + response);
- hideDialog();
+ try {
+ JSONObject jObj = new JSONObject(response);
+ boolean error = jObj.getBoolean("error");
+ if (!error) {
- try {
- JSONObject jObj = new JSONObject(response);
- boolean error = jObj.getBoolean("error");
- if (!error) {
-
- if(jObj.getInt("exists") == 1){
- showMessage("Registration failed. Username and/or E-Mail already taken");
- }else{
- createAndShowPrivacyDialog(username, email, password);
- }
-
-
-
- } else {
- String errorMsg = jObj.getString("error_msg");
- Crashlytics.log(Log.ERROR, TAG, "Error occured: "+errorMsg);
- Toast.makeText(getApplicationContext(), getResources().getString(R.string.txt_errormsg_register), Toast.LENGTH_LONG).show();
- }
- } catch (JSONException e) {
- Crashlytics.log(Log.ERROR, TAG, "Exception caught");
- Crashlytics.logException(e);
+ if(jObj.getInt("exists") == 1){
+ showMessage("Registration failed. Username and/or E-Mail already taken");
+ }else{
+ createAndShowPrivacyDialog(username, email, password);
}
- }
- }, new Response.ErrorListener() {
- @Override
- public void onErrorResponse(VolleyError error) {
- Crashlytics.log(Log.ERROR, TAG, "Registration Error: " + error.getMessage());
- Toast.makeText(getApplicationContext(),
- getResources().getString(R.string.txt_errormsg_register), Toast.LENGTH_LONG).show();
- hideDialog();
+
+
+ } else {
+ String errorMsg = jObj.getString("error_msg");
+ Crashlytics.log(Log.ERROR, TAG, "Error occured: "+errorMsg);
+ Toast.makeText(getApplicationContext(), getResources().getString(R.string.txt_errormsg_register), Toast.LENGTH_LONG).show();
}
- }) {
+ } catch (JSONException e) {
+ Crashlytics.log(Log.ERROR, TAG, "Exception caught");
+ Crashlytics.logException(e);
+ }
+ }, error -> {
+ Crashlytics.log(Log.ERROR, TAG, "Registration Error: " + error.getMessage());
+ Toast.makeText(getApplicationContext(),
+ getResources().getString(R.string.txt_errormsg_register), Toast.LENGTH_LONG).show();
+ hideDialog();
+ }) {
@Override
protected Map getParams() {
@@ -748,43 +650,35 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
}
private StringRequest getStringRequestCheckSocialUserExists(final String key, final String providerType, final String username, final String email) {
- return new StringRequest(Method.POST, AppConfig.REST_USEREXISTS, new Response.Listener() {
+ return new StringRequest(Method.POST, AppConfig.REST_USEREXISTS, response -> {
+ Log.d(TAG, "Check Social User Exists Response: " + response);
+ hideDialog();
- @Override
- public void onResponse(String response) {
- Log.d(TAG, "Check Social User Exists Response: " + response);
- hideDialog();
+ try {
+ JSONObject jObj = new JSONObject(response);
+ boolean error = jObj.getBoolean("error");
+ if (!error) {
- try {
- JSONObject jObj = new JSONObject(response);
- boolean error = jObj.getBoolean("error");
- if (!error) {
-
- if(jObj.getInt("exists") == 1){
- performSocialMediaLogin( key,providerType, username, email);
- }else{
- createAndShowPrivacyDialogForSocialUser( key,providerType, username, email);
- }
-
- } else {
- String errorMsg = jObj.getString("error_msg");
- Crashlytics.log(Log.ERROR, TAG, "Error occured: "+errorMsg);
- Toast.makeText(getApplicationContext(), getResources().getString(R.string.txt_errormsg_register), Toast.LENGTH_LONG).show();
+ if(jObj.getInt("exists") == 1){
+ performSocialMediaLogin( key,providerType, username, email);
+ }else{
+ createAndShowPrivacyDialogForSocialUser( key,providerType, username, email);
}
- } catch (JSONException e) {
- Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
- Crashlytics.logException(e);
- }
- }
- }, new Response.ErrorListener() {
- @Override
- public void onErrorResponse(VolleyError error) {
- Crashlytics.log(Log.ERROR, TAG, "Registration Error: " + error.getMessage());
- Toast.makeText(getApplicationContext(),
- getResources().getString(R.string.txt_errormsg_register), Toast.LENGTH_LONG).show();
- hideDialog();
+ } else {
+ String errorMsg = jObj.getString("error_msg");
+ Crashlytics.log(Log.ERROR, TAG, "Error occured: "+errorMsg);
+ Toast.makeText(getApplicationContext(), getResources().getString(R.string.txt_errormsg_register), Toast.LENGTH_LONG).show();
+ }
+ } catch (JSONException e) {
+ Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
+ Crashlytics.logException(e);
}
+ }, error -> {
+ Crashlytics.log(Log.ERROR, TAG, "Registration Error: " + error.getMessage());
+ Toast.makeText(getApplicationContext(),
+ getResources().getString(R.string.txt_errormsg_register), Toast.LENGTH_LONG).show();
+ hideDialog();
}) {
@Override
@@ -827,27 +721,18 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
AlertDialog.Builder builder = new AlertDialog.Builder(LoginActivity.this)
.setTitle(R.string.txt_register_privacy_title)
- .setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialog, int which) {
- performSocialMediaLogin(key, providerType, username, email);
- }
- })
- .setNegativeButton(android.R.string.no, new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialog, int which) {
- }
+ .setPositiveButton(android.R.string.yes, (dialog, which) -> performSocialMediaLogin(key, providerType, username, email))
+ .setNegativeButton(android.R.string.no, (dialog, which) -> {
})
.setIcon(R.drawable.logo_380);
final AlertDialog dialog = builder.create();
- privacyCheckbox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
- @Override
- public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
- if (isChecked) {
- dialog.getButton(AlertDialog.BUTTON_POSITIVE).setEnabled(true);
- } else {
- dialog.getButton(AlertDialog.BUTTON_POSITIVE).setEnabled(false);
- }
+ privacyCheckbox.setOnCheckedChangeListener((buttonView, isChecked) -> {
+ if (isChecked) {
+ dialog.getButton(AlertDialog.BUTTON_POSITIVE).setEnabled(true);
+ } else {
+ dialog.getButton(AlertDialog.BUTTON_POSITIVE).setEnabled(false);
}
});
@@ -888,27 +773,18 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
AlertDialog.Builder builder = new AlertDialog.Builder(LoginActivity.this)
.setTitle(R.string.txt_register_privacy_title)
- .setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialog, int which) {
- performRegistration(username, email, password);
- }
- })
- .setNegativeButton(android.R.string.no, new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialog, int which) {
- }
+ .setPositiveButton(android.R.string.yes, (dialog, which) -> performRegistration(username, email, password))
+ .setNegativeButton(android.R.string.no, (dialog, which) -> {
})
.setIcon(R.drawable.logo_380);
final AlertDialog dialog = builder.create();
- privacyCheckbox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
- @Override
- public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
- if (isChecked) {
- dialog.getButton(AlertDialog.BUTTON_POSITIVE).setEnabled(true);
- } else {
- dialog.getButton(AlertDialog.BUTTON_POSITIVE).setEnabled(false);
- }
+ privacyCheckbox.setOnCheckedChangeListener((buttonView, isChecked) -> {
+ if (isChecked) {
+ dialog.getButton(AlertDialog.BUTTON_POSITIVE).setEnabled(true);
+ } else {
+ dialog.getButton(AlertDialog.BUTTON_POSITIVE).setEnabled(false);
}
});
@@ -919,39 +795,31 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
}
private StringRequest getStringRequestResetPW(final String email) {
- return new StringRequest(Method.POST, AppConfig.REST_REQUESTPWRESET, new Response.Listener() {
+ return new StringRequest(Method.POST, AppConfig.REST_REQUESTPWRESET, response -> {
+ Log.d(TAG, "Resend E-Mail Response: " + response);
+ hideDialog();
- @Override
- public void onResponse(String response) {
- Log.d(TAG, "Resend E-Mail Response: " + response);
- hideDialog();
-
- try {
- JSONObject jObj = new JSONObject(response);
- boolean error = jObj.getBoolean("error");
- if (!error) {
- showMessage(getString(R.string.alert_passwordreset_confirmation));
- } else {
- String errorMsg = jObj.getString("error_msg");
- Crashlytics.log(Log.ERROR, TAG, "Reset PW returned error value: "+errorMsg);
- Toast.makeText(getApplicationContext(),
- getResources().getString(R.string.txt_errormsg_getpwreset), Toast.LENGTH_LONG).show();
- }
- } catch (JSONException e) {
- Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
- Crashlytics.logException(e);
+ try {
+ JSONObject jObj = new JSONObject(response);
+ boolean error = jObj.getBoolean("error");
+ if (!error) {
+ showMessage(getString(R.string.alert_passwordreset_confirmation));
+ } else {
+ String errorMsg = jObj.getString("error_msg");
+ Crashlytics.log(Log.ERROR, TAG, "Reset PW returned error value: "+errorMsg);
+ Toast.makeText(getApplicationContext(),
+ getResources().getString(R.string.txt_errormsg_getpwreset), Toast.LENGTH_LONG).show();
}
-
+ } catch (JSONException e) {
+ Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
+ Crashlytics.logException(e);
}
- }, new Response.ErrorListener() {
- @Override
- public void onErrorResponse(VolleyError error) {
- Crashlytics.log(Log.ERROR, TAG, "E-Mail pw resend Error: " + error.getMessage());
- Toast.makeText(getApplicationContext(),
- getResources().getString(R.string.txt_errormsg_getpwreset), Toast.LENGTH_LONG).show();
- hideDialog();
- }
+ }, error -> {
+ Crashlytics.log(Log.ERROR, TAG, "E-Mail pw resend Error: " + error.getMessage());
+ Toast.makeText(getApplicationContext(),
+ getResources().getString(R.string.txt_errormsg_getpwreset), Toast.LENGTH_LONG).show();
+ hideDialog();
}) {
@Override
@@ -965,37 +833,29 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
}
private StringRequest getStringRequestActivationLinkUser(final String email) {
- return new StringRequest(Method.POST, AppConfig.REST_SENDACTIVATIONMAIL, new Response.Listener() {
+ return new StringRequest(Method.POST, AppConfig.REST_SENDACTIVATIONMAIL, response -> {
+ Log.d(TAG, "Resend E-Mail Response: " + response);
+ hideDialog();
- @Override
- public void onResponse(String response) {
- Log.d(TAG, "Resend E-Mail Response: " + response);
- hideDialog();
-
- try {
- JSONObject jObj = new JSONObject(response);
- boolean error = jObj.getBoolean("error");
- if (error) {
- String errorMsg = jObj.getString("error_msg");
- Crashlytics.log(Log.ERROR, TAG,"Resend E-Mail returned error value: "+errorMsg);
- Toast.makeText(getApplicationContext(),
- getResources().getString(R.string.txt_errormsg_getactivationlink) + ":"+errorMsg, Toast.LENGTH_LONG).show();
- }
- } catch (JSONException e) {
- Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
- Crashlytics.logException(e);
+ try {
+ JSONObject jObj = new JSONObject(response);
+ boolean error = jObj.getBoolean("error");
+ if (error) {
+ String errorMsg = jObj.getString("error_msg");
+ Crashlytics.log(Log.ERROR, TAG,"Resend E-Mail returned error value: "+errorMsg);
+ Toast.makeText(getApplicationContext(),
+ getResources().getString(R.string.txt_errormsg_getactivationlink) + ":"+errorMsg, Toast.LENGTH_LONG).show();
}
-
+ } catch (JSONException e) {
+ Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
+ Crashlytics.logException(e);
}
- }, new Response.ErrorListener() {
- @Override
- public void onErrorResponse(VolleyError error) {
- Crashlytics.log(Log.ERROR, TAG, "E-Mail pw resend error: " + error.getMessage());
- Toast.makeText(getApplicationContext(),
- getResources().getString(R.string.txt_errormsg_getactivationlink), Toast.LENGTH_LONG).show();
- hideDialog();
- }
+ }, error -> {
+ Crashlytics.log(Log.ERROR, TAG, "E-Mail pw resend error: " + error.getMessage());
+ Toast.makeText(getApplicationContext(),
+ getResources().getString(R.string.txt_errormsg_getactivationlink), Toast.LENGTH_LONG).show();
+ hideDialog();
}) {
@Override
@@ -1009,51 +869,41 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
}
private StringRequest getStringRequestRegisterUser(final String username, final String email, final String password) {
- return new StringRequest(Method.POST, AppConfig.REST_REGISTER, new Response.Listener() {
+ return new StringRequest(Method.POST, AppConfig.REST_REGISTER, response -> {
+ Log.d(TAG, "Register Response: " + response);
+ hideDialog();
- @Override
- public void onResponse(String response) {
- Log.d(TAG, "Register Response: " + response);
- hideDialog();
-
- try {
- JSONObject jObj = new JSONObject(response);
- boolean error = jObj.getBoolean("error");
- if (!error) {
- new AlertDialog.Builder(LoginActivity.this)
- .setTitle(getString(R.string.alert_accregistration_title))
- .setMessage(getString(R.string.alert_accregistration_text))
- .setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialog, int which) {
- Intent intent = new Intent(
- LoginActivity.this,
- LoginActivity.class);
- intent.putExtra(AppConfig.EXTRA_MESSAGE, AppConfig.INTENT_LOGIN);
- startActivity(intent);
- finish();
- }
- })
- .setIcon(android.R.drawable.ic_dialog_alert)
- .show();
- } else {
- String errorMsg = jObj.getString("error_msg");
- Crashlytics.log(Log.ERROR, TAG, "Error occured: "+errorMsg);
- Toast.makeText(getApplicationContext(), getResources().getString(R.string.txt_errormsg_register), Toast.LENGTH_LONG).show();
- }
- } catch (JSONException e) {
- Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
- Crashlytics.logException(e);
+ try {
+ JSONObject jObj = new JSONObject(response);
+ boolean error = jObj.getBoolean("error");
+ if (!error) {
+ new AlertDialog.Builder(LoginActivity.this)
+ .setTitle(getString(R.string.alert_accregistration_title))
+ .setMessage(getString(R.string.alert_accregistration_text))
+ .setPositiveButton(android.R.string.yes, (dialog, which) -> {
+ Intent intent = new Intent(
+ LoginActivity.this,
+ LoginActivity.class);
+ intent.putExtra(AppConfig.EXTRA_MESSAGE, AppConfig.INTENT_LOGIN);
+ startActivity(intent);
+ finish();
+ })
+ .setIcon(android.R.drawable.ic_dialog_alert)
+ .show();
+ } else {
+ String errorMsg = jObj.getString("error_msg");
+ Crashlytics.log(Log.ERROR, TAG, "Error occured: "+errorMsg);
+ Toast.makeText(getApplicationContext(), getResources().getString(R.string.txt_errormsg_register), Toast.LENGTH_LONG).show();
}
+ } catch (JSONException e) {
+ Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
+ Crashlytics.logException(e);
}
- }, new Response.ErrorListener() {
-
- @Override
- public void onErrorResponse(VolleyError error) {
- Crashlytics.log(Log.ERROR, TAG, "Registration Error: " + error.getMessage());
- Toast.makeText(getApplicationContext(),
- getResources().getString(R.string.txt_errormsg_register), Toast.LENGTH_LONG).show();
- hideDialog();
- }
+ }, error -> {
+ Crashlytics.log(Log.ERROR, TAG, "Registration Error: " + error.getMessage());
+ Toast.makeText(getApplicationContext(),
+ getResources().getString(R.string.txt_errormsg_register), Toast.LENGTH_LONG).show();
+ hideDialog();
}) {
@Override
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 7a63ba8..ca4e65e 100644
--- a/app/src/main/java/org/deke/risk/riskahead/MapsActivity.java
+++ b/app/src/main/java/org/deke/risk/riskahead/MapsActivity.java
@@ -1,5 +1,6 @@
package org.deke.risk.riskahead;
+import android.app.ActionBar;
import android.app.SearchManager;
import android.app.SearchableInfo;
import android.content.Context;
@@ -11,7 +12,9 @@ import android.graphics.Color;
import android.graphics.drawable.Drawable;
import android.location.Location;
import android.location.LocationManager;
+import android.location.LocationListener;
import android.os.Bundle;
+import android.support.annotation.NonNull;
import android.support.design.widget.FloatingActionButton;
import android.support.v4.app.ActivityCompat;
import android.support.v4.app.LoaderManager;
@@ -20,10 +23,9 @@ import android.support.v4.content.CursorLoader;
import android.support.v4.content.Loader;
import android.support.v7.widget.SearchView;
import android.util.Log;
+import android.util.TypedValue;
import android.view.Menu;
import android.view.View;
-import android.view.ViewGroup;
-import android.widget.Button;
import android.widget.EditText;
import android.widget.LinearLayout;
import android.widget.RatingBar;
@@ -33,11 +35,6 @@ import android.widget.TextView;
import com.crashlytics.android.Crashlytics;
import com.android.volley.Request;
-import com.android.volley.Response;
-import com.android.volley.VolleyError;
-
-import android.location.LocationListener;
-
import com.android.volley.toolbox.StringRequest;
import com.google.android.gms.maps.CameraUpdate;
import com.google.android.gms.maps.CameraUpdateFactory;
@@ -155,14 +152,14 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
}
@Override
- public void onRequestPermissionsResult(int requestCode, String permissions[], int[] grantResults) {
+ public void onRequestPermissionsResult(int requestCode, @NonNull String permissions[], @NonNull int[] grantResults) {
Log.d(TAG, "Getting permission results...");
switch (requestCode) {
case MY_PERMISSIONS_REQUEST_LOCATION: {
if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
Log.d(TAG, "Permission was granted by user");
enableMyLocationButton();
- getLocation();
+ gotoMyLocation();
} else {
Log.d(TAG, "Permission was not granted by user");
@@ -192,173 +189,161 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
Log.d(TAG, "Init Map");
mMap.getUiSettings().setZoomControlsEnabled(true);
mMap.setMinZoomPreference(MIN_ZOOM_LEVEL);
- mMap.setOnMyLocationButtonClickListener(new GoogleMap.OnMyLocationButtonClickListener() {
- @Override
- public boolean onMyLocationButtonClick() {
- getLocation();
- return false;
- }
+ mMap.setOnMyLocationButtonClickListener(() -> {
+ gotoMyLocation();
+ return false;
});
+ // Retrieve height of action bar and modify map padding
+ TypedValue tv = new TypedValue();
+ if (getTheme().resolveAttribute(R.attr.actionBarSize, tv, true))
+ {
+ int actionBarHeight = TypedValue.complexToDimensionPixelSize(tv.data,getResources().getDisplayMetrics());
+ mMap.setPadding(0, actionBarHeight,0,0);
+ }
+
enableMyLocationButton();
- mMap.setOnMapClickListener(new GoogleMap.OnMapClickListener() {
- @Override
- public void onMapClick(LatLng point) {
- if (mMarker != null) {
- mMarker.remove();
- }
+ mMap.setOnMapClickListener(point -> {
+ if (mMarker != null) {
+ mMarker.remove();
+ }
- markedLocation = point;
- mMarker = mMap.addMarker(new MarkerOptions().position(point));
+ markedLocation = point;
+ mMarker = mMap.addMarker(new MarkerOptions().position(point));
- if (current_zoom_level > DEFAULT_ZOOM_LEVEL) {
- mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(point, current_zoom_level));
- } else {
- mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(point, DEFAULT_ZOOM_LEVEL));
- }
+ if (current_zoom_level > DEFAULT_ZOOM_LEVEL) {
+ mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(point, current_zoom_level));
+ } else {
+ mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(point, DEFAULT_ZOOM_LEVEL));
+ }
- addButton = findViewById(R.id.fab_reportwf_map);
- addButton.setVisibility(View.VISIBLE);
+ addButton = findViewById(R.id.fab_reportwf_map);
+ addButton.setVisibility(View.VISIBLE);
- if (getIntent().hasExtra(AppConfig.EXTRA_MAP_TYPE)) {
- if (getIntent().getStringExtra(AppConfig.EXTRA_MAP_TYPE).equals(AppConfig.INTENT_MAP_GETINCLOC)) {
- addButton.setBackgroundTintList(ColorStateList.valueOf(ContextCompat.getColor(getApplicationContext(), R.color.md_green_400)));
- showAdd = false;
- Drawable identityIcon = new IconicsDrawable(getApplicationContext())
- .icon(GoogleMaterial.Icon.gmd_done)
- .color(ContextCompat.getColor(getApplicationContext(), R.color.white))
- .sizeDp(24);
+ if (getIntent().hasExtra(AppConfig.EXTRA_MAP_TYPE)) {
+ if (getIntent().getStringExtra(AppConfig.EXTRA_MAP_TYPE).equals(AppConfig.INTENT_MAP_GETINCLOC)) {
+ addButton.setBackgroundTintList(ColorStateList.valueOf(ContextCompat.getColor(getApplicationContext(), R.color.md_green_400)));
+ showAdd = false;
+ Drawable identityIcon = new IconicsDrawable(getApplicationContext())
+ .icon(GoogleMaterial.Icon.gmd_done)
+ .color(ContextCompat.getColor(getApplicationContext(), R.color.white))
+ .sizeDp(24);
- addButton.setImageDrawable(identityIcon);
+ addButton.setImageDrawable(identityIcon);
- addButton.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- gotoReportActivity(markedLocation.latitude + ":" + markedLocation.longitude);
- }
- });
- } else if (getIntent().getStringExtra(AppConfig.EXTRA_MAP_TYPE).equals(AppConfig.INTENT_MAP_GETNOTIFY)) {
- addButton.setBackgroundTintList(ColorStateList.valueOf(ContextCompat.getColor(getApplicationContext(), R.color.md_green_400)));
- showAdd = false;
- Drawable identityIcon = new IconicsDrawable(getApplicationContext())
- .icon(GoogleMaterial.Icon.gmd_done)
- .color(ContextCompat.getColor(getApplicationContext(), R.color.white))
- .sizeDp(24);
+ addButton.setOnClickListener(v -> gotoReportActivity(markedLocation.latitude + ":" + markedLocation.longitude));
+ } else if (getIntent().getStringExtra(AppConfig.EXTRA_MAP_TYPE).equals(AppConfig.INTENT_MAP_GETNOTIFY)) {
+ addButton.setBackgroundTintList(ColorStateList.valueOf(ContextCompat.getColor(getApplicationContext(), R.color.md_green_400)));
+ showAdd = false;
+ Drawable identityIcon = new IconicsDrawable(getApplicationContext())
+ .icon(GoogleMaterial.Icon.gmd_done)
+ .color(ContextCompat.getColor(getApplicationContext(), R.color.white))
+ .sizeDp(24);
- addButton.setImageDrawable(identityIcon);
+ addButton.setImageDrawable(identityIcon);
- addButton.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- session.setManualLocation(Double.doubleToRawLongBits(markedLocation.latitude), Double.doubleToRawLongBits(markedLocation.longitude));
- Log.d(TAG, "MARKED LOCATION: " + markedLocation.latitude + " " + markedLocation.longitude);
- gotoSettingsActivity();
- }
- });
- }
- } else {
- addButton.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- Log.d(TAG, "MARKED LOCATION: " + markedLocation.latitude + " " + markedLocation.longitude);
- showAdd = false;
- gotoReportActivity(markedLocation.latitude + ":" + markedLocation.longitude);
- }
+ addButton.setOnClickListener(v -> {
+ session.setManualLocation(Double.doubleToRawLongBits(markedLocation.latitude), Double.doubleToRawLongBits(markedLocation.longitude));
+ Log.d(TAG, "MARKED LOCATION: " + markedLocation.latitude + " " + markedLocation.longitude);
+ gotoSettingsActivity();
});
}
-
+ } else {
+ addButton.setOnClickListener(v -> {
+ Log.d(TAG, "MARKED LOCATION: " + markedLocation.latitude + " " + markedLocation.longitude);
+ showAdd = false;
+ gotoReportActivity(markedLocation.latitude + ":" + markedLocation.longitude);
+ });
}
+
});
}
public GoogleMap.OnCameraIdleListener getCameraChangeListener() {
- return new GoogleMap.OnCameraIdleListener() {
- @Override
- public void onCameraIdle() {
- mClusterManager.onCameraIdle();
- CameraPosition position = mMap.getCameraPosition();
- current_zoom_level = position.zoom;
+ return () -> {
+ mClusterManager.onCameraIdle();
+ CameraPosition position = mMap.getCameraPosition();
+ current_zoom_level = position.zoom;
- if (position.zoom > 13) {
- PRELOAD_PERCENTAGE = 0.7;
- } else {
- PRELOAD_PERCENTAGE = 0.3;
+ if (position.zoom > 13) {
+ PRELOAD_PERCENTAGE = 0.7;
+ } else {
+ PRELOAD_PERCENTAGE = 0.3;
+ }
+
+ LatLngBounds bounds = mMap.getProjection().getVisibleRegion().latLngBounds;
+
+ Log.d("OnCameraChangeListener", "Position: " + bounds.getCenter() + " Zoom: " + position.zoom + " Bounds: NE:" + bounds.northeast + " SW: " + bounds.southwest);
+ Log.d("OnCameraChangeListener", "Saved Position - Bounds: NE:" + curNortheastBounds + " SW: " + curSouthwestBounds);
+
+ boolean isOutOfBounds = false;
+
+ double distanceLat = Math.abs(bounds.northeast.latitude - bounds.southwest.latitude);
+ double distanceLon = Math.abs(bounds.northeast.longitude - bounds.southwest.longitude);
+
+ double southwestLat, southwestLng;
+ double northeastLat, northeastLng;
+
+ if (bounds.southwest.latitude < bounds.northeast.latitude) {
+ southwestLat = bounds.southwest.latitude - distanceLat * PRELOAD_PERCENTAGE;
+ northeastLat = bounds.northeast.latitude + distanceLat * PRELOAD_PERCENTAGE;
+
+ if ((curSouthwestBounds != null) && ((bounds.southwest.latitude < curSouthwestBounds.latitude) || (bounds.northeast.latitude > curNortheastBounds.latitude))) {
+ isOutOfBounds = true;
}
+ } else {
+ southwestLat = bounds.southwest.latitude + distanceLat * PRELOAD_PERCENTAGE;
+ northeastLat = bounds.northeast.latitude - distanceLat * PRELOAD_PERCENTAGE;
- LatLngBounds bounds = mMap.getProjection().getVisibleRegion().latLngBounds;
-
- Log.d("OnCameraChangeListener", "Position: " + bounds.getCenter() + " Zoom: " + position.zoom + " Bounds: NE:" + bounds.northeast + " SW: " + bounds.southwest);
- Log.d("OnCameraChangeListener", "Saved Position - Bounds: NE:" + curNortheastBounds + " SW: " + curSouthwestBounds);
-
- boolean isOutOfBounds = false;
-
- double distanceLat = Math.abs(bounds.northeast.latitude - bounds.southwest.latitude);
- double distanceLon = Math.abs(bounds.northeast.longitude - bounds.southwest.longitude);
-
- double southwestLat, southwestLng;
- double northeastLat, northeastLng;
-
- if (bounds.southwest.latitude < bounds.northeast.latitude) {
- southwestLat = bounds.southwest.latitude - distanceLat * PRELOAD_PERCENTAGE;
- northeastLat = bounds.northeast.latitude + distanceLat * PRELOAD_PERCENTAGE;
-
- if ((curSouthwestBounds != null) && ((bounds.southwest.latitude < curSouthwestBounds.latitude) || (bounds.northeast.latitude > curNortheastBounds.latitude))) {
- isOutOfBounds = true;
- }
- } else {
- southwestLat = bounds.southwest.latitude + distanceLat * PRELOAD_PERCENTAGE;
- northeastLat = bounds.northeast.latitude - distanceLat * PRELOAD_PERCENTAGE;
-
- if ((curSouthwestBounds != null) && ((bounds.southwest.latitude > curSouthwestBounds.latitude) || (bounds.northeast.latitude < curNortheastBounds.latitude))) {
- isOutOfBounds = true;
- }
+ if ((curSouthwestBounds != null) && ((bounds.southwest.latitude > curSouthwestBounds.latitude) || (bounds.northeast.latitude < curNortheastBounds.latitude))) {
+ isOutOfBounds = true;
}
+ }
- if (bounds.southwest.longitude < bounds.northeast.longitude) {
- southwestLng = bounds.southwest.longitude - distanceLon * PRELOAD_PERCENTAGE;
- northeastLng = bounds.northeast.longitude + distanceLon * PRELOAD_PERCENTAGE;
+ if (bounds.southwest.longitude < bounds.northeast.longitude) {
+ southwestLng = bounds.southwest.longitude - distanceLon * PRELOAD_PERCENTAGE;
+ northeastLng = bounds.northeast.longitude + distanceLon * PRELOAD_PERCENTAGE;
- if ((curSouthwestBounds != null) && ((bounds.southwest.longitude < curSouthwestBounds.longitude) || (bounds.northeast.longitude > curNortheastBounds.longitude))) {
- isOutOfBounds = true;
- }
- } else {
- southwestLng = bounds.southwest.longitude + distanceLon * PRELOAD_PERCENTAGE;
- northeastLng = bounds.northeast.longitude - distanceLon * PRELOAD_PERCENTAGE;
-
- if ((curSouthwestBounds != null) && ((bounds.southwest.longitude > curSouthwestBounds.longitude) || (bounds.northeast.longitude < curNortheastBounds.longitude))) {
- isOutOfBounds = true;
- }
+ if ((curSouthwestBounds != null) && ((bounds.southwest.longitude < curSouthwestBounds.longitude) || (bounds.northeast.longitude > curNortheastBounds.longitude))) {
+ isOutOfBounds = true;
}
+ } else {
+ southwestLng = bounds.southwest.longitude + distanceLon * PRELOAD_PERCENTAGE;
+ northeastLng = bounds.northeast.longitude - distanceLon * PRELOAD_PERCENTAGE;
- if ((curSouthwestBounds == null) || isOutOfBounds) {
- curNortheastBounds = new LatLng(northeastLat, northeastLng);
- curSouthwestBounds = new LatLng(southwestLat, southwestLng);
+ if ((curSouthwestBounds != null) && ((bounds.southwest.longitude > curSouthwestBounds.longitude) || (bounds.northeast.longitude < curNortheastBounds.longitude))) {
+ isOutOfBounds = true;
+ }
+ }
- Log.d("OnCameraChangeListener", "isOutOfBounds is true => New Calculated - Bounds: NE:" + curNortheastBounds + " SW: " + curSouthwestBounds);
+ if ((curSouthwestBounds == null) || isOutOfBounds) {
+ curNortheastBounds = new LatLng(northeastLat, northeastLng);
+ curSouthwestBounds = new LatLng(southwestLat, southwestLng);
- if (position.zoom >= THRESHOLD_ZOOM_LEVEL) {
- refreshIncidentHeatMap(curNortheastBounds, curSouthwestBounds);
- refreshIncidentMarkers(curNortheastBounds, curSouthwestBounds);
- markersShown = true;
- } else if (position.zoom < THRESHOLD_ZOOM_LEVEL) {
- mClusterManager.clearItems();
- refreshIncidentHeatMap(curNortheastBounds, curSouthwestBounds);
- markersShown = false;
- }
- } else if ((position.zoom >= THRESHOLD_ZOOM_LEVEL) && !markersShown) {
- curNortheastBounds = new LatLng(northeastLat, northeastLng);
- curSouthwestBounds = new LatLng(southwestLat, southwestLng);
-
- Log.d("OnCameraChangeListener", "zoom threshold passed => New Calculated - Bounds: NE:" + curNortheastBounds + " SW: " + curSouthwestBounds);
+ Log.d("OnCameraChangeListener", "isOutOfBounds is true => New Calculated - Bounds: NE:" + curNortheastBounds + " SW: " + curSouthwestBounds);
+ if (position.zoom >= THRESHOLD_ZOOM_LEVEL) {
refreshIncidentHeatMap(curNortheastBounds, curSouthwestBounds);
refreshIncidentMarkers(curNortheastBounds, curSouthwestBounds);
markersShown = true;
- } else if ((position.zoom < THRESHOLD_ZOOM_LEVEL) && !markersShown) {
+ } else if (position.zoom < THRESHOLD_ZOOM_LEVEL) {
mClusterManager.clearItems();
+ refreshIncidentHeatMap(curNortheastBounds, curSouthwestBounds);
markersShown = false;
}
+ } else if ((position.zoom >= THRESHOLD_ZOOM_LEVEL) && !markersShown) {
+ curNortheastBounds = new LatLng(northeastLat, northeastLng);
+ curSouthwestBounds = new LatLng(southwestLat, southwestLng);
+
+ Log.d("OnCameraChangeListener", "zoom threshold passed => New Calculated - Bounds: NE:" + curNortheastBounds + " SW: " + curSouthwestBounds);
+
+ refreshIncidentHeatMap(curNortheastBounds, curSouthwestBounds);
+ refreshIncidentMarkers(curNortheastBounds, curSouthwestBounds);
+ markersShown = true;
+ } else if ((position.zoom < THRESHOLD_ZOOM_LEVEL) && !markersShown) {
+ mClusterManager.clearItems();
+ markersShown = false;
}
};
}
@@ -421,39 +406,32 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
}
private StringRequest getStringRequestGetAllIncidentsForHeatMapFromBound(final LatLng northeast, final LatLng southwest) {
- return new StringRequest(Request.Method.POST, AppConfig.REST_GET_INCIDENTS_FROMBOUND_FORHEATMAP, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.REST_GET_INCIDENTS_FROMBOUND_FORHEATMAP, response -> {
+ Log.d(TAG, "Map HeatMap positions response: " + response);
+ hideProgress();
+ try {
+ JSONObject jObj = new JSONObject(response);
+ boolean error = jObj.getBoolean("error");
- @Override
- public void onResponse(String response) {
- Log.d(TAG, "Map HeatMap positions response: " + response);
- hideProgress();
- try {
- JSONObject jObj = new JSONObject(response);
- boolean error = jObj.getBoolean("error");
+ if (!error) {
+ JSONArray incidents = jObj.getJSONArray("msg");
+ Log.d(TAG, "HeatMap positions response length: " + incidents.length());
+ addIncidentMarkersOnHeatMap(incidents);
+ } else {
+ String errorMsg = jObj.getString("error_msg");
- if (!error) {
- JSONArray incidents = jObj.getJSONArray("msg");
- Log.d(TAG, "HeatMap positions response length: " + incidents.length());
- addIncidentMarkersOnHeatMap(incidents);
- } else {
- String errorMsg = jObj.getString("error_msg");
-
- int loglevel = errorMsg.contains("Could not retrieve incidents from bound") ? Log.INFO : Log.ERROR;
- Crashlytics.log(loglevel, TAG, "Error getting map heat map positions (server returned error): " + errorMsg);
- }
- } catch (JSONException e) {
- Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
- Crashlytics.logException(e);
+ int loglevel = errorMsg.contains("Could not retrieve incidents from bound") ? Log.INFO : Log.ERROR;
+ Crashlytics.log(loglevel, TAG, "Error getting map heat map positions (server returned error): " + errorMsg);
}
+ } catch (JSONException e) {
+ Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
+ Crashlytics.logException(e);
+ }
- }
- }, new Response.ErrorListener() {
- @Override
- public void onErrorResponse(VolleyError error) {
- hideProgress();
- Crashlytics.log(Log.ERROR, TAG, "Error getting map positions: " + error.getMessage());
- handleVolleyErrorResponse();
- }
+ }, error -> {
+ hideProgress();
+ Crashlytics.log(Log.ERROR, TAG, "Error getting map positions: " + error.getMessage());
+ handleVolleyErrorResponse();
}) {
@Override
protected Map getParams() {
@@ -471,37 +449,30 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
}
private StringRequest getStringRequestGetAllIncidentsFromBound(final LatLng northeast, final LatLng southwest) {
- return new StringRequest(Request.Method.POST, AppConfig.REST_GET_INCIDENTS_FROMBOUND, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.REST_GET_INCIDENTS_FROMBOUND, response -> {
+ Log.d(TAG, "Map positions response: " + response);
+ hideProgress();
+ try {
+ JSONObject jObj = new JSONObject(response);
+ boolean error = jObj.getBoolean("error");
- @Override
- public void onResponse(String response) {
- Log.d(TAG, "Map positions response: " + response);
- hideProgress();
- try {
- JSONObject jObj = new JSONObject(response);
- boolean error = jObj.getBoolean("error");
-
- if (!error) {
- JSONArray incidents = jObj.getJSONArray("msg");
- Log.d(TAG, "Map positions response length: " + incidents.length());
- addIncidentMarkersOnMap(incidents);
- } else {
- String errorMsg = jObj.getString("error_msg");
- Crashlytics.log(Log.INFO, TAG, "Error getting map positions (server returned error): " + errorMsg);
- }
- } catch (JSONException e) {
- Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
- Crashlytics.logException(e);
+ if (!error) {
+ JSONArray incidents = jObj.getJSONArray("msg");
+ Log.d(TAG, "Map positions response length: " + incidents.length());
+ addIncidentMarkersOnMap(incidents);
+ } else {
+ String errorMsg = jObj.getString("error_msg");
+ Crashlytics.log(Log.INFO, TAG, "Error getting map positions (server returned error): " + errorMsg);
}
+ } catch (JSONException e) {
+ Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
+ Crashlytics.logException(e);
+ }
- }
- }, new Response.ErrorListener() {
- @Override
- public void onErrorResponse(VolleyError error) {
- hideProgress();
- Crashlytics.log(Log.ERROR, TAG, "Error getting map positions: " + error.getMessage());
- showMessage(getString(R.string.errormsg_couldnotretrieve));
- }
+ }, error -> {
+ hideProgress();
+ Crashlytics.log(Log.ERROR, TAG, "Error getting map positions: " + error.getMessage());
+ showMessage(getString(R.string.errormsg_couldnotretrieve));
}) {
@Override
protected Map getParams() {
@@ -532,12 +503,9 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
mClusterManager.setOnClusterClickListener(this);
mClusterManager.setOnClusterItemClickListener(this);
- mClusterManager.setOnClusterItemClickListener(new ClusterManager.OnClusterItemClickListener() {
- @Override
- public boolean onClusterItemClick(IncidentReport item) {
- clickedClusterItem = item;
- return false;
- }
+ mClusterManager.setOnClusterItemClickListener(item -> {
+ clickedClusterItem = item;
+ return false;
});
mClusterManager.getMarkerCollection().setOnInfoWindowAdapter(
@@ -553,48 +521,41 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
}
private StringRequest getStringRequestGetIncidentScoreForInfoWindow(final View infoView, final String incidentID) {
- return new StringRequest(Request.Method.POST, AppConfig.REST_GET_INCIDENT, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.REST_GET_INCIDENT, response -> {
+ Log.d(TAG, "Map positions response: " + response);
+ hideProgress();
+ try {
+ JSONObject jObj = new JSONObject(response);
+ boolean error = jObj.getBoolean("error");
- @Override
- public void onResponse(String response) {
- Log.d(TAG, "Map positions response: " + response);
- hideProgress();
- try {
- JSONObject jObj = new JSONObject(response);
- boolean error = jObj.getBoolean("error");
+ if (!error) {
+ JSONObject incident = jObj.getJSONObject("msg");
+ clickedClusterItem = new IncidentReport(incident);
- if (!error) {
- JSONObject incident = jObj.getJSONObject("msg");
- clickedClusterItem = new IncidentReport(incident);
+ TextView tvUsername = infoView.findViewById(R.id.txt_infowindow_fromuser);
+ RatingBar rbScore = infoView.findViewById(R.id.rb_infowindow_rating);
- TextView tvUsername = infoView.findViewById(R.id.txt_infowindow_fromuser);
- RatingBar rbScore = infoView.findViewById(R.id.rb_infowindow_rating);
+ tvUsername.setText(String.format("%s %s", getString(R.string.lbl_mapsinfowindow_author), clickedClusterItem.getFromUsername()));
+ rbScore.setRating(clickedClusterItem.getScoreStars());
- tvUsername.setText(String.format("%s %s", getString(R.string.lbl_mapsinfowindow_author), clickedClusterItem.getFromUsername()));
- rbScore.setRating(clickedClusterItem.getScoreStars());
-
- if (markerShowingInfoWindow != null && markerShowingInfoWindow.isInfoWindowShown()) {
- markerShowingInfoWindow.showInfoWindow();
- markerShowingInfoWindow = null;
- }
- } else {
- String errorMsg = jObj.getString("error_msg");
- Log.i(TAG, "Error getting incident details (server returned error): " + errorMsg);
- showMessage(getResources().getString(R.string.txt_errormsg_getinfowindow));
+ if (markerShowingInfoWindow != null && markerShowingInfoWindow.isInfoWindowShown()) {
+ markerShowingInfoWindow.showInfoWindow();
+ markerShowingInfoWindow = null;
}
- } catch (JSONException e) {
- Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
- Crashlytics.logException(e);
+ } else {
+ String errorMsg = jObj.getString("error_msg");
+ Log.i(TAG, "Error getting incident details (server returned error): " + errorMsg);
+ showMessage(getResources().getString(R.string.txt_errormsg_getinfowindow));
}
+ } catch (JSONException e) {
+ Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
+ Crashlytics.logException(e);
+ }
- }
- }, new Response.ErrorListener() {
- @Override
- public void onErrorResponse(VolleyError error) {
- hideProgress();
- Crashlytics.log(Log.ERROR, TAG, "Error getting incident details: " + error.getMessage());
- handleVolleyErrorResponse();
- }
+ }, error -> {
+ hideProgress();
+ Crashlytics.log(Log.ERROR, TAG, "Error getting incident details: " + error.getMessage());
+ handleVolleyErrorResponse();
}) {
@Override
protected Map getParams() {
@@ -674,7 +635,7 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
if ((myPosition != null) && (myPosition.latitude != 0.0) && (myPosition.longitude != 0.0)) {
mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(myPosition.latitude, myPosition.longitude), DEFAULT_ZOOM_LEVEL));
} else {
- getLocation();
+ gotoMyLocation();
}
}
}
@@ -714,7 +675,7 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
getSupportLoaderManager().restartLoader(1, data, this);
}
- private void showLocations(Cursor c) {
+ private void showLocation(Cursor c) {
MarkerOptions markerOptions;
LatLng position = null;
@@ -736,16 +697,17 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
}
@Override
- public void onLoaderReset(Loader arg0) {
+ public void onLoaderReset(@NonNull Loader arg0) {
}
@Override
+ @NonNull
public Loader onCreateLoader(int arg0, Bundle query) {
CursorLoader cLoader;
if (arg0 == 0)
cLoader = new CursorLoader(getBaseContext(), PlaceProvider.SEARCH_URI, null, null, new String[]{query.getString("query")}, null);
- else //if (arg0 == 1)
+ else
cLoader = new CursorLoader(getBaseContext(), PlaceProvider.DETAILS_URI, null, null, new String[]{query.getString("query")}, null);
return cLoader;
@@ -785,7 +747,7 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
locationManager.isProviderEnabled(LocationManager.NETWORK_PROVIDER);
}
- public Location getLocation() {
+ public void gotoMyLocation() {
//check for permission
Log.d(TAG, "Permission for GPS not granted yet - ask for permission now");
if (ActivityCompat.checkSelfPermission(getApplicationContext(), android.Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(getApplicationContext(), android.Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
@@ -841,25 +803,22 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
Crashlytics.logException(e);
}
}
-
- return location;
}
private void enableMyLocationButton() {
try{
mMap.setMyLocationEnabled(true);
- MapFragment mapFragment = (MapFragment) getFragmentManager().findFragmentById(R.id.frag_maps_map);
- View locationButton = ((View) mapFragment.getView().findViewById(Integer.parseInt("1")).getParent()).findViewById(Integer.parseInt("2"));
- RelativeLayout.LayoutParams rlp = (RelativeLayout.LayoutParams) locationButton.getLayoutParams();
- rlp.setMargins(0, 250, 30, 30);
}catch(SecurityException se){
ActivityCompat.requestPermissions(this, new String[]{android.Manifest.permission.ACCESS_FINE_LOCATION, android.Manifest.permission.ACCESS_COARSE_LOCATION}, MY_PERMISSIONS_REQUEST_LOCATION);
+ }catch(AssertionError ae){
+ Crashlytics.log(Log.ERROR, TAG, "Could not find mapFragment view");
+ Crashlytics.logException(ae);
}
}
@Override
- public void onLoadFinished(Loader arg0, Cursor c) {
- showLocations(c);
+ public void onLoadFinished(@NonNull Loader arg0, Cursor c) {
+ showLocation(c);
}
@Override
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 c229507..f94849b 100644
--- a/app/src/main/java/org/deke/risk/riskahead/ReportWFActivity.java
+++ b/app/src/main/java/org/deke/risk/riskahead/ReportWFActivity.java
@@ -9,7 +9,6 @@ import android.net.Uri;
import android.provider.MediaStore;
import android.support.v4.app.ActivityCompat;
import android.support.v4.app.FragmentTransaction;
-import android.content.DialogInterface;
import android.content.Intent;
import android.content.SharedPreferences;
import android.location.Address;
@@ -24,8 +23,6 @@ import android.widget.TextView;
import android.support.annotation.NonNull;
import com.android.volley.Request;
-import com.android.volley.Response;
-import com.android.volley.VolleyError;
import com.android.volley.toolbox.StringRequest;
import com.beardedhen.androidbootstrap.BootstrapButton;
import com.beardedhen.androidbootstrap.api.defaults.DefaultBootstrapBrand;
@@ -124,36 +121,27 @@ public class ReportWFActivity extends BaseActivity implements ReportWF_1_Fragmen
private void initButtonsAndElements() {
btnContinue = findViewById(R.id.btn_reportwf_next);
btnContinue.setEnabled(false);
- btnContinue.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- incident = fragList.get(currentState).getCurrentInput();
- initFragment(currentState + 1);
- }
+ btnContinue.setOnClickListener(v -> {
+ incident = fragList.get(currentState).getCurrentInput();
+ initFragment(currentState + 1);
});
btnReportNow = findViewById(R.id.btn_reportwf_reportnow);
btnReportNow.setEnabled(false);
- btnReportNow.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- incident = fragList.get(currentState).getCurrentInput();
- sendReport();
- }
+ btnReportNow.setOnClickListener(v -> {
+ incident = fragList.get(currentState).getCurrentInput();
+ sendReport();
});
siteIndicator = findViewById(R.id.lbl_reportwf_site);
btnMap = findViewById(R.id.fab_reportwf_map);
- btnMap.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- incident = fragList.get(currentState).getCurrentInput();
- if (incident != null && incident.getPosition() != null) {
- getIncidentLocationFromMapActivity(incident.getPosition().latitude + ":" + incident.getPosition().longitude);
- } else {
- getIncidentLocationFromMapActivity();
- }
+ btnMap.setOnClickListener(v -> {
+ incident = fragList.get(currentState).getCurrentInput();
+ if (incident != null && incident.getPosition() != null) {
+ getIncidentLocationFromMapActivity(incident.getPosition().latitude + ":" + incident.getPosition().longitude);
+ } else {
+ getIncidentLocationFromMapActivity();
}
});
}
@@ -196,7 +184,9 @@ public class ReportWFActivity extends BaseActivity implements ReportWF_1_Fragmen
private void modifyPos(String pos){
String[] position = pos.split(":");
Geocoder geocoder = new Geocoder(getApplicationContext(), Locale.getDefault());
- LatLng latlngpos = new LatLng(Double.parseDouble(position[0]), Double.parseDouble(position[1]));
+ LatLng latlngpos = new LatLng(
+ Double.parseDouble(position[0]),
+ Double.parseDouble(position[1]));
incident.setPosition(latlngpos);
try {
@@ -204,16 +194,12 @@ public class ReportWFActivity extends BaseActivity implements ReportWF_1_Fragmen
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.getAddressLine(0) != null){
+ incident.setIncidentPositionDescription(
+ address.getAddressLine(0).replace(", ", "\n"));
}
-
- if(address.getCountryName() != null) sb.append(address.getCountryName());
- incident.setIncidentPositionDescription(sb.toString());
}
-
} catch (IOException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
@@ -275,20 +261,16 @@ public class ReportWFActivity extends BaseActivity implements ReportWF_1_Fragmen
new AlertDialog.Builder(ReportWFActivity.this)
.setTitle(getResources().getString(R.string.txt_reportwf_newincidenttitle))
.setMessage(getResources().getString(R.string.txt_reportwf_newincidenttext))
- .setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialog, int which) {
- resetStateAndIncident();
- initFragment(0);
+ .setPositiveButton(android.R.string.yes, (dialog, which) -> {
+ resetStateAndIncident();
+ initFragment(0);
- if(currentState == 0){
- gotoReportActivity();
- }
+ if(currentState == 0){
+ gotoReportActivity();
}
})
- .setNegativeButton(android.R.string.no, new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialog, int which) {
- // do nothing
- }
+ .setNegativeButton(android.R.string.no, (dialog, which) -> {
+ // do nothing
})
.setIcon(android.R.drawable.ic_dialog_alert)
.show();
@@ -316,38 +298,31 @@ public class ReportWFActivity extends BaseActivity implements ReportWF_1_Fragmen
private StringRequest getStringRequestAddIncidentWithPosition(final IncidentReport incident) {
showDialog();
- return new StringRequest(Request.Method.POST, AppConfig.REST_ADD_INCIDENT_WITHPOSITION, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.REST_ADD_INCIDENT_WITHPOSITION, response -> {
+ Log.d(TAG, "Report response: " + response);
- @Override
- public void onResponse(String response) {
- Log.d(TAG, "Report response: " + response);
+ try {
+ JSONObject jObj = new JSONObject(response);
+ boolean error = jObj.getBoolean("error");
- try {
- JSONObject jObj = new JSONObject(response);
- boolean error = jObj.getBoolean("error");
-
- if (!error) {
- showMessage(getString(R.string.txt_success_addreport));
- showShareDialog(incident);
- } else {
- String errorMsg = jObj.getString("error_msg");
- Crashlytics.log(Log.ERROR, TAG, "Error adding incident (Server returned error): " + errorMsg);
- showMessage(getResources().getString(R.string.txt_errormsg_createincident));
- }
- } catch (JSONException e) {
- Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
- Crashlytics.logException(e);
+ if (!error) {
+ showMessage(getString(R.string.txt_success_addreport));
+ showShareDialog(incident);
+ } else {
+ String errorMsg = jObj.getString("error_msg");
+ Crashlytics.log(Log.ERROR, TAG, "Error adding incident (Server returned error): " + errorMsg);
+ showMessage(getResources().getString(R.string.txt_errormsg_createincident));
}
+ } catch (JSONException e) {
+ Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
+ Crashlytics.logException(e);
+ }
- hideDialog();
- }
- }, new Response.ErrorListener() {
- @Override
- public void onErrorResponse(VolleyError error) {
- Crashlytics.log(Log.ERROR, TAG, "Error adding incident: " + error.getMessage());
- handleVolleyErrorResponse();
- hideDialog();
- }
+ hideDialog();
+ }, error -> {
+ Crashlytics.log(Log.ERROR, TAG, "Error adding incident: " + error.getMessage());
+ handleVolleyErrorResponse();
+ hideDialog();
}) {
@Override
@@ -410,16 +385,8 @@ public class ReportWFActivity extends BaseActivity implements ReportWF_1_Fragmen
new AlertDialog.Builder(ReportWFActivity.this)
.setTitle(R.string.txt_share_title)
.setMessage(R.string.txt_share_message)
- .setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialog, int which) {
- startShareIncidentIntent(incident);
- }
- })
- .setNegativeButton(android.R.string.no, new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialog, int which) {
- finishReportAndGotoMap(incident);
- }
- })
+ .setPositiveButton(android.R.string.yes, (dialog, which) -> startShareIncidentIntent(incident))
+ .setNegativeButton(android.R.string.no, (dialog, which) -> finishReportAndGotoMap(incident))
.setIcon(android.R.drawable.ic_dialog_alert)
.show();
@@ -432,11 +399,9 @@ public class ReportWFActivity extends BaseActivity implements ReportWF_1_Fragmen
alertDialog.setTitle("Request Permission");
alertDialog.setMessage("If you want to use the sharing feature in the future we need storage permission to generate the message which should be shared.");
alertDialog.setButton(AlertDialog.BUTTON_NEUTRAL, "OK",
- new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialog, int which) {
- dialog.dismiss();
- requestPermission();
- }
+ (dialog, which) -> {
+ dialog.dismiss();
+ requestPermission();
});
alertDialog.show();
@@ -447,10 +412,22 @@ public class ReportWFActivity extends BaseActivity implements ReportWF_1_Fragmen
Intent sharingIntent = new Intent(Intent.ACTION_SEND);
Bitmap icon = BitmapFactory.decodeResource(getApplicationContext().getResources(),
R.drawable.ra_qrcode);
+
+ String[] posDesc = incident.getIncidentPositionDescription().split("\\n");
+ String locationText = "";
+
+ if(posDesc.length > 1){
+ locationText = posDesc[0] + " - " +posDesc[1];
+ }else if(posDesc.length == 1){
+ locationText = posDesc[0];
+ }else{
+ Log.e(TAG, "Could not find location desciption");
+ }
+
String text = getString(R.string.txt_share_hint)
+getString(R.string.txt_share_hint2)+": "+ incident.getIncidentCategoryName(getApplicationContext())
+" - "+incident.getIncidentSubCategoryName(getApplicationContext())+"\n"
- +getString(R.string.txt_share_hint3)+": "+ incident.getIncidentPositionDescription().split("\\n")[0] + " - " + incident.getIncidentPositionDescription().split("\\n")[1] + "\n"
+ +getString(R.string.txt_share_hint3)+": "+ locationText + "\n"
+getString(R.string.txt_share_page);
sharingIntent.putExtra(Intent.EXTRA_TEXT, text);
diff --git a/app/src/main/java/org/deke/risk/riskahead/SubscriptionsActivity.java b/app/src/main/java/org/deke/risk/riskahead/SubscriptionsActivity.java
index 649b4ea..4408a9d 100644
--- a/app/src/main/java/org/deke/risk/riskahead/SubscriptionsActivity.java
+++ b/app/src/main/java/org/deke/risk/riskahead/SubscriptionsActivity.java
@@ -18,8 +18,6 @@ import android.widget.LinearLayout;
import com.android.vending.billing.IInAppBillingService;
import com.android.volley.Request;
-import com.android.volley.Response;
-import com.android.volley.VolleyError;
import com.android.volley.toolbox.StringRequest;
import com.crashlytics.android.Crashlytics;
@@ -317,38 +315,30 @@ public class SubscriptionsActivity extends BaseActivity{
}
private StringRequest getStringAddSubscription(final String productId, final String type, final String price, final String currency) {
- return new StringRequest(Request.Method.POST, AppConfig.REST_ADD_SUBSCRIPTIONS, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.REST_ADD_SUBSCRIPTIONS, response -> {
- @Override
- public void onResponse(String response) {
+ try {
+ JSONObject jObj = new JSONObject(response);
+ boolean error = jObj.getBoolean("error");
- try {
- JSONObject jObj = new JSONObject(response);
- boolean error = jObj.getBoolean("error");
-
- if (error) {
- String errorMsg = jObj.getString("error_msg");
- Crashlytics.log(Log.ERROR, TAG, "Error adding subscription (Server returned error): " + errorMsg);
- showMessage(getResources().getString(R.string.txt_errormsg_subs));
- } else {
- gotoSubscriptionsActivity();
- }
-
- } catch (JSONException e) {
- Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
- Crashlytics.logException(e);
+ if (error) {
+ String errorMsg = jObj.getString("error_msg");
+ Crashlytics.log(Log.ERROR, TAG, "Error adding subscription (Server returned error): " + errorMsg);
+ showMessage(getResources().getString(R.string.txt_errormsg_subs));
+ } else {
+ gotoSubscriptionsActivity();
}
- hideDialog();
+ } catch (JSONException e) {
+ Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
+ Crashlytics.logException(e);
}
- }, new Response.ErrorListener() {
- @Override
- public void onErrorResponse(VolleyError error) {
- Crashlytics.log(Log.ERROR, TAG, "Error adding subscription: " + error.getMessage());
- showMessage(getResources().getString(R.string.txt_errormsg_subs));
- hideDialog();
- }
+ hideDialog();
+ }, error -> {
+ Crashlytics.log(Log.ERROR, TAG, "Error adding subscription: " + error.getMessage());
+ showMessage(getResources().getString(R.string.txt_errormsg_subs));
+ hideDialog();
}) {
@Override
@@ -373,44 +363,36 @@ public class SubscriptionsActivity extends BaseActivity{
}
private StringRequest getStringGetSubscriptions(final String userId) {
- return new StringRequest(Request.Method.POST, AppConfig.REST_GET_SUBSCRIPTIONS, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.REST_GET_SUBSCRIPTIONS, response -> {
- @Override
- public void onResponse(String response) {
+ try {
+ JSONObject jObj = new JSONObject(response);
+ boolean error = jObj.getBoolean("error");
+ dbItems = new HashMap<>();
- try {
- JSONObject jObj = new JSONObject(response);
- boolean error = jObj.getBoolean("error");
- dbItems = new HashMap<>();
+ if (error) {
+ String errorMsg = jObj.getString("error_msg");
+ Log.d(TAG, "Error getting subscription (Server returned error): " + errorMsg);
+ dbItems = null;
- if (error) {
- String errorMsg = jObj.getString("error_msg");
- Log.d(TAG, "Error getting subscription (Server returned error): " + errorMsg);
- dbItems = null;
+ }else{
+ JSONArray subs = jObj.getJSONArray("msg");
+ Log.d(TAG, "SUB FROM DB RECEIVED");
- }else{
- JSONArray subs = jObj.getJSONArray("msg");
- Log.d(TAG, "SUB FROM DB RECEIVED");
-
- for(int i = 0;i < subs.length();i++){
- dbItems.put(subs.getJSONObject(i).getString("productId"),subs.getJSONObject(i).getString("id"));
- }
+ for(int i = 0;i < subs.length();i++){
+ dbItems.put(subs.getJSONObject(i).getString("productId"),subs.getJSONObject(i).getString("id"));
}
-
- syncWithDatabase(ownedSkus);
-
- } catch (JSONException e) {
- Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
- Crashlytics.logException(e);
}
- }
- }, new Response.ErrorListener() {
- @Override
- public void onErrorResponse(VolleyError error) {
- Crashlytics.log(Log.ERROR, TAG, "Error getting subscription: " + error.getMessage());
- handleVolleyErrorResponse();
+ syncWithDatabase(ownedSkus);
+
+ } catch (JSONException e) {
+ Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
+ Crashlytics.logException(e);
}
+ }, error -> {
+ Crashlytics.log(Log.ERROR, TAG, "Error getting subscription: " + error.getMessage());
+ handleVolleyErrorResponse();
}) {
@Override
@@ -434,34 +416,24 @@ public class SubscriptionsActivity extends BaseActivity{
}
private StringRequest getStringDeactivateSubscriptions(final String subscriptionId) {
- return new StringRequest(Request.Method.POST, AppConfig.REST_DEACTIVATE_SUBSCRIPTIONS, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.REST_DEACTIVATE_SUBSCRIPTIONS, response -> {
- @Override
- public void onResponse(String response) {
+ try {
+ JSONObject jObj = new JSONObject(response);
+ boolean error = jObj.getBoolean("error");
- try {
- JSONObject jObj = new JSONObject(response);
- boolean error = jObj.getBoolean("error");
-
- if (error) {
- String errorMsg = jObj.getString("error_msg");
- Crashlytics.log(Log.ERROR, TAG, "Error deactivating subscription (Server returned error): " + errorMsg);
- }else{
- Log.d(TAG,"Sub with uid: "+subscriptionId+" deactivated in DB");
- }
-
- } catch (JSONException e) {
- Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
- Crashlytics.logException(e);
+ if (error) {
+ String errorMsg = jObj.getString("error_msg");
+ Crashlytics.log(Log.ERROR, TAG, "Error deactivating subscription (Server returned error): " + errorMsg);
+ }else{
+ Log.d(TAG,"Sub with uid: "+subscriptionId+" deactivated in DB");
}
- }
- }, new Response.ErrorListener() {
- @Override
- public void onErrorResponse(VolleyError error) {
- Crashlytics.log(Log.ERROR, TAG, "Error deactivating subscription: " + error.getMessage());
+ } catch (JSONException e) {
+ Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
+ Crashlytics.logException(e);
}
- }) {
+ }, error -> Crashlytics.log(Log.ERROR, TAG, "Error deactivating subscription: " + error.getMessage())) {
@Override
protected Map getParams() {
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 0a86695..c36f90c 100644
--- a/app/src/main/java/org/deke/risk/riskahead/ViewReportActivity.java
+++ b/app/src/main/java/org/deke/risk/riskahead/ViewReportActivity.java
@@ -2,7 +2,6 @@ package org.deke.risk.riskahead;
import android.app.AlertDialog;
import android.content.Context;
-import android.content.DialogInterface;
import android.content.Intent;
import android.graphics.drawable.Drawable;
import android.location.Address;
@@ -15,8 +14,6 @@ import android.view.View;
import android.widget.EditText;
import com.android.volley.Request;
-import com.android.volley.Response;
-import com.android.volley.VolleyError;
import com.android.volley.toolbox.StringRequest;
import com.beardedhen.androidbootstrap.AwesomeTextView;
import com.beardedhen.androidbootstrap.BootstrapLabel;
@@ -101,41 +98,19 @@ public class ViewReportActivity extends BaseActivity {
final Integer id = intent.getIntExtra(BaseActivity.EXTRA_MESSAGE, 0);
getIncident(id);
- btnUpvote.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- makeUpvote(id);
- }
- });
+ btnUpvote.setOnClickListener(v -> makeUpvote(id));
findViewById(R.id.layoutFooter).setVisibility(View.GONE);
- btnDownvote.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- makeDownvote(id);
- }
- });
+ btnDownvote.setOnClickListener(v -> makeDownvote(id));
- findViewById(R.id.btn_viewreport_delete).setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- new AlertDialog.Builder(ViewReportActivity.this)
- .setTitle(getResources().getString(R.string.txt_viewreport_deletetitle))
- .setMessage(getResources().getString(R.string.txt_viewreport_deletetext))
- .setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialog, int which) {
- deleteReport(id);
- }
- })
- .setNegativeButton(android.R.string.no, new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialog, int which) {
- //do nothing
- }
- })
- .setIcon(android.R.drawable.ic_dialog_alert)
- .show();
-
- }
- });
+ findViewById(R.id.btn_viewreport_delete).setOnClickListener(v -> new AlertDialog.Builder(ViewReportActivity.this)
+ .setTitle(getResources().getString(R.string.txt_viewreport_deletetitle))
+ .setMessage(getResources().getString(R.string.txt_viewreport_deletetext))
+ .setPositiveButton(android.R.string.yes, (dialog, which) -> deleteReport(id))
+ .setNegativeButton(android.R.string.no, (dialog, which) -> {
+ //do nothing
+ })
+ .setIcon(android.R.drawable.ic_dialog_alert)
+ .show());
Drawable identityIcon = new IconicsDrawable(this)
.icon(GoogleMaterial.Icon.gmd_account_circle)
@@ -158,38 +133,30 @@ public class ViewReportActivity extends BaseActivity {
}
private StringRequest getStringRequestDeleteIncident(final Integer incidentid) {
- return new StringRequest(Request.Method.POST, AppConfig.REST_DEACTIVATE_INCIDENT, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.REST_DEACTIVATE_INCIDENT, response -> {
+ Log.d(TAG, "Delete Incident with ID response: " + response);
+ hideDialog();
- @Override
- public void onResponse(String response) {
- Log.d(TAG, "Delete Incident with ID response: " + response);
- hideDialog();
+ try {
+ JSONObject jObj = new JSONObject(response);
+ boolean error = jObj.getBoolean("error");
- try {
- JSONObject jObj = new JSONObject(response);
- boolean error = jObj.getBoolean("error");
-
- if (!error) {
- showMessage(getString(R.string.txt_success_incidentdel));
- gotoProfileActivity();
- } else {
- String errorMsg = jObj.getString("error_msg");
- Crashlytics.log(Log.ERROR, TAG, "Error deleting incident (Server returned error): " + errorMsg);
- showMessage(getResources().getString(R.string.txt_errormsg_deleteincident));
- }
- } catch (JSONException e) {
- Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
- Crashlytics.logException(e);
+ if (!error) {
+ showMessage(getString(R.string.txt_success_incidentdel));
+ gotoProfileActivity();
+ } else {
+ String errorMsg = jObj.getString("error_msg");
+ Crashlytics.log(Log.ERROR, TAG, "Error deleting incident (Server returned error): " + errorMsg);
+ showMessage(getResources().getString(R.string.txt_errormsg_deleteincident));
}
+ } catch (JSONException e) {
+ Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
+ Crashlytics.logException(e);
}
- }, new Response.ErrorListener() {
-
- @Override
- public void onErrorResponse(VolleyError error) {
- Crashlytics.log(Log.ERROR, TAG, "Error deleting incident: " + error.getMessage());
- handleVolleyErrorResponse();
- hideDialog();
- }
+ }, error -> {
+ Crashlytics.log(Log.ERROR, TAG, "Error deleting incident: " + error.getMessage());
+ handleVolleyErrorResponse();
+ hideDialog();
}) {
@Override
@@ -213,41 +180,33 @@ public class ViewReportActivity extends BaseActivity {
}
private StringRequest getStringRequestGetIncidentWithPositionFromID(final Integer incidentid) {
- return new StringRequest(Request.Method.POST, AppConfig.REST_GET_INCIDENT, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.REST_GET_INCIDENT, response -> {
+ Log.d(TAG, "Incident with ID response: " + response);
+ hideDialog();
- @Override
- public void onResponse(String response) {
- Log.d(TAG, "Incident with ID response: " + response);
- hideDialog();
+ try {
+ JSONObject jObj = new JSONObject(response);
+ boolean error = jObj.getBoolean("error");
- try {
- JSONObject jObj = new JSONObject(response);
- boolean error = jObj.getBoolean("error");
+ if (!error) {
+ JSONObject jIncident = jObj.getJSONObject("msg");
- if (!error) {
- JSONObject jIncident = jObj.getJSONObject("msg");
+ checkVotetypeAndSetVoteButtons(jIncident);
+ initReport(new IncidentReport(jIncident));
- checkVotetypeAndSetVoteButtons(jIncident);
- initReport(new IncidentReport(jIncident));
-
- } else {
- String errorMsg = jObj.getString("error_msg");
- Crashlytics.log(Log.ERROR, TAG, "Error get incident (Server returned error): " + errorMsg);
- showMessage(getResources().getString(R.string.txt_errormsg_getincidentdetail));
- }
- } catch (JSONException e) {
- Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
- Crashlytics.logException(e);
+ } else {
+ String errorMsg = jObj.getString("error_msg");
+ Crashlytics.log(Log.ERROR, TAG, "Error get incident (Server returned error): " + errorMsg);
+ showMessage(getResources().getString(R.string.txt_errormsg_getincidentdetail));
}
+ } catch (JSONException e) {
+ Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
+ Crashlytics.logException(e);
}
- }, new Response.ErrorListener() {
-
- @Override
- public void onErrorResponse(VolleyError error) {
- Crashlytics.log(Log.ERROR, TAG, "Error get incident: " + error.getMessage());
- handleVolleyErrorResponse();
- hideDialog();
- }
+ }, error -> {
+ Crashlytics.log(Log.ERROR, TAG, "Error get incident: " + error.getMessage());
+ handleVolleyErrorResponse();
+ hideDialog();
}) {
@Override
@@ -277,74 +236,38 @@ public class ViewReportActivity extends BaseActivity {
btnUpvote.startFlashing(true, AwesomeTextView.AnimationSpeed.MEDIUM);
btnDownvote.startFlashing(false, AwesomeTextView.AnimationSpeed.MEDIUM);
- btnUpvote.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- deleteVote(incident.getId());
- }
- });
+ btnUpvote.setOnClickListener(v -> deleteVote(incident.getId()));
- btnDownvote.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- deleteVote(incident.getId());
- makeDownvote(incident.getId());
- }
+ btnDownvote.setOnClickListener(v -> {
+ deleteVote(incident.getId());
+ makeDownvote(incident.getId());
});
} else if (hasvoted.getInt("fid_votetype") == AppConfig.VOTETYPE_DOWNVOTE) {
btnUpvote.startFlashing(false, AwesomeTextView.AnimationSpeed.MEDIUM);
btnDownvote.startFlashing(true, AwesomeTextView.AnimationSpeed.MEDIUM);
- btnUpvote.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- deleteVote(incident.getId());
- makeUpvote(incident.getId());
- }
+ btnUpvote.setOnClickListener(v -> {
+ deleteVote(incident.getId());
+ makeUpvote(incident.getId());
});
- btnDownvote.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- deleteVote(incident.getId());
- }
- });
+ btnDownvote.setOnClickListener(v -> deleteVote(incident.getId()));
} else {
btnUpvote.startFlashing(false, AwesomeTextView.AnimationSpeed.MEDIUM);
btnDownvote.startFlashing(false, AwesomeTextView.AnimationSpeed.MEDIUM);
- btnUpvote.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- makeUpvote(incident.getId());
- }
- });
+ btnUpvote.setOnClickListener(v -> makeUpvote(incident.getId()));
- btnDownvote.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- makeDownvote(incident.getId());
- }
- });
+ btnDownvote.setOnClickListener(v -> makeDownvote(incident.getId()));
}
}
} else {
btnUpvote.startFlashing(false, AwesomeTextView.AnimationSpeed.MEDIUM);
btnDownvote.startFlashing(false, AwesomeTextView.AnimationSpeed.MEDIUM);
- btnUpvote.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- makeUpvote(incident.getId());
- }
- });
+ btnUpvote.setOnClickListener(v -> makeUpvote(incident.getId()));
- btnDownvote.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- makeDownvote(incident.getId());
- }
- });
+ btnDownvote.setOnClickListener(v -> makeDownvote(incident.getId()));
}
}
}
@@ -405,19 +328,9 @@ public class ViewReportActivity extends BaseActivity {
final String longitude = Double.toString(incident.getPosition().longitude);
final String fromUid = Integer.toString(incident.getFidFromUser());
- findViewById(R.id.btn_viewreport_user).setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- gotoProfileActivity(fromUid);
- }
- });
+ findViewById(R.id.btn_viewreport_user).setOnClickListener(v -> gotoProfileActivity(fromUid));
- findViewById(R.id.btn_viewreport_position).setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- gotoMapActivity(latitude + ":" + longitude);
- }
- });
+ findViewById(R.id.btn_viewreport_position).setOnClickListener(v -> gotoMapActivity(latitude + ":" + longitude));
String uid = user.get(SessionManager.KEY_UID);
if (incident.getFidFromUser() != Integer.valueOf(uid)) {
@@ -448,39 +361,31 @@ public class ViewReportActivity extends BaseActivity {
}
private StringRequest getStringRequestAddVote(final Integer incidentid, final String votetype) {
- return new StringRequest(Request.Method.POST, AppConfig.REST_ADD_VOTE, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.REST_ADD_VOTE, response -> {
+ Log.d(TAG, "MadeVote: " + response);
- @Override
- public void onResponse(String response) {
- Log.d(TAG, "MadeVote: " + response);
+ try {
+ JSONObject jObj = new JSONObject(response);
+ boolean error = jObj.getBoolean("error");
- try {
- JSONObject jObj = new JSONObject(response);
- boolean error = jObj.getBoolean("error");
+ if (!error) {
+ showMessage(getString(R.string.txt_success_voted));
+ JSONObject jPoints = jObj.getJSONObject("points");
- if (!error) {
- showMessage(getString(R.string.txt_success_voted));
- JSONObject jPoints = jObj.getJSONObject("points");
-
- scorelabel.setText(String.format("%d",jPoints.getInt("upvoted") - jPoints.getInt("downvoted")));
- checkVotetypeAndSetVoteButtons(jPoints);
- } else {
- String errorMsg = jObj.getString("error_msg");
- Crashlytics.log(Log.ERROR, TAG, "Error voting incident (Server returned error): " + errorMsg);
- showMessage(getResources().getString(R.string.txt_errormsg_couldnotvote));
- }
- } catch (JSONException e) {
- Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
- Crashlytics.logException(e);
+ scorelabel.setText(String.format(Locale.US, "%d",jPoints.getInt("upvoted") - jPoints.getInt("downvoted")));
+ checkVotetypeAndSetVoteButtons(jPoints);
+ } else {
+ String errorMsg = jObj.getString("error_msg");
+ Crashlytics.log(Log.ERROR, TAG, "Error voting incident (Server returned error): " + errorMsg);
+ showMessage(getResources().getString(R.string.txt_errormsg_couldnotvote));
}
+ } catch (JSONException e) {
+ Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
+ Crashlytics.logException(e);
}
- }, new Response.ErrorListener() {
-
- @Override
- public void onErrorResponse(VolleyError error) {
- Crashlytics.log(Log.ERROR, TAG, "Error voting incident: " + error.getMessage());
- handleVolleyErrorResponse();
- }
+ }, error -> {
+ Crashlytics.log(Log.ERROR, TAG, "Error voting incident: " + error.getMessage());
+ handleVolleyErrorResponse();
}) {
@Override
@@ -503,37 +408,29 @@ public class ViewReportActivity extends BaseActivity {
}
private StringRequest getStringRequestDeleteVote(final Integer incidentid) {
- return new StringRequest(Request.Method.POST, AppConfig.REST_DELETE_VOTE, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.REST_DELETE_VOTE, response -> {
+ Log.d(TAG, "Delete Vote: " + response);
- @Override
- public void onResponse(String response) {
- Log.d(TAG, "Delete Vote: " + response);
+ try {
+ JSONObject jObj = new JSONObject(response);
+ boolean error = jObj.getBoolean("error");
- try {
- JSONObject jObj = new JSONObject(response);
- boolean error = jObj.getBoolean("error");
+ if (!error) {
+ JSONObject jPoints = jObj.getJSONObject("points");
- if (!error) {
- JSONObject jPoints = jObj.getJSONObject("points");
-
- scorelabel.setText(String.format("%d", jPoints.getInt("upvoted") - jPoints.getInt("downvoted")));
- checkVotetypeAndSetVoteButtons(jPoints);
- } else {
- String errorMsg = jObj.getString("error_msg");
- Crashlytics.log(Log.ERROR, TAG, "Error deleting voting incident (Server returned error): " + errorMsg);
- }
- } catch (JSONException e) {
- Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
- Crashlytics.logException(e);
+ scorelabel.setText(String.format(Locale.US, "%d", jPoints.getInt("upvoted") - jPoints.getInt("downvoted")));
+ checkVotetypeAndSetVoteButtons(jPoints);
+ } else {
+ String errorMsg = jObj.getString("error_msg");
+ Crashlytics.log(Log.ERROR, TAG, "Error deleting voting incident (Server returned error): " + errorMsg);
}
+ } catch (JSONException e) {
+ Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
+ Crashlytics.logException(e);
}
- }, new Response.ErrorListener() {
-
- @Override
- public void onErrorResponse(VolleyError error) {
- Crashlytics.log(Log.ERROR, TAG, "Error deleting voting incident: " + error.getMessage());
- handleVolleyErrorResponse();
- }
+ }, error -> {
+ Crashlytics.log(Log.ERROR, TAG, "Error deleting voting incident: " + error.getMessage());
+ handleVolleyErrorResponse();
}) {
@Override
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 932b657..8da8832 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
@@ -63,7 +63,7 @@ public class ReportListAdapter extends BaseAdapter {
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View vi = convertView;
- if (vi == null) vi = inflater.inflate(R.layout.fragment_reportlist_row, null);
+ if (vi == null) vi = inflater.inflate(R.layout.fragment_reportlist_row, parent, false);
TextView itemText = vi.findViewById(R.id.txt_reportlist_lvrow_text);
TextView titleText = vi.findViewById(R.id.txt_reportlist_lvrow_title);
@@ -99,7 +99,7 @@ public class ReportListAdapter extends BaseAdapter {
IncidentReport item = new IncidentReport(data.get(position));
titleText.setText(item.getIncidentCategoryName(vi.getContext()));
itemText.setText(item.getIncidentSubCategoryName(vi.getContext()));
- itemText.setGravity(Gravity.LEFT);
+ itemText.setGravity(Gravity.START);
itemText.setPadding(0,0,0,0);
categoryText.setText(item.getTimeString(vi.getContext()));
@@ -111,8 +111,9 @@ public class ReportListAdapter extends BaseAdapter {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
iv.setBackground(parent.getContext().getDrawable(item.getIconDrawable()));
} else {
- iv.setBackgroundDrawable(parent.getResources().getDrawable(item.getIconDrawable()));
+ iv.setBackground(parent.getResources().getDrawable(item.getIconDrawable()));
}
+
}
return vi;
}
diff --git a/app/src/main/java/org/deke/risk/riskahead/adapter/Top10ListAdapter.java b/app/src/main/java/org/deke/risk/riskahead/adapter/Top10ListAdapter.java
index de1c783..f218436 100644
--- a/app/src/main/java/org/deke/risk/riskahead/adapter/Top10ListAdapter.java
+++ b/app/src/main/java/org/deke/risk/riskahead/adapter/Top10ListAdapter.java
@@ -57,7 +57,7 @@ public class Top10ListAdapter extends BaseAdapter {
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View vi = convertView;
- if (vi == null) vi = inflater.inflate(R.layout.fragment_top10list_row, null);
+ if (vi == null) vi = inflater.inflate(R.layout.fragment_top10list_row, parent, false);
TextView rank = vi.findViewById(R.id.txt_top10_rank);
TextView name = vi.findViewById(R.id.txt_top10_name);
@@ -66,13 +66,20 @@ public class Top10ListAdapter extends BaseAdapter {
TextView points = vi.findViewById(R.id.txt_top10_points);
try {
- rank.setText("#"+data.get(position).getString("rank"));
+ rank.setText(String.format("#%s",
+ data.get(position).getString("rank")));
+
name.setText(data.get(position).getString("username"));
name.setTypeface(null, Typeface.BOLD);
points.setText(data.get(position).getString("points"));
- numberOfIncidents.setText(data.get(position).getString("numberOfPosts")+" "+context.getResources().getString(R.string.txt_top10_reportedinc));
- memberSince.setText(context.getResources().getString(R.string.txt_top10_membersince)+" "+data.get(position).getString("created_at").split(" ")[0]);
+ numberOfIncidents.setText(String.format("%s %s",
+ data.get(position).getString("numberOfPosts"),
+ context.getResources().getString(R.string.txt_top10_reportedinc)));
+
+ memberSince.setText(String.format("%s %s",
+ context.getResources().getString(R.string.txt_top10_membersince),
+ data.get(position).getString("created_at").split(" ")[0]));
} catch (JSONException e) {
Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
Crashlytics.logException(e);
diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/BaseReportWFFragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/BaseReportWFFragment.java
index 9aefb37..244fbe7 100644
--- a/app/src/main/java/org/deke/risk/riskahead/fragment/BaseReportWFFragment.java
+++ b/app/src/main/java/org/deke/risk/riskahead/fragment/BaseReportWFFragment.java
@@ -1,6 +1,7 @@
package org.deke.risk.riskahead.fragment;
import android.os.Bundle;
+import android.support.annotation.NonNull;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
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 98b5200..bd797af 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
@@ -9,7 +9,6 @@ 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;
@@ -19,7 +18,6 @@ import com.facebook.CallbackManager;
import com.facebook.FacebookCallback;
import com.facebook.FacebookException;
import com.facebook.GraphRequest;
-import com.facebook.GraphResponse;
import com.facebook.login.LoginBehavior;
import com.facebook.login.LoginManager;
import com.facebook.login.LoginResult;
@@ -27,7 +25,6 @@ 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;
@@ -84,23 +81,16 @@ public class FacebookButtonFragment extends Fragment {
mListener = null;
}
- public interface OnFragmentInteractionListener {
- void onFragmentInteraction(Uri uri);
- }
-
private void initFacebookButton() {
BootstrapButton btnLoginFB = view.findViewById(R.id.btn_login_fb);
- btnLoginFB.setOnClickListener(new OnClickListener() {
- @Override
- public void onClick(View v) {
- LoginManager.getInstance().setLoginBehavior(LoginBehavior.WEB_ONLY);
- Activity activity = getActivity();
- if(activity != null){
- LoginManager.getInstance().logInWithReadPermissions(activity, Arrays.asList("public_profile", "email"));
- }else{
- Crashlytics.log(Log.ERROR, TAG, "Could not get activity when initializing the facebook button");
- }
+ btnLoginFB.setOnClickListener(v -> {
+ LoginManager.getInstance().setLoginBehavior(LoginBehavior.WEB_ONLY);
+ Activity activity = getActivity();
+ if(activity != null){
+ LoginManager.getInstance().logInWithReadPermissions(activity, Arrays.asList("public_profile", "email"));
+ }else{
+ Crashlytics.log(Log.ERROR, TAG, "Could not get activity when initializing the facebook button");
}
});
@@ -136,20 +126,17 @@ public class FacebookButtonFragment extends Fragment {
}
private void getUserMailAndLogin(AccessToken accesstoken){
- GraphRequest request = GraphRequest.newMeRequest(accesstoken, new GraphRequest.GraphJSONObjectCallback() {
- @Override
- public void onCompleted(JSONObject objects, GraphResponse response) {
- try {
- LoginActivity activity = (LoginActivity) getActivity();
- if(activity != null){
- activity.handleSocialMediaLogin(objects.getString("id"), "facebook", objects.getString("first_name"), objects.getString("email"));
- }else{
- Crashlytics.log(Log.ERROR, TAG, "Could not get activity for handleSocialMediaLogin");
- }
- } catch (JSONException e) {
- Crashlytics.log(Log.ERROR, TAG, "Exception caught");
- Crashlytics.logException(e);
+ GraphRequest request = GraphRequest.newMeRequest(accesstoken, (objects, response) -> {
+ try {
+ LoginActivity activity = (LoginActivity) getActivity();
+ if(activity != null){
+ activity.handleSocialMediaLogin(objects.getString("id"), "facebook", objects.getString("first_name"), objects.getString("email"));
+ }else{
+ Crashlytics.log(Log.ERROR, TAG, "Could not get activity for handleSocialMediaLogin");
}
+ } catch (JSONException e) {
+ Crashlytics.log(Log.ERROR, TAG, "Exception caught");
+ Crashlytics.logException(e);
}
});
Bundle parameters = new Bundle();
@@ -157,4 +144,8 @@ public class FacebookButtonFragment extends Fragment {
request.setParameters(parameters);
request.executeAsync();
}
+
+ public interface OnFragmentInteractionListener {
+ void onFragmentInteraction(Uri uri);
+ }
}
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 634f895..62a9031 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
@@ -4,6 +4,7 @@ import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
+import android.support.annotation.NonNull;
import android.support.v4.app.Fragment;
import android.util.Log;
import android.view.LayoutInflater;
@@ -51,16 +52,11 @@ public class GooglePlusButtonFragment extends Fragment{
}
@Override
- public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
+ public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_googleplus_button,container, false);
BootstrapButton btnSignIn = view.findViewById(R.id.btn_login_gp);
- btnSignIn.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- performClickAction();
- }
- });
+ btnSignIn.setOnClickListener(v -> performClickAction());
return view;
}
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 95c593c..cdd7958 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
@@ -1,5 +1,6 @@
package org.deke.risk.riskahead.fragment;
+import android.support.annotation.NonNull;
import android.support.v4.app.Fragment;
import android.os.Bundle;
import android.util.Log;
@@ -9,13 +10,10 @@ import android.view.ViewGroup;
import android.widget.TextView;
import com.android.volley.Request;
-import com.android.volley.Response;
-import com.android.volley.VolleyError;
import com.android.volley.toolbox.StringRequest;
import com.beardedhen.androidbootstrap.BootstrapButton;
import com.beardedhen.androidbootstrap.api.defaults.DefaultBootstrapBrand;
import com.crashlytics.android.Crashlytics;
-import com.crashlytics.android.Crashlytics;
import org.deke.risk.riskahead.ProfileActivity;
import org.deke.risk.riskahead.R;
@@ -56,7 +54,7 @@ public class ProfileStatisticsFragment extends Fragment {
private BootstrapButton btnMembershipType;
@Override
- public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
+ public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_profile_stats, container, false);
parent = (ProfileActivity)getActivity();
@@ -97,94 +95,86 @@ public class ProfileStatisticsFragment extends Fragment {
}
private StringRequest getStringRequestProfileStats() {
- return new StringRequest(Request.Method.POST, AppConfig.REST_GET_USERSTATS, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.REST_GET_USERSTATS, response -> {
+ Log.d(TAG, "User stats: " + response);
- @Override
- public void onResponse(String response) {
- Log.d(TAG, "User stats: " + response);
+ try {
+ JSONObject jObj = new JSONObject(response);
+ boolean error = jObj.getBoolean("error");
+ if (!error && isAdded()) {
+ posts.setText(jObj.getString("numberOfPosts"));
- try {
- JSONObject jObj = new JSONObject(response);
- boolean error = jObj.getBoolean("error");
- if (!error) {
- posts.setText(jObj.getString("numberOfPosts"));
+ JSONObject subJObj = jObj.getJSONObject("msg");
+ points.setText(subJObj.getString("points"));
+ ranking.setText(subJObj.getString("rank"));
+ txtMemberSince.setText(subJObj.getString("created_at"));
- JSONObject subJObj = jObj.getJSONObject("msg");
- points.setText(subJObj.getString("points"));
- ranking.setText(subJObj.getString("rank"));
- txtMemberSince.setText(subJObj.getString("created_at"));
+ JSONArray jSubs = jObj.getJSONArray("subs");
- JSONArray jSubs = jObj.getJSONArray("subs");
+ if(jSubs.length() == 0){
+ btnMembershipType.setBootstrapBrand(DefaultBootstrapBrand.SUCCESS);
+ btnMembershipType.setText(getResources().getString(R.string.lbl_membershiptype_free));
+ }else{
+ boolean no_ads = false;
+ boolean premium = false;
- if(jSubs.length() == 0){
- btnMembershipType.setBootstrapBrand(DefaultBootstrapBrand.SUCCESS);
- btnMembershipType.setText(getResources().getString(R.string.lbl_membershiptype_free));
- }else{
- boolean no_ads = false;
- boolean premium = false;
-
- for(int i = 0; i < jSubs.length();i++) {
- if(jSubs.getJSONObject(i).getString("productId").contains("no_ads")){
- no_ads = true;
- }
- if(jSubs.getJSONObject(i).getString("productId").contains("extra_functions")){
- premium = true;
- }
+ for(int i = 0; i < jSubs.length();i++) {
+ if(jSubs.getJSONObject(i).getString("productId").contains("no_ads")){
+ no_ads = true;
}
+ if(jSubs.getJSONObject(i).getString("productId").contains("extra_functions")){
+ premium = true;
+ }
+ }
- ProfileActivity activity = (ProfileActivity) getActivity();
- if(activity != null){
- if(no_ads){
- btnMembershipType.setBootstrapBrand(DefaultBootstrapBrand.PRIMARY);
- btnMembershipType.setText(getResources().getString(R.string.lbl_membershiptype_addfree));
- activity.session.setSubsNoAds(true);
- }else{
- activity.session.setSubsNoAds(false);
- }
-
- if(premium){
- btnMembershipType.setBootstrapBrand(DefaultBootstrapBrand.WARNING);
- btnMembershipType.setText(getResources().getString(R.string.lbl_membershiptype_premium));
- activity.session.setSubsPremium(true);
- }else{
- activity.session.setSubsPremium(false);
- }
+ ProfileActivity activity = (ProfileActivity) getActivity();
+ if(activity != null){
+ if(no_ads){
+ btnMembershipType.setBootstrapBrand(DefaultBootstrapBrand.PRIMARY);
+ btnMembershipType.setText(getResources().getString(R.string.lbl_membershiptype_addfree));
+ activity.session.setSubsNoAds(true);
}else{
- Crashlytics.log(Log.ERROR, TAG, "Could not retrieve activity for ProfileStatistics. Could not set statusLevel");
+ activity.session.setSubsNoAds(false);
}
- }
- if(!parent.user.get(SessionManager.KEY_UID).equals(uid) ){
- lblPoints.setText(jObj.getString("username")+" "+getResources().getString(R.string.lbl_profile_points_someone));
- lblPosts.setText(getResources().getString(R.string.lbl_profile_numofposts_me));
- lblRanking.setText(getResources().getString(R.string.lbl_profile_ranking_someone));
- lblMemberSince.setText(jObj.getString("username")+" "+getResources().getString(R.string.lbl_profile_membersince_someone));
+ if(premium){
+ btnMembershipType.setBootstrapBrand(DefaultBootstrapBrand.WARNING);
+ btnMembershipType.setText(getResources().getString(R.string.lbl_membershiptype_premium));
+ activity.session.setSubsPremium(true);
+ }else{
+ activity.session.setSubsPremium(false);
+ }
+ }else{
+ Crashlytics.log(Log.ERROR, TAG, "Could not retrieve activity for ProfileStatistics. Could not set statusLevel");
}
- } else {
- String errorMsg = jObj.getString("error_msg");
- Crashlytics.log(Log.ERROR, TAG, "Error getting user stats (server returned error): " + errorMsg);
-
- parent.showMessage(getResources().getString(R.string.txt_errormsg_retrievestats));
}
- ((ProfileActivity)getActivity()).hideDialog();
- } catch (JSONException e) {
- Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
- Crashlytics.logException(e);
- }
- }
- }, new Response.ErrorListener() {
+ if(!parent.user.get(SessionManager.KEY_UID).equals(uid) ){
+ lblPoints.setText(String.format("%s %s", jObj.getString("username"), getResources().getString(R.string.lbl_profile_points_someone)));
+ lblPosts.setText(getResources().getString(R.string.lbl_profile_numofposts_me));
+ lblRanking.setText(getResources().getString(R.string.lbl_profile_ranking_someone));
+ lblMemberSince.setText(String.format("%s %s",jObj.getString("username"), getResources().getString(R.string.lbl_profile_membersince_someone)));
+ }
+ } else {
+ String errorMsg = jObj.getString("error_msg");
+ Crashlytics.log(Log.ERROR, TAG, "Error getting user stats (server returned error): " + errorMsg);
- @Override
- public void onErrorResponse(VolleyError error) {
- Crashlytics.log(Log.ERROR, TAG, "Error getting user stats: " + error.getMessage());
- ProfileActivity activity = (ProfileActivity) getActivity();
- if(activity != null){
- activity.hideDialog();
- activity.handleVolleyErrorResponse();
- }else {
- Crashlytics.log(Log.ERROR, TAG, "Could not retrieve activity for onErrorResponse");
+ parent.showMessage(getResources().getString(R.string.txt_errormsg_retrievestats));
}
+
+ ((ProfileActivity)getActivity()).hideDialog();
+ } catch (JSONException e) {
+ Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
+ Crashlytics.logException(e);
+ }
+ }, error -> {
+ Crashlytics.log(Log.ERROR, TAG, "Error getting user stats: " + error.getMessage());
+ ProfileActivity activity = (ProfileActivity) getActivity();
+ if(activity != null){
+ activity.hideDialog();
+ activity.handleVolleyErrorResponse();
+ }else {
+ Crashlytics.log(Log.ERROR, TAG, "Could not retrieve activity for onErrorResponse");
}
}) {
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 fd5b2f2..0c3a843 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
@@ -1,21 +1,18 @@
package org.deke.risk.riskahead.fragment;
+import android.support.annotation.NonNull;
import android.support.v4.app.Fragment;
import android.os.Bundle;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
-import android.widget.AdapterView;
import android.widget.ListAdapter;
import android.widget.ListView;
import com.android.volley.Request;
-import com.android.volley.Response;
-import com.android.volley.VolleyError;
import com.android.volley.toolbox.StringRequest;
import com.crashlytics.android.Crashlytics;
-import com.crashlytics.android.Crashlytics;
import org.deke.risk.riskahead.ProfileActivity;
import org.deke.risk.riskahead.R;
@@ -51,7 +48,7 @@ public class ReportListFragment extends Fragment{
private String uid;
@Override
- public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
+ public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_reportlist, container, false);
parent = (ProfileActivity)getActivity();
@@ -66,17 +63,14 @@ public class ReportListFragment extends Fragment{
if(resultList == null || resultList.size() == 0) getIncidentsForList();
- myListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
- @Override
- public void onItemClick(AdapterView> parentview, View view, int position, long id) {
- try {
- if(resultList.get(position).getInt("status") == 1){
- parent.gotoViewReportActivity(resultList.get(position).getInt("id"));
- }
- } catch (JSONException e) {
- Crashlytics.log(Log.ERROR, TAG, "Catched JSONException");
- Crashlytics.logException(e);
+ myListView.setOnItemClickListener((parentview, view1, position, id) -> {
+ try {
+ if(resultList.get(position).getInt("status") == 1){
+ parent.gotoViewReportActivity(resultList.get(position).getInt("id"));
}
+ } catch (JSONException e) {
+ Crashlytics.log(Log.ERROR, TAG, "Catched JSONException");
+ Crashlytics.logException(e);
}
});
@@ -97,56 +91,48 @@ public class ReportListFragment extends Fragment{
}
private StringRequest getStringRequestGetIncidentsWithPositionFromUserID() {
- return new StringRequest(Request.Method.POST, AppConfig.REST_GET_INCIDENTS_FROMUSERID, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.REST_GET_INCIDENTS_FROMUSERID, response -> {
+ Log.d(TAG, "Map positions response with ID: " + response);
- @Override
- public void onResponse(String response) {
- Log.d(TAG, "Map positions response with ID: " + response);
+ try {
+ JSONObject jObj = new JSONObject(response);
+ boolean error = jObj.getBoolean("error");
- try {
- JSONObject jObj = new JSONObject(response);
- boolean error = jObj.getBoolean("error");
+ if (!error) {
+ JSONArray incidents = jObj.getJSONArray("msg");
+ resultList = new ArrayList<>();
- if (!error) {
- JSONArray incidents = jObj.getJSONArray("msg");
- resultList = new ArrayList<>();
+ for(int i=0;i {
+ Crashlytics.log(Log.ERROR, TAG, "Error getting incident list: " + error.getMessage());
+ parent.handleVolleyErrorResponse();
+ parent.hideDialog();
}) {
@Override
@@ -160,5 +146,4 @@ public class ReportListFragment extends Fragment{
}
};
}
-
}
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 b34c089..bd10891 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
@@ -2,6 +2,7 @@ package org.deke.risk.riskahead.fragment;
import android.app.DatePickerDialog;
import android.app.Dialog;
+import android.support.annotation.NonNull;
import android.support.v4.app.DialogFragment;
import android.app.TimePickerDialog;
import android.content.Context;
@@ -205,52 +206,46 @@ public class ReportWF_2_Fragment extends BaseReportWFFragment {
inputDateFrom = viewFragment.findViewById(R.id.input_report_from_date);
inputTimeFrom = viewFragment.findViewById(R.id.input_report_from_time);
- inputDateFrom.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- tmpInput = inputDateFrom;
- tmpInput.addTextChangedListener(new TextWatcher() {
- @Override
- public void beforeTextChanged(CharSequence s, int start, int count, int after) {
+ inputDateFrom.setOnClickListener(v -> {
+ tmpInput = inputDateFrom;
+ tmpInput.addTextChangedListener(new TextWatcher() {
+ @Override
+ public void beforeTextChanged(CharSequence s, int start, int count, int after) {
- }
+ }
- @Override
- public void onTextChanged(CharSequence s, int start, int before, int count) {
+ @Override
+ public void onTextChanged(CharSequence s, int start, int before, int count) {
- }
+ }
- @Override
- public void afterTextChanged(Editable s) {
- checkIfFinished();
- }
- });
- showDatePickerDialog();
- }
+ @Override
+ public void afterTextChanged(Editable s) {
+ checkIfFinished();
+ }
+ });
+ showDatePickerDialog();
});
- inputTimeFrom.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- tmpInput = inputTimeFrom;
- tmpInput.addTextChangedListener(new TextWatcher() {
- @Override
- public void beforeTextChanged(CharSequence s, int start, int count, int after) {
+ inputTimeFrom.setOnClickListener(v -> {
+ tmpInput = inputTimeFrom;
+ tmpInput.addTextChangedListener(new TextWatcher() {
+ @Override
+ public void beforeTextChanged(CharSequence s, int start, int count, int after) {
- }
+ }
- @Override
- public void onTextChanged(CharSequence s, int start, int before, int count) {
+ @Override
+ public void onTextChanged(CharSequence s, int start, int before, int count) {
- }
+ }
- @Override
- public void afterTextChanged(Editable s) {
- checkIfFinished();
- }
- });
- showTimePickerDialog();
- }
+ @Override
+ public void afterTextChanged(Editable s) {
+ checkIfFinished();
+ }
+ });
+ showTimePickerDialog();
});
}
@@ -261,28 +256,23 @@ public class ReportWF_2_Fragment extends BaseReportWFFragment {
inputDateTo = viewFragment.findViewById(R.id.input_report_to_date);
inputTimeTo = viewFragment.findViewById(R.id.input_report_to_time);
- inputDateTo.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- tmpInput = inputDateTo;
- tmpIsToDate = true;
- showDatePickerDialog();
- }
+ inputDateTo.setOnClickListener(v -> {
+ tmpInput = inputDateTo;
+ tmpIsToDate = true;
+ showDatePickerDialog();
});
- inputTimeTo.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- tmpInput = inputTimeTo;
- tmpIsToTime = true;
- showTimePickerDialog();
- }
+ inputTimeTo.setOnClickListener(v -> {
+ tmpInput = inputTimeTo;
+ tmpIsToTime = true;
+ showTimePickerDialog();
});
}
public static class TimePickerFragment extends DialogFragment implements TimePickerDialog.OnTimeSetListener {
@Override
+ @NonNull
public Dialog onCreateDialog(Bundle savedInstanceState) {
final Calendar c = Calendar.getInstance();
int hour = c.get(Calendar.HOUR_OF_DAY);
@@ -314,6 +304,7 @@ public class ReportWF_2_Fragment extends BaseReportWFFragment {
public static class DatePickerFragment extends DialogFragment implements DatePickerDialog.OnDateSetListener {
@Override
+ @NonNull
public Dialog onCreateDialog(Bundle savedInstanceState) {
final Calendar c = Calendar.getInstance();
int year = c.get(Calendar.YEAR);
diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_Finish_Fragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_Finish_Fragment.java
index c46c18f..412fc73 100644
--- a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_Finish_Fragment.java
+++ b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_Finish_Fragment.java
@@ -23,7 +23,6 @@ import org.deke.risk.riskahead.helper.IncidentReport;
*
*/
public class ReportWF_Finish_Fragment extends BaseReportWFFragment {
-
private final static String TAG = ReportWF_Finish_Fragment.class.getSimpleName();
private SendReportListener mCallback;
@@ -33,12 +32,7 @@ public class ReportWF_Finish_Fragment extends BaseReportWFFragment {
View viewFragment = inflater.inflate(R.layout.fragment_reportwf_finish, container, false);
Button btnSendReport = viewFragment.findViewById(R.id.btn_reportwf_finish_send);
- btnSendReport.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- mCallback.sendReport();
- }
- });
+ btnSendReport.setOnClickListener(v -> mCallback.sendReport());
return viewFragment;
}
diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/SettingsFragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/SettingsFragment.java
index f5ecd9d..e082f0a 100644
--- a/app/src/main/java/org/deke/risk/riskahead/fragment/SettingsFragment.java
+++ b/app/src/main/java/org/deke/risk/riskahead/fragment/SettingsFragment.java
@@ -1,6 +1,5 @@
package org.deke.risk.riskahead.fragment;
-import android.content.DialogInterface;
import android.os.Bundle;
import android.preference.EditTextPreference;
import android.preference.ListPreference;
@@ -11,8 +10,6 @@ import android.support.v7.app.AlertDialog;
import android.util.Log;
import com.android.volley.Request;
-import com.android.volley.Response;
-import com.android.volley.VolleyError;
import com.android.volley.toolbox.StringRequest;
import com.crashlytics.android.Crashlytics;
@@ -76,68 +73,53 @@ public class SettingsFragment extends PreferenceFragment {
prefGPSENabled = (SwitchPreference) getPreferenceManager().findPreference("notifyEnableGPS");
prefLocation = getPreferenceManager().findPreference("notifyChooseLocation");
- prefNotifications.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
- @Override
- public boolean onPreferenceChange(Preference preference, Object newValue) {
- String newStringValue = newValue.toString();
- session.setNotificationEnabled(Boolean.valueOf(newStringValue));
- return true;
- }
+ prefNotifications.setOnPreferenceChangeListener((preference, newValue) -> {
+ String newStringValue = newValue.toString();
+ session.setNotificationEnabled(Boolean.valueOf(newStringValue));
+ return true;
});
- prefRadius.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
- @Override
- public boolean onPreferenceChange(Preference preference, Object newValue) {
- String newStringValue = newValue.toString();
+ prefRadius.setOnPreferenceChangeListener((preference, newValue) -> {
+ String newStringValue = newValue.toString();
- if(session.getSubsPremium() || Integer.valueOf(newStringValue) < 25){
- session.setNotificationRadius(Integer.valueOf(newStringValue));
- ((ListPreference) preference).setValue(newValue.toString());
- preference.setSummary(prefRadius.getEntry());
- return true;
- }else{
- ((SettingsActivity) getActivity()).showMessage(getString(R.string.txt_premium_only));
- return false;
- }
-
- }
- });
-
-
- prefFrequency.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
- @Override
- public boolean onPreferenceChange(Preference preference, Object newValue) {
- String newStringValue = newValue.toString();
- session.setNotificationPollFreq(Integer.valueOf(newStringValue));
+ if(session.getSubsPremium() || Integer.valueOf(newStringValue) < 25){
+ session.setNotificationRadius(Integer.valueOf(newStringValue));
((ListPreference) preference).setValue(newValue.toString());
- preference.setSummary(prefFrequency.getEntry());
+ preference.setSummary(prefRadius.getEntry());
return true;
+ }else{
+ ((SettingsActivity) getActivity()).showMessage(getString(R.string.txt_premium_only));
+ return false;
}
+
});
- prefGPSENabled.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
- @Override
- public boolean onPreferenceChange(Preference preference, Object newValue) {
- String newStringValue = newValue.toString();
- session.setGPSForNotificationsEnabled(Boolean.valueOf(newStringValue));
- updatePrefs();
- return true;
- }
+
+ prefFrequency.setOnPreferenceChangeListener((preference, newValue) -> {
+ String newStringValue = newValue.toString();
+ session.setNotificationPollFreq(Integer.valueOf(newStringValue));
+ ((ListPreference) preference).setValue(newValue.toString());
+ preference.setSummary(prefFrequency.getEntry());
+ return true;
});
- prefLocation.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
- @Override
- public boolean onPreferenceClick(Preference preference) {
- if (session.getManualLocation().longitude != 0.0 && session.getManualLocation().latitude != 0.0) {
- ((SettingsActivity) getActivity()).getNotifyLocationFromMapActivity(Double.toString(session.getManualLocation().latitude) + " : " + Double.toString(session.getManualLocation().longitude));
- } else if(session.getLocation().longitude != 0.0 && session.getLocation().latitude != 0.0){
- ((SettingsActivity) getActivity()).getNotifyLocationFromMapActivity(Double.toString(session.getLocation().latitude) + " : " + Double.toString(session.getLocation().longitude));
- } else {
- ((SettingsActivity) getActivity()).getNotifyLocationFromMapActivity();
- }
+ prefGPSENabled.setOnPreferenceChangeListener((preference, newValue) -> {
+ String newStringValue = newValue.toString();
+ session.setGPSForNotificationsEnabled(Boolean.valueOf(newStringValue));
+ updatePrefs();
+ return true;
+ });
- return true;
+ prefLocation.setOnPreferenceClickListener(preference -> {
+ if (session.getManualLocation().longitude != 0.0 && session.getManualLocation().latitude != 0.0) {
+ ((SettingsActivity) getActivity()).getNotifyLocationFromMapActivity(Double.toString(session.getManualLocation().latitude) + " : " + Double.toString(session.getManualLocation().longitude));
+ } else if(session.getLocation().longitude != 0.0 && session.getLocation().latitude != 0.0){
+ ((SettingsActivity) getActivity()).getNotifyLocationFromMapActivity(Double.toString(session.getLocation().latitude) + " : " + Double.toString(session.getLocation().longitude));
+ } else {
+ ((SettingsActivity) getActivity()).getNotifyLocationFromMapActivity();
}
+
+ return true;
});
if(!session.getSubsPremium()){
@@ -158,12 +140,9 @@ public class SettingsFragment extends PreferenceFragment {
prefEmail = (ValidatedEditTextPreference) getPreferenceManager().findPreference("emailPref");
Preference btnRequestPW = getPreferenceManager().findPreference("resetPassword");
- Preference.OnPreferenceChangeListener changeListener = new Preference.OnPreferenceChangeListener() {
- @Override
- public boolean onPreferenceChange(Preference preference, Object newValue) {
- requestUpdateUserSettings(preference,newValue.toString());
- return true;
- }
+ Preference.OnPreferenceChangeListener changeListener = (preference, newValue) -> {
+ requestUpdateUserSettings(preference,newValue.toString());
+ return true;
};
prefUsername.setOnPreferenceChangeListener(changeListener);
@@ -172,27 +151,18 @@ public class SettingsFragment extends PreferenceFragment {
prefEmail.setOnPreferenceChangeListener(changeListener);
if(btnRequestPW != null){
- btnRequestPW.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
- @Override
- public boolean onPreferenceClick(Preference preference) {
- new AlertDialog.Builder(getActivity())
- .setTitle(getResources().getString(R.string.txt_settings_resetpwtitle))
- .setMessage(getResources().getString(R.string.txt_settings_resetpwtext))
- .setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialog, int which) {
- requestPasswordReset();
- }
- })
- .setNegativeButton(android.R.string.no, new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialog, int which) {
- // do nothing
- }
- })
- .setIcon(android.R.drawable.ic_dialog_alert)
- .show();
+ btnRequestPW.setOnPreferenceClickListener(preference -> {
+ new AlertDialog.Builder(getActivity())
+ .setTitle(getResources().getString(R.string.txt_settings_resetpwtitle))
+ .setMessage(getResources().getString(R.string.txt_settings_resetpwtext))
+ .setPositiveButton(android.R.string.yes, (dialog, which) -> requestPasswordReset())
+ .setNegativeButton(android.R.string.no, (dialog, which) -> {
+ // do nothing
+ })
+ .setIcon(android.R.drawable.ic_dialog_alert)
+ .show();
- return true;
- }
+ return true;
});
if(!user.get(SessionManager.PROVIDER_TYPE).equals("local")){
@@ -243,38 +213,30 @@ public class SettingsFragment extends PreferenceFragment {
private StringRequest getStringRequestResetPW(final String email) {
((SettingsActivity) getActivity()).showDialog();
- return new StringRequest(Request.Method.POST, AppConfig.REST_REQUESTPWRESET, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.REST_REQUESTPWRESET, response -> {
+ Log.d(TAG, "Resend E-Mail Response: " + response);
+ ((SettingsActivity) getActivity()).hideDialog();
- @Override
- public void onResponse(String response) {
- Log.d(TAG, "Resend E-Mail Response: " + response);
- ((SettingsActivity) getActivity()).hideDialog();
+ try {
+ JSONObject jObj = new JSONObject(response);
+ boolean error = jObj.getBoolean("error");
- try {
- JSONObject jObj = new JSONObject(response);
- boolean error = jObj.getBoolean("error");
-
- if (!error) {
- ((SettingsActivity) getActivity()).showMessage(getString(R.string.alert_passwordreset_confirmation));
- }else{
- String errorMsg = jObj.getString("error_msg");
- Crashlytics.log(Log.ERROR, TAG, "Error request email reset (Server returned error): " + errorMsg);
- ((SettingsActivity) getActivity()).showMessage(getResources().getString(R.string.txt_errormsg_resetpw));
- }
- } catch (JSONException e) {
- Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
- Crashlytics.logException(e);
+ if (!error) {
+ ((SettingsActivity) getActivity()).showMessage(getString(R.string.alert_passwordreset_confirmation));
+ }else{
+ String errorMsg = jObj.getString("error_msg");
+ Crashlytics.log(Log.ERROR, TAG, "Error request email reset (Server returned error): " + errorMsg);
+ ((SettingsActivity) getActivity()).showMessage(getResources().getString(R.string.txt_errormsg_resetpw));
}
-
+ } catch (JSONException e) {
+ Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
+ Crashlytics.logException(e);
}
- }, new Response.ErrorListener() {
- @Override
- public void onErrorResponse(VolleyError error) {
- Crashlytics.log(Log.ERROR, TAG, "Error request email reset: " + error.getMessage());
- ((SettingsActivity) getActivity()).showMessage(getString(R.string.errormsg_couldnotretrieve));
- ((SettingsActivity) getActivity()).hideDialog();
- }
+ }, error -> {
+ Crashlytics.log(Log.ERROR, TAG, "Error request email reset: " + error.getMessage());
+ ((SettingsActivity) getActivity()).showMessage(getString(R.string.errormsg_couldnotretrieve));
+ ((SettingsActivity) getActivity()).hideDialog();
}) {
@Override
@@ -291,79 +253,75 @@ public class SettingsFragment extends PreferenceFragment {
((SettingsActivity) getActivity()).showDialog();
String username = prefUsername.getText(),name = prefName.getText(),surname = prefSurname.getText(),email = prefEmail.getText();
- if(pref.getKey().equals("usernamePref")){
- username = newValue;
- }else if(pref.getKey().equals("namePref")){
- name = newValue;
- }else if(pref.getKey().equals("surnamePref")){
- surname = newValue;
- }else if(pref.getKey().equals("emailPref")){
- email = newValue;
+ switch (pref.getKey()){
+ case "usernamePref":
+ username = newValue;
+ break;
+ case "namePref":
+ name = newValue;
+ break;
+ case "surnamePref":
+ surname = newValue;
+ break;
+ case "emailPref":
+ email = newValue;
+ break;
}
String tag_string_req = "updateuser";
StringRequest strReq = getStringChangeUserSettings(username,name,surname,email);
AppController.getInstance().addToRequestQueue(strReq, tag_string_req);
-
}
private StringRequest getStringChangeUserSettings(final String username, final String name, final String surname, final String email) {
- return new StringRequest(Request.Method.POST, AppConfig.REST_UPDATE_USER, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.REST_UPDATE_USER, response -> {
+ Log.d(TAG, "Change user settings: " + response);
- @Override
- public void onResponse(String response) {
- Log.d(TAG, "Change user settings: " + response);
+ try {
+ JSONObject jObj = new JSONObject(response);
+ boolean error = jObj.getBoolean("error");
+ if (!error) {
+ ((SettingsActivity) getActivity()).showMessage(getResources().getString(R.string.txt_success_changesett));
+ JSONObject tmpuser = jObj.getJSONObject("user");
- try {
- JSONObject jObj = new JSONObject(response);
- boolean error = jObj.getBoolean("error");
- if (!error) {
- ((SettingsActivity) getActivity()).showMessage(getResources().getString(R.string.txt_success_changesett));
- JSONObject tmpuser = jObj.getJSONObject("user");
+ JSONArray jSubs = tmpuser.getJSONArray("subs");
+ boolean isPremium = false;
+ boolean isAdFree = false;
- JSONArray jSubs = tmpuser.getJSONArray("subs");
- boolean isPremium = false;
- boolean isAdFree = false;
+ if(jSubs.length() > 0){
+ for(int i = 0; i < jSubs.length();i++) {
+ if(jSubs.getJSONObject(i).getString("productId").contains("extra_functions")){
+ isPremium = true;
+ }
- if(jSubs.length() > 0){
- for(int i = 0; i < jSubs.length();i++) {
- if(jSubs.getJSONObject(i).getString("productId").contains("extra_functions")){
- isPremium = true;
- }
-
- if(jSubs.getJSONObject(i).getString("productId").contains("no_ads")){
- isAdFree = true;
- }
+ if(jSubs.getJSONObject(i).getString("productId").contains("no_ads")){
+ isAdFree = true;
}
}
-
- ((SettingsActivity) getActivity()).session.addUser(tmpuser.getString("id"), 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("accesskey"),isPremium,isAdFree);
-
- } else {
- String errorMsg = jObj.getString("error_msg");
- Crashlytics.log(Log.ERROR, TAG, "Error getting user settings (Server returned error): " + errorMsg);
- ((SettingsActivity) getActivity()).showMessage(getResources().getString(R.string.txt_errormsg_changesettings));
}
- } catch (JSONException e) {
- Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
- Crashlytics.logException(e);
- } finally {
- updatePrefs();
+ ((SettingsActivity) getActivity()).session.addUser(tmpuser.getString("id"), 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("accesskey"),isPremium,isAdFree);
+
+ } else {
+ String errorMsg = jObj.getString("error_msg");
+ Crashlytics.log(Log.ERROR, TAG, "Error getting user settings (Server returned error): " + errorMsg);
+ ((SettingsActivity) getActivity()).showMessage(getResources().getString(R.string.txt_errormsg_changesettings));
}
- ((SettingsActivity) getActivity()).hideDialog();
-
- }
- }, new Response.ErrorListener() {
-
- @Override
- public void onErrorResponse(VolleyError error) {
- Crashlytics.log(Log.ERROR, TAG, "Error getting user settings: " + error.getMessage());
- ((SettingsActivity) getActivity()).showMessage(getString(R.string.errormsg_couldnotretrieve));
- ((SettingsActivity) getActivity()).hideDialog();
+ } catch (JSONException e) {
+ Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
+ Crashlytics.logException(e);
+ } finally {
updatePrefs();
}
+
+ ((SettingsActivity) getActivity()).hideDialog();
+
+ }, error -> {
+ Crashlytics.log(Log.ERROR, TAG, "Error getting user settings: " + error.getMessage());
+ ((SettingsActivity) getActivity()).showMessage(getString(R.string.errormsg_couldnotretrieve));
+ ((SettingsActivity) getActivity()).hideDialog();
+ updatePrefs();
}) {
@Override
diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/SubscriptionItemFragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/SubscriptionItemFragment.java
index c58f2af..9998f40 100644
--- a/app/src/main/java/org/deke/risk/riskahead/fragment/SubscriptionItemFragment.java
+++ b/app/src/main/java/org/deke/risk/riskahead/fragment/SubscriptionItemFragment.java
@@ -1,6 +1,7 @@
package org.deke.risk.riskahead.fragment;
import android.os.Bundle;
+import android.support.annotation.NonNull;
import android.support.v4.app.Fragment;
import android.util.Log;
import android.view.LayoutInflater;
@@ -37,7 +38,7 @@ public class SubscriptionItemFragment extends Fragment {
@Override
- public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
+ public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_subscriptionitem, container, false);
parent = (SubscriptionsActivity)getActivity();
@@ -81,12 +82,9 @@ public class SubscriptionItemFragment extends Fragment {
txtDescription.setText(description);
btnPurchase.setText(price);
- btnPurchase.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- Log.d(TAG, "PURCHASE: " + id);
- parent.buyProduct(id);
- }
+ btnPurchase.setOnClickListener(v -> {
+ Log.d(TAG, "PURCHASE: " + id);
+ parent.buyProduct(id);
});
txtTitle.setVisibility(View.VISIBLE);
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 9c169f1..c47bacf 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
@@ -1,18 +1,16 @@
package org.deke.risk.riskahead.fragment;
+import android.support.annotation.NonNull;
import android.support.v4.app.Fragment;
import android.os.Bundle;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
-import android.widget.AdapterView;
import android.widget.ListAdapter;
import android.widget.ListView;
import com.android.volley.Request;
-import com.android.volley.Response;
-import com.android.volley.VolleyError;
import com.android.volley.toolbox.StringRequest;
import com.crashlytics.android.Crashlytics;
@@ -48,21 +46,18 @@ public class Top10Fragment extends Fragment {
List resultList;
@Override
- public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
+ public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_top10list, container, false);
parent = (ProfileActivity)getActivity();
myListView = view.findViewById(R.id.lv_top10list);
- myListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
- @Override
- public void onItemClick(AdapterView> parentview, View view, int position, long id) {
- try {
- parent.gotoProfileActivity(resultList.get(position).getString("id"));
- } catch (JSONException e) {
- Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
- Crashlytics.logException(e);
- }
+ myListView.setOnItemClickListener((parentview, view1, position, id) -> {
+ try {
+ parent.gotoProfileActivity(resultList.get(position).getString("id"));
+ } catch (JSONException e) {
+ Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
+ Crashlytics.logException(e);
}
});
@@ -85,62 +80,54 @@ public class Top10Fragment extends Fragment {
}
private StringRequest getStringRequestTop10() {
- return new StringRequest(Request.Method.POST, AppConfig.REST_GET_TOP10, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.REST_GET_TOP10, response -> {
+ Log.d(TAG, "Top 10 stats: " + response);
- @Override
- public void onResponse(String response) {
- Log.d(TAG, "Top 10 stats: " + response);
+ try {
+ JSONObject jObj = new JSONObject(response);
+ boolean error = jObj.getBoolean("error");
+ if (!error) {
+ JSONArray users = jObj.getJSONArray("msg");
+ resultList = new ArrayList<>();
- try {
- JSONObject jObj = new JSONObject(response);
- boolean error = jObj.getBoolean("error");
- if (!error) {
- JSONArray users = jObj.getJSONArray("msg");
- resultList = new ArrayList<>();
-
- for(int i=0;i {
+ Crashlytics.log(Log.ERROR, TAG, "Error getting top 10 stats: " + error.getMessage());
+
+ ProfileActivity activity = (ProfileActivity) getActivity();
+ if(activity != null){
+ activity.hideDialog();
+ activity.handleVolleyErrorResponse();
+ }else{
+ Crashlytics.log(Log.ERROR, TAG, "Could not get parent Activity");
}
}) {
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 eebf045..5cda3dc 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
@@ -5,6 +5,7 @@ import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
+import android.support.annotation.NonNull;
import android.support.v4.app.Fragment;
import android.util.Log;
import android.view.LayoutInflater;
@@ -12,15 +13,12 @@ import android.view.View;
import android.view.ViewGroup;
import android.widget.Toast;
-import io.fabric.sdk.android.Fabric;
-
import com.beardedhen.androidbootstrap.BootstrapButton;
import com.crashlytics.android.Crashlytics;
import com.twitter.sdk.android.core.Callback;
import com.twitter.sdk.android.core.DefaultLogger;
import com.twitter.sdk.android.core.Result;
import com.twitter.sdk.android.core.Twitter;
-import com.twitter.sdk.android.core.TwitterAuthToken;
import com.twitter.sdk.android.core.TwitterConfig;
import com.twitter.sdk.android.core.TwitterCore;
import com.twitter.sdk.android.core.TwitterAuthConfig;
@@ -66,8 +64,16 @@ public class TwitterButtonFragment extends Fragment {
}
@Override
- public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
- mContext = getActivity().getApplicationContext();
+ public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
+ try{
+ Activity mActivity = getActivity();
+ assert mActivity != null;
+ mContext = mActivity.getApplicationContext();
+ }catch(Exception e){
+ Crashlytics.log(Log.ERROR, TAG, "Could not get activity for TwitterButton");
+ Crashlytics.logException(e);
+ }
+
TwitterConfig config = new TwitterConfig.Builder(mContext)
.logger(new DefaultLogger(Log.INFO))
.twitterAuthConfig(new TwitterAuthConfig(TWITTER_KEY, TWITTER_SECRET))
@@ -85,10 +91,6 @@ public class TwitterButtonFragment extends Fragment {
public void success(Result result) {
Log.e("Debug", "onSuccess wird ausgeführt");
session = result.data;
- TwitterAuthToken authToken = session.getAuthToken();
- String token = authToken.token;
- String secret = authToken.secret;
-
((LoginActivity) getActivity()).handleSocialMediaLogin((Long.toString(session.getUserId())), "twitter", session.getUserName(), "");
}
@@ -100,24 +102,14 @@ public class TwitterButtonFragment extends Fragment {
})
);
- if(isAuthed()){
- // log out
- }else{
- // log in
- }
-
-
return view;
}
private void setUpSignOut() {
- btnLoginTW.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- TwitterCore.getInstance().getSessionManager().clearActiveSession();
+ btnLoginTW.setOnClickListener(v -> {
+ TwitterCore.getInstance().getSessionManager().clearActiveSession();
- Toast.makeText(mContext, "All accounts are cleared",Toast.LENGTH_SHORT).show();
- }
+ Toast.makeText(mContext, "All accounts are cleared",Toast.LENGTH_SHORT).show();
});
}
@@ -146,11 +138,6 @@ public class TwitterButtonFragment extends Fragment {
super.onDestroy();
}
- @Override
- public void onAttach(Activity activity) {
- super.onAttach(activity);
- }
-
@Override
public void onDetach() {
super.onDetach();
diff --git a/app/src/main/java/org/deke/risk/riskahead/helper/AppRater.java b/app/src/main/java/org/deke/risk/riskahead/helper/AppRater.java
index 631b329..58e3478 100644
--- a/app/src/main/java/org/deke/risk/riskahead/helper/AppRater.java
+++ b/app/src/main/java/org/deke/risk/riskahead/helper/AppRater.java
@@ -2,7 +2,6 @@ package org.deke.risk.riskahead.helper;
import android.app.AlertDialog;
import android.content.Context;
-import android.content.DialogInterface;
import android.content.Intent;
import android.content.SharedPreferences;
import android.net.Uri;
@@ -19,11 +18,12 @@ import org.deke.risk.riskahead.R;
public class AppRater {
private final static int DAYS_UNTIL_PROMPT = 1;
+ private final static int MILLIS_UNTIL_PROMPT = DAYS_UNTIL_PROMPT * 24 * 60 * 60 * 1000;
private final static int LAUNCHES_UNTIL_PROMPT = 10;
- public static boolean app_launched(Context mContext) {
+ public static void startAppRater(Context mContext) {
SharedPreferences prefs = mContext.getSharedPreferences("apprater", 0);
- if (prefs.getBoolean("dontshowagain", false)) { return false ; }
+ if (prefs.getBoolean("dontshowagain", false)) { return; }
SharedPreferences.Editor editor = prefs.edit();
@@ -39,16 +39,12 @@ public class AppRater {
}
// Wait at least n days before opening
- if (launch_count >= LAUNCHES_UNTIL_PROMPT) {
- if (System.currentTimeMillis() >= date_firstLaunch +
- (DAYS_UNTIL_PROMPT * 24 * 60 * 60 * 1000)) {
- showRateDialog(mContext, editor);
- return true;
- }
+ if (launch_count >= LAUNCHES_UNTIL_PROMPT &&
+ System.currentTimeMillis() >= MILLIS_UNTIL_PROMPT) {
+ showRateDialog(mContext, editor);
+ }else{
+ editor.apply();
}
-
- editor.apply();
- return false;
}
public static void showRateDialog(final Context mContext, final SharedPreferences.Editor editor) {
@@ -59,32 +55,21 @@ public class AppRater {
alert.setIcon(R.drawable.logo_380);
alert.setCancelable(true);
alert.setPositiveButton(R.string.txt_rate_retenowbtn,
- new DialogInterface.OnClickListener() {
- @Override
- public void onClick(DialogInterface dialog, int which) {
- mContext.startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=" + AppConfig.APP_PNAME)));
- }
- });
+ (dialog, which) -> mContext.startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=" + AppConfig.APP_PNAME))));
alert.setNeutralButton(R.string.txt_rate_laterbtn,
- new DialogInterface.OnClickListener() {
- @Override
- public void onClick(DialogInterface dialog, int which) {
- SharedPreferences prefs = mContext.getSharedPreferences("apprater", 0);
- SharedPreferences.Editor editor = prefs.edit();
+ (dialog, which) -> {
+ SharedPreferences prefs = mContext.getSharedPreferences("apprater", 0);
+ SharedPreferences.Editor editor1 = prefs.edit();
- Long date_firstLaunch = System.currentTimeMillis();
- editor.putLong("date_firstlaunch", date_firstLaunch);
- editor.apply();
- }
+ Long date_firstLaunch = System.currentTimeMillis();
+ editor1.putLong("date_firstlaunch", date_firstLaunch);
+ editor1.apply();
});
alert.setNegativeButton(R.string.txt_rate_neverbtn,
- new DialogInterface.OnClickListener() {
- @Override
- public void onClick(DialogInterface dialog, int which) {
- if (editor != null) {
- editor.putBoolean("dontshowagain", true);
- editor.commit();
- }
+ (dialog, which) -> {
+ if (editor != null) {
+ editor.putBoolean("dontshowagain", true);
+ editor.commit();
}
});
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 7752cf4..68111f8 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
@@ -1,5 +1,6 @@
package org.deke.risk.riskahead.helper;
+import android.annotation.SuppressLint;
import android.app.ActivityManager;
import android.app.AlarmManager;
import android.app.AlertDialog;
@@ -7,7 +8,6 @@ import android.app.Dialog;
import android.app.PendingIntent;
import android.content.BroadcastReceiver;
import android.content.Context;
-import android.content.DialogInterface;
import android.content.Intent;
import android.content.IntentFilter;
import android.content.pm.PackageManager;
@@ -37,8 +37,6 @@ import android.widget.TextView;
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 com.google.android.gms.ads.AdListener;
import com.google.android.gms.ads.AdRequest;
@@ -52,7 +50,6 @@ import com.mikepenz.materialdrawer.DrawerBuilder;
import com.mikepenz.materialdrawer.model.DividerDrawerItem;
import com.mikepenz.materialdrawer.model.PrimaryDrawerItem;
import com.mikepenz.materialdrawer.model.ProfileDrawerItem;
-import com.mikepenz.materialdrawer.model.interfaces.IDrawerItem;
import org.deke.risk.riskahead.LoginActivity;
import org.deke.risk.riskahead.MapsActivity;
@@ -69,8 +66,6 @@ import java.util.HashMap;
import java.util.Locale;
import java.util.Map;
-import io.fabric.sdk.android.Fabric;
-
/**
* (C) Copyright 2016 RiskAhead (http://www.riskahead.net)
* Developer & Contributor: Dennis Thießen (dennis.thiessen@riskahead.net)
@@ -177,7 +172,7 @@ public abstract class BaseActivity extends AppCompatActivity {
Log.d(TAG, "onCreate: NotificationService already running. Not starting more services.");
}
- AppRater.app_launched(BaseActivity.this);
+ AppRater.startAppRater(BaseActivity.this);
}
class LogoutReceiver extends BroadcastReceiver {
@@ -313,38 +308,35 @@ public abstract class BaseActivity extends AppCompatActivity {
item5,
new DividerDrawerItem(),
item6,
- item7).withOnDrawerItemClickListener(new Drawer.OnDrawerItemClickListener() {
- @Override
- public boolean onItemClick(View view, int position, IDrawerItem drawerItem) {
+ item7).withOnDrawerItemClickListener((view, position, drawerItem) -> {
- switch ((int) drawerItem.getIdentifier()) {
- case 2:
- gotoReportActivity();
- return false;
- case 3:
- gotoMapActivity();
- return false;
- case 4:
- gotoProfileActivity();
- return false;
- case 5:
- gotoSettingsActivity();
- return false;
- case 6:
- gotoSubscriptionsActivity();
- return false;
- case 7:
- logoutUser();
- break;
- default:
- Log.e("Unknown switch page: ", Integer.toString(position));
- Crashlytics.log(Log.ERROR, TAG, "AlarmManager in BaseActivity is null. No AlarmManager found.");
- break;
- }
+ switch ((int) drawerItem.getIdentifier()) {
+ case 2:
+ gotoReportActivity();
+ return false;
+ case 3:
+ gotoMapActivity();
+ return false;
+ case 4:
+ gotoProfileActivity();
+ return false;
+ case 5:
+ gotoSettingsActivity();
+ return false;
+ case 6:
+ gotoSubscriptionsActivity();
+ return false;
+ case 7:
+ logoutUser();
+ break;
+ default:
+ Log.e("Unknown switch page: ", Integer.toString(position));
+ Crashlytics.log(Log.ERROR, TAG, "AlarmManager in BaseActivity is null. No AlarmManager found.");
+ break;
+ }
- return false;
- }
- }).build();
+ return false;
+ }).build();
}
@@ -394,11 +386,7 @@ public abstract class BaseActivity extends AppCompatActivity {
.setTitle(getString(R.string.alert_internetconnection_title))
.setMessage(getString(R.string.alert_internetconnection_text))
.setCancelable(false)
- .setNeutralButton(android.R.string.yes, new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialog, int which) {
- logoutUser();
- }
- })
+ .setNeutralButton(android.R.string.yes, (dialog, which) -> logoutUser())
.setIcon(android.R.drawable.ic_dialog_alert)
.show();
}
@@ -559,58 +547,53 @@ public abstract class BaseActivity extends AppCompatActivity {
AlertDialog.Builder b = new AlertDialog.Builder(this);
b.setTitle(R.string.txt_language_title);
String[] types = {"ar - العربية", "de - Deutsch", "en - English", "es - Español", "et - Eesti keel", "fi - Suomi", "fr - Français", "lv - Latviešu valoda", "mn - Монгол хэл", "nl - Nederlands", "pl - Polszczyzna", "pt - Português do Brasil", "ru - Pусский", "tr - Türkçe"};
- b.setItems(types, new DialogInterface.OnClickListener() {
+ b.setItems(types, (dialog, which) -> {
- @Override
- public void onClick(DialogInterface dialog, int which) {
-
- dialog.dismiss();
- switch (which) {
- case 0:
- setLocale("ar");
- break;
- case 1:
- setLocale("de");
- break;
- case 2:
- setLocale("en");
- break;
- case 3:
- setLocale("es");
- break;
- case 4:
- setLocale("et");
- break;
- case 5:
- setLocale("fi");
- break;
- case 6:
- setLocale("fr");
- break;
- case 7:
- setLocale("lv");
- break;
- case 8:
- setLocale("mn");
- break;
- case 9:
- setLocale("nl");
- break;
- case 10:
- setLocale("pl");
- break;
- case 11:
- setLocale("pt");
- break;
- case 12:
- setLocale("ru");
- break;
- case 13:
- setLocale("tr");
- break;
- }
+ dialog.dismiss();
+ switch (which) {
+ case 0:
+ setLocale("ar");
+ break;
+ case 1:
+ setLocale("de");
+ break;
+ case 2:
+ setLocale("en");
+ break;
+ case 3:
+ setLocale("es");
+ break;
+ case 4:
+ setLocale("et");
+ break;
+ case 5:
+ setLocale("fi");
+ break;
+ case 6:
+ setLocale("fr");
+ break;
+ case 7:
+ setLocale("lv");
+ break;
+ case 8:
+ setLocale("mn");
+ break;
+ case 9:
+ setLocale("nl");
+ break;
+ case 10:
+ setLocale("pl");
+ break;
+ case 11:
+ setLocale("pt");
+ break;
+ case 12:
+ setLocale("ru");
+ break;
+ case 13:
+ setLocale("tr");
+ break;
}
-
});
b.show();
@@ -628,6 +611,7 @@ public abstract class BaseActivity extends AppCompatActivity {
finish();
}
+ @SuppressLint("InflateParams")
private void showAboutInfoDialog() {
LayoutInflater inflater = getLayoutInflater();
View dialoglayout = inflater.inflate(R.layout.dialog_about, null);
@@ -644,10 +628,8 @@ public abstract class BaseActivity extends AppCompatActivity {
}
AlertDialog.Builder builder = new AlertDialog.Builder(BaseActivity.this)
- .setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {
- public void onClick(DialogInterface dialog, int which) {
- //do nothing
- }
+ .setPositiveButton(android.R.string.yes, (dialog, which) -> {
+ //do nothing
});
builder.setView(dialoglayout);
@@ -674,18 +656,10 @@ public abstract class BaseActivity extends AppCompatActivity {
alert.setIcon(R.drawable.logo_380);
alert.setCancelable(true);
alert.setPositiveButton(R.string.txt_feedback_sendbtn,
- new DialogInterface.OnClickListener() {
- @Override
- public void onClick(DialogInterface dialog, int which) {
- sendFeedback(input.getText().toString());
- }
- });
+ (dialog, which) -> sendFeedback(input.getText().toString()));
alert.setNegativeButton(R.string.txt_feedback_cancelbtn,
- new DialogInterface.OnClickListener() {
- @Override
- public void onClick(DialogInterface dialog, int which) {
- // do nothing
- }
+ (dialog, which) -> {
+ // do nothing
});
AlertDialog ad = alert.create();
@@ -711,35 +685,25 @@ public abstract class BaseActivity extends AppCompatActivity {
}
private StringRequest getStringRequestSendFeedback(final String feedback, final String sysprop) {
- return new StringRequest(Request.Method.POST, AppConfig.REST_SEND_FEEDBACK, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.REST_SEND_FEEDBACK, response -> {
+ Log.d(TAG, "Send Feedback: " + response);
- @Override
- public void onResponse(String response) {
- Log.d(TAG, "Send Feedback: " + response);
+ try {
+ JSONObject jObj = new JSONObject(response);
+ boolean error = jObj.getBoolean("error");
- try {
- JSONObject jObj = new JSONObject(response);
- boolean error = jObj.getBoolean("error");
-
- if (!error) {
- showMessage(getString(R.string.txt_feedback_response));
- } else {
- String errorMsg = jObj.getString("error_msg");
- Crashlytics.log(Log.ERROR, TAG, "Error sending feedback (server returned error): " + errorMsg);
- }
- } catch (JSONException e) {
- Crashlytics.log(Log.ERROR, TAG, "Exception caught");
- Crashlytics.logException(e);
+ if (!error) {
+ showMessage(getString(R.string.txt_feedback_response));
+ } else {
+ String errorMsg = jObj.getString("error_msg");
+ Crashlytics.log(Log.ERROR, TAG, "Error sending feedback (server returned error): " + errorMsg);
}
-
+ } catch (JSONException e) {
+ Crashlytics.log(Log.ERROR, TAG, "Exception caught");
+ Crashlytics.logException(e);
}
- }, new Response.ErrorListener() {
- @Override
- public void onErrorResponse(VolleyError error) {
- Crashlytics.log(Log.ERROR, TAG, "Error sending feedback: " + error.getMessage());
- }
- }) {
+ }, error -> Crashlytics.log(Log.ERROR, TAG, "Error sending feedback: " + error.getMessage())) {
@Override
protected Map getParams() {
@@ -802,7 +766,7 @@ public abstract class BaseActivity extends AppCompatActivity {
}
}
- public void dropBreadCumb(String category, String action, String label, long value) {
+ public void dropBreadCrumb(String category, String action, String label, long value) {
String breadCrumb = String.format("%s|%s|%s|%s", category, action, label, value);
Crashlytics.log(breadCrumb);
}
diff --git a/app/src/main/java/org/deke/risk/riskahead/helper/NotificationService.java b/app/src/main/java/org/deke/risk/riskahead/helper/NotificationService.java
index 1228468..a4a09d6 100644
--- a/app/src/main/java/org/deke/risk/riskahead/helper/NotificationService.java
+++ b/app/src/main/java/org/deke/risk/riskahead/helper/NotificationService.java
@@ -18,8 +18,6 @@ import android.support.v4.app.TaskStackBuilder;
import android.util.Log;
import com.android.volley.Request;
-import com.android.volley.Response;
-import com.android.volley.VolleyError;
import com.android.volley.toolbox.StringRequest;
import com.google.android.gms.maps.model.LatLng;
import com.crashlytics.android.Crashlytics;
@@ -208,37 +206,27 @@ public class NotificationService extends Service {
};
private StringRequest getStringRequestIncidentsFromAreaAndTime(final Double latitude, final Double longitude, final int radius, final String time) {
- return new StringRequest(Request.Method.POST, AppConfig.REST_GET_INCIDENTS_FROMAREATIME, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.REST_GET_INCIDENTS_FROMAREATIME, response -> {
+ Log.d(TAG, "Incident notifications: " + response);
- @Override
- public void onResponse(String response) {
- Log.d(TAG, "Incident notifications: " + response);
+ try {
+ JSONObject jObj = new JSONObject(response);
+ boolean error = jObj.getBoolean("error");
- try {
- JSONObject jObj = new JSONObject(response);
- boolean error = jObj.getBoolean("error");
-
- if (!error) {
- JSONArray notification = jObj.getJSONArray("msg");
- sentNotification(notification);
- } else {
- String errorMsg = jObj.getString("error_msg");
- int loglevel = (errorMsg.contains("No incidents found in given area and from time")) ? Log.INFO : Log.ERROR;
- Crashlytics.log(loglevel, TAG, "Error getting incident notification (server returned error): " + errorMsg);
- }
- } catch (JSONException e) {
- Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
- Crashlytics.logException(e);
+ if (!error) {
+ JSONArray notification = jObj.getJSONArray("msg");
+ sentNotification(notification);
+ } else {
+ String errorMsg = jObj.getString("error_msg");
+ int loglevel = (errorMsg.contains("No incidents found in given area and from time")) ? Log.INFO : Log.ERROR;
+ Crashlytics.log(loglevel, TAG, "Error getting incident notification (server returned error): " + errorMsg);
}
-
+ } catch (JSONException e) {
+ Crashlytics.log(Log.ERROR, TAG, "JSONException caught");
+ Crashlytics.logException(e);
}
- }, new Response.ErrorListener() {
- @Override
- public void onErrorResponse(VolleyError error) {
- Crashlytics.log(Log.ERROR, TAG, "Error getting incident notification: " + error.getMessage());
- }
- }) {
+ }, error -> Crashlytics.log(Log.ERROR, TAG, "Error getting incident notification: " + error.getMessage())) {
@Override
protected Map getParams() {
diff --git a/app/src/main/java/org/deke/risk/riskahead/helper/PlaceProvider.java b/app/src/main/java/org/deke/risk/riskahead/helper/PlaceProvider.java
index 7a56442..3f9c937 100644
--- a/app/src/main/java/org/deke/risk/riskahead/helper/PlaceProvider.java
+++ b/app/src/main/java/org/deke/risk/riskahead/helper/PlaceProvider.java
@@ -21,6 +21,7 @@ import android.content.UriMatcher;
import android.database.Cursor;
import android.database.MatrixCursor;
import android.net.Uri;
+import android.support.annotation.NonNull;
import android.util.Log;
import com.crashlytics.android.Crashlytics;
@@ -184,17 +185,17 @@ public class PlaceProvider extends ContentProvider {
}
@Override
- public int delete(Uri uri, String selection, String[] selectionArgs) {
+ public int delete(@NonNull Uri uri, String selection, String[] selectionArgs) {
return 0;
}
@Override
- public String getType(Uri uri) {
+ public String getType(@NonNull Uri uri) {
return null;
}
@Override
- public Uri insert(Uri uri, ContentValues values) {
+ public Uri insert(@NonNull Uri uri, ContentValues values) {
return null;
}
@@ -204,7 +205,7 @@ public class PlaceProvider extends ContentProvider {
}
@Override
- public int update(Uri uri, ContentValues values, String selection,String[] selectionArgs) {
+ public int update(@NonNull Uri uri, ContentValues values, String selection,String[] selectionArgs) {
return 0;
}
@@ -227,15 +228,15 @@ public class PlaceProvider extends ContentProvider {
BufferedReader br = new BufferedReader(new InputStreamReader(iStream));
- StringBuffer sb = new StringBuffer();
+ StringBuilder sb = new StringBuilder();
- String line = "";
+ String line;
while( ( line = br.readLine()) != null){
sb.append(line);
}
data = sb.toString();
- System.out.println("DATA:"+data);
+ Log.d(TAG,"DATA:"+data);
br.close();
}catch(Exception e){
@@ -264,7 +265,7 @@ public class PlaceProvider extends ContentProvider {
// Building the url to the web service
String url = "https://maps.googleapis.com/maps/api/place/details/"+output+"?"+parameters;
- System.out.println("URL: "+url);
+ Log.d(TAG,"URL: "+url);
return url;
}
@@ -290,7 +291,7 @@ public class PlaceProvider extends ContentProvider {
// Building the url to the web service
String url = "https://maps.googleapis.com/maps/api/place/autocomplete/"+output+"?"+parameters;
- System.out.println("URL: "+url);
+ Log.d(TAG,"URL: "+url);
return url;
}
diff --git a/app/src/main/res/layout/activity_login.xml b/app/src/main/res/layout/activity_login.xml
index aebbbdd..165cc9b 100644
--- a/app/src/main/res/layout/activity_login.xml
+++ b/app/src/main/res/layout/activity_login.xml
@@ -117,6 +117,7 @@
android:layout_width="match_parent"
android:orientation="horizontal"
android:layout_centerHorizontal="true"
+ android:baselineAligned="false"
android:gravity="center"
android:layout_alignParentBottom="true"
android:layout_height="wrap_content">