diff --git a/app/app.iml b/app/app.iml index 067f8ef..4dbcd7c 100644 --- a/app/app.iml +++ b/app/app.iml @@ -66,12 +66,10 @@ - - + - @@ -102,17 +100,12 @@ - - - - - - + diff --git a/app/src/main/java/org/deke/risk/riskahead/ReportActivity.java b/app/src/main/java/org/deke/risk/riskahead/ReportActivity.java index a073880..9bb3a75 100644 --- a/app/src/main/java/org/deke/risk/riskahead/ReportActivity.java +++ b/app/src/main/java/org/deke/risk/riskahead/ReportActivity.java @@ -9,6 +9,7 @@ import android.location.Address; import android.location.Geocoder; import android.os.Bundle; import android.util.Log; +import android.util.Patterns; import android.view.View; import android.widget.ArrayAdapter; import android.widget.DatePicker; @@ -26,6 +27,7 @@ import com.android.volley.toolbox.StringRequest; import org.deke.risk.riskahead.helper.AppConfig; import org.deke.risk.riskahead.helper.AppController; import org.deke.risk.riskahead.helper.BaseActivity; +import org.deke.risk.riskahead.helper.TextValidator; import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; @@ -152,6 +154,26 @@ public class ReportActivity extends BaseActivity { showDialog(TIME_DIALOG_ID); } }); + + txtTitle.addTextChangedListener(new TextValidator(txtTitle) { + @Override + public void validate(TextView textView, String text) { + if (text.length() < 5) { + textView.setError("Your password must be at least\n" + + "5 characters in length."); + } + } + }); + + txtDescription.addTextChangedListener(new TextValidator(txtDescription) { + @Override + public void validate(TextView textView, String text) { + if (text.length() < 5) { + textView.setError("Your password must be at least\n" + + "5 characters in length."); + } + } + }); } private void restoreSharedPreferences() { @@ -194,7 +216,7 @@ public class ReportActivity extends BaseActivity { SharedPreferences.Editor editor = getPreferences(MODE_PRIVATE).edit(); editor.clear(); editor.apply(); - gotoMapActivity(); + gotoMapActivity(latitude+":"+longitude); } else { String errorMsg = jObj.getString("error_msg"); Toast.makeText(getApplicationContext(), errorMsg, Toast.LENGTH_LONG).show(); diff --git a/app/src/main/java/org/deke/risk/riskahead/SettingsActivity.java b/app/src/main/java/org/deke/risk/riskahead/SettingsActivity.java index 258fbf7..3926c16 100644 --- a/app/src/main/java/org/deke/risk/riskahead/SettingsActivity.java +++ b/app/src/main/java/org/deke/risk/riskahead/SettingsActivity.java @@ -4,8 +4,8 @@ import android.app.AlertDialog; import android.content.DialogInterface; import android.os.Bundle; import android.util.Log; +import android.util.Patterns; import android.view.View; -import android.widget.RelativeLayout; import android.widget.TextView; import android.widget.Toast; @@ -17,6 +17,7 @@ import com.android.volley.toolbox.StringRequest; import org.deke.risk.riskahead.helper.AppConfig; import org.deke.risk.riskahead.helper.AppController; import org.deke.risk.riskahead.helper.BaseActivity; +import org.deke.risk.riskahead.helper.TextValidator; import org.json.JSONException; import org.json.JSONObject; @@ -45,7 +46,25 @@ public class SettingsActivity extends BaseActivity { txtEmail = (TextView) findViewById(R.id.txt_settings_email); txtPassword = (TextView) findViewById(R.id.txt_settings_password); + txtUsername.addTextChangedListener(new TextValidator(txtUsername) { + @Override + public void validate(TextView textView, String text) { + if (text.length() < 5) { + textView.setError("Your username must be at least\n" + + "5 characters in length."); + } + } + }); + txtEmail.addTextChangedListener(new TextValidator(txtEmail) { + @Override + public void validate(TextView textView, String text) { + if (!Patterns.EMAIL_ADDRESS.matcher(text).matches()) { + textView.setError("Please enter a valid email address\n" + + "e.g.: text@abc.de"); + } + } + }); findViewById(R.id.btn_settings_req_password).setOnClickListener(new View.OnClickListener() { @Override @@ -80,23 +99,29 @@ public class SettingsActivity extends BaseActivity { return; } - new AlertDialog.Builder(SettingsActivity.this) - .setTitle("Confirm changes") - .setMessage("Do you really want to confirm changes? ") - .setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() { - public void onClick(DialogInterface dialog, int which) { - String tag_string_req = "updateuser"; - StringRequest strReq = getStringChangeUserSettings(); - AppController.getInstance().addToRequestQueue(strReq, tag_string_req); - } - }) - .setNegativeButton(android.R.string.no, new DialogInterface.OnClickListener() { - public void onClick(DialogInterface dialog, int which) { - // do nothing - } - }) - .setIcon(android.R.drawable.ic_dialog_alert) - .show(); + if (txtUsername.getError() != null || txtEmail.getError() != null) { + showMessage("Entered fields not valid\n" + + "Please check errors first."); + } else { + + new AlertDialog.Builder(SettingsActivity.this) + .setTitle("Confirm changes") + .setMessage("Do you really want to confirm changes? ") + .setPositiveButton(android.R.string.yes, new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int which) { + String tag_string_req = "updateuser"; + StringRequest strReq = getStringChangeUserSettings(); + AppController.getInstance().addToRequestQueue(strReq, tag_string_req); + } + }) + .setNegativeButton(android.R.string.no, new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int which) { + // do nothing + } + }) + .setIcon(android.R.drawable.ic_dialog_alert) + .show(); + } } }); 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 5a029b6..57a7b5b 100644 --- a/app/src/main/java/org/deke/risk/riskahead/ViewReportActivity.java +++ b/app/src/main/java/org/deke/risk/riskahead/ViewReportActivity.java @@ -290,12 +290,10 @@ public class ViewReportActivity extends BaseActivity { JSONObject jObj = new JSONObject(response); boolean error = jObj.getBoolean("error"); - // Check for error node in json if (!error) { BootstrapLabel scorelabel = (BootstrapLabel) findViewById(R.id.txt_viewreport_points); scorelabel.setText(jObj.getString("points")); } else { - // Error in login. Get the error message String errorMsg = jObj.getString("error_msg"); Toast.makeText(getApplicationContext(), errorMsg, Toast.LENGTH_LONG).show(); } @@ -316,17 +314,14 @@ public class ViewReportActivity extends BaseActivity { @Override protected Map getParams() { - // Posting parameters to login url Map params = new HashMap<>(); params.put("tag", "getincidentvotescore"); params.put("uid", user.get("uid")); params.put("token", user.get("token")); params.put("incidentid", incidentid); - return params; } - }; } @@ -380,7 +375,6 @@ public class ViewReportActivity extends BaseActivity { @Override protected Map getParams() { - // Posting parameters to login url Map params = new HashMap<>(); params.put("tag", "addvote"); params.put("uid", user.get("uid")); @@ -388,10 +382,8 @@ public class ViewReportActivity extends BaseActivity { params.put("incidentid", incidentid); params.put("votetype", votetype); - return params; } - }; } 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 96d9aac..ee1c164 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 @@ -18,7 +18,6 @@ public abstract class TextValidator implements TextWatcher { @Override public void beforeTextChanged(CharSequence s, int start, int count, int after) { - } @Override diff --git a/app/src/main/res/drawable/logo_riskahead.png b/app/src/main/res/drawable/logo_riskahead.png index 9b62faa..41aa6b7 100644 Binary files a/app/src/main/res/drawable/logo_riskahead.png and b/app/src/main/res/drawable/logo_riskahead.png differ diff --git a/app/src/main/res/drawable/trennlinie.jpg b/app/src/main/res/drawable/trennlinie.jpg deleted file mode 100644 index 87b17e6..0000000 Binary files a/app/src/main/res/drawable/trennlinie.jpg and /dev/null differ diff --git a/app/src/main/res/drawable/trennlinieblog.png b/app/src/main/res/drawable/trennlinieblog.png deleted file mode 100644 index e579213..0000000 Binary files a/app/src/main/res/drawable/trennlinieblog.png and /dev/null differ