diff --git a/app/app-release.apk b/app/app-release.apk
index 04c13b3..551eb6d 100644
Binary files a/app/app-release.apk and b/app/app-release.apk differ
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index acc3f37..ac3a5a2 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -120,6 +120,9 @@
+
+
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 fcc3e63..cdaabf3 100644
--- a/app/src/main/java/org/deke/risk/riskahead/LoginActivity.java
+++ b/app/src/main/java/org/deke/risk/riskahead/LoginActivity.java
@@ -48,6 +48,7 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
private TextView input_email;
private TextView input_username;
private TextView input_password;
+ private TextView btn_requestPW;
private ProgressDialog pDialog;
private SessionManager session;
@@ -56,51 +57,94 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
+ session = new SessionManager(getApplicationContext());
+
+ pDialog = new ProgressDialog(this);
+ pDialog.setMessage("Sending data...");
+ pDialog.setCancelable(false);
+
Intent intent = getIntent();
msg_intent = intent.getStringExtra(LoginActivity.EXTRA_MESSAGE);
- pDialog = new ProgressDialog(this);
- pDialog.setCancelable(false);
-
- session = new SessionManager(getApplicationContext());
-
if(msg_intent.equals("login")){
- setContentView(R.layout.activity_login);
+ initLoginView();
}else if(msg_intent.equals("register")){
- setContentView(R.layout.activity_register);
- input_username = (TextView) findViewById(R.id.input_register_name);
-
- input_username.addTextChangedListener(new TextValidator(input_username,getApplicationContext()) {
- @Override
- public void validate(TextView textView, String text) {
- if (text.length() < 5) {
- textView.setError(getString(R.string.error_anytext));
- }
- }
- });
+ initRegisterView();
}
+ initSocialLoginButtons();
+ initMyLoginButton();
+ }
+
+ private void initLoginView() {
+ setContentView(R.layout.activity_login);
+
input_email = (TextView) findViewById(R.id.input_register_email);
input_password = (TextView) findViewById(R.id.input_register_password);
+ btn_requestPW = (TextView) findViewById(R.id.lbl_login_resendPW);
- input_email.addTextChangedListener(new TextValidator(input_email,getApplicationContext()) {
+ input_email.addTextChangedListener(new TextValidator(input_email, getApplicationContext()) {
@Override
public void validate(TextView textView, String text) {
- if(!Patterns.EMAIL_ADDRESS.matcher(text).matches()){
+ if (!Patterns.EMAIL_ADDRESS.matcher(text).matches()) {
textView.setError(getString(R.string.error_email));
}
}
});
- input_password.addTextChangedListener(new TextValidator(input_password,getApplicationContext()) {
+ input_password.addTextChangedListener(new TextValidator(input_password, getApplicationContext()) {
@Override
public void validate(TextView textView, String text) {
- if(text.length() < 5) {
+ if (text.length() < 5) {
textView.setError(getString(R.string.error_password));
}
}
});
+ btn_requestPW.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ onRequestNewPasswordClick(v);
+ }
+ });
+ }
+
+ private void initRegisterView() {
+ setContentView(R.layout.activity_register);
+
+ input_username = (TextView) findViewById(R.id.input_register_name);
+ input_email = (TextView) findViewById(R.id.input_register_email);
+ input_password = (TextView) findViewById(R.id.input_register_password);
+
+ input_username.addTextChangedListener(new TextValidator(input_username,getApplicationContext()) {
+ @Override
+ public void validate(TextView textView, String text) {
+ if (text.length() < 5) {
+ textView.setError(getString(R.string.error_anytext));
+ }
+ }
+ });
+
+ input_email.addTextChangedListener(new TextValidator(input_email, getApplicationContext()) {
+ @Override
+ public void validate(TextView textView, String text) {
+ if (!Patterns.EMAIL_ADDRESS.matcher(text).matches()) {
+ textView.setError(getString(R.string.error_email));
+ }
+ }
+ });
+
+ input_password.addTextChangedListener(new TextValidator(input_password, getApplicationContext()) {
+ @Override
+ public void validate(TextView textView, String text) {
+ if (text.length() < 5) {
+ textView.setError(getString(R.string.error_password));
+ }
+ }
+ });
+ }
+
+ private void initSocialLoginButtons() {
FragmentManager fragmentManager = getSupportFragmentManager();
FacebookButtonFragment fragmentFB = new FacebookButtonFragment();
GooglePlusButtonFragment fragmentGP = new GooglePlusButtonFragment();
@@ -108,11 +152,9 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
FragmentTransaction transaction = fragmentManager.beginTransaction();
transaction.add(R.id.frag_login_btnGP, fragmentGP);
transaction.commit();
-
- initMySigninButton();
}
- private void initMySigninButton() {
+ private void initMyLoginButton() {
btn_login = (Button) findViewById(R.id.btn_register);
btn_login.setOnClickListener(new View.OnClickListener() {
@Override
@@ -126,7 +168,7 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
showMessage(getString(R.string.error_validation));
} else {
showDialog();
- checkLogin(email, password);
+ performLogin(email, password);
}
} else if (msg_intent.equals("register")) {
String name = input_username.getText().toString();
@@ -134,7 +176,7 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
showMessage(getString(R.string.error_validation));
} else {
showDialog();
- registerUser(name, email, password);
+ performRegistration(name, email, password);
}
}
}
@@ -142,52 +184,16 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
});
}
- @Override
- public boolean onCreateOptionsMenu(Menu menu) {
- getMenuInflater().inflate(R.menu.menu_common, menu);
- return true;
+ private void performLogin(final String email, final String password) {
+ String tag_string_req = "req_login";
+ StringRequest strReq = getStringRequestLogin(email, password);
+ AppController.getInstance().addToRequestQueue(strReq, tag_string_req);
}
- @Override
- public boolean onOptionsItemSelected(MenuItem item) {
- int id = item.getItemId();
-
- if((id == R.id.menu_action_exit)){
- Intent intent = new Intent(Intent.ACTION_MAIN);
- intent.addCategory(Intent.CATEGORY_HOME);
- intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
- startActivity(intent);
- }else if((id == R.id.menu_action_about)){
- Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("https://www.riskahead.net/about/"));
- startActivity(browserIntent);
- }else if((id == R.id.menu_action_help)){
- Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("https://www.riskahead.net/contact/"));
- startActivity(browserIntent);
- }
-
- return super.onOptionsItemSelected(item);
- }
-
- @Override
- protected void onActivityResult(int requestCode, int resultCode, Intent data) {
- super.onActivityResult(requestCode, resultCode, data);
-
- if (requestCode == GooglePlusButtonFragment.RC_SIGN_IN) {
- GooglePlusButtonFragment fragment = (GooglePlusButtonFragment) getSupportFragmentManager().findFragmentById(R.id.frag_login_btnGP);
- fragment.onActivityResult(requestCode, resultCode, data);
- }
-
- TwitterButtonFragment twitter_fragment = (TwitterButtonFragment) getSupportFragmentManager().findFragmentById(R.id.frag_login_btnTW);
- if (twitter_fragment != null) {
- twitter_fragment.onActivityResult(requestCode, resultCode, data);
- }
-
- FacebookButtonFragment facebook_fragment = (FacebookButtonFragment) getSupportFragmentManager().findFragmentById(R.id.frag_login_btnFB);
- if (facebook_fragment != null) {
- facebook_fragment.onActivityResult(requestCode, resultCode, data);
- }
-
- Log.d("Test","GOT ACTIVITY RESULT!!!:"+requestCode+" : "+resultCode);
+ private void performRegistration(final String username, final String email, final String password) {
+ String tag_string_req = "req_register";
+ StringRequest strReq = getStringRequestRegisterUser(username, email, password);
+ AppController.getInstance().addToRequestQueue(strReq, tag_string_req);
}
public void handleSocialMediaLogin(final String key, final String providerType, final String username, final String email){
@@ -207,19 +213,7 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
AppController.getInstance().addToRequestQueue(strReq, tag_string_req);
}
- private void checkLogin(final String email, final String password) {
- String tag_string_req = "req_login";
- StringRequest strReq = getStringRequestLogin(email, password);
- AppController.getInstance().addToRequestQueue(strReq, tag_string_req);
- }
-
- private void registerUser(final String username, final String email,final String password) {
- String tag_string_req = "req_register";
- StringRequest strReq = getStringRequestRegisterUser(username, email, password);
- AppController.getInstance().addToRequestQueue(strReq, tag_string_req);
- }
-
- public void onClick(View view){
+ public void onRequestNewPasswordClick(View view){
if(input_email.getText() != null && input_email.getText().toString().isEmpty()){
showMessage(getString(R.string.message_enteremail));
return;
@@ -230,11 +224,7 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
.setMessage(getString(R.string.alert_passwordreset_text))
.setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
- String tag_string_req = "requestpwreset";
- StringRequest strReq = getStringRequestResetPW(input_email.getText().toString());
- AppController.getInstance().addToRequestQueue(strReq, tag_string_req);
-
- showMessage(getString(R.string.alert_passwordreset_confirmation));
+ performRequestNewPassword();
}
})
.setNegativeButton(android.R.string.no, new DialogInterface.OnClickListener() {
@@ -246,8 +236,14 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
.show();
}
+ private void performRequestNewPassword() {
+ String tag_string_req = "requestpwreset";
+ StringRequest strReq = getStringRequestResetPW(input_email.getText().toString());
+ AppController.getInstance().addToRequestQueue(strReq, tag_string_req);
+ }
+
private StringRequest getStringRequestSocialMediaLogin(final String key, final String providerType, final String username, final String email) {
- return new StringRequest(Method.POST,AppConfig.URL_REGISTER, new Response.Listener() {
+ return new StringRequest(Method.POST,AppConfig.URL_ENCRYPTED, new Response.Listener() {
@Override
public void onResponse(String response) {
@@ -319,7 +315,7 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
}
private StringRequest getStringRequestLogin(final String email, final String password) {
- return new StringRequest(Method.POST, AppConfig.URL_REGISTER, new Response.Listener() {
+ return new StringRequest(Method.POST, AppConfig.URL_ENCRYPTED, new Response.Listener() {
@Override
public void onResponse(String response) {
@@ -407,7 +403,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_REGISTER, new Response.Listener() {
+ return new StringRequest(Method.POST, AppConfig.URL_ENCRYPTED, new Response.Listener() {
@Override
public void onResponse(String response) {
@@ -468,7 +464,7 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
}
private StringRequest getStringRequestResetPW(final String email) {
- return new StringRequest(Method.POST, AppConfig.URL_REGISTER, new Response.Listener() {
+ return new StringRequest(Method.POST, AppConfig.URL_ENCRYPTED, new Response.Listener() {
@Override
public void onResponse(String response) {
@@ -479,6 +475,7 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
JSONObject jObj = new JSONObject(response);
boolean error = jObj.getBoolean("error");
if (!error) {
+ showMessage(getString(R.string.alert_passwordreset_confirmation));
} else {
String errorMsg = jObj.getString("error_msg");
Toast.makeText(getApplicationContext(),
@@ -513,7 +510,7 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
}
private StringRequest getStringRequestActivationLinkUser(final String email) {
- return new StringRequest(Method.POST, AppConfig.URL_REGISTER, new Response.Listener() {
+ return new StringRequest(Method.POST, AppConfig.URL_ENCRYPTED, new Response.Listener() {
@Override
public void onResponse(String response) {
@@ -560,7 +557,6 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
}
public void onFragmentInteraction(Uri uri){
- //you can leave it empty
}
private void showDialog() {
@@ -568,18 +564,56 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
pDialog.show();
}
- @Override
- public void onBackPressed() {
- Intent intent = new Intent(
- LoginActivity.this,
- StartActivity.class);
- startActivity(intent);
- finish();
- }
-
private void hideDialog() {
if (pDialog.isShowing())
pDialog.dismiss();
}
+
+ @Override
+ public boolean onCreateOptionsMenu(Menu menu) {
+ getMenuInflater().inflate(R.menu.menu_common, menu);
+ return true;
+ }
+ @Override
+ public boolean onOptionsItemSelected(MenuItem item) {
+ int id = item.getItemId();
+
+ if((id == R.id.menu_action_exit)){
+ Intent intent = new Intent(Intent.ACTION_MAIN);
+ intent.addCategory(Intent.CATEGORY_HOME);
+ intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
+ startActivity(intent);
+ }else if((id == R.id.menu_action_about)){
+ Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("https://www.riskahead.net/about/"));
+ startActivity(browserIntent);
+ }else if((id == R.id.menu_action_help)){
+ Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("https://www.riskahead.net/contact/"));
+ startActivity(browserIntent);
+ }
+
+ return super.onOptionsItemSelected(item);
+ }
+
+ @Override
+ protected void onActivityResult(int requestCode, int resultCode, Intent data) {
+ super.onActivityResult(requestCode, resultCode, data);
+
+ if (requestCode == GooglePlusButtonFragment.RC_SIGN_IN) {
+ GooglePlusButtonFragment fragment = (GooglePlusButtonFragment) getSupportFragmentManager().findFragmentById(R.id.frag_login_btnGP);
+ fragment.onActivityResult(requestCode, resultCode, data);
+ }
+
+ TwitterButtonFragment twitter_fragment = (TwitterButtonFragment) getSupportFragmentManager().findFragmentById(R.id.frag_login_btnTW);
+ if (twitter_fragment != null) {
+ twitter_fragment.onActivityResult(requestCode, resultCode, data);
+ }
+
+ FacebookButtonFragment facebook_fragment = (FacebookButtonFragment) getSupportFragmentManager().findFragmentById(R.id.frag_login_btnFB);
+ if (facebook_fragment != null) {
+ facebook_fragment.onActivityResult(requestCode, resultCode, data);
+ }
+
+ Log.d("Test", "GOT ACTIVITY RESULT!!!:" + requestCode + " : " + resultCode);
+ }
}
diff --git a/app/src/main/java/org/deke/risk/riskahead/MainActivity.java b/app/src/main/java/org/deke/risk/riskahead/MainActivity.java
index d99ff63..ad25cc5 100644
--- a/app/src/main/java/org/deke/risk/riskahead/MainActivity.java
+++ b/app/src/main/java/org/deke/risk/riskahead/MainActivity.java
@@ -1,15 +1,10 @@
package org.deke.risk.riskahead;
-import android.app.NotificationManager;
-import android.app.PendingIntent;
-import android.content.Context;
import android.content.Intent;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.os.Handler;
import android.support.v4.app.FragmentManager;
-import android.support.v4.app.NotificationCompat;
-import android.support.v4.app.TaskStackBuilder;
import android.util.Log;
import android.view.View;
import android.widget.Button;
@@ -26,13 +21,10 @@ 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.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import java.text.DecimalFormat;
-import java.text.SimpleDateFormat;
-import java.util.Calendar;
import java.util.HashMap;
import java.util.Map;
@@ -93,7 +85,7 @@ public class MainActivity extends BaseActivity{
.color(getResources().getColor(R.color.white))
.sizeDp(24);
- map.setCompoundDrawables(null,null, mapIcon, null);
+ map.setCompoundDrawables(null, null, mapIcon, null);
}
@@ -150,7 +142,7 @@ public class MainActivity extends BaseActivity{
}
private StringRequest getStringRequestIncidentCount() {
- return new StringRequest(Request.Method.POST, AppConfig.URL_REGISTER, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.URL_DEFAULT, new Response.Listener() {
@Override
public void onResponse(String response) {
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 efad316..d507773 100644
--- a/app/src/main/java/org/deke/risk/riskahead/MapsActivity.java
+++ b/app/src/main/java/org/deke/risk/riskahead/MapsActivity.java
@@ -127,11 +127,14 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(point, DEFAULT_ZOOM_LEVEL));
findViewById(R.id.fab_reportwf_map).setVisibility(View.VISIBLE);
- if(getIntent().getStringExtra(EXTRA_MESSAGE).equals("NoIncident")){
+ String intentMessage = getIntent().getStringExtra(EXTRA_MESSAGE);
+ if(session.getNotificationPositionRequest()){
findViewById(R.id.fab_reportwf_map).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- session.setLocation((long)markedLocation.latitude,(long)markedLocation.longitude);
+ session.setLocation(Double.doubleToRawLongBits(markedLocation.latitude), Double.doubleToRawLongBits(markedLocation.longitude));
+ Log.d(TAG, "MARKED LOCATION: " + markedLocation.latitude + " " + markedLocation.longitude);
+ session.setNotificationPositionRequest(false);
gotoSettingsActivity();
}
});
@@ -293,7 +296,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_REGISTER, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.URL_DEFAULT, new Response.Listener() {
@Override
public void onResponse(String response) {
@@ -340,7 +343,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_REGISTER, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.URL_DEFAULT, new Response.Listener() {
@Override
public void onResponse(String response) {
@@ -419,7 +422,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_REGISTER, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.URL_DEFAULT, new Response.Listener() {
@Override
public void onResponse(String response) {
@@ -522,10 +525,10 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
} else if(Intent.ACTION_VIEW.equals(intent.getAction())) {
getPlace(intent.getStringExtra(SearchManager.EXTRA_DATA_KEY));
} else {
- String pos = intent.getStringExtra(EXTRA_MESSAGE);
+ String intentMessage = intent.getStringExtra(EXTRA_MESSAGE);
- if(pos != null) {
- String[] position = pos.split(":");
+ if(intentMessage != null && intentMessage.contains(":")) {
+ String[] position = intentMessage.split(":");
String latitude = position[0];
String longitude = position[1];
@@ -534,6 +537,7 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(point, DEFAULT_ZOOM_LEVEL));
} else {
myPosition = session.getLocation();
+
if ((myPosition != null) && (myPosition.latitude != 0.0) && (myPosition.longitude != 0.0))
{
mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(
@@ -543,13 +547,13 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
if(sDefSystemLanguage.equals("en")){
mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(
- new LatLng(52.603048, -2.298889), DEFAULT_ZOOM_LEVEL));
+ new LatLng(51.507351, -0.127758), DEFAULT_ZOOM_LEVEL));
} else if (sDefSystemLanguage.equals("de")){
mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(
- new LatLng(53.090725, 14.268494), DEFAULT_ZOOM_LEVEL));
+ new LatLng(52.518594, 13.376188), DEFAULT_ZOOM_LEVEL));
} else {
mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(
- new LatLng(19.432608, -99.133209), DEFAULT_ZOOM_LEVEL));
+ new LatLng(19.410704, -99.132385), DEFAULT_ZOOM_LEVEL));
}
}
}
@@ -660,6 +664,7 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
getSupportFragmentManager().beginTransaction().remove(getSupportFragmentManager().findFragmentById(R.id.frag_maps_map)).commitAllowingStateLoss();
mMap = null;
}
+ session.setNotificationPositionRequest(false);
super.onDestroy();
}
@@ -672,4 +677,10 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
protected String getActivityName() {
return mActivityTitle;
}
+
+ public void onBackPressed(){
+ session.setNotificationPositionRequest(false);
+ super.onBackPressed();
+
+ }
}
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 e42d8f7..1088ab8 100644
--- a/app/src/main/java/org/deke/risk/riskahead/ReportWFActivity.java
+++ b/app/src/main/java/org/deke/risk/riskahead/ReportWFActivity.java
@@ -308,7 +308,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_REGISTER, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.URL_DEFAULT, new Response.Listener() {
@Override
public void onResponse(String response) {
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 d179b6c..0b23b17 100644
--- a/app/src/main/java/org/deke/risk/riskahead/ViewReportActivity.java
+++ b/app/src/main/java/org/deke/risk/riskahead/ViewReportActivity.java
@@ -48,6 +48,7 @@ public class ViewReportActivity extends BaseActivity {
private EditText txtSuspectTransport;
private EditText txtVictimAffiliation;
private EditText txtSuspectRecognition;
+ private EditText txtEtcEtc;
private BootstrapLabel scorelabel;
@@ -71,6 +72,7 @@ public class ViewReportActivity extends BaseActivity {
txtSuspectTransport = (EditText) findViewById(R.id.txt_viewreport_suspecttransport);
txtVictimAffiliation = (EditText) findViewById(R.id.txt_viewreport_victimaff);
txtSuspectRecognition = (EditText) findViewById(R.id.txt_viewreport_suspectrecon);
+ txtEtcEtc = (EditText) findViewById(R.id.txt_viewreport_etcetc);
Intent intent = getIntent();
final Integer id = intent.getIntExtra(BaseActivity.EXTRA_MESSAGE, 0);
@@ -141,7 +143,7 @@ public class ViewReportActivity extends BaseActivity {
private StringRequest getStringRequestDeleteIncident(final Integer incidentid) {
showDialog();
- return new StringRequest(Request.Method.POST, AppConfig.URL_REGISTER, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.URL_DEFAULT, new Response.Listener() {
@Override
public void onResponse(String response) {
@@ -191,7 +193,7 @@ public class ViewReportActivity extends BaseActivity {
private StringRequest getStringRequestGetIncidentWithPositionFromID(final Integer incidentid) {
showDialog();
- return new StringRequest(Request.Method.POST, AppConfig.URL_REGISTER, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.URL_DEFAULT, new Response.Listener() {
@Override
public void onResponse(String response) {
@@ -241,21 +243,32 @@ public class ViewReportActivity extends BaseActivity {
};
}
+ private String checkIfTextEmptyAndReturnString(String input){
+ String formattedString = "Keine Angaben";
+
+ if(input.trim().length() > 0){
+ formattedString = input;
+ }
+
+ return formattedString;
+ }
+
private void initReport(IncidentReport incident) {
Context tmpContext = getApplicationContext();
scorelabel.setText(Integer.toString(incident.getVotedScore()));
txtIncidentCategory.setText(incident.getIncidentCategoryName(tmpContext));
- txtIncidentSubCategory.setText(incident.getIncidentSubCategoryName(tmpContext));
- txtTime.setText(incident.getTimeString(tmpContext));
- txtSuspect.setText(incident.getSuspectString(tmpContext));
- txtWeapons.setText(incident.getSuspectWeaponsString(tmpContext));
- txtNumOfSuspects.setText(incident.getSuspectNoOfString(tmpContext));
- txtVictim.setText(incident.getVictimString(tmpContext));
- txtVictimOrigin.setText(incident.getVictimOriginString(tmpContext));
- txtSuspectTransport.setText(incident.getSuspectTransportString(tmpContext));
- txtVictimAffiliation.setText(incident.getVictimAffiliationString(tmpContext));
- txtSuspectRecognition.setText(incident.getSuspectRecognitionString(tmpContext));
+ txtIncidentSubCategory.setText(checkIfTextEmptyAndReturnString(incident.getIncidentSubCategoryName(tmpContext)));
+ txtTime.setText(checkIfTextEmptyAndReturnString(incident.getTimeString(tmpContext)));
+ txtSuspect.setText(checkIfTextEmptyAndReturnString(incident.getSuspectString(tmpContext)));
+ txtWeapons.setText(checkIfTextEmptyAndReturnString(incident.getSuspectWeaponsString(tmpContext)));
+ txtNumOfSuspects.setText(checkIfTextEmptyAndReturnString(incident.getSuspectNoOfString(tmpContext)));
+ txtVictim.setText(checkIfTextEmptyAndReturnString(incident.getVictimString(tmpContext)));
+ txtVictimOrigin.setText(checkIfTextEmptyAndReturnString(incident.getVictimOriginString(tmpContext)));
+ txtSuspectTransport.setText(checkIfTextEmptyAndReturnString(incident.getSuspectTransportString(tmpContext)));
+ txtVictimAffiliation.setText(checkIfTextEmptyAndReturnString(incident.getVictimAffiliationString(tmpContext)));
+ txtSuspectRecognition.setText(checkIfTextEmptyAndReturnString(incident.getSuspectRecognitionString(tmpContext)));
+ txtEtcEtc.setText(checkIfTextEmptyAndReturnString(incident.getEtcOthersCategory()));
this.incident = incident;
@@ -316,7 +329,7 @@ public class ViewReportActivity extends BaseActivity {
}
private StringRequest getStringRequestAddVote(final Integer incidentid, final String votetype) {
- return new StringRequest(Request.Method.POST, AppConfig.URL_REGISTER, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.URL_DEFAULT, new Response.Listener() {
@Override
public void onResponse(String response) {
diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/ProfileStatisticsFragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/ProfileStatisticsFragment.java
index 01b3de0..0c7805d 100644
--- a/app/src/main/java/org/deke/risk/riskahead/fragment/ProfileStatisticsFragment.java
+++ b/app/src/main/java/org/deke/risk/riskahead/fragment/ProfileStatisticsFragment.java
@@ -62,7 +62,7 @@ public class ProfileStatisticsFragment extends Fragment {
}
private StringRequest getStringRequestProfileStats() {
- return new StringRequest(Request.Method.POST, AppConfig.URL_REGISTER, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.URL_DEFAULT, new Response.Listener() {
@Override
public void onResponse(String response) {
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 cc07c08..0877352 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
@@ -74,7 +74,7 @@ public class ReportListFragment extends Fragment{
}
private StringRequest getStringRequestGetIncidentsWithPositionFromUserID() {
- return new StringRequest(Request.Method.POST, AppConfig.URL_REGISTER, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.URL_DEFAULT, new Response.Listener() {
@Override
public void onResponse(String response) {
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 c7fdf33..01e3a85 100644
--- a/app/src/main/java/org/deke/risk/riskahead/fragment/SettingsFragment.java
+++ b/app/src/main/java/org/deke/risk/riskahead/fragment/SettingsFragment.java
@@ -1,24 +1,14 @@
package org.deke.risk.riskahead.fragment;
-import android.content.Context;
import android.content.DialogInterface;
-import android.net.Uri;
import android.os.Bundle;
import android.preference.EditTextPreference;
import android.preference.ListPreference;
import android.preference.Preference;
import android.preference.PreferenceFragment;
import android.preference.SwitchPreference;
-import android.support.v4.app.Fragment;
import android.support.v7.app.AlertDialog;
-import android.text.method.PasswordTransformationMethod;
import android.util.Log;
-import android.util.Patterns;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.view.ViewGroup;
-import android.widget.EditText;
-import android.widget.TextView;
import com.android.volley.Request;
import com.android.volley.Response;
@@ -30,12 +20,11 @@ import org.deke.risk.riskahead.SettingsActivity;
import org.deke.risk.riskahead.helper.AppConfig;
import org.deke.risk.riskahead.helper.AppController;
import org.deke.risk.riskahead.helper.SessionManager;
-import org.deke.risk.riskahead.helper.TextValidator;
+import org.deke.risk.riskahead.helper.ValidatedEditTextPreference;
import org.json.JSONException;
import org.json.JSONObject;
import java.util.HashMap;
-import java.util.List;
import java.util.Map;
/**
@@ -45,10 +34,10 @@ public class SettingsFragment extends PreferenceFragment {
private final static String TAG = SettingsFragment.class.getSimpleName();
- private EditTextPreference prefUsername;
+ private ValidatedEditTextPreference prefUsername;
private EditTextPreference prefSurname;
private EditTextPreference prefName;
- private EditTextPreference prefEmail;
+ private ValidatedEditTextPreference prefEmail;
private Preference btnRequestPW;
private SwitchPreference prefNotifications;
@@ -57,8 +46,6 @@ public class SettingsFragment extends PreferenceFragment {
private SwitchPreference prefGPSENabled;
private Preference prefLocation;
-
-
public SessionManager session;
public HashMap user;
@@ -73,11 +60,18 @@ public class SettingsFragment extends PreferenceFragment {
initAccountPrefs();
+ initNotificationPrefs();
+
+
+ updatePrefs();
+ }
+
+ private void initNotificationPrefs() {
prefNotifications = (SwitchPreference) getPreferenceManager().findPreference("notifyEnable");
prefRadius = (ListPreference) getPreferenceManager().findPreference("notifyRadius");
prefFrequency = (ListPreference) getPreferenceManager().findPreference("notifyFrequency");
prefGPSENabled = (SwitchPreference) getPreferenceManager().findPreference("notifyEnableGPS");
- prefLocation = (Preference) getPreferenceManager().findPreference("notifyChooseLocation");
+ prefLocation = getPreferenceManager().findPreference("notifyChooseLocation");
prefNotifications.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
@Override
@@ -94,7 +88,7 @@ public class SettingsFragment extends PreferenceFragment {
String newStringValue = newValue.toString();
session.setNotificationRadius(Integer.valueOf(newStringValue));
((ListPreference)preference).setValue(newValue.toString());
- ((ListPreference)preference).setSummary(prefRadius.getEntry());
+ preference.setSummary(prefRadius.getEntry());
return true;
}
});
@@ -105,7 +99,7 @@ public class SettingsFragment extends PreferenceFragment {
String newStringValue = newValue.toString();
session.setNotificationPollFreq(Integer.valueOf(newStringValue));
((ListPreference)preference).setValue(newValue.toString());
- ((ListPreference)preference).setSummary(prefFrequency.getEntry());
+ preference.setSummary(prefFrequency.getEntry());
return true;
}
});
@@ -115,6 +109,7 @@ public class SettingsFragment extends PreferenceFragment {
public boolean onPreferenceChange(Preference preference, Object newValue) {
String newStringValue = newValue.toString();
session.setGPSForNotificationsEnabled(Boolean.valueOf(newStringValue));
+ updatePrefs();
return true;
}
});
@@ -122,23 +117,21 @@ public class SettingsFragment extends PreferenceFragment {
prefLocation.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
@Override
public boolean onPreferenceClick(Preference preference) {
- ((SettingsActivity)getActivity()).gotoMapActivity("NoIncident");
+ session.setNotificationPositionRequest(true);
+ ((SettingsActivity)getActivity()).gotoMapActivity();
return true;
}
});
-
-
- updatePrefs();
}
private void initAccountPrefs() {
- prefUsername = (EditTextPreference) getPreferenceManager().findPreference("usernamePref");
+ prefUsername = (ValidatedEditTextPreference) getPreferenceManager().findPreference("usernamePref");
prefSurname = (EditTextPreference) getPreferenceManager().findPreference("surnamePref");
prefName = (EditTextPreference) getPreferenceManager().findPreference("namePref");
- prefEmail = (EditTextPreference) getPreferenceManager().findPreference("emailPref");
- btnRequestPW = (Preference) getPreferenceManager().findPreference("resetPassword");
-
+ prefEmail = (ValidatedEditTextPreference) getPreferenceManager().findPreference("emailPref");
+ btnRequestPW = getPreferenceManager().findPreference("resetPassword");
+/*
prefUsername.getEditText().addTextChangedListener(new TextValidator(prefUsername.getEditText(), getActivity().getApplicationContext()) {
@Override
public void validate(TextView textView, String text) {
@@ -157,6 +150,7 @@ public class SettingsFragment extends PreferenceFragment {
}
}
});
+*/
Preference.OnPreferenceChangeListener changeListener = new Preference.OnPreferenceChangeListener() {
@Override
@@ -220,12 +214,12 @@ public class SettingsFragment extends PreferenceFragment {
prefRadius.setValue(Integer.toString(session.getNotificationRadius()));
prefRadius.setSummary(prefRadius.getEntry());
prefGPSENabled.setChecked(session.isGPSForNotificationsEnabled());
-
+ prefLocation.setSummary("Your Location (Latitude/Longitude):\n"+Double.toString(session.getLocation().latitude)+" : "+Double.toString(session.getLocation().longitude));
if(session.isGPSForNotificationsEnabled()){
- btnRequestPW.setEnabled(false);
+ prefLocation.setEnabled(false);
}else{
- btnRequestPW.setEnabled(true);
+ prefLocation.setEnabled(true);
}
}
@@ -239,7 +233,7 @@ public class SettingsFragment extends PreferenceFragment {
private StringRequest getStringRequestResetPW(final String email) {
((SettingsActivity) getActivity()).showDialog();
- return new StringRequest(Request.Method.POST, AppConfig.URL_REGISTER, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.URL_DEFAULT, new Response.Listener() {
@Override
public void onResponse(String response) {
@@ -303,7 +297,7 @@ public class SettingsFragment extends PreferenceFragment {
private StringRequest getStringChangeUserSettings(final String username, final String name, final String surname, final String email) {
((SettingsActivity) getActivity()).showDialog();
- return new StringRequest(Request.Method.POST, AppConfig.URL_REGISTER, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.URL_DEFAULT, new Response.Listener() {
@Override
public void onResponse(String response) {
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 a895fc0..955f09e 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
@@ -64,7 +64,7 @@ public class Top10Fragment extends Fragment {
private StringRequest getStringRequestTop10() {
- return new StringRequest(Request.Method.POST, AppConfig.URL_REGISTER, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.URL_DEFAULT, new Response.Listener() {
@Override
public void onResponse(String response) {
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 abc3d4a..7c8d0d6 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
@@ -4,9 +4,7 @@ package org.deke.risk.riskahead.helper;
* Created by Dennis on 09.08.2015.
*/
public class AppConfig {
- // Server user login url
- public static String URL_LOGIN = "http://www.riskahead.de/helper/rest/";
+ public static String URL_ENCRYPTED = "https://www.riskahead.de/helper/rest/";
- // Server user register url
- public static String URL_REGISTER = "http://www.riskahead.de/helper/rest/";
+ public static String URL_DEFAULT = "http://www.riskahead.de/helper/rest/";
}
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 b689f76..5fc8429 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
@@ -278,6 +278,7 @@ public abstract class BaseActivity extends AppCompatActivity {
Log.d("Unknown switch page: ", Integer.toString(position));
break;
}
+ session.setNotificationPositionRequest(false);
if(intent != null) BaseActivity.this.startActivity(intent);
return false;
}
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 6d52a30..0556e23 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
@@ -102,7 +102,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_REGISTER, new Response.Listener() {
+ return new StringRequest(Request.Method.POST, AppConfig.URL_DEFAULT, new Response.Listener() {
@Override
public void onResponse(String response) {
diff --git a/app/src/main/java/org/deke/risk/riskahead/helper/SessionManager.java b/app/src/main/java/org/deke/risk/riskahead/helper/SessionManager.java
index 04f872e..c48c4f9 100644
--- a/app/src/main/java/org/deke/risk/riskahead/helper/SessionManager.java
+++ b/app/src/main/java/org/deke/risk/riskahead/helper/SessionManager.java
@@ -47,6 +47,7 @@ public class SessionManager {
public static final String KEY_NOTIFY_RADIUS = "notifyRadius";
public static final String KEY_NOTIFY_POLLINGFREQ = "notifyPollingfreq";
public static final String KEY_NOTIFY_GPS = "notifyGPSEnabled";
+ public static final String KEY_NOTIFY_REQUEST_POS = "notifyGPSPositionRequest";
@@ -95,10 +96,7 @@ public class SessionManager {
return status.getString(KEY_LAST_NOTIFICATION, "");
}
- public void setNotificationEnabled(boolean isEnabled){
- statusEditor.putBoolean(KEY_NOTIFY_ENABLED, isEnabled);
- statusEditor.apply();
- }
+
public void setNotificationRadius(int radius){
statusEditor.putInt(KEY_NOTIFY_RADIUS, radius);
@@ -110,10 +108,24 @@ public class SessionManager {
statusEditor.apply();
}
+ public void setNotificationEnabled(boolean isEnabled){
+ statusEditor.putBoolean(KEY_NOTIFY_ENABLED, isEnabled);
+ statusEditor.apply();
+ }
+
public Boolean getNotificationEnabled(){
return status.getBoolean(KEY_NOTIFY_ENABLED, true);
}
+ public void setNotificationPositionRequest(boolean isEnabled){
+ statusEditor.putBoolean(KEY_NOTIFY_REQUEST_POS, isEnabled);
+ statusEditor.apply();
+ }
+
+ public Boolean getNotificationPositionRequest(){
+ return status.getBoolean(KEY_NOTIFY_REQUEST_POS, false);
+ }
+
public int getNotificationRadius(){
return status.getInt(KEY_NOTIFY_RADIUS, 5);
}
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
new file mode 100644
index 0000000..24543ce
--- /dev/null
+++ b/app/src/main/java/org/deke/risk/riskahead/helper/ValidatedEditTextPreference.java
@@ -0,0 +1,102 @@
+package org.deke.risk.riskahead.helper;
+
+import android.app.Dialog;
+import android.content.Context;
+import android.os.Bundle;
+import android.preference.EditTextPreference;
+import android.app.AlertDialog;
+import android.text.Editable;
+import android.text.InputType;
+import android.text.TextWatcher;
+import android.util.AttributeSet;
+import android.util.Log;
+import android.util.Patterns;
+import android.widget.Button;
+
+/**
+ * Copyright 2015 RiskAhead Dennis Thiessen
+ *
+ * Created by Dennis Thiessen on 06.01.2016.
+ */
+public class ValidatedEditTextPreference extends EditTextPreference
+{
+
+ private final static int TYPE_VARIATION_EMAIL_ADDRESS = 33;
+
+ public ValidatedEditTextPreference(Context ctx, AttributeSet attrs, int defStyle)
+ {
+ super(ctx, attrs, defStyle);
+ }
+
+ public ValidatedEditTextPreference(Context ctx, AttributeSet attrs)
+ {
+ super(ctx, attrs);
+ }
+
+ private class EditTextWatcher implements TextWatcher
+ {
+ @Override
+ public void onTextChanged(CharSequence s, int start, int before, int count){}
+
+ @Override
+ public void beforeTextChanged(CharSequence s, int start, int before, int count){}
+
+ @Override
+ public void afterTextChanged(Editable s)
+ {
+ onEditTextChanged();
+ }
+ }
+ EditTextWatcher m_watcher = new EditTextWatcher();
+
+ /**
+ * Return true in order to enable positive button or false to disable it.
+ */
+ protected boolean onCheckValue(String value)
+ {
+ boolean enable = true;
+
+ if((getEditText().getInputType() & InputType.TYPE_TEXT_VARIATION_EMAIL_ADDRESS) != 0){
+ if (!Patterns.EMAIL_ADDRESS.matcher(value).matches()) {
+ getEditText().setError("Please enter a valid email address\n" +
+ "e.g.: text@abc.de");
+ enable = false;
+ }
+ }else{
+ if (value.length() < 5) {
+ getEditText().setError("Your username must be at least\n" +
+ "5 characters in length.");
+ enable = false;
+ }
+ }
+ Log.d("SettingValidator", "inputtype: "+getEditText().getInputType());
+ return enable;
+ }
+
+ protected void onEditTextChanged()
+ {
+ boolean enable = onCheckValue(getEditText().getText().toString());
+
+ Dialog dlg = getDialog();
+
+
+ if(dlg instanceof AlertDialog){
+ AlertDialog alertDlg = (AlertDialog)dlg;
+ Button btn = alertDlg.getButton(AlertDialog.BUTTON_POSITIVE);
+ btn.setEnabled(enable);
+ Log.d("SettingValidator", "btnSetEnable durchgeführt: "+btn.isEnabled());
+ }
+
+
+ }
+
+ @Override
+ protected void showDialog(Bundle state)
+ {
+ super.showDialog(state);
+
+ getEditText().removeTextChangedListener(m_watcher);
+ getEditText().addTextChangedListener(m_watcher);
+ onEditTextChanged();
+ }
+}
diff --git a/app/src/main/res/layout/activity_login.xml b/app/src/main/res/layout/activity_login.xml
index 476d834..3f2ab4f 100644
--- a/app/src/main/res/layout/activity_login.xml
+++ b/app/src/main/res/layout/activity_login.xml
@@ -124,8 +124,6 @@
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_below="@+id/btn_register"
- android:clickable="true"
- android:onClick="onClick"
android:text="@string/lbl_login_resendPW"
android:textAppearance="?android:attr/textAppearanceSmall" />
diff --git a/app/src/main/res/layout/activity_view_report.xml b/app/src/main/res/layout/activity_view_report.xml
index 4e40bdb..bcf63a7 100644
--- a/app/src/main/res/layout/activity_view_report.xml
+++ b/app/src/main/res/layout/activity_view_report.xml
@@ -220,6 +220,21 @@
+
+
+
+
+
+
diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml
index 7d0447b..b5bc407 100644
--- a/app/src/main/res/values-de/strings.xml
+++ b/app/src/main/res/values-de/strings.xml
@@ -1,6 +1,7 @@
RiskAhead
+
Login
Register
@@ -17,6 +18,9 @@
Signing in...
Signing out...
+ RiskAhead
+ RiskAhead
+
Open navigation drawer
Close navigation drawer
@@ -25,8 +29,6 @@
Location
Search Settings
- RiskAhead
- RiskAhead
Base
User Profile
Risk Map
@@ -35,7 +37,6 @@
Subscriptions
View Report
Report List
- Report Incident
About
Language
@@ -77,7 +78,6 @@
{fa_search} View Posts
Top 10
-
{fa_paint_brush} Report this position!
Home
@@ -112,6 +112,7 @@
Could not retrieve data from server. Please check internet connection.
Please wait...
Retrieve data from server
+ Report Incident
Author:
Rating:
@@ -119,13 +120,13 @@
Victim:
Time:
-
Please choose...
From date (yyyy-MM-dd)
From time
To date (yyyy-MM-dd)
To time
-
+ Incident Category
+ Incident Subcategory
Was ist passiert?
Wo passiert es?
@@ -141,9 +142,17 @@
Wie erkennt man die Täter?
Weiteres?
Weitere Details...
+
Bitte wähle zunächst einen Ort auf der Karte aus
+ Time
Suspect
Victim
+ Weapons
+ Quantity
+ Origin of victim
+ Vehicle
+ Victim affiliation
+ Suspect attributes
- Allgemeiner Vorfall/Situation
@@ -167,7 +176,7 @@
- Sexuelle Belästigung
- Beleidigung, Drohung
- - Vernehmung/Befragung öffentlich
+ - Nötigung/Vernehmung
- Aufhetzung
- Sonstiges...
@@ -194,7 +203,7 @@
- Temperaturextrem
- Wind, Sturm, Orkan, Tornado
- - Überschwemmung/-flutung
+ - Überschwemmung/-flutung, Tsunami
- Erdbeben, Berghang Einsturz
- Feuer, Rauch, Vulkanausbruch
- Hungersnot, Tierplage
@@ -208,7 +217,7 @@
- Brandkatastrophe
- Chemiekatastrophe, Ölpest
- Seuche, Krankheit
- - Chaos Bevölkerung
+ - Chaos Bevölkerung, Anarchie
- Sonstiges...
@@ -221,8 +230,8 @@
- - Vormittags
- - Tagsüber
+ - Morgens
+ - Mittags
- Abends
- Nachts
@@ -247,7 +256,7 @@
- Alltagsgegenstände
- Schusswaffe
- Explosionswaffen oder Sprengkörper
- - Großkaliber z.B. Panzer, Flugbombe
+ - Großwaffen z.B. Panzer, Flugbombe
- Sonstiges…
- Weiß ich nicht
@@ -264,7 +273,8 @@
- Frauen
- Kinder
- Männer
- - Tieren
+ - Jede Person
+ - Tiere
- Gebäude/Infrastruktur
@@ -303,6 +313,98 @@
- Tiere
- Sonstiges…
+ Settings
+
+
+
+
+ General
+
+ Enable social recommendations
+ Recommendations for people to contact
+ based on your message history
+
+
+ Display name
+ John Smith
+
+ Add friends to messages
+
+ - Always
+ - When possible
+ - Never
+
+
+ - 1
+ - 0
+ - -1
+
+
+
+ Data & sync
+
+ Sync frequency
+
+ - 15 minutes
+ - 30 minutes
+ - 1 hour
+ - 3 hours
+ - 6 hours
+ - Never
+
+
+ - 15
+ - 30
+ - 60
+ - 180
+ - 360
+ - -1
+
+
+ System sync settings
+
+
+ Notifications
+
+ New message notifications
+
+ Ringtone
+ Silent
+
+ Vibrate
+ Settings
+ More Details
+
+
+ - 1 KM
+ - 5 KM
+ - 10 KM
+ - 15 KM
+
+
+
+ - 1
+ - 5
+ - 10
+ - 15
+
+
+
+ - Every 5 Minutes
+ - Every 10 Minutes
+ - Every 15 Minutes
+ - Every 30 Minutes
+ - Every hour
+
+
+
+ - 5
+ - 10
+ - 15
+ - 30
+ - 60
+
+
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 82ccc0a..0e7f0b2 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -177,7 +177,7 @@
- Sexuelle Belästigung
- Beleidigung, Drohung
- - Vernehmung/Befragung öffentlich
+ - Nötigung/Vernehmung
- Aufhetzung
- Sonstiges...
@@ -204,7 +204,7 @@
- Temperaturextrem
- Wind, Sturm, Orkan, Tornado
- - Überschwemmung/-flutung
+ - Überschwemmung/-flutung, Tsunami
- Erdbeben, Berghang Einsturz
- Feuer, Rauch, Vulkanausbruch
- Hungersnot, Tierplage
@@ -218,7 +218,7 @@
- Brandkatastrophe
- Chemiekatastrophe, Ölpest
- Seuche, Krankheit
- - Chaos Bevölkerung
+ - Chaos Bevölkerung, Anarchie
- Sonstiges...
@@ -231,8 +231,8 @@
- - Vormittags
- - Tagsüber
+ - Morgens
+ - Mittags
- Abends
- Nachts
@@ -257,7 +257,7 @@
- Alltagsgegenstände
- Schusswaffe
- Explosionswaffen oder Sprengkörper
- - Großkaliber z.B. Panzer, Flugbombe
+ - Großwaffen z.B. Panzer, Flugbombe
- Sonstiges…
- Weiß ich nicht
@@ -274,7 +274,8 @@
- Frauen
- Kinder
- Männer
- - Tieren
+ - Jede Person
+ - Tiere
- Gebäude/Infrastruktur
@@ -373,6 +374,7 @@
Vibrate
Settings
+ More Details
- 1 KM
diff --git a/app/src/main/res/xml/settings.xml b/app/src/main/res/xml/settings.xml
index 705beff..b7a0680 100644
--- a/app/src/main/res/xml/settings.xml
+++ b/app/src/main/res/xml/settings.xml
@@ -5,7 +5,7 @@
-
-