DT @1.11.2015: An incidentCategories gearbeitet. Werden beim Report nun vorher aus der mySQL Datenbank ausgelesen.
This commit is contained in:
@@ -4,7 +4,6 @@ import android.app.SearchManager;
|
||||
import android.app.SearchableInfo;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.content.SharedPreferences;
|
||||
import android.database.Cursor;
|
||||
import android.graphics.Color;
|
||||
import android.os.Bundle;
|
||||
@@ -50,7 +49,7 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa
|
||||
|
||||
private static GoogleMap mMap;
|
||||
Marker mMarker;
|
||||
HashMap<String, String> markerIDs = new HashMap<String, String>();
|
||||
HashMap<String, String> markerIDs = new HashMap<>();
|
||||
|
||||
private LatLng myLocation;
|
||||
private LatLng markedLocation;
|
||||
|
||||
@@ -2,7 +2,6 @@ package org.deke.risk.riskahead;
|
||||
|
||||
import android.graphics.Color;
|
||||
import android.os.Bundle;
|
||||
import android.provider.ContactsContract;
|
||||
import android.util.Log;
|
||||
import android.view.Menu;
|
||||
import android.view.MenuItem;
|
||||
|
||||
@@ -26,10 +26,12 @@ 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.json.JSONArray;
|
||||
import org.json.JSONException;
|
||||
import org.json.JSONObject;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Calendar;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
@@ -63,15 +65,20 @@ public class ReportActivity extends BaseActivity {
|
||||
private int year, month, day;
|
||||
private int hour, minute;
|
||||
|
||||
|
||||
public HashMap<String, String[]> categories;
|
||||
public ArrayList<String> incidentCategoryList;
|
||||
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
userHasToBeLoggedIn();
|
||||
|
||||
Spinner spinner = (Spinner) findViewById(R.id.dd_report_category);
|
||||
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.incident_categories, android.R.layout.simple_spinner_item);
|
||||
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
|
||||
spinner.setAdapter(adapter);
|
||||
|
||||
// ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, incidentCategories, android.R.layout.simple_spinner_item);
|
||||
// adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
|
||||
getCategories();
|
||||
|
||||
|
||||
final Calendar c = Calendar.getInstance();
|
||||
year = c.get(Calendar.YEAR);
|
||||
@@ -90,13 +97,13 @@ public class ReportActivity extends BaseActivity {
|
||||
|
||||
restoreSharedPreferences();
|
||||
|
||||
if(txtDay.getText().toString() == "") {
|
||||
if(txtDay.getText().toString().equals("")) {
|
||||
txtDay.setText(new StringBuilder()
|
||||
.append(year).append("-").append(month + 1).append("-")
|
||||
.append(day).append(" "));
|
||||
}
|
||||
|
||||
if(txtTime.getText().toString() == "") {
|
||||
if(txtTime.getText().toString().equals("")) {
|
||||
txtTime.setText(new StringBuilder().append(hour)
|
||||
.append(":").append(minute).append(" "));
|
||||
}
|
||||
@@ -131,7 +138,7 @@ public class ReportActivity extends BaseActivity {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
String tag_string_req = "addincidentwithposition";
|
||||
StringRequest strReq = getStringRequestAddIncidentWithPosition(txtTitle.getText().toString(), txtDescription.getText().toString(), txtCrimeCategory.getSelectedItemPosition(), latitude, longitude, 10, 1, txtDay.getText().toString(), txtTime.getText().toString());
|
||||
StringRequest strReq = getStringRequestAddIncidentWithPosition(txtTitle.getText().toString(), txtDescription.getText().toString(), Integer.valueOf(categories.get(txtCrimeCategory.getSelectedItem().toString())[0]), latitude, longitude, 10, 1, txtDay.getText().toString(), txtTime.getText().toString());
|
||||
AppController.getInstance().addToRequestQueue(strReq, tag_string_req);
|
||||
}
|
||||
});
|
||||
@@ -191,7 +198,6 @@ public class ReportActivity extends BaseActivity {
|
||||
showMessage("Report added!");
|
||||
SharedPreferences.Editor editor = getPreferences(MODE_PRIVATE).edit();
|
||||
editor.clear();
|
||||
editor.commit();
|
||||
editor.apply();
|
||||
gotoMapActivity();
|
||||
} else {
|
||||
@@ -310,4 +316,76 @@ public class ReportActivity extends BaseActivity {
|
||||
editor.apply();
|
||||
}
|
||||
|
||||
public void getCategories(){
|
||||
String tag_string_req = "getincidentcategories";
|
||||
StringRequest strReq = getStringRequestGetIncidentCategories();
|
||||
AppController.getInstance().addToRequestQueue(strReq, tag_string_req);
|
||||
}
|
||||
|
||||
private StringRequest getStringRequestGetIncidentCategories() {
|
||||
return new StringRequest(Request.Method.POST, AppConfig.URL_REGISTER, new Response.Listener<String>() {
|
||||
|
||||
@Override
|
||||
public void onResponse(String response) {
|
||||
Log.d(TAG, "Incident categories response: " + response);
|
||||
hideDialog();
|
||||
|
||||
try {
|
||||
JSONObject jObj = new JSONObject(response);
|
||||
boolean error = jObj.getBoolean("error");
|
||||
|
||||
// Check for error node in json
|
||||
if (!error) {
|
||||
JSONArray jsoncategories = jObj.getJSONArray("msg");
|
||||
categories = new HashMap<>();
|
||||
incidentCategoryList = new ArrayList<>();
|
||||
|
||||
for(int i=0;i<jsoncategories.length();i++){
|
||||
JSONObject category = jsoncategories.getJSONObject(i);
|
||||
|
||||
String tmp[] = {category.getString("uid"),category.getString("description")};
|
||||
categories.put(category.getString("name"),tmp);
|
||||
|
||||
incidentCategoryList.add(category.getString("name"));
|
||||
}
|
||||
|
||||
ArrayAdapter<String> adapter = new ArrayAdapter<>(getApplicationContext(),android.R.layout.simple_spinner_dropdown_item,incidentCategoryList);
|
||||
Spinner spinner = (Spinner) findViewById(R.id.dd_report_category);
|
||||
spinner.setAdapter(adapter);
|
||||
} else {
|
||||
// Error in login. Get the error message
|
||||
String errorMsg = jObj.getString("error_msg");
|
||||
Toast.makeText(getApplicationContext(), errorMsg, Toast.LENGTH_LONG).show();
|
||||
}
|
||||
} catch (JSONException e) {
|
||||
// JSON error
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
}
|
||||
}, new Response.ErrorListener() {
|
||||
|
||||
@Override
|
||||
public void onErrorResponse(VolleyError error) {
|
||||
Log.e(TAG, "Report Error: " + error.getMessage());
|
||||
Toast.makeText(getApplicationContext(),
|
||||
error.getMessage(), Toast.LENGTH_LONG).show();
|
||||
hideDialog();
|
||||
}
|
||||
}) {
|
||||
|
||||
@Override
|
||||
protected Map<String, String> getParams() {
|
||||
// Posting parameters to login url
|
||||
Map<String, String> params = new HashMap<>();
|
||||
params.put("tag", "getincidentcategories");
|
||||
params.put("uid", user.get("uid"));
|
||||
params.put("token", user.get("token"));
|
||||
|
||||
|
||||
return params;
|
||||
}
|
||||
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -90,7 +90,7 @@ public class ReportlistActivity extends BaseActivity {
|
||||
// Check for error node in json
|
||||
if (!error) {
|
||||
JSONArray incidents = jObj.getJSONArray("message");
|
||||
resultList = new ArrayList<JSONObject>();
|
||||
resultList = new ArrayList<>();
|
||||
|
||||
for(int i=0;i<incidents.length();i++){
|
||||
JSONObject incident = incidents.getJSONObject(i);
|
||||
|
||||
@@ -151,7 +151,7 @@ public class SettingsActivity extends BaseActivity {
|
||||
@Override
|
||||
protected Map<String, String> getParams() {
|
||||
// Posting params to register url
|
||||
Map<String, String> params = new HashMap<String, String>();
|
||||
Map<String, String> params = new HashMap<>();
|
||||
params.put("tag", "updateuser");
|
||||
params.put("uid", user.get("uid"));
|
||||
params.put("token", user.get("token"));
|
||||
@@ -180,7 +180,6 @@ public class SettingsActivity extends BaseActivity {
|
||||
if (!error) {
|
||||
// do nothing actually
|
||||
} else {
|
||||
|
||||
// Error occurred in registration. Get the error
|
||||
// message
|
||||
String errorMsg = jObj.getString("error_msg");
|
||||
@@ -204,8 +203,7 @@ public class SettingsActivity extends BaseActivity {
|
||||
|
||||
@Override
|
||||
protected Map<String, String> getParams() {
|
||||
// Posting params to register url
|
||||
Map<String, String> params = new HashMap<String, String>();
|
||||
Map<String, String> params = new HashMap<>();
|
||||
params.put("tag", "requestpwreset");
|
||||
params.put("email", email);
|
||||
|
||||
|
||||
@@ -6,7 +6,6 @@ import android.location.Geocoder;
|
||||
import android.os.Bundle;
|
||||
import android.util.Log;
|
||||
import android.view.View;
|
||||
import android.widget.ArrayAdapter;
|
||||
import android.widget.EditText;
|
||||
import android.widget.Spinner;
|
||||
import android.widget.TextView;
|
||||
@@ -55,17 +54,7 @@ public class ViewReportActivity extends BaseActivity {
|
||||
txtPosition = (EditText) findViewById(R.id.input_viewreport_position);
|
||||
txtPositionDetail = (TextView) findViewById(R.id.lbl_viewreport_position_detail);
|
||||
|
||||
Spinner spinner = (Spinner) findViewById(R.id.dd_viewreport_category);
|
||||
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.incident_categories, android.R.layout.simple_spinner_item);
|
||||
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
|
||||
spinner.setAdapter(adapter);
|
||||
|
||||
Intent intent = getIntent();
|
||||
String uid = intent.getStringExtra(BaseActivity.EXTRA_MESSAGE);
|
||||
|
||||
String tag_string_req = "getincidentwithpositionfromid";
|
||||
StringRequest strReq = getStringRequestGetIncidentWithPositionFromID(uid);
|
||||
AppController.getInstance().addToRequestQueue(strReq, tag_string_req);
|
||||
getIncident();
|
||||
|
||||
findViewById(R.id.btn_viewreport_upvote).setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
@@ -160,4 +149,13 @@ public class ViewReportActivity extends BaseActivity {
|
||||
};
|
||||
}
|
||||
|
||||
public void getIncident() {
|
||||
Intent intent = getIntent();
|
||||
String uid = intent.getStringExtra(BaseActivity.EXTRA_MESSAGE);
|
||||
|
||||
String tag_string_req = "getincidentwithpositionfromid";
|
||||
StringRequest strReq = getStringRequestGetIncidentWithPositionFromID(uid);
|
||||
AppController.getInstance().addToRequestQueue(strReq, tag_string_req);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -20,6 +20,10 @@ import android.widget.ArrayAdapter;
|
||||
import android.widget.ListView;
|
||||
import android.widget.Toast;
|
||||
|
||||
import com.android.volley.Request;
|
||||
import com.android.volley.Response;
|
||||
import com.android.volley.VolleyError;
|
||||
import com.android.volley.toolbox.StringRequest;
|
||||
import com.beardedhen.androidbootstrap.TypefaceProvider;
|
||||
import com.google.android.gms.maps.model.LatLng;
|
||||
|
||||
@@ -33,8 +37,14 @@ import org.deke.risk.riskahead.ReportlistActivity;
|
||||
import org.deke.risk.riskahead.SettingsActivity;
|
||||
import org.deke.risk.riskahead.SubscriptionsActivity;
|
||||
import org.deke.risk.riskahead.ViewReportActivity;
|
||||
import org.json.JSONArray;
|
||||
import org.json.JSONException;
|
||||
import org.json.JSONObject;
|
||||
|
||||
import java.lang.reflect.Array;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
public abstract class BaseActivity extends AppCompatActivity {
|
||||
|
||||
|
||||
@@ -28,7 +28,7 @@ public class PlaceJSONParser {
|
||||
|
||||
private List<HashMap<String, String>> getPlaces(JSONArray jPlaces){
|
||||
int placesCount = jPlaces.length();
|
||||
List<HashMap<String, String>> placesList = new ArrayList<HashMap<String,String>>();
|
||||
List<HashMap<String, String>> placesList = new ArrayList<>();
|
||||
HashMap<String, String> place = null;
|
||||
|
||||
/** Taking each place, parses and adds to list object */
|
||||
@@ -49,7 +49,7 @@ public class PlaceJSONParser {
|
||||
/** Parsing the Place JSON object */
|
||||
private HashMap<String, String> getPlace(JSONObject jPlace){
|
||||
|
||||
HashMap<String, String> place = new HashMap<String, String>();
|
||||
HashMap<String, String> place = new HashMap<>();
|
||||
|
||||
String id="";
|
||||
String reference="";
|
||||
|
||||
@@ -16,8 +16,8 @@ public class PlaceJSONParserDetail {
|
||||
Double lng = Double.valueOf(0);
|
||||
String formattedAddress = "";
|
||||
|
||||
HashMap<String, String> hm = new HashMap<String, String>();
|
||||
List<HashMap<String, String>> list = new ArrayList<HashMap<String,String>>();
|
||||
HashMap<String, String> hm = new HashMap<>();
|
||||
List<HashMap<String, String>> list = new ArrayList<>();
|
||||
|
||||
try {
|
||||
lat = (Double)jObject.getJSONObject("result").getJSONObject("geometry").getJSONObject("location").get("lat");
|
||||
|
||||
@@ -112,7 +112,6 @@ public class PlaceProvider extends ContentProvider {
|
||||
|
||||
}
|
||||
} catch (JSONException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
}
|
||||
c = mCursor;
|
||||
@@ -141,7 +140,6 @@ public class PlaceProvider extends ContentProvider {
|
||||
mCursor.addRow(new String[] { Integer.toString(i), hMap.get("description"), hMap.get("reference") });
|
||||
}
|
||||
} catch (JSONException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
}
|
||||
c = mCursor;
|
||||
@@ -156,7 +154,6 @@ public class PlaceProvider extends ContentProvider {
|
||||
try {
|
||||
detailsList = detailsParser.parse(new JSONObject(jsonPlaceDetails));
|
||||
} catch (JSONException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
@@ -172,32 +169,26 @@ public class PlaceProvider extends ContentProvider {
|
||||
|
||||
@Override
|
||||
public int delete(Uri uri, String selection, String[] selectionArgs) {
|
||||
// TODO Auto-generated method stub
|
||||
return 0;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getType(Uri uri) {
|
||||
// TODO Auto-generated method stub
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Uri insert(Uri uri, ContentValues values) {
|
||||
// TODO Auto-generated method stub
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onCreate() {
|
||||
// TODO Auto-generated method stub
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int update(Uri uri, ContentValues values, String selection,
|
||||
String[] selectionArgs) {
|
||||
// TODO Auto-generated method stub
|
||||
public int update(Uri uri, ContentValues values, String selection,String[] selectionArgs) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
@@ -75,7 +75,7 @@ public class SessionManager {
|
||||
* Getting user data from database
|
||||
* */
|
||||
public HashMap<String, String> getUserDetails() {
|
||||
HashMap<String, String> user = new HashMap<String, String>();
|
||||
HashMap<String, String> user = new HashMap<>();
|
||||
|
||||
user.put(KEY_UID, userdata.getString(KEY_UID, null));
|
||||
user.put(KEY_USERNAME, userdata.getString(KEY_USERNAME, null));
|
||||
|
||||
Reference in New Issue
Block a user