DT @22.09.2015: Bugfix und ReportActivity-Erweiterung

This commit is contained in:
Dennis Thießen
2015-09-22 21:09:11 +02:00
parent 2ae10881b1
commit 2e74a4a5a3
7 changed files with 111 additions and 20 deletions

View File

@@ -100,6 +100,7 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
if (isEmpty(input_email) || isEmpty(input_password)) { if (isEmpty(input_email) || isEmpty(input_password)) {
showMessage("Please enter all fields before logging in"); showMessage("Please enter all fields before logging in");
} else { } else {
showDialog();
checkLogin(email, password); checkLogin(email, password);
} }
} else if (msg_intent.equals("register")) { } else if (msg_intent.equals("register")) {
@@ -107,6 +108,7 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
if (isEmpty(input_email) || isEmpty(input_password) || isEmpty(input_full_name)) { if (isEmpty(input_email) || isEmpty(input_password) || isEmpty(input_full_name)) {
showMessage("Please enter all fields before registration"); showMessage("Please enter all fields before registration");
} else { } else {
showDialog();
registerUser(name, email, password); registerUser(name, email, password);
} }
} }
@@ -234,9 +236,11 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
String created_at = user.getString("created_at"); String created_at = user.getString("created_at");
String updated_at = user.getString("updated_at"); String updated_at = user.getString("updated_at");
String providerType = user.getString("providerType"); String providerType = user.getString("providerType");
String token = user.getString("token");
// Inserting row in users table // Inserting row in users table
db.addUser(uid, username, name, surname, email, status, providerType, created_at, updated_at); db.addUser(uid, username, name, surname, email, status, providerType, created_at, updated_at, token);
db.close();
// Launch login activity // Launch login activity
Intent intent = new Intent( Intent intent = new Intent(
LoginActivity.this, LoginActivity.this,
@@ -308,6 +312,7 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
String created_at = user.getString("created_at"); String created_at = user.getString("created_at");
String updated_at = user.getString("updated_at"); String updated_at = user.getString("updated_at");
String providerType = "local"; String providerType = "local";
String token = user.getString("token");
if(status.equals("0")){ if(status.equals("0")){
new AlertDialog.Builder(getApplicationContext()) new AlertDialog.Builder(getApplicationContext())
@@ -333,12 +338,12 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr
.show(); .show();
}else { }else {
// Inserting row in users table // Inserting row in users table
db.addUser(uid, username, name, surname, email, status, providerType, created_at, updated_at); db.addUser(uid, username, name, surname, email, status, providerType, created_at, updated_at, token);
// user successfully logged in // user successfully logged in
// Create login session // Create login session
session.setLogin(true); session.setLogin(true);
hideDialog();
// Launch main activity // Launch main activity
Intent intent = new Intent(LoginActivity.this, MainActivity.class); Intent intent = new Intent(LoginActivity.this, MainActivity.class);
startActivity(intent); startActivity(intent);

View File

@@ -88,7 +88,7 @@ public class MainActivity extends BaseActivity{
{ {
@Override @Override
public void run() { public void run() {
StringRequest strReq = getStringRequestIncidentCount(db.getUserDetails().get("email")); StringRequest strReq = getStringRequestIncidentCount(user.get("uid"),user.get("token"));
String tag_string_req = "req_incidents"; String tag_string_req = "req_incidents";
AppController.getInstance().addToRequestQueue(strReq, tag_string_req); AppController.getInstance().addToRequestQueue(strReq, tag_string_req);
mHandler.postDelayed(mHandlerTask, INTERVAL); mHandler.postDelayed(mHandlerTask, INTERVAL);
@@ -105,7 +105,7 @@ public class MainActivity extends BaseActivity{
mHandler.removeCallbacks(mHandlerTask); mHandler.removeCallbacks(mHandlerTask);
} }
private StringRequest getStringRequestIncidentCount(final String email) { private StringRequest getStringRequestIncidentCount(final String uid, final String token) {
return new StringRequest(Request.Method.POST, AppConfig.URL_REGISTER, new Response.Listener<String>() { return new StringRequest(Request.Method.POST, AppConfig.URL_REGISTER, new Response.Listener<String>() {
@Override @Override
@@ -132,10 +132,10 @@ public class MainActivity extends BaseActivity{
@Override @Override
public void onErrorResponse(VolleyError error) { public void onErrorResponse(VolleyError error) {
Log.e(TAG, "E-Mail pw resend Error: " + error.getMessage()); Log.e(TAG, "Error getting incident count: " + error.getMessage());
Toast.makeText(getApplicationContext(), Toast.makeText(getApplicationContext(),
error.getMessage(), Toast.LENGTH_LONG).show(); error.getMessage(), Toast.LENGTH_LONG).show();
stopRepeatingTask();
} }
}) { }) {
@@ -144,7 +144,8 @@ public class MainActivity extends BaseActivity{
// Posting params to register url // Posting params to register url
Map<String, String> params = new HashMap<>(); Map<String, String> params = new HashMap<>();
params.put("tag", "getincidentcount"); params.put("tag", "getincidentcount");
params.put("email", email); params.put("uid", uid);
params.put("token", token);
return params; return params;
} }

View File

@@ -22,6 +22,17 @@ public class ReportActivity extends BaseActivity {
private static final int DATE_DIALOG_ID = 999; private static final int DATE_DIALOG_ID = 999;
private static final int TIME_DIALOG_ID = 998; private static final int TIME_DIALOG_ID = 998;
private static final String SAVED_TITLE = "801";
private static final String SAVED_DESCRIPTION_LONG = "802";
private static final String SAVED_CRIME_CATEGORY = "803";
private static final String SAVED_DATE_INCIDENT = "804";
private static final String SAVED_DATE_TIME = "805";
private static final String SAVED_POSITION = "806";
private EditText txtTitle;
private EditText txtDescription;
private Spinner txtCrimeCategory;
private EditText txtPosition;
private EditText txtDay; private EditText txtDay;
private EditText txtTime; private EditText txtTime;
@@ -44,8 +55,12 @@ public class ReportActivity extends BaseActivity {
hour = c.get(Calendar.HOUR_OF_DAY); hour = c.get(Calendar.HOUR_OF_DAY);
minute = c.get(Calendar.MINUTE); minute = c.get(Calendar.MINUTE);
txtDay = (EditText) findViewById(R.id.txt_report_date); txtTitle = (EditText) findViewById(R.id.input_report_short);
txtTime = (EditText) findViewById(R.id.txt_report_time); txtDescription = (EditText) findViewById(R.id.input_report_long);
txtCrimeCategory = (Spinner) findViewById(R.id.dd_report_category);
txtDay = (EditText) findViewById(R.id.input_report_date);
txtTime = (EditText) findViewById(R.id.input_report_time);
txtPosition = (EditText) findViewById(R.id.input_report_position);
txtDay.setText(new StringBuilder() txtDay.setText(new StringBuilder()
.append(day).append("-").append(month + 1).append("-") .append(day).append("-").append(month + 1).append("-")
@@ -54,6 +69,13 @@ public class ReportActivity extends BaseActivity {
txtTime.setText(new StringBuilder().append(hour) txtTime.setText(new StringBuilder().append(hour)
.append(":").append(minute).append(" ")); .append(":").append(minute).append(" "));
findViewById(R.id.btn_report_position).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
gotoMapActivity();
}
});
txtDay.setOnClickListener(new View.OnClickListener() { txtDay.setOnClickListener(new View.OnClickListener() {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
@@ -69,6 +91,17 @@ public class ReportActivity extends BaseActivity {
}); });
} }
@Override
public void onRestoreInstanceState(Bundle savedInstanceState) {
super.onRestoreInstanceState(savedInstanceState);
txtTitle.setText(savedInstanceState.getString(SAVED_TITLE));
txtDescription.setText(savedInstanceState.getString(SAVED_DESCRIPTION_LONG));
txtCrimeCategory.setSelection(savedInstanceState.getInt(SAVED_CRIME_CATEGORY));
txtDay.setText(savedInstanceState.getString(SAVED_DATE_INCIDENT));
txtTime.setText(savedInstanceState.getString(SAVED_DATE_TIME));
txtPosition.setText(savedInstanceState.getString(SAVED_POSITION));
}
@Override @Override
protected Dialog onCreateDialog(int id) { protected Dialog onCreateDialog(int id) {
switch (id) { switch (id) {
@@ -126,6 +159,17 @@ public class ReportActivity extends BaseActivity {
return mActivityTitle; return mActivityTitle;
} }
@Override
public void onSaveInstanceState(Bundle savedInstanceState) {
super.onSaveInstanceState(savedInstanceState);
savedInstanceState.putString(SAVED_TITLE, txtTitle.getText().toString());
savedInstanceState.putString(SAVED_DESCRIPTION_LONG, txtDescription.getText().toString());
savedInstanceState.putInt(SAVED_CRIME_CATEGORY, txtCrimeCategory.getSelectedItemPosition());
savedInstanceState.putString(SAVED_DATE_INCIDENT, txtDay.getText().toString());
savedInstanceState.putString(SAVED_DATE_TIME, txtTime.getText().toString());
savedInstanceState.putString(SAVED_POSITION, txtPosition.getText().toString());
}
} }

View File

@@ -135,6 +135,7 @@ public abstract class BaseActivity extends AppCompatActivity {
@Override @Override
public void onDrawerClosed(View drawerView) { public void onDrawerClosed(View drawerView) {
super.onDrawerClosed(drawerView); super.onDrawerClosed(drawerView);
switch (position) { switch (position) {
case 0: case 0:
gotoMainActivity(); gotoMainActivity();

View File

@@ -33,6 +33,7 @@ public class SQLiteHandler extends SQLiteOpenHelper {
private static final String PROVIDER_TYPE = "providerType"; private static final String PROVIDER_TYPE = "providerType";
private static final String KEY_CREATED_AT = "created_at"; private static final String KEY_CREATED_AT = "created_at";
private static final String KEY_UPDATED_AT = "updated_at"; private static final String KEY_UPDATED_AT = "updated_at";
private static final String TOKEN = "token";
public SQLiteHandler(Context context) { public SQLiteHandler(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION); super(context, DATABASE_NAME, null, DATABASE_VERSION);
@@ -50,7 +51,8 @@ public class SQLiteHandler extends SQLiteOpenHelper {
+ KEY_STATUS + " TEXT," + KEY_STATUS + " TEXT,"
+ PROVIDER_TYPE + " TEXT," + PROVIDER_TYPE + " TEXT,"
+ KEY_UPDATED_AT + " TEXT," + KEY_UPDATED_AT + " TEXT,"
+ KEY_CREATED_AT + " TEXT" + ")"; + KEY_CREATED_AT + " TEXT,"
+ TOKEN + " TEXT"+ ")";
db.execSQL(CREATE_LOGIN_TABLE); db.execSQL(CREATE_LOGIN_TABLE);
Log.d(TAG, "Database tables created"); Log.d(TAG, "Database tables created");
@@ -66,7 +68,7 @@ public class SQLiteHandler extends SQLiteOpenHelper {
/** /**
* Storing user details in database * Storing user details in database
* */ * */
public void addUser(String uid, String username, String name, String surname, String email, String status, String provider_type, String created_at, String updated_at) { public void addUser(String uid, String username, String name, String surname, String email, String status, String provider_type, String created_at, String updated_at, String token) {
SQLiteDatabase db = this.getWritableDatabase(); SQLiteDatabase db = this.getWritableDatabase();
ContentValues values = new ContentValues(); ContentValues values = new ContentValues();
@@ -79,6 +81,7 @@ public class SQLiteHandler extends SQLiteOpenHelper {
values.put(PROVIDER_TYPE, provider_type); // ProviderType values.put(PROVIDER_TYPE, provider_type); // ProviderType
values.put(KEY_CREATED_AT, created_at); // Created At values.put(KEY_CREATED_AT, created_at); // Created At
values.put(KEY_UPDATED_AT, updated_at); // Updated At values.put(KEY_UPDATED_AT, updated_at); // Updated At
values.put(TOKEN, token); // TOKEN
// Inserting Row // Inserting Row
long id = db.insert(TABLE_LOGIN, null, values); long id = db.insert(TABLE_LOGIN, null, values);
@@ -108,6 +111,7 @@ public class SQLiteHandler extends SQLiteOpenHelper {
user.put("providerType", cursor.getString(6)); user.put("providerType", cursor.getString(6));
user.put("created_at", cursor.getString(7)); user.put("created_at", cursor.getString(7));
user.put("updated_at", cursor.getString(8)); user.put("updated_at", cursor.getString(8));
user.put("token", cursor.getString(9));
} }
cursor.close(); cursor.close();
db.close(); db.close();

View File

@@ -86,12 +86,12 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="10dp" android:layout_marginTop="10dp"
android:layout_above="@+id/txt_report_time" android:layout_above="@+id/input_report_time"
android:layout_alignLeft="@+id/txt_report_time" android:layout_alignLeft="@+id/input_report_time"
android:layout_alignStart="@+id/txt_report_time"/> android:layout_alignStart="@+id/input_report_time"/>
<EditText <EditText
android:id="@+id/txt_report_date" android:id="@+id/input_report_date"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:inputType="date" android:inputType="date"
@@ -102,16 +102,50 @@
android:focusable="false"/> android:focusable="false"/>
<EditText <EditText
android:id="@+id/txt_report_time" android:id="@+id/input_report_time"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:inputType="time" android:inputType="time"
android:ems="10" android:ems="10"
android:layout_alignBottom="@+id/txt_report_date" android:layout_alignBottom="@+id/input_report_date"
android:layout_toRightOf="@+id/txt_report_date" android:layout_toRightOf="@+id/input_report_date"
android:layout_toEndOf="@+id/txt_report_date" android:layout_toEndOf="@+id/input_report_date"
android:focusable="false"/> android:focusable="false"/>
<TextView
android:id="@+id/lbl_report_position"
android:text="@string/lbl_report_position"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:layout_below="@+id/input_report_date"
android:layout_alignLeft="@+id/input_report_date"
android:layout_alignStart="@+id/input_report_time"/>
<EditText
android:id="@+id/input_report_position"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:inputType="date"
android:ems="10"
android:layout_below="@+id/lbl_report_position"
android:layout_alignLeft="@+id/lbl_report_position"
android:layout_alignStart="@+id/lbl_report_position"
android:editable="false"/>
<com.beardedhen.androidbootstrap.BootstrapButton
android:id="@+id/btn_report_position"
android:text="@string/btn_report_position"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
bootstrap:bb_icon_left="fa-search"
bootstrap:bb_type="primary"
bootstrap:bb_roundedCorners="true"
android:layout_marginTop="7dp"
android:layout_alignTop="@+id/lbl_report_position"
android:layout_alignRight="@+id/input_report_time"
android:layout_alignEnd="@+id/input_report_time" />
</RelativeLayout> </RelativeLayout>

View File

@@ -85,6 +85,8 @@
<string name="menu_action_about">About</string> <string name="menu_action_about">About</string>
<string name="menu_action_help">Help</string> <string name="menu_action_help">Help</string>
<string name="menu_action_exit">Exit</string> <string name="menu_action_exit">Exit</string>
<string name="lbl_report_position">Position</string>
<string name="btn_report_position">Position</string>
<string-array name="incident_categories"> <string-array name="incident_categories">
<item>Personal</item> <item>Personal</item>