diff --git a/app/app.iml b/app/app.iml
index 95a3742..0669b3b 100644
--- a/app/app.iml
+++ b/app/app.iml
@@ -80,6 +80,7 @@
+
@@ -90,6 +91,7 @@
+
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index b5414c9..5d3dd4b 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -5,13 +5,11 @@
-
-
-
-
-
+
+
+
-
-
+
-
-
+
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 267d29c..daf147c 100644
--- a/app/src/main/java/org/deke/risk/riskahead/LoginActivity.java
+++ b/app/src/main/java/org/deke/risk/riskahead/LoginActivity.java
@@ -8,6 +8,7 @@ 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;
@@ -43,6 +44,9 @@ 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.google.android.gms.plus.Plus;
+import com.google.android.gms.plus.model.people.Person;
import java.util.HashMap;
import java.util.Map;
@@ -87,7 +91,7 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
SessionManager session = new SessionManager(getApplicationContext());
if (session.isLoggedIn()) {
Log.d(TAG,"User found in sharedPrefs and is therefore logged in. Continue to internal Area.");
- Intent intent = new Intent(LoginActivity.this, MainActivity.class);
+ Intent intent = new Intent(LoginActivity.this, MapsActivity.class);
startActivity(intent);
finish();
}
@@ -133,18 +137,22 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
setContentView(R.layout.activity_login);
input_email = (TextView) findViewById(R.id.input_register_email);
+ TextInputLayout inputLayoutEmail = (TextInputLayout) findViewById(R.id.input_layout_email);
+
input_password = (TextView) findViewById(R.id.input_register_password);
+ TextInputLayout inputLayoutPassword = (TextInputLayout) findViewById(R.id.input_layout_password);
+
TextView btn_requestPW = (TextView) findViewById(R.id.lbl_login_resendPW);
- Button btn_switchtoregistration = (Button) findViewById(R.id.btn_switchtoregistration);
- btn_switchtoregistration.setOnClickListener(new View.OnClickListener() {
+ BootstrapButton btn_gotoregistration = (BootstrapButton) findViewById(R.id.btn_switchtoregistration);
+ btn_gotoregistration.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
gotoRegister(v);
}
});
- Button btn_login = (Button) findViewById(R.id.btn_login);
+ BootstrapButton btn_login = (BootstrapButton) findViewById(R.id.btn_login);
btn_login.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
@@ -161,20 +169,24 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
}
});
- input_email.addTextChangedListener(new TextValidator(input_email, getApplicationContext()) {
+ input_email.addTextChangedListener(new TextValidator(input_email, inputLayoutEmail, getApplicationContext()) {
@Override
- public void validate(TextView textView, String text) {
+ public void validate(TextView textView, TextInputLayout inputLayout, String text) {
if (!Patterns.EMAIL_ADDRESS.matcher(text).matches()) {
- textView.setError(getString(R.string.error_email));
+ inputLayout.setError(getString(R.string.error_email));
+ } else {
+ inputLayout.setErrorEnabled(false);
}
}
});
- input_password.addTextChangedListener(new TextValidator(input_password, getApplicationContext()) {
+ input_password.addTextChangedListener(new TextValidator(input_password, inputLayoutPassword,getApplicationContext()) {
@Override
- public void validate(TextView textView, String text) {
+ public void validate(TextView textView, TextInputLayout inputLayout,String text) {
if (text.length() < 5) {
- textView.setError(getString(R.string.error_password));
+ inputLayout.setError(getString(R.string.error_password));
+ } else {
+ inputLayout.setErrorEnabled(false);
}
}
});
@@ -191,40 +203,43 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
setContentView(R.layout.activity_register);
input_username = (TextView) findViewById(R.id.input_register_name);
+ TextInputLayout inputLayoutUsername = (TextInputLayout) findViewById(R.id.input_layout_username);
input_email = (TextView) findViewById(R.id.input_register_email);
+ TextInputLayout inputLayoutEmail = (TextInputLayout) findViewById(R.id.input_layout_email);
input_password = (TextView) findViewById(R.id.input_register_password);
- Button btn_login = (Button) findViewById(R.id.btn_register);
+ TextInputLayout inputLayoutPassword = (TextInputLayout) findViewById(R.id.input_layout_password);
+ BootstrapButton btn_login = (BootstrapButton) findViewById(R.id.btn_register);
TextView btn_switchtologin = (TextView) findViewById(R.id.lbl_register_switchtologin);
- input_username.addTextChangedListener(new TextValidator(input_username, getApplicationContext()) {
+ input_username.addTextChangedListener(new TextValidator(input_username, inputLayoutUsername, getApplicationContext()) {
@Override
- public void validate(TextView textView, String text) {
+ public void validate(TextView textView, TextInputLayout inputLayout, String text) {
if (text.trim().length() < 5) {
- textView.setError(getString(R.string.error_anytext));
+ inputLayout.setError(getString(R.string.error_anytext));
} else {
- textView.setError(null);
+ inputLayout.setErrorEnabled(false);
}
}
});
- input_email.addTextChangedListener(new TextValidator(input_email, getApplicationContext()) {
+ input_email.addTextChangedListener(new TextValidator(input_email, inputLayoutEmail, getApplicationContext()) {
@Override
- public void validate(TextView textView, String text) {
+ public void validate(TextView textView, TextInputLayout inputLayout, String text) {
if (!Patterns.EMAIL_ADDRESS.matcher(text).matches()) {
- textView.setError(getString(R.string.error_email));
+ inputLayout.setError(getString(R.string.error_email));
}else{
- textView.setError(null);
+ inputLayout.setErrorEnabled(false);
}
}
});
- input_password.addTextChangedListener(new TextValidator(input_password, getApplicationContext()) {
+ input_password.addTextChangedListener(new TextValidator(input_password, inputLayoutPassword, getApplicationContext()) {
@Override
- public void validate(TextView textView, String text) {
+ public void validate(TextView textView, TextInputLayout inputLayout, String text) {
if (text.length() < 5) {
- textView.setError(getString(R.string.error_password));
+ inputLayout.setError(getString(R.string.error_password));
} else {
- textView.setError(null);
+ inputLayout.setErrorEnabled(false);
}
}
});
@@ -270,11 +285,11 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
}
private StringRequest getStringRequestCheckForMaintenance() {
- return new StringRequest(Method.POST, AppConfig.URL_ENCRYPTED, new Response.Listener() {
+ return new StringRequest(Method.POST, AppConfig.REST_CHECK_MAINTENANCE, new Response.Listener() {
@Override
public void onResponse(String response) {
- Log.d(TAG, "Check User Exists Response: " + response);
+ Log.d(TAG, "Check for Maintenance Response: " + response);
hideDialog();
try {
@@ -300,7 +315,6 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
@Override
protected Map getParams() {
Map params = new HashMap<>();
- params.put("tag", AppConfig.REST_CHECK_MAINTENANCE);
return params;
}
@@ -326,11 +340,11 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
}
private StringRequest getStringRequestCheckIfVersionSupported() {
- return new StringRequest(Method.POST, AppConfig.URL_ENCRYPTED, new Response.Listener() {
+ return new StringRequest(Method.POST, AppConfig.REST_CHECK_VERSION, new Response.Listener() {
@Override
public void onResponse(String response) {
- Log.d(TAG, "Check User Exists Response: " + response);
+ Log.d(TAG, "Check Version Response: " + response);
hideDialog();
try {
@@ -366,7 +380,6 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
e.printStackTrace();
}
- params.put("tag", AppConfig.REST_CHECK_VERSION);
params.put("version", Integer.toString(versionCode));
return params;
}
@@ -436,7 +449,7 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
if(session.isLoggedIn()){
Intent intent = new Intent(
LoginActivity.this,
- MainActivity.class);
+ MapsActivity.class);
intent.putExtra(AppConfig.EXTRA_MESSAGE, AppConfig.INTENT_SOCIALMEDIALOGIN);
startActivity(intent);
finish();
@@ -486,7 +499,7 @@ 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.URL_ENCRYPTED, new Response.Listener() {
+ return new StringRequest(Method.POST,AppConfig.REST_LOGIN_SOCIAL, new Response.Listener() {
@Override
public void onResponse(String response) {
@@ -532,7 +545,7 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
Intent intent = new Intent(
LoginActivity.this,
- MainActivity.class);
+ MapsActivity.class);
intent.putExtra(AppConfig.EXTRA_MESSAGE, AppConfig.INTENT_SOCIALMEDIALOGIN);
startActivity(intent);
finish();
@@ -559,9 +572,8 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
@Override
protected Map getParams() {
Map params = new HashMap<>();
- params.put("tag", AppConfig.REST_LOGIN_SOCIAL);
params.put("key", key);
- params.put("providerType", providerType);
+ params.put("providertype", providerType);
params.put("username", username);
params.put("email",email);
@@ -572,7 +584,7 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
}
private StringRequest getStringRequestLogin(final String email, final String password) {
- return new StringRequest(Method.POST, AppConfig.URL_ENCRYPTED, new Response.Listener() {
+ return new StringRequest(Method.POST, AppConfig.REST_LOGIN, new Response.Listener() {
@Override
public void onResponse(String response) {
@@ -639,7 +651,7 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
hideDialog();
- Intent intent = new Intent(LoginActivity.this, MainActivity.class);
+ Intent intent = new Intent(LoginActivity.this, MapsActivity.class);
startActivity(intent);
finish();
}
@@ -665,7 +677,6 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
@Override
protected Map getParams() {
Map params = new HashMap<>();
- params.put("tag", AppConfig.REST_LOGIN);
params.put("email", email);
params.put("password", password);
@@ -675,7 +686,7 @@ 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.URL_ENCRYPTED, new Response.Listener() {
+ return new StringRequest(Method.POST, AppConfig.REST_USEREXISTS, new Response.Listener() {
@Override
public void onResponse(String response) {
@@ -718,7 +729,6 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
@Override
protected Map getParams() {
Map params = new HashMap<>();
- params.put("tag", AppConfig.REST_LOGIN_EXISTS);
params.put("email", email);
return params;
@@ -727,11 +737,11 @@ 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.URL_ENCRYPTED, new Response.Listener() {
+ return new StringRequest(Method.POST, AppConfig.REST_USEREXISTS, new Response.Listener() {
@Override
public void onResponse(String response) {
- Log.d(TAG, "Check User Exists Response: " + response);
+ Log.d(TAG, "Check Social User Exists Response: " + response);
hideDialog();
try {
@@ -745,8 +755,6 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
createAndShowPrivacyDialogForSocialUser( key,providerType, username, email);
}
-
-
} else {
String errorMsg = jObj.getString("error_msg");
Log.e(TAG, "Error occured: "+errorMsg);
@@ -770,7 +778,6 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
@Override
protected Map getParams() {
Map params = new HashMap<>();
- params.put("tag", AppConfig.REST_LOGIN_EXISTS);
params.put("key", key);
return params;
@@ -900,7 +907,7 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
}
private StringRequest getStringRequestResetPW(final String email) {
- return new StringRequest(Method.POST, AppConfig.URL_ENCRYPTED, new Response.Listener() {
+ return new StringRequest(Method.POST, AppConfig.REST_REQUESTPWRESET, new Response.Listener() {
@Override
public void onResponse(String response) {
@@ -937,7 +944,6 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
@Override
protected Map getParams() {
Map params = new HashMap<>();
- params.put("tag", AppConfig.REST_REQUESTPWRESET);
params.put("email", email);
return params;
@@ -946,7 +952,7 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
}
private StringRequest getStringRequestActivationLinkUser(final String email) {
- return new StringRequest(Method.POST, AppConfig.URL_ENCRYPTED, new Response.Listener() {
+ return new StringRequest(Method.POST, AppConfig.REST_SENDACTIVATIONMAIL, new Response.Listener() {
@Override
public void onResponse(String response) {
@@ -960,7 +966,7 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
String errorMsg = jObj.getString("error_msg");
Log.e(TAG,"Resend E-Mail returned error value: "+errorMsg);
Toast.makeText(getApplicationContext(),
- getResources().getString(R.string.txt_errormsg_getactivationlink), Toast.LENGTH_LONG).show();
+ getResources().getString(R.string.txt_errormsg_getactivationlink) + ":"+errorMsg, Toast.LENGTH_LONG).show();
}
} catch (JSONException e) {
e.printStackTrace();
@@ -971,7 +977,7 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
@Override
public void onErrorResponse(VolleyError error) {
- Log.e(TAG, "E-Mail pw resend Error: " + error.getMessage());
+ Log.e(TAG, "E-Mail pw resend error: " + error.getMessage());
Toast.makeText(getApplicationContext(),
getResources().getString(R.string.txt_errormsg_getactivationlink), Toast.LENGTH_LONG).show();
hideDialog();
@@ -981,7 +987,6 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
@Override
protected Map getParams() {
Map params = new HashMap<>();
- params.put("tag", AppConfig.REST_RESENDACTIVATIONMAIL);
params.put("email", email);
return params;
@@ -990,7 +995,7 @@ 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.URL_ENCRYPTED, new Response.Listener() {
+ return new StringRequest(Method.POST, AppConfig.REST_REGISTER, new Response.Listener() {
@Override
public void onResponse(String response) {
@@ -1039,7 +1044,6 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
@Override
protected Map getParams() {
Map params = new HashMap<>();
- params.put("tag", AppConfig.REST_REGISTER);
params.put("username", username);
params.put("email", email);
params.put("password", password);
@@ -1113,4 +1117,5 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
}
}
+
}
diff --git a/app/src/main/java/org/deke/risk/riskahead/MainActivity.java b/app/src/main/java/org/deke/risk/riskahead/MainActivity.java
deleted file mode 100644
index b497cf8..0000000
--- a/app/src/main/java/org/deke/risk/riskahead/MainActivity.java
+++ /dev/null
@@ -1,218 +0,0 @@
-package org.deke.risk.riskahead;
-
-import android.graphics.drawable.Drawable;
-import android.os.Bundle;
-import android.os.Handler;
-import android.support.v4.content.ContextCompat;
-import android.util.Log;
-import android.view.View;
-import android.widget.Button;
-import android.widget.ImageView;
-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.mikepenz.google_material_typeface_library.GoogleMaterial;
-import com.mikepenz.iconics.IconicsDrawable;
-
-import org.deke.risk.riskahead.helper.AppConfig;
-import org.deke.risk.riskahead.helper.AppController;
-import org.deke.risk.riskahead.helper.BaseActivity;
-import org.deke.risk.riskahead.helper.SessionManager;
-import org.json.JSONException;
-import org.json.JSONObject;
-
-import java.text.DecimalFormat;
-import java.util.HashMap;
-import java.util.Map;
-
-/**
- *
- * (C) Copyright 2016 RiskAhead (http://www.riskahead.net)
- * Developer & Contributor: Dennis Thießen (dennis.thiessen@riskahead.net)
- * Date of Release: 10.02.2016
- *
- */
-public class MainActivity extends BaseActivity{
-
- private final static String TAG = MainActivity.class.getSimpleName();
-
- private Handler mHandler = new Handler();
-
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
-
- userHasToBeLoggedIn();
- showDialog();
-
- initButtons();
- }
-
- private void initButtons() {
- runOnUiThread(new Runnable() {
- @Override
- public void run() {
- ImageView bg = (ImageView) findViewById(R.id.imageView);
- bg.setImageDrawable(ContextCompat.getDrawable(getApplicationContext(), R.drawable.bg_withlogo_2));
-
-
- Button report = (Button) findViewById(R.id.btn_main_report);
- report.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- gotoReportActivity();
- }
- });
-
- Drawable reportIcon = new IconicsDrawable(getApplicationContext())
- .icon(GoogleMaterial.Icon.gmd_room)
- .color(ContextCompat.getColor(getApplicationContext(), R.color.white))
- .sizeDp(24);
-
- report.setCompoundDrawables(reportIcon, null, null, null);
- report.setBackgroundResource(R.drawable.activity_main_button);
-
- Button map = (Button) findViewById(R.id.btn_main_viewmap);
-
- map.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- gotoMapActivity();
- }
- });
-
- Drawable mapIcon = new IconicsDrawable(getApplicationContext())
- .icon(GoogleMaterial.Icon.gmd_map)
- .color(ContextCompat.getColor(getApplicationContext(), R.color.white))
- .sizeDp(24);
-
- map.setCompoundDrawables(null, null, mapIcon, null);
- map.setBackgroundResource(R.drawable.activity_main_button);
- }
- });
- }
-
- Runnable mHandlerTask = new Runnable()
- {
- @Override
- public void run() {
- requestNumberOfIncidents();
-
- TextView notificationStatus = (TextView) findViewById(R.id.lbl_main_notifystatus_status);
- if(session.getNotificationEnabled()){
- if(session.getNotificationServiceReady()){
- notificationStatus.setText(getString(R.string.txt_notifystatus_activated));
-
- notificationStatus.setTextColor(ContextCompat.getColor(getApplicationContext(),R.color.md_green_400));
- }else{
- notificationStatus.setText(getString(R.string.txt_notifystatus_activatedbutnotready));
- notificationStatus.setTextColor(ContextCompat.getColor(getApplicationContext(),R.color.md_yellow_400));
- }
- }else{
- notificationStatus.setText(getString(R.string.txt_notifystatus_deactivated));
- notificationStatus.setTextColor(ContextCompat.getColor(getApplicationContext(), R.color.md_red_400));
- }
-
- mHandler.postDelayed(mHandlerTask, AppConfig.UPDATE_COUNT_INTERVAL);
- }
- };
-
- private void requestNumberOfIncidents() {
- StringRequest strReq = getStringRequestIncidentCount();
- String tag_string_req = "req_incidents";
- AppController.getInstance().addToRequestQueue(strReq, tag_string_req);
- }
-
- private StringRequest getStringRequestIncidentCount() {
- return new StringRequest(Request.Method.POST, AppConfig.URL_ENCRYPTED, new Response.Listener() {
-
- @Override
- public void onResponse(String response) {
- hideDialog();
- Log.d(TAG, "Incident count: " + response);
-
- try {
- JSONObject jObj = new JSONObject(response);
- boolean error = jObj.getBoolean("error");
-
- if (!error) {
- JSONObject jCount = jObj.getJSONObject("msg");
-
- displayNumberOfIncidents(jCount);
- } else {
- String errorMsg = jObj.getString("error_msg");
- Log.e(TAG, "Error getting incident count (server returned error): " + errorMsg);
- }
- } catch (JSONException e) {
- e.printStackTrace();
- }
-
- }
- }, new Response.ErrorListener() {
-
- @Override
- public void onErrorResponse(VolleyError error) {
- Log.e(TAG, "Error getting incident count: " + error.getMessage());
- handleVolleyErrorResponse();
- stopRepeatingTask();
- hideDialog();
- }
- }) {
-
- @Override
- protected Map getParams() {
- Map params = new HashMap<>();
- params.put("tag", AppConfig.REST_GET_NUMOFINCIDENTS);
- params.put("uid", user.get(SessionManager.KEY_UID));
- params.put("token", user.get(SessionManager.TOKEN));
- return params;
- }
- };
- }
-
- private void displayNumberOfIncidents(JSONObject jCount) throws JSONException {
- TextView count = (TextView) findViewById(R.id.txt_main_incidents);
- DecimalFormat nf = new DecimalFormat();
- String decimalNumber = nf.format(jCount.getInt("total"));
- count.setText(decimalNumber);
- }
-
- void startRepeatingTask()
- {
- mHandlerTask.run();
- }
-
- void stopRepeatingTask()
- {
- mHandler.removeCallbacks(mHandlerTask);
- }
-
- @Override
- protected void onResume(){
- super.onResume();
- navDrawer.setSelection(mainAvtivityID, false);
- startRepeatingTask();
- }
-
- @Override
- protected void onPause(){
- super.onPause();
- stopRepeatingTask();
- }
-
- @Override
- protected int getLayoutResourceId() {
- return R.layout.activity_main;
- }
-
- @Override
- protected String getActivityName() {
- return getResources().getString(R.string.title_activity_start);
- }
-
-
-
-}
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 b07dc97..7d76470 100644
--- a/app/src/main/java/org/deke/risk/riskahead/MapsActivity.java
+++ b/app/src/main/java/org/deke/risk/riskahead/MapsActivity.java
@@ -9,6 +9,8 @@ import android.content.res.ColorStateList;
import android.database.Cursor;
import android.graphics.Color;
import android.graphics.drawable.Drawable;
+import android.location.Location;
+import android.location.LocationManager;
import android.os.Bundle;
import android.support.design.widget.FloatingActionButton;
import android.support.v4.app.ActivityCompat;
@@ -23,11 +25,14 @@ import android.view.View;
import android.widget.EditText;
import android.widget.LinearLayout;
import android.widget.RatingBar;
+import android.widget.RelativeLayout;
import android.widget.TextView;
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;
@@ -96,6 +101,11 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
private Marker markerShowingInfoWindow;
private IncidentReport clickedClusterItem;
+ protected LocationManager locationManager;
+ Location location;
+ private static final int MIN_DISTANCE_CHANGE_FOR_UPDATES = 10; // 10 meters
+ private static final int MIN_TIME_BW_UPDATES = 1000 * 60; // 1 minute
+
private LatLng myLocation;
private LatLng markedLocation;
private LatLng curNortheastBounds;
@@ -111,7 +121,6 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
super.onCreate(savedInstanceState);
userHasToBeLoggedIn();
-
if (session.getSubsPremium()) {
MIN_ZOOM_LEVEL = 7;
} else {
@@ -122,9 +131,9 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
mapFragment.getMapAsync(this);
findViewById(R.id.fab_reportwf_map).setVisibility(View.INVISIBLE);
-
}
+
@Override
public void onMapReady(GoogleMap googleMap) {
mMap = googleMap;
@@ -141,33 +150,60 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
@Override
public void onRequestPermissionsResult(int requestCode, String permissions[], int[] grantResults) {
+ Log.d(TAG,"Getting permission results...");
switch (requestCode) {
case MY_PERMISSIONS_REQUEST_LOCATION: {
- // If request is cancelled, the result arrays are empty.
if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
+ Log.d(TAG,"Permission was granted by user");
try{
mMap.setMyLocationEnabled(true);
- }catch(SecurityException e){
- Log.e(TAG,"Security Exception: "+e.toString());
+ }catch (SecurityException e){
+ Log.e(TAG,"Security Exception:"+e.getMessage());
+ }
+
+ getLocation();
+ }else{
+ Log.d(TAG,"Permission was not granted by user");
+
+ String sDefSystemLanguage = Locale.getDefault().getLanguage();
+
+ switch (sDefSystemLanguage) {
+ case "en":
+ mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(
+ new LatLng(51.507351, -0.127758), DEFAULT_ZOOM_LEVEL));
+ break;
+ case "de":
+ mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(
+ new LatLng(52.518594, 13.376188), DEFAULT_ZOOM_LEVEL));
+ break;
+ default:
+ mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(
+ new LatLng(19.410704, -99.132385), DEFAULT_ZOOM_LEVEL));
+ break;
+ }
+
+ try{
+ mMap.setMyLocationEnabled(false);
+ }catch (SecurityException e){
+ Log.e(TAG,"Security Exception:"+e.getMessage());
}
}
}
-
- // other 'case' lines to check for other
- // permissions this app might request
}
}
-
private void initMap() {
+ Log.d(TAG,"Init Map");
mMap.getUiSettings().setZoomControlsEnabled(true);
- if (ActivityCompat.checkSelfPermission(this, android.Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, android.Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
- ActivityCompat.requestPermissions(this,new String[]{android.Manifest.permission.ACCESS_FINE_LOCATION,android.Manifest.permission.ACCESS_COARSE_LOCATION},1);
- }else{
- mMap.setMyLocationEnabled(true);
- }
+ mMap.setOnMyLocationButtonClickListener(new GoogleMap.OnMyLocationButtonClickListener() {
+ @Override
+ public boolean onMyLocationButtonClick() {
+ getLocation();
+ return true;
+ }
+ });
mMap.setOnMapClickListener(new GoogleMap.OnMapClickListener() {
@Override
@@ -399,7 +435,7 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
}
private StringRequest getStringRequestGetAllIncidentsForHeatMapFromBound(final LatLng northeast, final LatLng southwest) {
- return new StringRequest(Request.Method.POST, AppConfig.URL_ENCRYPTED, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.REST_GET_INCIDENTS_FROMBOUND_FORHEATMAP, new Response.Listener() {
@Override
public void onResponse(String response) {
@@ -433,7 +469,6 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
@Override
protected Map getParams() {
Map params = new HashMap<>();
- params.put("tag", AppConfig.REST_GET_INCIDENTS_FROMBOUND_FORHEATMAP);
params.put("uid", user.get(SessionManager.KEY_UID));
params.put("token", user.get(SessionManager.TOKEN));
params.put("nelat", Double.toString(northeast.latitude));
@@ -447,7 +482,7 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
}
private StringRequest getStringRequestGetAllIncidentsFromBound(final LatLng northeast, final LatLng southwest) {
- return new StringRequest(Request.Method.POST, AppConfig.URL_ENCRYPTED, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.REST_GET_INCIDENTS_FROMBOUND, new Response.Listener() {
@Override
public void onResponse(String response) {
@@ -481,7 +516,6 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
@Override
protected Map getParams() {
Map params = new HashMap<>();
- params.put("tag", AppConfig.REST_GET_INCIDENTS_FROMBOUND);
params.put("uid", user.get(SessionManager.KEY_UID));
params.put("token", user.get(SessionManager.TOKEN));
params.put("nelat", Double.toString(northeast.latitude));
@@ -529,7 +563,7 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
}
private StringRequest getStringRequestGetIncidentScoreForInfoWindow(final View infoView, final String incidentID) {
- return new StringRequest(Request.Method.POST, AppConfig.URL_ENCRYPTED, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.REST_GET_INCIDENT, new Response.Listener() {
@Override
public void onResponse(String response) {
@@ -574,7 +608,6 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
@Override
protected Map getParams() {
Map params = new HashMap<>();
- params.put("tag", "getincidentfromincidentid");
params.put("uid", user.get(SessionManager.KEY_UID));
params.put("token", user.get(SessionManager.TOKEN));
params.put("incidentid", incidentID);
@@ -585,7 +618,7 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
}
- public class MyCustomAdapterForItems implements GoogleMap.InfoWindowAdapter {
+ private class MyCustomAdapterForItems implements GoogleMap.InfoWindowAdapter {
private final View myContentsView;
@@ -653,25 +686,9 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
{
mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(myPosition.latitude, myPosition.longitude), DEFAULT_ZOOM_LEVEL));
}else{
- String sDefSystemLanguage = Locale.getDefault().getLanguage();
-
- switch (sDefSystemLanguage) {
- case "en":
- mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(
- new LatLng(51.507351, -0.127758), DEFAULT_ZOOM_LEVEL));
- break;
- case "de":
- mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(
- new LatLng(52.518594, 13.376188), DEFAULT_ZOOM_LEVEL));
- break;
- default:
- mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(
- new LatLng(19.410704, -99.132385), DEFAULT_ZOOM_LEVEL));
- break;
- }
+ getLocation();
}
}
-
}
}
@@ -742,6 +759,105 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
}
+ private class MyLocationListener implements LocationListener {
+
+ @Override
+ public void onLocationChanged(Location loc) {
+ if(loc.getLongitude() != 0.0 && loc.getLatitude() != 0.0) {
+ Log.d(TAG, "Save GPS as new location...");
+ if(session.getLocation() == null || session.getLocation().latitude == 0.0 || session.getLocation().longitude == 0.0){
+ session.setLocation(Double.doubleToRawLongBits(loc.getLatitude()), Double.doubleToRawLongBits(loc.getLongitude()));
+ }else{
+ session.setLocation(Double.doubleToRawLongBits(loc.getLatitude()), Double.doubleToRawLongBits(loc.getLongitude()));
+ }
+
+ session.setNotificationServiceReady(true);
+ }
+ }
+
+ @Override
+ public void onProviderDisabled(String provider) {}
+
+ @Override
+ public void onProviderEnabled(String provider) {}
+
+ @Override
+ public void onStatusChanged(String provider, int status, Bundle extras) {}
+ }
+
+ private boolean isLocationEnabled() {
+ return locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER) ||
+ locationManager.isProviderEnabled(LocationManager.NETWORK_PROVIDER);
+ }
+
+ public Location getLocation() {
+ //check for permission
+ 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){
+ Log.d(TAG,"Permission for GPS not granted yet - ask for permission now");
+ ActivityCompat.requestPermissions(this,new String[]{android.Manifest.permission.ACCESS_FINE_LOCATION,android.Manifest.permission.ACCESS_COARSE_LOCATION},MY_PERMISSIONS_REQUEST_LOCATION);
+ }else{
+ Log.d(TAG,"Permission for GPS granted - get position");
+ 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, 200, 30, 30);
+
+ try {
+ locationManager = (LocationManager) getApplicationContext().getSystemService(LOCATION_SERVICE);
+ LocationListener locationListener = new MyLocationListener();
+
+
+ if (!isLocationEnabled()) {
+ showMessage("Please activate GPS in your android settings.");
+ Log.d(TAG,"Locationservice not enabled");
+ } else {
+ Log.d(TAG,"Locationservice enabled - check type");
+
+ // if GPS Enabled get lat/long using GPS Services
+ if (locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER)) {
+ Log.d(TAG,"Locationservice enabled - GPS Provider Found");
+ if (location == null) {
+ locationManager.requestLocationUpdates(
+ LocationManager.GPS_PROVIDER,
+ MIN_TIME_BW_UPDATES,
+ MIN_DISTANCE_CHANGE_FOR_UPDATES, locationListener);
+ Log.d("GPS Enabled", "GPS Enabled");
+ if (locationManager != null) {
+ location = locationManager .getLastKnownLocation(LocationManager.GPS_PROVIDER);
+ if (location != null) {
+ myLocation = new LatLng(location.getLatitude(),location.getLongitude());
+ }
+ }
+ }
+ }else if (locationManager.isProviderEnabled(LocationManager.NETWORK_PROVIDER)) {
+ // get location from Network Provider
+ Log.d(TAG,"Locationservice enabled - Network Provider Found");
+ locationManager.requestLocationUpdates(
+ LocationManager.NETWORK_PROVIDER,
+ 22,
+ 33, locationListener);
+ Log.d("Network", "Network");
+ if (locationManager != null) {
+ location = locationManager.getLastKnownLocation(LocationManager.NETWORK_PROVIDER);
+ if (location != null) {
+ myLocation = new LatLng(location.getLatitude(),location.getLongitude());
+ }
+ }
+ }
+
+ mMap.moveCamera(CameraUpdateFactory.newLatLng(myLocation));
+
+ }
+
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+
+ return location;
+ }
+
@Override
public void onLoadFinished(Loader arg0, Cursor c) {
showLocations(c);
@@ -759,8 +875,8 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
EditText txtSearch = ((EditText)searchView.findViewById(android.support.v7.appcompat.R.id.search_src_text));
txtSearch.setHint(getResources().getString(R.string.search_hint));
- txtSearch.setHintTextColor(Color.LTGRAY);
- txtSearch.setTextColor(Color.WHITE);
+ txtSearch.setHintTextColor(Color.DKGRAY);
+ txtSearch.setTextColor(Color.BLACK);
return true;
}
@@ -769,7 +885,6 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
protected void onPause(){
super.onPause();
if(showAdd) showAd();
-
}
@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 c883ea6..28a8c7c 100644
--- a/app/src/main/java/org/deke/risk/riskahead/ReportWFActivity.java
+++ b/app/src/main/java/org/deke/risk/riskahead/ReportWFActivity.java
@@ -29,8 +29,6 @@ import com.android.volley.toolbox.StringRequest;
import com.beardedhen.androidbootstrap.BootstrapButton;
import com.beardedhen.androidbootstrap.api.defaults.DefaultBootstrapBrand;
import com.google.android.gms.maps.model.LatLng;
-import com.google.android.gms.plus.Plus;
-import com.google.android.gms.plus.model.people.Person;
import com.google.gson.Gson;
import org.deke.risk.riskahead.fragment.BaseReportWFFragment;
@@ -123,7 +121,7 @@ public class ReportWFActivity extends BaseActivity implements ReportWF_1_Fragmen
private void initButtonsAndElements() {
btnContinue = (BootstrapButton) findViewById(R.id.btn_reportwf_next);
- btnContinue.setVisibility(View.INVISIBLE);
+ btnContinue.setEnabled(false);
btnContinue.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
@@ -133,7 +131,7 @@ public class ReportWFActivity extends BaseActivity implements ReportWF_1_Fragmen
});
btnReportNow = (BootstrapButton) findViewById(R.id.btn_reportwf_reportnow);
- btnReportNow.setVisibility(View.INVISIBLE);
+ btnReportNow.setEnabled(false);
btnReportNow.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
@@ -171,8 +169,8 @@ public class ReportWFActivity extends BaseActivity implements ReportWF_1_Fragmen
}
if(state == (fragList.size()-1)){
- btnContinue.setVisibility(View.INVISIBLE);
- btnReportNow.setVisibility(View.INVISIBLE);
+ btnContinue.setEnabled(false);
+ btnReportNow.setEnabled(false);
siteIndicator.setVisibility(View.INVISIBLE);
}else{
siteIndicator.setVisibility(View.VISIBLE);
@@ -254,15 +252,15 @@ public class ReportWFActivity extends BaseActivity implements ReportWF_1_Fragmen
}
if((currentState == 1 && finished) || (currentState > 1)){
- btnReportNow.setVisibility(View.VISIBLE);
+ btnReportNow.setEnabled(true);
}else{
- btnReportNow.setVisibility(View.INVISIBLE);
+ btnReportNow.setEnabled(false);
}
if(finished || currentState > 1){
- btnContinue.setVisibility(View.VISIBLE);
+ btnContinue.setEnabled(true);
}else{
- btnContinue.setVisibility(View.INVISIBLE);
+ btnContinue.setEnabled(false);
}
}
@@ -315,7 +313,7 @@ public class ReportWFActivity extends BaseActivity implements ReportWF_1_Fragmen
private StringRequest getStringRequestAddIncidentWithPosition(final IncidentReport incident) {
showDialog();
- return new StringRequest(Request.Method.POST, AppConfig.URL_ENCRYPTED, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.REST_ADD_INCIDENT_WITHPOSITION, new Response.Listener() {
@Override
public void onResponse(String response) {
@@ -327,8 +325,7 @@ public class ReportWFActivity extends BaseActivity implements ReportWF_1_Fragmen
if (!error) {
showMessage(getString(R.string.txt_success_addreport));
-
- showDialogWhenReportAdded(incident);
+ showShareDialog(incident);
} else {
String errorMsg = jObj.getString("error_msg");
Log.e(TAG, "Error adding incident (Server returned error): " + errorMsg);
@@ -352,7 +349,6 @@ public class ReportWFActivity extends BaseActivity implements ReportWF_1_Fragmen
@Override
protected Map getParams() {
Map params = new HashMap<>();
- params.put("tag", AppConfig.REST_ADD_INCIDENT_WITHPOSITION);
params.put("uid", user.get(SessionManager.KEY_UID));
params.put("token", user.get(SessionManager.TOKEN));
params.put("latitude", Double.toString(incident.getPosition().latitude));
@@ -389,33 +385,20 @@ public class ReportWFActivity extends BaseActivity implements ReportWF_1_Fragmen
};
}
- private void showDialogWhenReportAdded(final IncidentReport incident) {
- if (ActivityCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
- ActivityCompat.requestPermissions(this, new String[]{android.Manifest.permission.WRITE_EXTERNAL_STORAGE}, MY_PERMISSIONS_REQUEST_STORAGE);
- return;
- }else{
- showShareDialog(incident);
- }
+ private void requestPermission(){
+ ActivityCompat.requestPermissions(this,new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE}, MY_PERMISSIONS_REQUEST_STORAGE);
}
@Override
- public void onRequestPermissionsResult(int requestCode,
- String permissions[], int[] grantResults) {
+ public void onRequestPermissionsResult(int requestCode, String permissions[], int[] grantResults) {
switch (requestCode) {
case MY_PERMISSIONS_REQUEST_STORAGE: {
- // If request is cancelled, the result arrays are empty.
if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
-
- showShareDialog(incident);
-
+ startShareIncidentIntent(incident);
} else {
finishReportAndGotoMap(incident);
}
- return;
}
-
- // other 'case' lines to check for other
- // permissions this app might request
}
}
@@ -425,13 +408,7 @@ public class ReportWFActivity extends BaseActivity implements ReportWF_1_Fragmen
.setMessage(R.string.txt_share_message)
.setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
- resetStateAndIncident();
- gotoMapActivity(incident.getPosition().latitude + ":" + incident.getPosition().longitude);
-
-
startShareIncidentIntent(incident);
-
-
}
})
.setNegativeButton(android.R.string.no, new DialogInterface.OnClickListener() {
@@ -441,23 +418,43 @@ public class ReportWFActivity extends BaseActivity implements ReportWF_1_Fragmen
})
.setIcon(android.R.drawable.ic_dialog_alert)
.show();
+
}
private void startShareIncidentIntent(IncidentReport incident) {
- Intent sharingIntent = new Intent(Intent.ACTION_SEND);
- Bitmap icon = BitmapFactory.decodeResource(getApplicationContext().getResources(),
- R.drawable.ra_qrcode);
- 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_page);
+ if (ActivityCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
- sharingIntent.putExtra(Intent.EXTRA_TEXT, text);
- sharingIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse(MediaStore.Images.Media.insertImage(getApplicationContext().getContentResolver(), icon, "Share incident", null)));
- sharingIntent.setType("image/*");
- sharingIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
- startActivity(Intent.createChooser(sharingIntent, getString(R.string.txt_share_acttitle)));
+ AlertDialog alertDialog = new AlertDialog.Builder(this).create();
+ 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();
+ }
+ });
+ alertDialog.show();
+
+ }else{
+ resetStateAndIncident();
+ gotoMapActivity(incident.getPosition().latitude + ":" + incident.getPosition().longitude);
+
+ Intent sharingIntent = new Intent(Intent.ACTION_SEND);
+ Bitmap icon = BitmapFactory.decodeResource(getApplicationContext().getResources(),
+ R.drawable.ra_qrcode);
+ 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_page);
+
+ sharingIntent.putExtra(Intent.EXTRA_TEXT, text);
+ sharingIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse(MediaStore.Images.Media.insertImage(getApplicationContext().getContentResolver(), icon, "Share incident", null)));
+ sharingIntent.setType("image/*");
+ sharingIntent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
+ startActivity(Intent.createChooser(sharingIntent, getString(R.string.txt_share_acttitle)));
+ }
}
private void finishReportAndGotoMap(IncidentReport incident) {
diff --git a/app/src/main/java/org/deke/risk/riskahead/StartActivity.java b/app/src/main/java/org/deke/risk/riskahead/StartActivity.java
deleted file mode 100644
index 9d45151..0000000
--- a/app/src/main/java/org/deke/risk/riskahead/StartActivity.java
+++ /dev/null
@@ -1,72 +0,0 @@
-package org.deke.risk.riskahead;
-
-import android.content.Intent;
-import android.os.Bundle;
-import android.support.v7.app.AppCompatActivity;
-import android.util.Log;
-import android.view.Menu;
-import android.view.MenuItem;
-import android.view.View;
-import android.widget.Button;
-
-import org.deke.risk.riskahead.helper.AppConfig;
-import org.deke.risk.riskahead.helper.SessionManager;
-
-/**
- *
- * (C) Copyright 2016 RiskAhead (http://www.riskahead.net)
- * Developer & Contributor: Dennis Thießen (dennis.thiessen@riskahead.net)
- * Date of Release: 10.02.2016
- *
- */
-public class StartActivity extends AppCompatActivity {
-
- private final static String TAG = StartActivity.class.getSimpleName();
-
- Button btnLogin;
- Button btnRegister;
-
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
-
- Log.d(TAG,"RiskAhead started.");
-
- setContentView(R.layout.activity_start);
-
- btnLogin = (Button) findViewById(R.id.btn_start_login);
- btnRegister = (Button) findViewById(R.id.btn_start_register);
-
- SessionManager session = new SessionManager(getApplicationContext());
- if (session.isLoggedIn()) {
- Log.d(TAG,"User found in sharedPrefs and is therefore logged in. Continue to internal Area.");
- Intent intent = new Intent(StartActivity.this, MainActivity.class);
- startActivity(intent);
- finish();
- }
- }
-
- public void gotoLogin(View view) {
- Intent intent = new Intent(this, LoginActivity.class);
- intent.putExtra(AppConfig.EXTRA_MESSAGE, AppConfig.INTENT_LOGIN);
- startActivity(intent);
- }
-
- public void gotoRegister(View view) {
- Intent intent = new Intent(this, LoginActivity.class);
- intent.putExtra(AppConfig.EXTRA_MESSAGE, AppConfig.INTENT_REGISTER);
- startActivity(intent);
- }
-
- @Override
- public boolean onCreateOptionsMenu(Menu menu) {
- getMenuInflater().inflate(R.menu.menu_common, menu);
- return true;
- }
-
- @Override
- public boolean onOptionsItemSelected(MenuItem item) {
- return super.onOptionsItemSelected(item);
- }
-
-}
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 560d0be..2a6c350 100644
--- a/app/src/main/java/org/deke/risk/riskahead/SubscriptionsActivity.java
+++ b/app/src/main/java/org/deke/risk/riskahead/SubscriptionsActivity.java
@@ -309,7 +309,7 @@ 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.URL_ENCRYPTED, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.REST_ADD_SUBSCRIPTIONS, new Response.Listener() {
@Override
public void onResponse(String response) {
@@ -345,7 +345,6 @@ public class SubscriptionsActivity extends BaseActivity{
@Override
protected Map getParams() {
Map params = new HashMap<>();
- params.put("tag", "addsubscription");
params.put("uid", user.get(SessionManager.KEY_UID));
params.put("token", user.get(SessionManager.TOKEN));
params.put("productid", productId);
@@ -365,7 +364,7 @@ public class SubscriptionsActivity extends BaseActivity{
}
private StringRequest getStringGetSubscriptions(final String userId) {
- return new StringRequest(Request.Method.POST, AppConfig.URL_ENCRYPTED, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.REST_GET_SUBSCRIPTIONS, new Response.Listener() {
@Override
public void onResponse(String response) {
@@ -407,7 +406,6 @@ public class SubscriptionsActivity extends BaseActivity{
@Override
protected Map getParams() {
Map params = new HashMap<>();
- params.put("tag", "getsubscriptions");
params.put("uid", user.get(SessionManager.KEY_UID));
params.put("token", user.get(SessionManager.TOKEN));
params.put("userid", userId);
@@ -426,7 +424,7 @@ public class SubscriptionsActivity extends BaseActivity{
}
private StringRequest getStringDeactivateSubscriptions(final String subscriptionId) {
- return new StringRequest(Request.Method.POST, AppConfig.URL_ENCRYPTED, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.REST_DEACTIVATE_SUBSCRIPTIONS, new Response.Listener() {
@Override
public void onResponse(String response) {
@@ -457,7 +455,6 @@ public class SubscriptionsActivity extends BaseActivity{
@Override
protected Map getParams() {
Map params = new HashMap<>();
- params.put("tag", "deactivatesubscription");
params.put("uid", user.get(SessionManager.KEY_UID));
params.put("token", user.get(SessionManager.TOKEN));
params.put("subid", subscriptionId);
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 ce5da86..830dd9e 100644
--- a/app/src/main/java/org/deke/risk/riskahead/ViewReportActivity.java
+++ b/app/src/main/java/org/deke/risk/riskahead/ViewReportActivity.java
@@ -158,7 +158,7 @@ public class ViewReportActivity extends BaseActivity {
}
private StringRequest getStringRequestDeleteIncident(final Integer incidentid) {
- return new StringRequest(Request.Method.POST, AppConfig.URL_ENCRYPTED, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.REST_DEACTIVATE_INCIDENT, new Response.Listener() {
@Override
public void onResponse(String response) {
@@ -194,7 +194,6 @@ public class ViewReportActivity extends BaseActivity {
@Override
protected Map getParams() {
Map params = new HashMap<>();
- params.put("tag", AppConfig.REST_DEACTIVATE_INCIDENT);
params.put("uid", user.get(SessionManager.KEY_UID));
params.put("token", user.get(SessionManager.TOKEN));
params.put("incidentid", incidentid.toString());
@@ -213,7 +212,7 @@ public class ViewReportActivity extends BaseActivity {
}
private StringRequest getStringRequestGetIncidentWithPositionFromID(final Integer incidentid) {
- return new StringRequest(Request.Method.POST, AppConfig.URL_ENCRYPTED, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.REST_GET_INCIDENT, new Response.Listener() {
@Override
public void onResponse(String response) {
@@ -253,7 +252,6 @@ public class ViewReportActivity extends BaseActivity {
protected Map getParams() {
// Posting parameters to login url
Map params = new HashMap<>();
- params.put("tag", AppConfig.REST_GET_INCIDENTS_FROMINCIDENTID);
params.put("uid", user.get(SessionManager.KEY_UID));
params.put("token", user.get(SessionManager.TOKEN));
params.put("incidentid", incidentid.toString());
@@ -447,7 +445,7 @@ public class ViewReportActivity extends BaseActivity {
}
private StringRequest getStringRequestAddVote(final Integer incidentid, final String votetype) {
- return new StringRequest(Request.Method.POST, AppConfig.URL_ENCRYPTED, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.REST_ADD_VOTE, new Response.Listener() {
@Override
public void onResponse(String response) {
@@ -484,7 +482,6 @@ public class ViewReportActivity extends BaseActivity {
@Override
protected Map getParams() {
Map params = new HashMap<>();
- params.put("tag", AppConfig.REST_ADD_VOTE);
params.put("uid", user.get(SessionManager.KEY_UID));
params.put("token", user.get(SessionManager.TOKEN));
params.put("incidentid", incidentid.toString());
@@ -502,7 +499,7 @@ public class ViewReportActivity extends BaseActivity {
}
private StringRequest getStringRequestDeleteVote(final Integer incidentid) {
- return new StringRequest(Request.Method.POST, AppConfig.URL_ENCRYPTED, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.REST_DELETE_VOTE, new Response.Listener() {
@Override
public void onResponse(String response) {
@@ -537,7 +534,6 @@ public class ViewReportActivity extends BaseActivity {
@Override
protected Map getParams() {
Map params = new HashMap<>();
- params.put("tag", AppConfig.REST_DELETE_VOTE);
params.put("uid", user.get(SessionManager.KEY_UID));
params.put("token", user.get(SessionManager.TOKEN));
params.put("incidentid", incidentid.toString());
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 f1d8b82..0ebfaef 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
@@ -3,7 +3,6 @@ package org.deke.risk.riskahead.fragment;
import android.Manifest;
import android.app.Activity;
import android.app.AlertDialog;
-import android.app.Dialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
@@ -29,7 +28,6 @@ import com.google.android.gms.plus.Plus;
import com.google.android.gms.plus.model.people.Person;
import org.deke.risk.riskahead.LoginActivity;
-import org.deke.risk.riskahead.MainActivity;
import org.deke.risk.riskahead.R;
/**
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 61282aa..e16cb8a 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
@@ -86,7 +86,7 @@ public class ReportListFragment extends Fragment{
}
private StringRequest getStringRequestGetIncidentsWithPositionFromUserID() {
- return new StringRequest(Request.Method.POST, AppConfig.URL_ENCRYPTED, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.REST_GET_INCIDENTS_FROMUSERID, new Response.Listener() {
@Override
public void onResponse(String response) {
@@ -136,7 +136,6 @@ public class ReportListFragment extends Fragment{
@Override
protected Map getParams() {
Map params = new HashMap<>();
- params.put("tag", AppConfig.REST_GET_INCIDENTS_FROMUSERID);
params.put("uid", parent.user.get(SessionManager.KEY_UID));
params.put("token", parent.user.get(SessionManager.TOKEN));
params.put("userincidentid", uid);
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 9f5ba0d..1ef3bf5 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
@@ -239,7 +239,7 @@ public class SettingsFragment extends PreferenceFragment {
private StringRequest getStringRequestResetPW(final String email) {
((SettingsActivity) getActivity()).showDialog();
- return new StringRequest(Request.Method.POST, AppConfig.URL_ENCRYPTED, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.REST_REQUESTPWRESET, new Response.Listener() {
@Override
public void onResponse(String response) {
@@ -275,7 +275,6 @@ public class SettingsFragment extends PreferenceFragment {
@Override
protected Map getParams() {
Map params = new HashMap<>();
- params.put("tag", AppConfig.REST_REQUESTPWRESET);
params.put("email", email);
return params;
@@ -304,7 +303,7 @@ public class SettingsFragment extends PreferenceFragment {
}
private StringRequest getStringChangeUserSettings(final String username, final String name, final String surname, final String email) {
- return new StringRequest(Request.Method.POST, AppConfig.URL_ENCRYPTED, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.REST_UPDATE_USER, new Response.Listener() {
@Override
public void onResponse(String response) {
@@ -364,7 +363,6 @@ public class SettingsFragment extends PreferenceFragment {
@Override
protected Map getParams() {
Map params = new HashMap<>();
- params.put("tag", AppConfig.REST_UPDATE_USER);
params.put("uid", user.get(SessionManager.KEY_UID));
params.put("token", user.get(SessionManager.TOKEN));
params.put("username", username);
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 b1c3f03..dca2368 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
@@ -79,7 +79,7 @@ public class Top10Fragment extends Fragment {
private StringRequest getStringRequestTop10() {
- return new StringRequest(Request.Method.POST, AppConfig.URL_ENCRYPTED, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.REST_GET_TOP10, new Response.Listener() {
@Override
public void onResponse(String response) {
@@ -129,7 +129,6 @@ public class Top10Fragment extends Fragment {
@Override
protected Map getParams() {
Map params = new HashMap<>();
- params.put("tag", AppConfig.REST_GET_TOP10);
params.put("uid", parent.user.get(SessionManager.KEY_UID));
params.put("token", parent.user.get(SessionManager.TOKEN));
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 2784940..d900267 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
@@ -87,8 +87,8 @@ public class TwitterButtonFragment extends Fragment {
@Override
public void failure(TwitterException exception) {
- Log.e("Debug", "onFailure wird ausgeführt");
- showMessage("Twitter Login failed with exception " + exception.getMessage());
+ Log.e("Twitter", "onFailure wird ausgeführt: "+exception);
+ showMessage("Could not log in with Twitter. Please use E-Mail instead or try again later.");
}
});
}
diff --git a/app/src/main/java/org/deke/risk/riskahead/helper/AppConfig.java b/app/src/main/java/org/deke/risk/riskahead/helper/AppConfig.java
index d55c04d..d26bcac 100644
--- a/app/src/main/java/org/deke/risk/riskahead/helper/AppConfig.java
+++ b/app/src/main/java/org/deke/risk/riskahead/helper/AppConfig.java
@@ -11,10 +11,8 @@ public class AppConfig {
/** GENERAL **/
public final static String APP_PNAME = "org.deke.risk.riskahead";
-
/** URLs **/
- public final static String URL_ENCRYPTED = "https://www.riskahead.de/helper/rest/";
- public final static String URL_DEFAULT = "http://www.riskahead.de/helper/rest/";
+ public final static String URL_ENCRYPTED = "https://www.riskahead.de/api/v1";
public final static String URL_ABOUT = "https://www.riskahead.net/about/";
public final static String URL_CONTACT = "https://www.riskahead.net/contact/";
@@ -39,27 +37,45 @@ public class AppConfig {
public final static int VOTETYPE_DOWNVOTE = 2;
/** REST WEBSERVICE **/
- public final static String REST_LOGIN = "login";
- public final static String REST_LOGIN_SOCIAL = "sociallogin";
- public final static String REST_LOGIN_EXISTS= "checkifuserexists";
- public final static String REST_REGISTER = "register";
- public final static String REST_RESENDACTIVATIONMAIL = "resendactivationusermail";
- public final static String REST_REQUESTPWRESET = "requestpwreset";
- public final static String REST_GET_NUMOFINCIDENTS = "getincidentcount";
- public final static String REST_GET_INCIDENTS_FROMBOUND = "getincidentsfrombound";
- public final static String REST_GET_INCIDENTS_FROMBOUND_FORHEATMAP = "getincidentsforheatmapfrombound";
- public final static String REST_GET_INCIDENTS_FROMUSERID = "getincidentsfromuserid";
- public final static String REST_GET_INCIDENTS_FROMINCIDENTID = "getincidentfromincidentid";
- public final static String REST_ADD_INCIDENT_WITHPOSITION = "addincidentwithposition";
- public final static String REST_UPDATE_USER = "updateuser";
- public final static String REST_GET_USERSTATS = "getuserstats";
- public final static String REST_GET_INCIDENTS_FROMAREATIME = "getincidentsinareaandtime";
- public final static String REST_GET_TOP10 = "gettop10";
- public final static String REST_ADD_VOTE = "addvote";
- public final static String REST_DELETE_VOTE = "deletevote";
- public final static String REST_SEND_FEEDBACK = "sendfeedback";
- public final static String REST_DEACTIVATE_INCIDENT = "deactivateincident";
+ public final static String ROUTE_PUB = "/public";
+ public final static String ROUTE_AUTH = "/auth";
- public static final String REST_CHECK_MAINTENANCE = "checkformaintenance";
- public static final String REST_CHECK_VERSION= "checkifversionvalid";
+ public final static String ROUTE_GROUP_USERS = "/users";
+ public final static String ROUTE_GROUP_SOCIALMEDIAS = "/socialmedias";
+ public final static String ROUTE_GROUP_VALIDATIONS = "/validations";
+ public final static String ROUTE_GROUP_INCIDENTS = "/incidents";
+ public final static String ROUTE_GROUP_SUBSCRIPTIONS = "/subscriptions";
+ public final static String ROUTE_GROUP_VOTES = "/votes";
+
+ public final static String REST_LOGIN = URL_ENCRYPTED + ROUTE_PUB + ROUTE_GROUP_USERS + "/login/";
+ public final static String REST_REGISTER = URL_ENCRYPTED + ROUTE_PUB + ROUTE_GROUP_USERS + "/register/";
+ public final static String REST_USEREXISTS = URL_ENCRYPTED + ROUTE_PUB + ROUTE_GROUP_USERS + "/exists/";
+ public final static String REST_LOGIN_SOCIAL = URL_ENCRYPTED + ROUTE_PUB + ROUTE_GROUP_SOCIALMEDIAS + "/login/";
+
+ public final static String REST_SENDACTIVATIONMAIL = URL_ENCRYPTED + ROUTE_PUB + ROUTE_GROUP_USERS + "/sendactivation/";
+ public final static String REST_REQUESTPWRESET = URL_ENCRYPTED + ROUTE_PUB + ROUTE_GROUP_USERS + "/sendpwreset/";
+
+ public final static String REST_GET_NUMOFINCIDENTS = URL_ENCRYPTED + ROUTE_AUTH + ROUTE_GROUP_INCIDENTS + "/get/number/";
+ public final static String REST_GET_INCIDENT = URL_ENCRYPTED + ROUTE_AUTH + ROUTE_GROUP_INCIDENTS + "/get/incidentid/";
+ public final static String REST_GET_INCIDENTS_FROMUSERID = URL_ENCRYPTED + ROUTE_AUTH + ROUTE_GROUP_INCIDENTS + "/get/userid/";
+ public final static String REST_GET_INCIDENTS_FROMBOUND = URL_ENCRYPTED + ROUTE_AUTH + ROUTE_GROUP_INCIDENTS + "/get/activefrombound/";
+ public final static String REST_GET_INCIDENTS_FROMBOUND_FORHEATMAP = URL_ENCRYPTED + ROUTE_AUTH + ROUTE_GROUP_INCIDENTS + "/get/activefromboundreduced/";
+ public final static String REST_GET_INCIDENTS_FROMAREATIME = URL_ENCRYPTED + ROUTE_AUTH + ROUTE_GROUP_INCIDENTS + "/get/boundandtime/";
+
+ public final static String REST_DEACTIVATE_INCIDENT = URL_ENCRYPTED + ROUTE_AUTH + ROUTE_GROUP_INCIDENTS + "/deactivate/";
+ public final static String REST_ADD_INCIDENT_WITHPOSITION = URL_ENCRYPTED + ROUTE_AUTH + ROUTE_GROUP_INCIDENTS + "/add/withposition/";
+
+ public final static String REST_UPDATE_USER = URL_ENCRYPTED + ROUTE_AUTH + ROUTE_GROUP_USERS + "/update/";
+ public final static String REST_GET_USERSTATS = URL_ENCRYPTED + ROUTE_AUTH + ROUTE_GROUP_USERS + "/statistics/";
+ public final static String REST_GET_TOP10 = URL_ENCRYPTED + ROUTE_AUTH + ROUTE_GROUP_USERS + "/top10/";
+ public final static String REST_SEND_FEEDBACK = URL_ENCRYPTED + ROUTE_AUTH + ROUTE_GROUP_USERS + "/feedback/";
+ public final static String REST_GET_SUBSCRIPTIONS = URL_ENCRYPTED + ROUTE_AUTH + ROUTE_GROUP_USERS + ROUTE_GROUP_SUBSCRIPTIONS + "/";
+ public final static String REST_ADD_SUBSCRIPTIONS = URL_ENCRYPTED + ROUTE_AUTH + ROUTE_GROUP_USERS + ROUTE_GROUP_SUBSCRIPTIONS + "/add/";
+ public final static String REST_DEACTIVATE_SUBSCRIPTIONS = URL_ENCRYPTED + ROUTE_AUTH + ROUTE_GROUP_USERS + ROUTE_GROUP_SUBSCRIPTIONS + "/deactivate/";
+
+ public final static String REST_ADD_VOTE = URL_ENCRYPTED + ROUTE_AUTH + ROUTE_GROUP_USERS + ROUTE_GROUP_VOTES + "/add/";
+ public final static String REST_DELETE_VOTE = URL_ENCRYPTED + ROUTE_AUTH + ROUTE_GROUP_USERS + ROUTE_GROUP_VOTES + "/delete/";
+
+ public static final String REST_CHECK_MAINTENANCE = URL_ENCRYPTED + ROUTE_PUB + ROUTE_GROUP_VALIDATIONS + "/maintenance/";
+ public static final String REST_CHECK_VERSION = URL_ENCRYPTED + ROUTE_PUB + ROUTE_GROUP_VALIDATIONS + "/version/";
}
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 d2a6a78..46e4ce5 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
@@ -56,7 +56,6 @@ import com.mikepenz.materialdrawer.model.ProfileDrawerItem;
import com.mikepenz.materialdrawer.model.interfaces.IDrawerItem;
import org.deke.risk.riskahead.LoginActivity;
-import org.deke.risk.riskahead.MainActivity;
import org.deke.risk.riskahead.MapsActivity;
import org.deke.risk.riskahead.R;
import org.deke.risk.riskahead.ProfileActivity;
@@ -254,11 +253,6 @@ public abstract class BaseActivity extends AppCompatActivity {
}
private void initNavigationDrawer(Bundle savedInstanceState) {
- PrimaryDrawerItem item1 = new PrimaryDrawerItem()
- .withName(R.string.navigation_start)
- .withIdentifier(mainAvtivityID)
- .withIcon(GoogleMaterial.Icon.gmd_home);
-
PrimaryDrawerItem item2 = new PrimaryDrawerItem()
.withName(R.string.navigation_report)
.withIdentifier(reportAvtivityID)
@@ -322,7 +316,6 @@ public abstract class BaseActivity extends AppCompatActivity {
.withSavedInstance(savedInstanceState)
.withSelectedItem(-1)
.addDrawerItems(
- item1,
item2,
item3,
new DividerDrawerItem(),
@@ -336,9 +329,6 @@ public abstract class BaseActivity extends AppCompatActivity {
switch ((int)drawerItem.getIdentifier()) {
- case 1:
- gotoMainActivity();
- return false;
case 2:
gotoReportActivity();
return false;
@@ -451,12 +441,6 @@ public abstract class BaseActivity extends AppCompatActivity {
return true;
}
- public void gotoMainActivity(){
- Intent intent;
- intent = new Intent(getApplicationContext(), MainActivity.class);
- startActivity(intent);
- }
-
public void gotoReportActivity(){
Intent intent;
intent = new Intent(getApplicationContext(), ReportWFActivity.class);
@@ -723,7 +707,7 @@ public abstract class BaseActivity extends AppCompatActivity {
}
private StringRequest getStringRequestSendFeedback(final String feedback, final String sysprop) {
- return new StringRequest(Request.Method.POST, AppConfig.URL_ENCRYPTED, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.REST_SEND_FEEDBACK, new Response.Listener() {
@Override
public void onResponse(String response) {
@@ -755,7 +739,6 @@ public abstract class BaseActivity extends AppCompatActivity {
@Override
protected Map getParams() {
Map params = new HashMap<>();
- params.put("tag", AppConfig.REST_SEND_FEEDBACK);
params.put("uid", user.get(SessionManager.KEY_UID));
params.put("token", user.get(SessionManager.TOKEN));
params.put("feedback", feedback);
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 afaf392..ead2885 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
@@ -49,6 +49,9 @@ public class NotificationService extends Service {
Handler mNotifyHandler = new Handler();
NotificationManager mNotificationManager;
+ private static final int MIN_DISTANCE_CHANGE_FOR_UPDATES = 10; // 10 meters
+ private static final int MIN_TIME_BW_UPDATES = 1000 * 60; // 1 minute
+
public SessionManager session;
public HashMap user;
@@ -70,26 +73,50 @@ public class NotificationService extends Service {
locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
LocationListener locationListener = new MyLocationListener();
- if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
- //ActivityCompat.requestPermissions(this,new String[]{Manifest.permission.ACCESS_FINE_LOCATION,Manifest.permission.ACCESS_COARSE_LOCATION},1);
- }else{
+ if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) == PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) == PackageManager.PERMISSION_GRANTED) {
+ if (locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER)) {
+ Log.d(TAG,"Locationservice enabled - GPS Provider Found");
+
+ locationManager.requestLocationUpdates(
+ LocationManager.GPS_PROVIDER,
+ MIN_TIME_BW_UPDATES,
+ MIN_DISTANCE_CHANGE_FOR_UPDATES, locationListener);
+ Log.d("GPS Enabled", "GPS Enabled");
+
+ if (locationManager != null) {
+ Location tmpLocation = locationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);
+ if (tmpLocation != null) {
+ session.setLocation(Double.doubleToRawLongBits(tmpLocation.getLatitude()),Double.doubleToRawLongBits(tmpLocation.getLongitude()));
+ }
+ }
+ }else if (locationManager.isProviderEnabled(LocationManager.NETWORK_PROVIDER)) {
+ // get location from Network Provider
+ Log.d(TAG,"Locationservice enabled - Network Provider Found");
+ locationManager.requestLocationUpdates(
+ LocationManager.NETWORK_PROVIDER,
+ 22,
+ 33, locationListener);
+ Log.d("Network", "Network");
+ if (locationManager != null) {
+ Location tmpLocation = locationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);
+ if (tmpLocation != null) {
+ session.setLocation(Double.doubleToRawLongBits(tmpLocation.getLatitude()),Double.doubleToRawLongBits(tmpLocation.getLongitude()));
+ }
+ }
+ }
+
+
+
locationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 5000, 10, locationListener);
}
-
Log.d(TAG, "Service Created. Starting notification task...");
mNotifyTask.run();
}
private class MyLocationListener implements LocationListener {
-
@Override
public void onLocationChanged(Location loc) {
- String longitude = "Longitude: " + loc.getLongitude();
- Log.v(TAG, longitude);
- String latitude = "Latitude: " + loc.getLatitude();
- Log.v(TAG, latitude);
-
if(session.isGPSForNotificationsEnabled() && loc.getLongitude() != 0.0 && loc.getLatitude() != 0.0) {
Log.d(TAG, "Save GPS as new location...");
if(session.getLocation() == null || session.getLocation().latitude == 0.0 || session.getLocation().longitude == 0.0){
@@ -162,7 +189,7 @@ 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.URL_ENCRYPTED, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.REST_GET_INCIDENTS_FROMAREATIME, new Response.Listener() {
@Override
public void onResponse(String response) {
@@ -196,7 +223,6 @@ public class NotificationService extends Service {
@Override
protected Map getParams() {
Map params = new HashMap<>();
- params.put("tag", AppConfig.REST_GET_INCIDENTS_FROMAREATIME);
params.put("uid", user.get(SessionManager.KEY_UID));
params.put("token", user.get(SessionManager.TOKEN));
params.put("latitude", Double.toString(latitude));
diff --git a/app/src/main/java/org/deke/risk/riskahead/helper/TextValidator.java b/app/src/main/java/org/deke/risk/riskahead/helper/TextValidator.java
index 3eaf504..371e401 100644
--- a/app/src/main/java/org/deke/risk/riskahead/helper/TextValidator.java
+++ b/app/src/main/java/org/deke/risk/riskahead/helper/TextValidator.java
@@ -1,6 +1,7 @@
package org.deke.risk.riskahead.helper;
import android.content.Context;
+import android.support.design.widget.TextInputLayout;
import android.text.Editable;
import android.text.TextWatcher;
import android.widget.TextView;
@@ -14,12 +15,14 @@ import android.widget.TextView;
*/
public abstract class TextValidator implements TextWatcher {
private final TextView textView;
+ private final TextInputLayout textLayout;
- public TextValidator(TextView textView, Context context) {
+ public TextValidator(TextView textView, TextInputLayout textLayout, Context context) {
this.textView = textView;
+ this.textLayout = textLayout;
}
- public abstract void validate(TextView textView, String text);
+ public abstract void validate(TextView textView, TextInputLayout textLayout, String text);
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
@@ -33,6 +36,6 @@ public abstract class TextValidator implements TextWatcher {
@Override
public void afterTextChanged(Editable s) {
String text = textView.getText().toString();
- validate(textView, text);
+ validate(textView, textLayout, text);
}
}
diff --git a/app/src/main/java/org/deke/risk/riskahead/helper/ValidatedEditTextPreference.java b/app/src/main/java/org/deke/risk/riskahead/helper/ValidatedEditTextPreference.java
index e979ab9..d1b177c 100644
--- a/app/src/main/java/org/deke/risk/riskahead/helper/ValidatedEditTextPreference.java
+++ b/app/src/main/java/org/deke/risk/riskahead/helper/ValidatedEditTextPreference.java
@@ -5,6 +5,7 @@ import android.content.Context;
import android.os.Bundle;
import android.preference.EditTextPreference;
import android.app.AlertDialog;
+import android.support.design.widget.TextInputLayout;
import android.text.Editable;
import android.text.InputType;
import android.text.TextWatcher;
@@ -62,7 +63,9 @@ public class ValidatedEditTextPreference extends EditTextPreference
if((getEditText().getInputType() & InputType.TYPE_TEXT_VARIATION_EMAIL_ADDRESS) != 0){
if (!Patterns.EMAIL_ADDRESS.matcher(value).matches()) {
- getEditText().setError(getEditText().getContext().getResources().getString(R.string.error_email));
+ ((TextInputLayout) getEditText().getParent()).setError(getEditText().getContext().getResources().getString(R.string.error_email));
+
+ // getEditText().setError(getEditText().getContext().getResources().getString(R.string.error_email));
enable = false;
}
}else{
@@ -81,7 +84,6 @@ public class ValidatedEditTextPreference extends EditTextPreference
Dialog dlg = getDialog();
-
if(dlg instanceof AlertDialog){
AlertDialog alertDlg = (AlertDialog)dlg;
Button btn = alertDlg.getButton(AlertDialog.BUTTON_POSITIVE);
@@ -89,7 +91,6 @@ public class ValidatedEditTextPreference extends EditTextPreference
Log.d("SettingValidator", "btnSetEnable durchgeführt: "+btn.isEnabled());
}
-
}
@Override
diff --git a/app/src/main/res/layout/activity_login.xml b/app/src/main/res/layout/activity_login.xml
index 2a542b1..aebbbdd 100644
--- a/app/src/main/res/layout/activity_login.xml
+++ b/app/src/main/res/layout/activity_login.xml
@@ -1,138 +1,158 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
+ android:text="@string/lbl_login_title"
+ android:textSize="20sp" />
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+ android:layout_above="@+id/lay_social"
+ android:layout_centerHorizontal="true"
+ android:textColor="@color/bg_common"
+ android:text="@string/lbl_login_usesocialnet" />
-
+
+
+
+
+
+
+
+
+
-
-
-
-
+
diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml
deleted file mode 100644
index 99429a8..0000000
--- a/app/src/main/res/layout/activity_main.xml
+++ /dev/null
@@ -1,140 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/app/src/main/res/layout/activity_maps.xml b/app/src/main/res/layout/activity_maps.xml
index a44fe3d..a315f3b 100644
--- a/app/src/main/res/layout/activity_maps.xml
+++ b/app/src/main/res/layout/activity_maps.xml
@@ -8,17 +8,8 @@
android:layout_height="match_parent"
tools:context="org.deke.risk.riskahead.MapsActivity">
-
-
@@ -49,7 +40,15 @@
android:id="@+id/pb_map_progress"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:layout_alignParentLeft="true" />
+ android:layout_alignParentBottom="true" />
+
+
diff --git a/app/src/main/res/layout/activity_profile.xml b/app/src/main/res/layout/activity_profile.xml
index ae204f9..1709950 100644
--- a/app/src/main/res/layout/activity_profile.xml
+++ b/app/src/main/res/layout/activity_profile.xml
@@ -2,7 +2,7 @@
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/main_layout"
- android:background="@drawable/layout_bg_gradient"
+ android:background="@color/bg_report"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".ProfileActivity">
@@ -11,7 +11,7 @@
android:id="@+id/toolbar"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
- layout="@layout/layout_toolbar"
+ layout="@layout/layout_toolbar_col"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true" />
@@ -26,15 +26,6 @@
android:gravity="center"
android:orientation="vertical">
-
-
+ android:textSize="20sp" />
-
-
-
-
-
-
-
+ android:layout_height="match_parent"
+ android:layout_below="@+id/lbl_register_title"
+ android:paddingLeft="15dp"
+ android:paddingRight="15dp"
+ android:paddingBottom="20dp">
-
-
+ android:layout_width="match_parent"
+ android:layout_height="50dp"
+ android:layout_below="@id/input_layout_password"
+ android:layout_marginBottom="5dip"
+ android:layout_marginTop="20dip"
+ bootstrap:bootstrapText="@string/btn_start_register"
+ bootstrap:bootstrapBrand="primary"
+ bootstrap:roundedCorners="true" />
+
+ android:textColor="@color/bg_common"
+ android:text="@string/lbl_login_usesocialnet" />
-
+
-
+
-
+
-
+
+
+
+
diff --git a/app/src/main/res/layout/activity_report_wf.xml b/app/src/main/res/layout/activity_report_wf.xml
index a272e45..bc2d56b 100644
--- a/app/src/main/res/layout/activity_report_wf.xml
+++ b/app/src/main/res/layout/activity_report_wf.xml
@@ -5,12 +5,12 @@
android:id="@+id/main_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:background="@drawable/layout_bg_gradient"
+ android:background="@color/bg_report"
tools:context=".ReportWFActivity">
-
+
diff --git a/app/src/main/res/layout/activity_settings.xml b/app/src/main/res/layout/activity_settings.xml
index 1b5c669..025cecd 100644
--- a/app/src/main/res/layout/activity_settings.xml
+++ b/app/src/main/res/layout/activity_settings.xml
@@ -2,7 +2,7 @@
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/main_layout"
- android:background="@drawable/layout_bg_gradient"
+ android:background="@color/bg_report"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".SettingsActivity">
@@ -11,7 +11,7 @@
android:id="@+id/toolbar"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
- layout="@layout/layout_toolbar"
+ layout="@layout/layout_toolbar_col"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true" />
@@ -22,16 +22,6 @@
android:layout_gravity="center_horizontal"
android:layout_below="@id/toolbar">
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_start.xml b/app/src/main/res/layout/activity_start.xml
deleted file mode 100644
index d926afb..0000000
--- a/app/src/main/res/layout/activity_start.xml
+++ /dev/null
@@ -1,48 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/app/src/main/res/layout/activity_subscriptions.xml b/app/src/main/res/layout/activity_subscriptions.xml
index 12eb966..3d42a4e 100644
--- a/app/src/main/res/layout/activity_subscriptions.xml
+++ b/app/src/main/res/layout/activity_subscriptions.xml
@@ -2,7 +2,7 @@
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/main_layout"
- android:background="@drawable/layout_bg_gradient"
+ android:background="@color/bg_report"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".SubscriptionsActivity">
@@ -11,7 +11,7 @@
android:id="@+id/toolbar"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
- layout="@layout/layout_toolbar"
+ layout="@layout/layout_toolbar_col"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true" />
@@ -20,6 +20,7 @@
android:id="@+id/layoutMain"
android:layout_below="@+id/toolbar"
android:layout_margin="0dp"
+ android:gravity="center"
android:padding="5dp"
android:layout_width="match_parent"
android:layout_height="match_parent"
@@ -30,7 +31,6 @@
android:text="@string/lbl_subs_maintaining"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:gravity="center"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_margin="5dp"/>
@@ -47,6 +47,7 @@
android:text="@string/lbl_subs_helpus"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
+ android:gravity="center"
android:textAppearance="?android:attr/textAppearanceSmall"
android:layout_margin="5dp"
android:textColor="@color/text_light_grey"/>
diff --git a/app/src/main/res/layout/activity_view_report.xml b/app/src/main/res/layout/activity_view_report.xml
index 9dd0587..04a15c0 100644
--- a/app/src/main/res/layout/activity_view_report.xml
+++ b/app/src/main/res/layout/activity_view_report.xml
@@ -12,7 +12,7 @@
android:id="@+id/toolbar"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
- layout="@layout/layout_toolbar"
+ layout="@layout/layout_toolbar_col"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true" />
diff --git a/app/src/main/res/layout/fragment_facebook_button.xml b/app/src/main/res/layout/fragment_facebook_button.xml
index e40b5d7..4e18f41 100644
--- a/app/src/main/res/layout/fragment_facebook_button.xml
+++ b/app/src/main/res/layout/fragment_facebook_button.xml
@@ -7,7 +7,7 @@
+ android:layout_below="@+id/lbl_reportwf_1_question_2"/>
diff --git a/app/src/main/res/layout/fragment_twitter_button.xml b/app/src/main/res/layout/fragment_twitter_button.xml
index e6e4d96..f4ecf56 100644
--- a/app/src/main/res/layout/fragment_twitter_button.xml
+++ b/app/src/main/res/layout/fragment_twitter_button.xml
@@ -7,7 +7,7 @@
+
+
+
diff --git a/app/src/main/res/layout/layout_toolbar.xml b/app/src/main/res/layout/layout_toolbar_trans.xml
similarity index 51%
rename from app/src/main/res/layout/layout_toolbar.xml
rename to app/src/main/res/layout/layout_toolbar_trans.xml
index 4d3dc88..2ccfd83 100644
--- a/app/src/main/res/layout/layout_toolbar.xml
+++ b/app/src/main/res/layout/layout_toolbar_trans.xml
@@ -3,11 +3,8 @@
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
- android:background="?attr/colorPrimary"
- android:theme="@style/MyRiskAheadToolbar"
- app:popupTheme="@style/Theme.AppCompat.Light.NoActionBar"
- android:elevation="4dp"
xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:app="http://schemas.android.com/apk/res-auto" />
+ android:background="@color/translucent"
+ />
diff --git a/app/src/main/res/menu/menu_reportwf.xml b/app/src/main/res/menu/menu_reportwf.xml
index aed1ea6..0190e26 100644
--- a/app/src/main/res/menu/menu_reportwf.xml
+++ b/app/src/main/res/menu/menu_reportwf.xml
@@ -3,7 +3,7 @@
xmlns:tools="http://schemas.android.com/tools">
diff --git a/app/src/main/res/values-ar/strings.xml b/app/src/main/res/values-ar/strings.xml
index a4db020..0c7b419 100644
--- a/app/src/main/res/values-ar/strings.xml
+++ b/app/src/main/res/values-ar/strings.xml
@@ -246,70 +246,50 @@
غيِر اللغه
- - حادثه او وضع مهدد
- - عنف كلامي
- - بوادر لعنف جسدي كبير
- - عنف يهدد الحياه
- - كارثه طبيعيه
- - كارثه بشريه & بنيه تحتيه
+ - Threat
+ - Physical
+ - Life-Threatening
+ - Disaster
-
- - تزوير,سرقه,سطو
- - استعمال المخدرات بشكل مفرطك شرب الكحول
- - مظاهرات,اعمال شغب,حصار طريق
- - نقاط تفتيش ومعابر رقابه
- - فساد,ابتزاز
- - أجرام, اعمال ميليشيات وارهابيين
- - غيره …
+
+ - Robbery
+ - Drug related
+ - Strike/Riot
+ - Checkpoint/Blockade
+ - Corruption/Extorsion
-
- - تحرش جنسي
- - لغه مهينه او مهدده
- - استجواب,ضغط,ارغام
- - تحريض,دفع
- - غيره …
+
+ - Mugging
+ - Sexual Assault
+ - Physical Attack
+ - Fight
+ - Arrest/Capture
+ - Forced Labour
-
- - اعتداء جنسي
- - اعتداء جسدي بشكل عام
- - شجار او عراك
- - اعتقال او قبض
- - عمل مرغوم وبالاجبار
- - غيره …
+
+ - Rape
+ - Kidnapping/Hostage
+ - Shooting
+ - Bombing
+ - Murder
+ - Dead body
-
- - اغتصاب
- - تعذيب,خطف,احتجاز رهائن
- - اطلاق نار
- - تفجير او عمل انتحاري
- - قتل, اعدام علني
- - عرض جثث او اجزاء جثث
- - غيره …
-
-
-
- - درجات حراره قصوى
- - عاصفه,بركان,اعصار
- - فيضانات,تسونامي
- - زلزال, انهيارات ارضيه
- - نيران,دخان,انفجار بركاني
- - مجاعه,جفاف,طاعون حيواني
- - غيره …
-
-
-
- - تلوث هوائي
- - انقطاع التيار الكهربائي او حادث عام
- - انهيار المباني او دمار
- - حريق على نطاق واسع
- - كارثه كيميائيه او انسكاب نفط
- - تفشي مرض او وباء
- - فوضي او فوضى سياسيه
- - غيره …
+
+ - Heat Wave
+ - Cyclone/Tornado
+ - Flood
+ - Earthquake
+ - Wild Fire
+ - Volcano
+ - Tsunami
+ - Fire
+ - Chemical/Oil Spill
+ - Epidemic
+ - Chaos/Anarchy
diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml
index 57d1ec4..f25440d 100644
--- a/app/src/main/res/values-de/strings.xml
+++ b/app/src/main/res/values-de/strings.xml
@@ -6,7 +6,7 @@
Anmeldung bei RiskAhead
Passwort vergessen? Klicke hier
- Impressum und Datenschutz
+ Impressum und Datenschutz
Oder verwende folgende Netzwerke
Registrierung bei RiskAhead
@@ -239,71 +239,52 @@
RiskAhead für Android
Sprache
Ändere Sprache
+
- - Allgemeiner Vorfall/Situation
- - Mündliche Gewalt
- - Leichte / schwere körperliche Gewalt
+ - Vorfall
+ - Physische Bedrohung
- Lebensgefährliche Gewalt
- Naturkatastrophe
- - Menschl. Katastrophe & Infrastruktur
-
- - Diebstahl, Betrug, Einbruch
- - Drogenmissbrauch z.B. Getränk
- - Protest, Unruhe, Straßenblockade
- - Checkpoint, Kontrollen
- - Korruption, Erpressung
- - Einfluss Kriminalität, Milizen, Terror
- - Sonstiges …
+
+ - Robbery
+ - Drug related
+ - Strike/Riot
+ - Checkpoint/Blockade
+ - Corruption/Extorsion
-
- - Sexuelle Belästigung
- - Beleidigung, Drohung
- - Nötigung/Vernehmung
- - Aufhetzung
- - Sonstiges …
+
+ - Mugging
+ - Sexual Assault
+ - Physical Attack
+ - Fight
+ - Arrest/Capture
+ - Forced Labour
-
- - Sexueller Übergriff
- - Angriff auf Person allgemein
- - Schlägerei
- - Festnahme/Gefangennahme
- - Zwangsarbeit
- - Sonstiges …
+
+ - Rape
+ - Kidnapping/Hostage
+ - Shooting
+ - Bombing
+ - Murder
+ - Dead body
-
- - Vergewaltigung
- - Folter, Entführung, Geiselnahme
- - Schießerei
- - Explosion, Selbstmordattentat
- - Mord, Tötung, Hinrichtung
- - Leichenfund
- - Sonstiges …
-
-
-
- - Temperaturextrem
- - Wind, Sturm, Orkan, Tornado
- - Überschwemmung/-flutung, Tsunami
- - Erdbeben, Berghang Einsturz
- - Feuer, Rauch, Vulkanausbruch
- - Hungersnot, Tierplage
- - Sonstiges …
-
-
-
- - Smog Stadt
- - Stromausfall, Unfall
- - Zerstörung, Einsturzgefahr Gebäude
- - Brandkatastrophe
- - Chemiekatastrophe, Ölpest
- - Seuche, Krankheit
- - Chaos Bevölkerung, Anarchie
- - Sonstiges …
+
+ - Heat Wave
+ - Cyclone/Tornado
+ - Flood
+ - Earthquake
+ - Wild Fire
+ - Volcano
+ - Tsunami
+ - Fire
+ - Chemical/Oil Spill
+ - Epidemic
+ - Chaos/Anarchy
diff --git a/app/src/main/res/values-es/strings.xml b/app/src/main/res/values-es/strings.xml
index f23848b..9231638 100644
--- a/app/src/main/res/values-es/strings.xml
+++ b/app/src/main/res/values-es/strings.xml
@@ -246,70 +246,50 @@
Cambiar Idioma
- - Situación o Incidente Peligroso
- - Violencia Verbal
- - Violencia Física Ligera o Grave
- - Riesgo de Muerte por Violencia
- - Catástrofe Natural
- - Catástrofe Humana & Infraestructura
+ - Threat
+ - Physical
+ - Life-Threatening
+ - Disaster
-
- - Estafa, Robo o Asalto
- - Abuso de drogas y bebidas alteradas
- - Manifestación, Motín o Camino bloqueado
- - Punto de Control
- - Corrupción, Extorsión
- - Milicias, Terrorismo
- - Otros …
+
+ - Robbery
+ - Drug related
+ - Strike/Riot
+ - Checkpoint/Blockade
+ - Corruption/Extorsion
-
- - Acoso Sexual
- - Insulto, Amenaza
- - Interrogación/Coerción
- - Incitamiento
- - Otros …
+
+ - Mugging
+ - Sexual Assault
+ - Physical Attack
+ - Fight
+ - Arrest/Capture
+ - Forced Labour
-
- - Asalto Sexual
- - Ataque Físico en general
- - Riña, Pelea
- - Arresto, Captura
- - Trabajo Forzado
- - Otros …
+
+ - Rape
+ - Kidnapping/Hostage
+ - Shooting
+ - Bombing
+ - Murder
+ - Dead body
-
- - Violación
- - Tortura, Secuestro, Rehenes
- - Disparos
- - Bomba, Ataque Suicida
- - Homicidio, Asesinato, Ejecución Pública
- - Hallazgo de cádaveres
- - Otros …
-
-
-
- - Temperaturas Extremas
- - Tormenta, Huracán, Tornado
- - Inundación, Tsunami
- - Seísmo, Terremoto
- - Fuego, Humo, Erupción Volcánica
- - Hambruna, Sequía, Plagua Animal
- - Otros …
-
-
-
- - Polución Aérea
- - Fallida Energética o Accidente General
- - Derrumbamiento o Destrucción de Edificios
- - Incendio
- - Desastre Químico o Derrame de Petróleo
- - Enfermedad, Brote o Epidemia
- - Caos, Anarquía
- - Otros …
+
+ - Heat Wave
+ - Cyclone/Tornado
+ - Flood
+ - Earthquake
+ - Wild Fire
+ - Volcano
+ - Tsunami
+ - Fire
+ - Chemical/Oil Spill
+ - Epidemic
+ - Chaos/Anarchy
diff --git a/app/src/main/res/values-et/strings.xml b/app/src/main/res/values-et/strings.xml
index 5dddeec..e99bf7d 100644
--- a/app/src/main/res/values-et/strings.xml
+++ b/app/src/main/res/values-et/strings.xml
@@ -247,70 +247,50 @@
Muuda keelt
- - Ähvardav intsident või situatsioon
- - Verbaalne vägivald
- - Kerge kuni raske füüsiline vägivald
- - Eluohtlik vägivald
- - Looduskatastroof
- - Inimkatastroofid & infrastruktuur
+ - Threat
+ - Physical
+ - Life-Threatening
+ - Disaster
-
- - Pettus, Vargus, Rööv või Murdvargus
- - Narkomaania nt. uimastid
- - Meeleavaldus, mäss või tee blokaad
- - Kontrollpunktid, Kontrollid
- - Korruptsioon, väljapressimine
- - Kuritegevus, sõjaline või terroristlik tegevus
- - Muu …
+
+ - Robbery
+ - Drug related
+ - Strike/Riot
+ - Checkpoint/Blockade
+ - Corruption/Extorsion
-
- - Seksuaalne ahistamine
- - Solvav või ähvardav kõnepruuk
- - Ülekuulamine, Survestamine või Sundimine
- - Õhutus
- - Muu …
+
+ - Mugging
+ - Sexual Assault
+ - Physical Attack
+ - Fight
+ - Arrest/Capture
+ - Forced Labour
-
- - Seksuaalne rünnak
- - Füüsiline rünnak üldiselt
- - kaklus või lööming
- - Vahistamine või kinnipidamine
- - Sunnitöö
- - Muu …
+
+ - Rape
+ - Kidnapping/Hostage
+ - Shooting
+ - Bombing
+ - Murder
+ - Dead body
-
- - Vägistamine
- - Piinamine, inimrööv, pantvangi võtmine
- - Tulistamine
- - Pommi või suitsiidi rünnak
- - Mõrv,avalik hukkamine
- - Surnukeha või selle osade näitamine
- - Muu …
-
-
-
- - Äärmuslikud temperatuurid
- - Torm, orkaan, tornaado
- - Üleujutus, tsunami
- - Maavärin, maalihe
- - Tulekahju, suits, vulkaanipurse
- - Nälg, põud, loomakatk
- - Muu …
-
-
-
- - Õhusaaste
- - Voolukatkestus või üldine õnnetus
- - Hoonete varingud või häving
- - Laia leviulatusega tulekahju
- - Keemiline katastroof või õlileke
- - Haiguspuhang või epideemia
- - Kaos, Anarhia
- - Muu …
+
+ - Heat Wave
+ - Cyclone/Tornado
+ - Flood
+ - Earthquake
+ - Wild Fire
+ - Volcano
+ - Tsunami
+ - Fire
+ - Chemical/Oil Spill
+ - Epidemic
+ - Chaos/Anarchy
diff --git a/app/src/main/res/values-fi/strings.xml b/app/src/main/res/values-fi/strings.xml
index 76b3f7f..a5bcd1a 100644
--- a/app/src/main/res/values-fi/strings.xml
+++ b/app/src/main/res/values-fi/strings.xml
@@ -249,70 +249,50 @@
Vaihda kieltä
- - Uhkaava tapaus tai tilanne
- - Verbaalinen väkivalta
- - Kevyestä kovaan fyysistä väkivaltaa
- - Hengenvaarallista väkivaltaa
- - Luonnonkatastrofi
- - Ihmisvahingot & Infrastruktuuri
+ - Threat
+ - Physical
+ - Life-Threatening
+ - Disaster
-
- - Huijaus, Varkaus, Pahoinpitely tai Murtovarkaus
- - Huumeiden väärinkäyttö esim. Drinkin terästäminen
- - Mielenosoitus, Mellakka tai Tiesulku
- - Tarkastuspisteitä, Tarkastuksia
- - Korruptiota, Kiristystä
- - Rikos, Armeija - tai Terroristi-aktiviteettia
- - Muu …
+
+ - Robbery
+ - Drug related
+ - Strike/Riot
+ - Checkpoint/Blockade
+ - Corruption/Extorsion
-
- - Seksuaalinen Ahdistelu
- - Loukkaavaa tai Uhkaavaa Kielenkäyttöä
- - Kuulustelu, Painostus tai Pakottaminen
- - Yllyttäminen
- - Muu …
+
+ - Mugging
+ - Sexual Assault
+ - Physical Attack
+ - Fight
+ - Arrest/Capture
+ - Forced Labour
-
- - Seksuaalinen ahdistelu
- - Fyysinen väkivalta
- - Tappelu tai joukkotappelu
- - Pidätys tai sieppaus
- - Pakkotyö
- - Muu …
+
+ - Rape
+ - Kidnapping/Hostage
+ - Shooting
+ - Bombing
+ - Murder
+ - Dead body
-
- - Raiskaus
- - Kidutus, Kidnappaus, Panttivangin ottaminen
- - Ampuminen
- - Pommi tai Itsemurhahyökkäys
- - Murha, Julkinen Teloitus
- - Näkyvillä ruumis tai ruumiinosia
- - Muu …
-
-
-
- - Äärilämpötiloja
- - Myrsky, Hurrikaani, Tornado
- - Tulvimista, Tsunami
- - Maanjäristys, Maanvyöry
- - Tuli, Savu, Tulivuorenpurkaus
- - Nälänhätä, Kuivuus, Karjarutto
- - Muu …
-
-
-
- - Ilmansaaste
- - Sähkökatkos tai Onnettomuus
- - Romahtavia rakennuksia tai Tuhoutuminen
- - Laajalle levinnyt tulipalo
- - Kemiallinen onnettomuus tai Öljyvuoto
- - Taudin leviäminen tai Epidemia
- - Kaaos, Anarkia
- - Muu …
+
+ - Heat Wave
+ - Cyclone/Tornado
+ - Flood
+ - Earthquake
+ - Wild Fire
+ - Volcano
+ - Tsunami
+ - Fire
+ - Chemical/Oil Spill
+ - Epidemic
+ - Chaos/Anarchy
diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml
index d3c4a9f..a96ff10 100644
--- a/app/src/main/res/values-fr/strings.xml
+++ b/app/src/main/res/values-fr/strings.xml
@@ -244,70 +244,50 @@
Changer Langue
- - Incident ou situation menaçante
- - Violence verbale
- - Violence légère à lourde
- - Violence mortelle
- - Catastrophe naturelle
- - Catastrophe humaine & Infrastructure
+ - Threat
+ - Physical
+ - Life-Threatening
+ - Disaster
-
- - Fraude, vol, cambriolage, ???
- - prévention de la toxicomanie ou ????
- - Démonstration, émeute ou barrage routier
- - Point de contrôle, Contrôles
- - Corruption, Extortion
- - Crime, activités militaires ou terroristes
- - autre …
+
+ - Robbery
+ - Drug related
+ - Strike/Riot
+ - Checkpoint/Blockade
+ - Corruption/Extorsion
-
- - Harcèlement sexuel
- - Langage insultant ou menaçant
- - Interrogatoire, pression ou contrainte
- - Incitement
- - Autre …
+
+ - Mugging
+ - Sexual Assault
+ - Physical Attack
+ - Fight
+ - Arrest/Capture
+ - Forced Labour
-
- - agression sexuelle
- - attaque physique généralisée
- - combat ou rixe
- - Arrestation ou capture
- - travail forcé
- - autre …
+
+ - Rape
+ - Kidnapping/Hostage
+ - Shooting
+ - Bombing
+ - Murder
+ - Dead body
-
- - Viol
- - Torture, Kidnapping, prise d\'otage
- - Fusillade
- - Bombe ou attentat
- - Meurtre, exécution publique
- - Affichage de cadavre ou de parties de cadavre
- - autre …
-
-
-
- - Températures extrêmes
- - Tempête, ouragan, tornade
- - Innondation, Tsunami
- - Tremblement de terre, glissement de terrain
- - Feu, fumée, irruption volcanique
- - Famine, sécheresse, peste animal
- - autre …
-
-
-
- - Pollution de l\'air
- - Panne de courant ou accident général
- - Effondrement de bâtiment ou destruction
- - Feu généralisé
- - Catastrophe chimique ou déversement de pétrole
- - Maladie déclenchement ou épidémie
- - Chaos, Anarchie
- - autre …
+
+ - Heat Wave
+ - Cyclone/Tornado
+ - Flood
+ - Earthquake
+ - Wild Fire
+ - Volcano
+ - Tsunami
+ - Fire
+ - Chemical/Oil Spill
+ - Epidemic
+ - Chaos/Anarchy
diff --git a/app/src/main/res/values-lv/strings.xml b/app/src/main/res/values-lv/strings.xml
index a5663ab..b331089 100644
--- a/app/src/main/res/values-lv/strings.xml
+++ b/app/src/main/res/values-lv/strings.xml
@@ -247,70 +247,50 @@
Mainīt valodu
- - Bīstams incidents vai stāvoklis
- - Verbālā vardarbība
- - Viegla līdz smaga fiziskā vardarbība
- - Dzīvībai bīstama vardarbība
- - Dabas katastrofa
- - Cilvēku izraisīta katastrofa & Infrastruktūra
+ - Threat
+ - Physical
+ - Life-Threatening
+ - Disaster
-
- - Krāpšana, zādzība, laupīšana vai ielaušanās
- - Sazāļošana, piem., dzēriena sazāļošana
- - Demonstrācija, dumpis vai ceļu blokāde
- - Kontrolpunkti, kontroles
- - Korupcija, izspiešana
- - Noziegums, zemessardzes vai terositu darbības
- - Cits …
+
+ - Robbery
+ - Drug related
+ - Strike/Riot
+ - Checkpoint/Blockade
+ - Corruption/Extorsion
-
- - Seksuāla uzmākšanās
- - Aizskaroša vai apdraudoša valoda
- - Pratināšana, piespiešana vai apspiešana
- - Kūdīšana
- - Cits …
+
+ - Mugging
+ - Sexual Assault
+ - Physical Attack
+ - Fight
+ - Arrest/Capture
+ - Forced Labour
-
- - Seksuāls uzbrukums
- - Fizisks uzbrukums
- - Cīņa vai tracis
- - Arests vai sagūstīšana
- - Piespiedu darbs
- - Cits …
+
+ - Rape
+ - Kidnapping/Hostage
+ - Shooting
+ - Bombing
+ - Murder
+ - Dead body
-
- - Izvarošana
- - Spīdzināšana, nolaupīšana, ķīlnieku sagūstīšana
- - Apšaude
- - Spridzekļu vai pašnāvnieku uzbrukums
- - Slepkavība, publisks nāvessods
- - Līķu vai ķermeņa daļu izstādīšana
- - Cits …
-
-
-
- - Ekstremālas gaisa temperatūras
- - Vētra, orkāns, viesuļvētra
- - Plūdi, cunami
- - Zemestrīce, nogruvums
- - Ugunsgrēks, dūmi, vulkāna izvirdums
- - Bads, sausums, dzīvnieku mēris
- - Cits …
-
-
-
- - Gaisa piesārņojums
- - Enerģijas pārtraukums vai nelaimes gadījums
- - Ēkas sabrukšana vai izpostīšana
- - Plašs ugunsgrēks
- - Ķīmiskā katastrofa vai naftas noplūde
- - Slimības uzliesmojums vai epidēmija
- - Haoss, anarhija
- - Cits …
+
+ - Heat Wave
+ - Cyclone/Tornado
+ - Flood
+ - Earthquake
+ - Wild Fire
+ - Volcano
+ - Tsunami
+ - Fire
+ - Chemical/Oil Spill
+ - Epidemic
+ - Chaos/Anarchy
diff --git a/app/src/main/res/values-mn/strings.xml b/app/src/main/res/values-mn/strings.xml
index f197ebe..6a804d5 100644
--- a/app/src/main/res/values-mn/strings.xml
+++ b/app/src/main/res/values-mn/strings.xml
@@ -249,72 +249,50 @@
Хэл солих
- - Аюултай нөхцөл байдал
-
- - Сэтгэл зүйн хүчирхийлэл
- - Хөнгөнөөс хүнд хүртэлх бие махбодийн хүчирхийлэл
- - Амь насанд аюултай хүчирхийлэл
- - Байгалийн гамшиг
- - Хүний буруутай үйлдлээс үүдэлтэй гамшиг & Дэд бүтэц
+ - Threat
+ - Physical
+ - Life-Threatening
+ - Disaster
-
- - залилан, хулгай, халдлага, орон байрны хулгай
- - Хар тамхи
- - Жагсаал цуглаан, үймээн, замд саад учруулах
- - Шалган нэвтрүүлэх цэг, Хяналт
- - Авилга, Сүрдүүлэг
- - Гэмт хэрэг, Цэргийн эсвэл тероррист үйл ажиллагаа
- - Бусад …
+
+ - Robbery
+ - Drug related
+ - Strike/Riot
+ - Checkpoint/Blockade
+ - Corruption/Extorsion
-
- - Бэлгийн дарамт
- - Доромжлох эсвэл хэл ярианд занал хийх
- - Байцаах, Дарамт буюу албадлага
- - Турхиралт
- - Бусад …
+
+ - Mugging
+ - Sexual Assault
+ - Physical Attack
+ - Fight
+ - Arrest/Capture
+ - Forced Labour
-
- - Бэлгийн дарамт үзүүлэхээр завдах
- - Бие мах бодийн дайралт
- - Зодоон
- - Баривчилгаа
- - Албадан хөдөлмөрлүүлэх
- - Бусад…
+
+ - Rape
+ - Kidnapping/Hostage
+ - Shooting
+ - Bombing
+ - Murder
+ - Dead body
-
- - Хүчингийн хэрэг
- - Эрүү шүүлт, хүн хулгайлах, барьцаалах
- - Буудалцах
- - Тэсрэх бөмбөг буюу амиа хорлох довтолгоо
- - Аллага, цаазаар авах
- - Цогцсын хэсэг
- - Бусад …
-
-
-
- - Хэт их температур
- - Шуурга, хар салхи
- - Үер, цунами
- - Газар хөдлөлт, хөрсний нуралт
- - Гал, утаа, галт уулын дэлбэрэлт
- - Өлсгөлөн, ган, тарваган тахал
- - Бусад …
-
-
-
- - Агаарын бохирдол
- - Цахилгаан тасрах буюу ерөнхий осол
- - Барилгын нуралт буюу устгал
- - Өргөн хүрээтэй гал түймэр
-
- - Химийн осол буюу газрын тос алдагдах
- - Халдварт өвчин гарах буюу тархах
- - Эмх замбараагүй байдал
- - Бусад …
+
+ - Heat Wave
+ - Cyclone/Tornado
+ - Flood
+ - Earthquake
+ - Wild Fire
+ - Volcano
+ - Tsunami
+ - Fire
+ - Chemical/Oil Spill
+ - Epidemic
+ - Chaos/Anarchy
diff --git a/app/src/main/res/values-nl/strings.xml b/app/src/main/res/values-nl/strings.xml
index fadfe9a..1a0e341 100644
--- a/app/src/main/res/values-nl/strings.xml
+++ b/app/src/main/res/values-nl/strings.xml
@@ -247,70 +247,50 @@
Verander Taal
- - Een dreigend Incident of Situatie
- - Verbaal geweld
- - Licht tot Zwaar Lichamelijk Geweld
- - Levensbedreigend Geweld
- - Natuurramp
- - Menselijke Rampen & Infrastructuur
+ - Threat
+ - Physical
+ - Life-Threatening
+ - Disaster
-
- - Oplichting, Diefstal, Beroving of Inbraak
- - Drugs Misbruik bijv. Drugs in drankje
- - Demonstratie, Rellen of Wegversperring
- - Controlepost, Controle
- - Corruptie, Afpersing
- - Criminaliteit, Militie or Terrorist Activiteiten
- - Anders …
+
+ - Robbery
+ - Drug related
+ - Strike/Riot
+ - Checkpoint/Blockade
+ - Corruption/Extorsion
-
- - Sexuele Overlast
- - Beledigend of dreigende taal
- - Ondervraging, onder druk zetten of dwang
- - Aansporing
- - Anders …
+
+ - Mugging
+ - Sexual Assault
+ - Physical Attack
+ - Fight
+ - Arrest/Capture
+ - Forced Labour
-
- - Sexuele Aanval
- - Fysieke Aanval in het algemeen
- - Een Gevecht of vechtpartij
- - Arrestatie of Gevangenneming
- - Gedwongen Arbeid
- - Anders …
+
+ - Rape
+ - Kidnapping/Hostage
+ - Shooting
+ - Bombing
+ - Murder
+ - Dead body
-
- - Verkrachting
- - Marteling, ontvoering, gijzeling
- - Beschieting
- - Bom of Zelfmoord Aanval
- - Moord, Publieke Executie
- - Tentoonstelling van lijk of lijkdelen
- - Anders …
-
-
-
- - Extreme Temperaturen
- - Storm, Orkaan, Tornado
- - Overstroming, Tsunami
- - Aardbeving, Aardverschuiving
- - Brand, Rook, Vulkaanuitbarsting
- - Hongersnood, Droogte, Dieren plaag
- - Anders …
-
-
-
- - Luchtvervuiling
- - Stroomstoring of Algemeen Ongeval
- - Instortende of Slopen Gebouwen
- - Wijdverspreide brand
- - Chemische of olieramp
- - Ziekte-uitbraak of epidemie
- - Chaos, anarchie
- - Anders …
+
+ - Heat Wave
+ - Cyclone/Tornado
+ - Flood
+ - Earthquake
+ - Wild Fire
+ - Volcano
+ - Tsunami
+ - Fire
+ - Chemical/Oil Spill
+ - Epidemic
+ - Chaos/Anarchy
diff --git a/app/src/main/res/values-pl/strings.xml b/app/src/main/res/values-pl/strings.xml
index 8eb3b33..2612b7c 100644
--- a/app/src/main/res/values-pl/strings.xml
+++ b/app/src/main/res/values-pl/strings.xml
@@ -247,70 +247,50 @@
Zmień język
- - Niebezpieczne zdarzenie lub sytuacja
- - Przemoc słowna
- - Lekka lub poważna przemoc fizyczna
- - Przemoc zagrażająca życiu
- - Klęska żywiołowa
- - Zagrożenie wywołane przez ludzi & Infrastruktura
+ - Threat
+ - Physical
+ - Life-Threatening
+ - Disaster
-
- - Oszustwo, kradzież, napad lub włamanie
- - Narkotyki, np. podawane w drinkach
- - Demonstracje lub blokady drogowe
- - Rewizje, kontrole
- - Korupcja, wymuszenia
- - Przestępcy, terroryści, bojówki
- - Inne …
+
+ - Robbery
+ - Drug related
+ - Strike/Riot
+ - Checkpoint/Blockade
+ - Corruption/Extorsion
-
- - Sexual Harassment
- - Insulting or Threatening Language
- - Interrogation, Pressuring or Coercing
- - Incitement
- - Other …
+
+ - Mugging
+ - Sexual Assault
+ - Physical Attack
+ - Fight
+ - Arrest/Capture
+ - Forced Labour
-
- - Molestowanie
- - Ogólne ataki fizyczne
- - Bójka
- - Aresztowanie lub schwytanie
- - Praca przymusowa
- - Inne …
+
+ - Rape
+ - Kidnapping/Hostage
+ - Shooting
+ - Bombing
+ - Murder
+ - Dead body
-
- - Gwałt
- - Torturowanie, porwanie, zakładnicy
- - Strzelanina
- - Atak bombowy lub samobójczy
- - Morderstwo, publiczna egzekucja
- - Pokazywanie martwych ciał
- - Inne …
-
-
-
- - Skrajne temperatury
- - Burza, huragan, tornado
- - Powódź, tsunami
- - Trzęsienie ziemi, osunięcie ziemi
- - Ogień, dym, erupcja wulkanu
- - Głód, susza, zaraza zwierzęca
- - Inne …
-
-
-
- - Zanieczyszczenie powietrza
- - Brak energii lub ogólny wypadek
- - Zawalenie lub zniszczenie budynku
- - Rozległy pożar
- - Katastrofa chemiczna lub wyciek ropy
- - Epidemia
- - Chaos, anarchia
- - Inne …
+
+ - Heat Wave
+ - Cyclone/Tornado
+ - Flood
+ - Earthquake
+ - Wild Fire
+ - Volcano
+ - Tsunami
+ - Fire
+ - Chemical/Oil Spill
+ - Epidemic
+ - Chaos/Anarchy
diff --git a/app/src/main/res/values-pt/strings.xml b/app/src/main/res/values-pt/strings.xml
index 53d0448..aac0c53 100644
--- a/app/src/main/res/values-pt/strings.xml
+++ b/app/src/main/res/values-pt/strings.xml
@@ -261,70 +261,50 @@ Não foi possível recuperar as configurações do perfil
- - Um incidente ou situação de ameaça
- - Violência Verbal
- - Violência Física
- - Ameaça de morte
- - Disastre natural
- - Disastre humano & Infraestrutura
+ - Threat
+ - Physical
+ - Life-Threatening
+ - Disaster
-
- - Fraude, furto, roubo ou agressão
- - Abuso de Drogas bebida
- - Demonstração, motim, manifestação ou bloqueio rodoviário
- - Postos de controle, Controles
- - Corrupção, Extorção
- - Crime, Milicia ou atividades terroristas
- - Outro…
+
+ - Robbery
+ - Drug related
+ - Strike/Riot
+ - Checkpoint/Blockade
+ - Corruption/Extorsion
-
- - Abuso Sexual
- - Linguagem insultuosa e ameaçando
- - Interrogatório, pressionar ou coagir
- - Inciamento
- - Outro …
+
+ - Mugging
+ - Sexual Assault
+ - Physical Attack
+ - Fight
+ - Arrest/Capture
+ - Forced Labour
-
- - Agressão sexual
- - Ataque fisico em geral
- - Uma briga, Luta
- - Prender ou capturar
- - Trabalho Forçado
- - Outro …
+
+ - Rape
+ - Kidnapping/Hostage
+ - Shooting
+ - Bombing
+ - Murder
+ - Dead body
-
- - Estrupo
- - Tortura, Sequestro, Refens
- - Tiroteio
- - Ataque suicida, Bombas
- - Execução Publica, assassinato
- - Exibição de corpos
- - Outros …
-
-
-
- - Temperaturas extremas
- - Tempestade, Furacão, Tornado
- - Inundação, Tsunami
- - Terremoto, Deslizamento
- - Fogo,Fumaça, Erupção Vulcanica
- - Fome, seca, peste animal
- - Outro …
-
-
-
- - Poluição do Ar
- - Falha de energia ou General Accident
- - Edifícios em colapso ou destruição
- - Fogo generalizado
- - Derramento de oléo ou desastre químico
- - Surto ou epidemia da doença
- - Caos, anarquia
- - Outro …
+
+ - Heat Wave
+ - Cyclone/Tornado
+ - Flood
+ - Earthquake
+ - Wild Fire
+ - Volcano
+ - Tsunami
+ - Fire
+ - Chemical/Oil Spill
+ - Epidemic
+ - Chaos/Anarchy
diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml
index 67e6abc..1b49cae 100644
--- a/app/src/main/res/values-ru/strings.xml
+++ b/app/src/main/res/values-ru/strings.xml
@@ -245,70 +245,50 @@
изменить язык
- - Угрожающее происшествие или ситуация
- - Словесная перепалка
- - Виды физического насилия
- - Угроза для жизни
- - Природная катастрофа
- - Техногенная катастрофа&
+ - Threat
+ - Physical
+ - Life-Threatening
+ - Disaster
-
- - кража,грабеж,воровство
- - злоупотребление наркотиками
- - демонстрации,бунты
- - контрольные пункты
- - коррупция или вымогательство
- - криминал или активность террористов
- - другое …
+
+ - Robbery
+ - Drug related
+ - Strike/Riot
+ - Checkpoint/Blockade
+ - Corruption/Extorsion
-
- - сексуальное насилие
- - оскорбление или словесная угроза
- - оказание давление или принуждение
- - подстрекательство
- - другое …
+
+ - Mugging
+ - Sexual Assault
+ - Physical Attack
+ - Fight
+ - Arrest/Capture
+ - Forced Labour
-
- - сексуальное насилие
- - физическое нападение
- - драка или ссора
- - арест или захват заложников
- - принудительный труд
- - другое …
+
+ - Rape
+ - Kidnapping/Hostage
+ - Shooting
+ - Bombing
+ - Murder
+ - Dead body
-
- - изнасилование
- - пытка,похищение,захват заложников
- - стрельба
- - взрыв или атака смертника
- - убийство, публичная казнь
- - труп или части тела
- - другое …
-
-
-
- - экстремальная температура
- - шторм,буря,торнадо
- - затопление или цунами
- - землетрясение
- - огонь,дым,извержение вулкана
- - голод,засуха
- - другое …
-
-
-
- - загрязнение воздуха
- - перебои с электричеством
- - разрушение зданий
- - пожар
- - химическая катастрофа
- - вспышка заболевания или эпидемия
- - хаос и анархия
- - другое …
+
+ - Heat Wave
+ - Cyclone/Tornado
+ - Flood
+ - Earthquake
+ - Wild Fire
+ - Volcano
+ - Tsunami
+ - Fire
+ - Chemical/Oil Spill
+ - Epidemic
+ - Chaos/Anarchy
diff --git a/app/src/main/res/values-tr/strings.xml b/app/src/main/res/values-tr/strings.xml
index 66cc34e..9cec85a 100644
--- a/app/src/main/res/values-tr/strings.xml
+++ b/app/src/main/res/values-tr/strings.xml
@@ -247,70 +247,50 @@
Dili değiştir
- - Tehdit edici olay ya da durum
- - Sözlü Şiddet
- - Hafif-Ağır Fiziksel Şiddet
- - Hayatı Tehdit Eden Şiddet
- - Doğal Felaket
- - İnsani Felaketler & Altyapı
+ - Threat
+ - Physical
+ - Life-Threatening
+ - Disaster
-
- - Sahtecilik, Hırsızlık ya da Saldırı
- - Madde Bağımlılığı, örn. alkol
- - Gösteri, Ayaklanma ya da Yol Kapama
- - Kontrol noktası, Kontroller
- - Yolsuzluk, Haraca Bağlama
- - Cürüm, Milis ya da Terör Faaliyetleri
- - Diğer …
+
+ - Robbery
+ - Drug related
+ - Strike/Riot
+ - Checkpoint/Blockade
+ - Corruption/Extorsion
-
- - Cinsel Taciz
- - Hakaret ya da Tehditvari Dile Başvurma
- - Sorgulama, Baskı ya da Zorlama
- - Tahrik
- - Diğer …
+
+ - Mugging
+ - Sexual Assault
+ - Physical Attack
+ - Fight
+ - Arrest/Capture
+ - Forced Labour
-
- - Cinsel Saldırı
- - Fiziksel Saldırı
- - Kavga ya da Arbede
- - Tutuklama ya da Alıkoyma
- - Zorunlu Çalışma
- - Diğer …
+
+ - Rape
+ - Kidnapping/Hostage
+ - Shooting
+ - Bombing
+ - Murder
+ - Dead body
-
- - Tecavüz
- - İşkence, Adam Kaçırma, Rehine Alma
- - Ateş Açma
- - Bomba ya da İntihar Saldırısı
- - Cinayet, İnfaz
- - CCesedin ya da ceset parçalarının gösterilmesi
- - Diğer …
-
-
-
- - Aşırı Sıcaklık
- - Fırtına, Kasırga, Hortum
- - Sel, Tsunami
- - Deprem, Toprak Kayması
- - Yangın, Duman, Volkanik Patlama
- - Açlık, Kıtlık, Hayvan Vebası
- - Başka …
-
-
-
- - Hava kirliliği
- - Güç kesintisi ya da kaza
- - Bina çökmesi ya da yıkımı
- - Geniş alan yayılmış yangın
- - Kimyasal felaket ya da petrol sızıntısı
- - Felaket başlangıcı ya da epidemik
- - Kaos, Anarşi
- - Diğer …
+
+ - Heat Wave
+ - Cyclone/Tornado
+ - Flood
+ - Earthquake
+ - Wild Fire
+ - Volcano
+ - Tsunami
+ - Fire
+ - Chemical/Oil Spill
+ - Epidemic
+ - Chaos/Anarchy
diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml
index 01ddde0..0e27315 100644
--- a/app/src/main/res/values/colors.xml
+++ b/app/src/main/res/values/colors.xml
@@ -1,8 +1,8 @@
- #c7c7c7
- #2e3237
-
+ #ffffff
+ #ffffff
+ #f5f5f5
#1175b7
@@ -11,19 +11,21 @@
#0461a8
#333333
- #fdfdfd
+ #000000
#aa4b4b4b
#000000
#f5f5f5
+ #609e9e9e
#222222
- #999999
- #afafaf
+ #5b5b5b
+ #181818
#3b4148
- #8c9094
+ #5b5b5b
#1175b7
+
\ No newline at end of file
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index e3ff6c1..a8bfb8d 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -6,12 +6,12 @@
Login
Register
- Log-in to RiskAhead
+ Log in
Forgot your password? Click here
Terms of Service and Privacy Policy
Or use following social networks to sign in
- Register to RiskAhead
+ Register
Username
E-Mail
Password
diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml
index 7f59f30..ea368a2 100644
--- a/app/src/main/res/values/styles.xml
+++ b/app/src/main/res/values/styles.xml
@@ -8,48 +8,28 @@
-
+
+
+
diff --git a/app/src/main/res/xml/searchable.xml b/app/src/main/res/xml/searchable.xml
index 3c4f7b4..cb54e8e 100644
--- a/app/src/main/res/xml/searchable.xml
+++ b/app/src/main/res/xml/searchable.xml
@@ -3,10 +3,8 @@
android:label="@string/app_name"
android:hint="@string/search_hint"
android:searchSettingsDescription="@string/search_settings"
-
android:searchSuggestAuthority="org.deke.risk.riskahead.helper.PlaceProvider"
android:searchSuggestIntentAction="android.intent.action.VIEW"
android:searchSuggestSelection=" ?"
android:searchSuggestThreshold="2" >
-
\ No newline at end of file