From 56838a161dc2baecd3bee8d61f2c62357d00a785 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dennis=20Thie=C3=9Fen?= Date: Wed, 10 Feb 2016 21:17:32 +0100 Subject: [PATCH] =?UTF-8?q?@10.02.16=20Dennis=20Thie=C3=9Fen:=202.0=20Fina?= =?UTF-8?q?l=20Release!?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle | 14 +- app/proguard-rules.pro | 15 + app/src/main/AndroidManifest.xml | 15 +- .../deke/risk/riskahead/LoginActivity.java | 200 +++++++- .../org/deke/risk/riskahead/MainActivity.java | 22 +- .../org/deke/risk/riskahead/MapsActivity.java | 11 +- .../deke/risk/riskahead/ProfileActivity.java | 7 + .../deke/risk/riskahead/ReportWFActivity.java | 11 +- .../deke/risk/riskahead/SettingsActivity.java | 7 + .../deke/risk/riskahead/StartActivity.java | 7 + .../risk/riskahead/SubscriptionsActivity.java | 35 +- .../risk/riskahead/ViewReportActivity.java | 99 ++-- .../adapter/ProfilePagerAdapter.java | 7 + .../riskahead/adapter/ReportListAdapter.java | 7 + .../riskahead/adapter/SpinnerHintAdapter.java | 7 +- .../riskahead/adapter/Top10ListAdapter.java | 7 + .../fragment/BaseReportWFFragment.java | 6 +- .../fragment/FacebookButtonFragment.java | 7 + .../fragment/GooglePlusButtonFragment.java | 7 + .../fragment/ProfileStatisticsFragment.java | 9 +- .../fragment/ReportListFragment.java | 11 +- .../fragment/ReportWF_1_Fragment.java | 6 +- .../fragment/ReportWF_2_Fragment.java | 6 +- .../fragment/ReportWF_3_Fragment.java | 6 +- .../fragment/ReportWF_4_Fragment.java | 6 +- .../fragment/ReportWF_5_Fragment.java | 6 +- .../fragment/ReportWF_6_Fragment.java | 6 +- .../fragment/ReportWF_7_Fragment.java | 6 +- .../fragment/ReportWF_8_Fragment.java | 6 +- .../fragment/ReportWF_Finish_Fragment.java | 6 +- .../riskahead/fragment/SettingsFragment.java | 6 +- .../riskahead/fragment/Top10Fragment.java | 9 +- .../fragment/TwitterButtonFragment.java | 7 + .../deke/risk/riskahead/helper/AppConfig.java | 18 +- .../risk/riskahead/helper/AppController.java | 7 + .../deke/risk/riskahead/helper/AppRater.java | 9 +- .../risk/riskahead/helper/BaseActivity.java | 71 ++- .../risk/riskahead/helper/IncidentReport.java | 11 +- .../riskahead/helper/NotificationService.java | 33 +- .../riskahead/helper/OwnIconRendered.java | 8 +- .../riskahead/helper/PlaceJSONParser.java | 7 + .../helper/PlaceJSONParserDetail.java | 7 + .../risk/riskahead/helper/PlaceProvider.java | 7 + .../riskahead/helper/RABroadcastReceiver.java | 10 +- .../risk/riskahead/helper/SessionManager.java | 20 +- .../risk/riskahead/helper/TextValidator.java | 7 + .../helper/ValidatedEditTextPreference.java | 8 +- app/src/main/res/anim/fade_in_anim.xml | 4 +- app/src/main/res/anim/fade_out_anim.xml | 4 +- app/src/main/res/anim/slide_in_left.xml | 8 + app/src/main/res/anim/slide_in_right.xml | 8 + app/src/main/res/anim/slide_out_left.xml | 8 + app/src/main/res/anim/slide_out_right.xml | 8 + app/src/main/res/layout/activity_main.xml | 10 +- app/src/main/res/layout/activity_maps.xml | 1 - app/src/main/res/layout/activity_profile.xml | 3 +- .../main/res/layout/activity_report_wf.xml | 3 +- app/src/main/res/layout/activity_settings.xml | 3 +- app/src/main/res/layout/activity_start.xml | 7 +- .../res/layout/activity_subscriptions.xml | 3 +- .../main/res/layout/activity_view_report.xml | 23 +- app/src/main/res/layout/dialog_about.xml | 16 +- .../res/layout/fragment_facebook_button.xml | 2 - .../res/layout/fragment_googleplus_button.xml | 1 - .../res/layout/fragment_reportlist_row.xml | 11 +- .../main/res/layout/fragment_reportwf_1.xml | 1 - .../main/res/layout/fragment_reportwf_2.xml | 2 +- .../res/layout/fragment_twitter_button.xml | 2 - app/src/main/res/layout/map_info_window.xml | 2 - app/src/main/res/values-ar/strings.xml | 10 +- app/src/main/res/values-de/strings.xml | 16 +- app/src/main/res/values-es/strings.xml | 8 +- app/src/main/res/values-et/strings.xml | 446 +++++++++++++++++ app/src/main/res/values-fr/strings.xml | 357 +++++++------- app/src/main/res/values-lv/strings.xml | 445 +++++++++++++++++ app/src/main/res/values-mn/strings.xml | 449 ++++++++++++++++++ app/src/main/res/values-pl/strings.xml | 445 +++++++++++++++++ app/src/main/res/values-pt/strings.xml | 40 +- app/src/main/res/values-ru/strings.xml | 9 +- app/src/main/res/values-tr/strings.xml | 445 +++++++++++++++++ app/src/main/res/values/strings.xml | 21 +- 81 files changed, 3193 insertions(+), 438 deletions(-) create mode 100644 app/src/main/res/anim/slide_in_left.xml create mode 100644 app/src/main/res/anim/slide_in_right.xml create mode 100644 app/src/main/res/anim/slide_out_left.xml create mode 100644 app/src/main/res/anim/slide_out_right.xml create mode 100644 app/src/main/res/values-et/strings.xml create mode 100644 app/src/main/res/values-lv/strings.xml create mode 100644 app/src/main/res/values-mn/strings.xml create mode 100644 app/src/main/res/values-pl/strings.xml create mode 100644 app/src/main/res/values-tr/strings.xml diff --git a/app/build.gradle b/app/build.gradle index 577c62c..5cc2cc7 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -18,13 +18,15 @@ android { defaultConfig { applicationId "org.deke.risk.riskahead" minSdkVersion 15 - targetSdkVersion 20 - versionCode 23 - versionName "1.9" + targetSdkVersion 23 + versionCode 28 + versionName "2.0" } buildTypes { release { - minifyEnabled false + minifyEnabled true + shrinkResources true + debuggable false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } @@ -40,11 +42,11 @@ dependencies { compile('com.twitter.sdk.android:twitter-core:1.4.1@aar') { transitive = true; } - compile('com.mikepenz:materialdrawer:4.5.8@aar') { + compile('com.mikepenz:materialdrawer:4.6.4@aar') { transitive = true } compile 'com.android.support:appcompat-v7:23.1.1' - compile 'com.mikepenz:iconics-core:2.5.1@aar' + compile 'com.mikepenz:iconics-core:2.5.5@aar' compile 'com.mikepenz:google-material-typeface:2.1.0.1.original@aar' compile 'com.google.android.gms:play-services-gcm:8.4.0' compile 'com.google.android.gms:play-services-plus:8.4.0' diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro index 622f32f..8ea8a54 100644 --- a/app/proguard-rules.pro +++ b/app/proguard-rules.pro @@ -15,3 +15,18 @@ #-keepclassmembers class fqcn.of.javascript.interface.for.webview { # public *; #} + +-keep class com.google.android.gms.** { *; } +-dontwarn com.google.android.gms.** + +-keep class org.apache.http.** { *; } +-dontwarn org.apache.http.** + +-keep class com.android.volley.** { *; } +-dontwarn com.android.volley.** + +# Hide warnings about references to newer platforms in the library +-dontwarn android.support.v7.** +# don't process support library +-keep class android.support.v7.** { *; } +-keep interface android.support.v7.** { *; } diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 7bdb690..f6dc2b4 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -5,15 +5,15 @@ - + + - - - - + + + - + @@ -77,12 +77,10 @@ @@ -104,7 +102,6 @@ () { + + @Override + public void onResponse(String response) { + Log.d(TAG, "Check User Exists Response: " + response); + hideDialog(); + + try { + JSONObject jObj = new JSONObject(response); + boolean error = jObj.getBoolean("error"); + + if (!error) { + if(jObj.getBoolean("maintenancemode")){ + showMessage(jObj.getString("maintenancemsg")); + gotoStartActivity(); + } + } + } catch (JSONException e) { + e.printStackTrace(); + } + } + }, new Response.ErrorListener() { + + @Override + public void onErrorResponse(VolleyError error) { + } + }) { + + @Override + protected Map getParams() { + Map params = new HashMap<>(); + params.put("tag", AppConfig.REST_CHECK_MAINTENANCE); + + return params; + } + }; + } + + private void gotoStartActivity() { + Intent intent = new Intent( + LoginActivity.this, + StartActivity.class); + startActivity(intent); + } + + private void checkIfVersionSupported() { + String tag_string_req = "req_checkformaintenance"; + StringRequest strReq = getStringRequestCheckIfVersionSupported(); + AppController.getInstance().addToRequestQueue(strReq, tag_string_req); + } + + private StringRequest getStringRequestCheckIfVersionSupported() { + return new StringRequest(Method.POST, AppConfig.URL_ENCRYPTED, new Response.Listener() { + + @Override + public void onResponse(String response) { + Log.d(TAG, "Check User Exists Response: " + response); + hideDialog(); + + try { + JSONObject jObj = new JSONObject(response); + boolean error = jObj.getBoolean("error"); + + if (!error) { + if(!jObj.getBoolean("supported")){ + showNotSupportedDialog(); + }else if(!jObj.getBoolean("recommended")){ + showNotRecommendDialog(); + } + } + } catch (JSONException e) { + e.printStackTrace(); + } + } + }, new Response.ErrorListener() { + + @Override + public void onErrorResponse(VolleyError error) { + } + }) { + + @Override + protected Map getParams() { + Map params = new HashMap<>(); + int versionCode = 99; + + try { + versionCode = getPackageManager().getPackageInfo(getPackageName(), 0).versionCode; + } catch (PackageManager.NameNotFoundException e) { + e.printStackTrace(); + } + + params.put("tag", AppConfig.REST_CHECK_VERSION); + params.put("version", Integer.toString(versionCode)); + return params; + } + }; + } + + private void showNotSupportedDialog() { + new AlertDialog.Builder(LoginActivity.this) + .setTitle(getString(R.string.alert_notsupported_title)) + .setMessage(getString(R.string.alert_notsupported_text)) + .setCancelable(false) + .setPositiveButton(R.string.update, new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int which) { + startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=" + getPackageName()))); + } + }) + .setNegativeButton(R.string.exit, new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int which) { + Intent intent = new Intent(Intent.ACTION_MAIN); + intent.addCategory(Intent.CATEGORY_HOME); + intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); + startActivity(intent); + } + }) + .setIcon(android.R.drawable.ic_dialog_alert) + .show(); + } + + private void showNotRecommendDialog() { + new AlertDialog.Builder(LoginActivity.this) + .setTitle(getString(R.string.alert_notrecommended_title)) + .setMessage(getString(R.string.alert_notrecommended_text)) + .setCancelable(false) + .setPositiveButton(R.string.update, new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int which) { + startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=" + getPackageName()))); + } + }) + .setNegativeButton(R.string.later, new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int which) { + + } + }) + .setIcon(android.R.drawable.ic_dialog_alert) + .show(); + } + private void performLogin(final String email, final String password) { String tag_string_req = "req_login"; StringRequest strReq = getStringRequestLogin(email, password); @@ -580,7 +765,7 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr CheckBox privacyCheckbox = new CheckBox(getApplicationContext()); privacyCheckbox.setText(R.string.txt_register_privacy_text); - privacyCheckbox.setTextColor(getResources().getColor(R.color.md_black_1000)); + privacyCheckbox.setTextColor(ContextCompat.getColor(getApplicationContext(), R.color.md_black_1000)); final float scale = this.getResources().getDisplayMetrics().density; privacyCheckbox.setPadding(privacyCheckbox.getPaddingLeft() + (int) (10.0f * scale + 0.5f), privacyCheckbox.getPaddingTop() + 5, @@ -641,7 +826,7 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr CheckBox privacyCheckbox = new CheckBox(getApplicationContext()); privacyCheckbox.setText(R.string.txt_register_privacy_text); - privacyCheckbox.setTextColor(getResources().getColor(R.color.md_black_1000)); + privacyCheckbox.setTextColor(ContextCompat.getColor(getApplicationContext(), R.color.md_black_1000)); final float scale = this.getResources().getDisplayMetrics().density; privacyCheckbox.setPadding(privacyCheckbox.getPaddingLeft() + (int) (10.0f * scale + 0.5f), privacyCheckbox.getPaddingTop() + 5, @@ -857,10 +1042,7 @@ public class LoginActivity extends AppCompatActivity implements FacebookButtonFr @Override public void onBackPressed() { - Intent intent = new Intent( - LoginActivity.this, - StartActivity.class); - startActivity(intent); + gotoStartActivity(); finish(); } 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 e6181fe..34095b1 100644 --- a/app/src/main/java/org/deke/risk/riskahead/MainActivity.java +++ b/app/src/main/java/org/deke/risk/riskahead/MainActivity.java @@ -28,12 +28,18 @@ 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(); - private Handler handler; @Override protected void onCreate(Bundle savedInstanceState) { @@ -67,7 +73,7 @@ public class MainActivity extends BaseActivity{ .sizeDp(24); report.setCompoundDrawables(reportIcon, null, null, null); - report.setBackgroundDrawable(ContextCompat.getDrawable(getApplicationContext(), R.drawable.activity_main_button)); + report.setBackgroundResource(R.drawable.activity_main_button); Button map = (Button) findViewById(R.id.btn_main_viewmap); @@ -84,8 +90,7 @@ public class MainActivity extends BaseActivity{ .sizeDp(24); map.setCompoundDrawables(null, null, mapIcon, null); - map.setBackgroundDrawable(ContextCompat.getDrawable(getApplicationContext(), R.drawable.activity_main_button)); - + map.setBackgroundResource(R.drawable.activity_main_button); } }); } @@ -100,14 +105,15 @@ public class MainActivity extends BaseActivity{ if(session.getNotificationEnabled()){ if(session.getNotificationServiceReady()){ notificationStatus.setText(getString(R.string.txt_notifystatus_activated)); - notificationStatus.setTextColor(getResources().getColor(R.color.md_green_400)); + + notificationStatus.setTextColor(ContextCompat.getColor(getApplicationContext(),R.color.md_green_400)); }else{ notificationStatus.setText(getString(R.string.txt_notifystatus_activatedbutnotready)); - notificationStatus.setTextColor(getResources().getColor(R.color.md_yellow_400)); + notificationStatus.setTextColor(ContextCompat.getColor(getApplicationContext(),R.color.md_yellow_400)); } }else{ notificationStatus.setText(getString(R.string.txt_notifystatus_deactivated)); - notificationStatus.setTextColor(getResources().getColor(R.color.md_red_400)); + notificationStatus.setTextColor(ContextCompat.getColor(getApplicationContext(), R.color.md_red_400)); } mHandler.postDelayed(mHandlerTask, AppConfig.UPDATE_COUNT_INTERVAL); @@ -150,7 +156,7 @@ public class MainActivity extends BaseActivity{ @Override public void onErrorResponse(VolleyError error) { Log.e(TAG, "Error getting incident count: " + error.getMessage()); - showMessage(getString(R.string.errormsg_couldnotretrieve)); + handleVolleyErrorResponse(); stopRepeatingTask(); hideDialog(); } 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 a808088..e828c0e 100644 --- a/app/src/main/java/org/deke/risk/riskahead/MapsActivity.java +++ b/app/src/main/java/org/deke/risk/riskahead/MapsActivity.java @@ -62,6 +62,13 @@ import java.util.HashMap; import java.util.Locale; 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 MapsActivity extends BaseActivity implements LoaderManager.LoaderCallbacks, ClusterManager.OnClusterItemInfoWindowClickListener, ClusterManager.OnClusterClickListener, ClusterManager.OnClusterItemClickListener, OnMapReadyCallback { @@ -389,7 +396,7 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa public void onErrorResponse(VolleyError error) { hideProgress(); Log.e(TAG, "Error getting map positions: " + error.getMessage()); - showMessage(getString(R.string.errormsg_couldnotretrieve)); + handleVolleyErrorResponse(); } }) { @Override @@ -530,7 +537,7 @@ public class MapsActivity extends BaseActivity implements LoaderManager.LoaderCa public void onErrorResponse(VolleyError error) { hideProgress(); Log.e(TAG, "Error getting incident details: " + error.getMessage()); - showMessage(getString(R.string.errormsg_couldnotretrieve)); + handleVolleyErrorResponse(); } }) { @Override diff --git a/app/src/main/java/org/deke/risk/riskahead/ProfileActivity.java b/app/src/main/java/org/deke/risk/riskahead/ProfileActivity.java index 1d4b0cd..57459ae 100644 --- a/app/src/main/java/org/deke/risk/riskahead/ProfileActivity.java +++ b/app/src/main/java/org/deke/risk/riskahead/ProfileActivity.java @@ -12,6 +12,13 @@ import org.deke.risk.riskahead.helper.BaseActivity; import org.deke.risk.riskahead.adapter.ProfilePagerAdapter; 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 ProfileActivity extends BaseActivity{ private final static String TAG = ProfileActivity.class.getSimpleName(); 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 cca761e..44e651d 100644 --- a/app/src/main/java/org/deke/risk/riskahead/ReportWFActivity.java +++ b/app/src/main/java/org/deke/risk/riskahead/ReportWFActivity.java @@ -24,9 +24,7 @@ import com.android.volley.Response; import com.android.volley.VolleyError; import com.android.volley.toolbox.StringRequest; import com.beardedhen.androidbootstrap.BootstrapButton; -import com.beardedhen.androidbootstrap.api.attributes.BootstrapBrand; import com.beardedhen.androidbootstrap.api.defaults.DefaultBootstrapBrand; -import com.beardedhen.androidbootstrap.api.view.BootstrapBrandView; import com.google.android.gms.maps.model.LatLng; import com.google.gson.Gson; @@ -55,6 +53,13 @@ import java.util.List; import java.util.Locale; 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 ReportWFActivity extends BaseActivity implements ReportWF_1_Fragment.OnInputFinishedListener, ReportWF_2_Fragment.OnInputFinishedListener, ReportWF_3_Fragment.OnInputFinishedListener ,ReportWF_4_Fragment.OnInputFinishedListener, ReportWF_5_Fragment.OnInputFinishedListener,ReportWF_6_Fragment.OnInputFinishedListener ,ReportWF_7_Fragment.OnInputFinishedListener, ReportWF_8_Fragment.OnInputFinishedListener, ReportWF_Finish_Fragment.SendReportListener { @@ -333,7 +338,7 @@ public class ReportWFActivity extends BaseActivity implements ReportWF_1_Fragmen @Override public void onErrorResponse(VolleyError error) { Log.e(TAG, "Error adding incident: " + error.getMessage()); - showMessage(getString(R.string.errormsg_couldnotretrieve)); + handleVolleyErrorResponse(); hideDialog(); } }) { 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 45e7843..625c27b 100644 --- a/app/src/main/java/org/deke/risk/riskahead/SettingsActivity.java +++ b/app/src/main/java/org/deke/risk/riskahead/SettingsActivity.java @@ -6,6 +6,13 @@ import android.util.Log; import org.deke.risk.riskahead.fragment.SettingsFragment; import org.deke.risk.riskahead.helper.BaseActivity; +/** + * + * (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 SettingsActivity extends BaseActivity { private final static String TAG = SettingsActivity.class.getSimpleName(); diff --git a/app/src/main/java/org/deke/risk/riskahead/StartActivity.java b/app/src/main/java/org/deke/risk/riskahead/StartActivity.java index bab4bff..9d45151 100644 --- a/app/src/main/java/org/deke/risk/riskahead/StartActivity.java +++ b/app/src/main/java/org/deke/risk/riskahead/StartActivity.java @@ -12,6 +12,13 @@ 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(); 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 fe4ceeb..ec83416 100644 --- a/app/src/main/java/org/deke/risk/riskahead/SubscriptionsActivity.java +++ b/app/src/main/java/org/deke/risk/riskahead/SubscriptionsActivity.java @@ -37,6 +37,13 @@ import java.util.ArrayList; 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 SubscriptionsActivity extends BaseActivity{ private final static String TAG = SubscriptionsActivity.class.getSimpleName(); @@ -116,14 +123,15 @@ public class SubscriptionsActivity extends BaseActivity{ ownedSkus = activeSubs.getStringArrayList("INAPP_PURCHASE_ITEM_LIST"); ArrayList purchaseDataList = activeSubs.getStringArrayList("INAPP_PURCHASE_DATA_LIST"); ArrayList signatureList = activeSubs.getStringArrayList("INAPP_DATA_SIGNATURE_LIST"); - String continuationToken = activeSubs.getString("INAPP_CONTINUATION_TOKEN"); - for (int i = 0; i < purchaseDataList.size(); ++i) { - String purchaseData = purchaseDataList.get(i); - String signature = signatureList.get(i); - String sku = ownedSkus.get(i); + if (purchaseDataList != null && signatureList != null) { + for (int i = 0; i < purchaseDataList.size(); ++i) { + String purchaseData = purchaseDataList.get(i); + String signature = signatureList.get(i); + String sku = ownedSkus.get(i); - Log.d(TAG, "Already purchased: " + sku + " : " + purchaseData + " : " + signature); + Log.d(TAG, "Already purchased: " + sku + " : " + purchaseData + " : " + signature); + } } getSubscriptionsAndSync(user.get(SessionManager.KEY_UID)); @@ -143,9 +151,6 @@ public class SubscriptionsActivity extends BaseActivity{ Log.d(TAG, "No active subs in Database"); } - - - for(String sub : skuList){ boolean itemFound = false; @@ -162,9 +167,7 @@ public class SubscriptionsActivity extends BaseActivity{ } for(String sku : ownedSkus){ - if(dbItems != null && dbItems.containsKey(sku)){ - // everything in sync - }else{ + if(!(dbItems != null && dbItems.containsKey(sku))){ Log.d(TAG, "Subscription "+sku+" not found in DB, add subscription!"); addSubscription(sku, "subs", "0", "0"); } @@ -245,8 +248,9 @@ public class SubscriptionsActivity extends BaseActivity{ PendingIntent pendingIntent = buyIntentBundle.getParcelable("BUY_INTENT"); - startIntentSenderForResult(pendingIntent.getIntentSender(), - 1001, new Intent(), 0, 0, 0); + if (pendingIntent != null) { + startIntentSenderForResult(pendingIntent.getIntentSender(),1001, new Intent(), 0, 0, 0); + } } catch (Exception e) { e.printStackTrace(); } @@ -259,6 +263,8 @@ public class SubscriptionsActivity extends BaseActivity{ String purchaseData = data.getStringExtra("INAPP_PURCHASE_DATA"); String dataSignature = data.getStringExtra("INAPP_DATA_SIGNATURE"); + Log.d(TAG,"Response Code: "+responseCode + " DataSignature: "+dataSignature); + if (resultCode == RESULT_OK) { try { JSONObject jo = new JSONObject(purchaseData); @@ -374,6 +380,7 @@ public class SubscriptionsActivity extends BaseActivity{ @Override public void onErrorResponse(VolleyError error) { Log.e(TAG, "Error getting subscription: " + error.getMessage()); + handleVolleyErrorResponse(); } }) { 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 804121f..8991993 100644 --- a/app/src/main/java/org/deke/risk/riskahead/ViewReportActivity.java +++ b/app/src/main/java/org/deke/risk/riskahead/ViewReportActivity.java @@ -37,6 +37,13 @@ import java.util.List; import java.util.Locale; 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 ViewReportActivity extends BaseActivity { private final static String TAG = ViewReportActivity.class.getSimpleName(); @@ -67,6 +74,10 @@ public class ViewReportActivity extends BaseActivity { super.onCreate(savedInstanceState); userHasToBeLoggedIn(); + initViewsAndButtons(); + } + + private void initViewsAndButtons() { txtIncidentCategory = (EditText) findViewById(R.id.txt_viewreport_incidentcategory); txtIncidentSubCategory = (EditText) findViewById(R.id.txt_viewreport_incidentsubcategory); txtPosition = (EditText) findViewById(R.id.txt_viewreport_position); @@ -96,7 +107,7 @@ public class ViewReportActivity extends BaseActivity { makeUpvote(id); } }); - + findViewById(R.id.layoutFooter).setVisibility(View.GONE); btnDownvote.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { @@ -131,30 +142,13 @@ public class ViewReportActivity extends BaseActivity { .color(ContextCompat.getColor(getApplicationContext(), R.color.white)) .sizeDp(24); - ((FloatingActionButton)findViewById(R.id.btn_viewreport_user)).setImageDrawable(identityIcon); + ((FloatingActionButton) findViewById(R.id.btn_viewreport_user)).setImageDrawable(identityIcon); } private void deleteReport(Integer uid) { deleteIncident(uid); } - @Override - protected int getLayoutResourceId() { - return R.layout.activity_view_report; - } - - @Override - protected String getActivityName() { - return getResources().getString(R.string.title_activity_view_report); - } - - public void getIncident(Integer uid) { - showDialog(); - String tag_string_req = "getincidentwithpositionfromid"; - StringRequest strReq = getStringRequestGetIncidentWithPositionFromID(uid); - AppController.getInstance().addToRequestQueue(strReq, tag_string_req); - } - public void deleteIncident(Integer uid) { showDialog(); @@ -192,7 +186,7 @@ public class ViewReportActivity extends BaseActivity { @Override public void onErrorResponse(VolleyError error) { Log.e(TAG, "Error deleting incident: " + error.getMessage()); - showMessage(getResources().getString(R.string.txt_errormsg_deleteincident)); + handleVolleyErrorResponse(); hideDialog(); } }) { @@ -211,6 +205,13 @@ public class ViewReportActivity extends BaseActivity { }; } + public void getIncident(Integer uid) { + showDialog(); + String tag_string_req = "getincidentwithpositionfromid"; + StringRequest strReq = getStringRequestGetIncidentWithPositionFromID(uid); + AppController.getInstance().addToRequestQueue(strReq, tag_string_req); + } + private StringRequest getStringRequestGetIncidentWithPositionFromID(final Integer incidentid) { return new StringRequest(Request.Method.POST, AppConfig.URL_DEFAULT, new Response.Listener() { @@ -243,7 +244,7 @@ public class ViewReportActivity extends BaseActivity { @Override public void onErrorResponse(VolleyError error) { Log.e(TAG, "Error get incident: " + error.getMessage()); - showMessage(getString(R.string.errormsg_couldnotretrieve)); + handleVolleyErrorResponse(); hideDialog(); } }) { @@ -265,14 +266,14 @@ public class ViewReportActivity extends BaseActivity { } private void checkVotetypeAndSetVoteButtons(final JSONObject jIncident) throws JSONException { - if(jIncident.has("hasvoted")){ - if(jIncident.get("hasvoted") instanceof JSONObject){ + if (jIncident.has("hasvoted")) { + if (jIncident.get("hasvoted") instanceof JSONObject) { JSONObject hasvoted = jIncident.getJSONObject("hasvoted"); Log.d(TAG, "hasvote is instance of JSONObject. GO FOR IT"); - if(hasvoted.has("fid_votetype")){ - if(hasvoted.getInt("fid_votetype") == AppConfig.VOTETYPE_UPVOTE){ + if (hasvoted.has("fid_votetype")) { + if (hasvoted.getInt("fid_votetype") == AppConfig.VOTETYPE_UPVOTE) { btnUpvote.startFlashing(true, AwesomeTextView.AnimationSpeed.MEDIUM); btnDownvote.startFlashing(false, AwesomeTextView.AnimationSpeed.MEDIUM); @@ -290,7 +291,7 @@ public class ViewReportActivity extends BaseActivity { makeDownvote(incident.getId()); } }); - }else if(hasvoted.getInt("fid_votetype") == AppConfig.VOTETYPE_DOWNVOTE){ + } else if (hasvoted.getInt("fid_votetype") == AppConfig.VOTETYPE_DOWNVOTE) { btnUpvote.startFlashing(false, AwesomeTextView.AnimationSpeed.MEDIUM); btnDownvote.startFlashing(true, AwesomeTextView.AnimationSpeed.MEDIUM); @@ -308,7 +309,7 @@ public class ViewReportActivity extends BaseActivity { deleteVote(incident.getId()); } }); - }else{ + } else { btnUpvote.startFlashing(false, AwesomeTextView.AnimationSpeed.MEDIUM); btnDownvote.startFlashing(false, AwesomeTextView.AnimationSpeed.MEDIUM); @@ -327,7 +328,7 @@ public class ViewReportActivity extends BaseActivity { }); } } - }else{ + } else { btnUpvote.startFlashing(false, AwesomeTextView.AnimationSpeed.MEDIUM); btnDownvote.startFlashing(false, AwesomeTextView.AnimationSpeed.MEDIUM); @@ -348,10 +349,10 @@ public class ViewReportActivity extends BaseActivity { } } - private String checkIfTextEmptyAndReturnString(String input){ + private String checkIfTextEmptyAndReturnString(String input) { String formattedString = getString(R.string.txt_viewreport_noinput); - if(input.trim().length() > 0){ + if (input.trim().length() > 0) { formattedString = input; } @@ -361,7 +362,7 @@ public class ViewReportActivity extends BaseActivity { private void initReport(IncidentReport incident) { Context tmpContext = getApplicationContext(); - scorelabel.setText(Integer.toString(incident.getVotedScore())); + scorelabel.setText(String.format("%d", incident.getVotedScore())); txtIncidentCategory.setText(incident.getIncidentCategoryName(tmpContext)); txtIncidentSubCategory.setText(checkIfTextEmptyAndReturnString(incident.getIncidentSubCategoryName(tmpContext))); txtTime.setText(checkIfTextEmptyAndReturnString(incident.getTimeString(tmpContext))); @@ -381,16 +382,17 @@ public class ViewReportActivity extends BaseActivity { Geocoder geocoder = new Geocoder(getApplicationContext(), Locale.getDefault()); try { - List
addressList = geocoder.getFromLocation(incident.getPosition().latitude,incident.getPosition().longitude, 1); + List
addressList = geocoder.getFromLocation(incident.getPosition().latitude, incident.getPosition().longitude, 1); if (addressList != null && addressList.size() > 0) { Address address = addressList.get(0); StringBuilder sb = new StringBuilder(); for (int i = 0; i < address.getMaxAddressLineIndex(); i++) { - if(address.getAddressLine(i) != null) sb.append(address.getAddressLine(i)).append("\n"); + if (address.getAddressLine(i) != null) + sb.append(address.getAddressLine(i)).append("\n"); } - if(address.getCountryName() != null) sb.append(address.getCountryName()); + if (address.getCountryName() != null) sb.append(address.getCountryName()); txtPosition.setText(sb.toString()); } @@ -417,15 +419,17 @@ public class ViewReportActivity extends BaseActivity { }); String uid = user.get(SessionManager.KEY_UID); - if(incident.getFidFromUser() != Integer.valueOf(uid)){ + if (incident.getFidFromUser() != Integer.valueOf(uid)) { findViewById(R.id.layoutFooter).setVisibility(View.GONE); + } else { + findViewById(R.id.layoutFooter).setVisibility(View.VISIBLE); } } public void makeUpvote(Integer incidentid) { - if(user.get(SessionManager.KEY_UID).equals(Integer.toString(incident.getFidFromUser()))){ + if (user.get(SessionManager.KEY_UID).equals(Integer.toString(incident.getFidFromUser()))) { showMessage(getResources().getString(R.string.txt_errormsg_cannotvoteowninc)); - }else { + } else { String tag_string_req = "addvote"; StringRequest strReq = getStringRequestAddVote(incidentid, "1"); AppController.getInstance().addToRequestQueue(strReq, tag_string_req); @@ -433,9 +437,9 @@ public class ViewReportActivity extends BaseActivity { } public void makeDownvote(Integer incidentid) { - if(user.get(SessionManager.KEY_UID).equals(Integer.toString(incident.getFidFromUser()))){ + if (user.get(SessionManager.KEY_UID).equals(Integer.toString(incident.getFidFromUser()))) { showMessage(getResources().getString(R.string.txt_errormsg_cannotvoteowninc)); - }else { + } else { String tag_string_req = "addvote"; StringRequest strReq = getStringRequestAddVote(incidentid, "2"); AppController.getInstance().addToRequestQueue(strReq, tag_string_req); @@ -457,7 +461,7 @@ public class ViewReportActivity extends BaseActivity { showMessage(getString(R.string.txt_success_voted)); JSONObject jPoints = jObj.getJSONObject("points"); - scorelabel.setText(Integer.toString(jPoints.getInt("upvoted") - jPoints.getInt("downvoted"))); + scorelabel.setText(String.format("%d",jPoints.getInt("upvoted") - jPoints.getInt("downvoted"))); checkVotetypeAndSetVoteButtons(jPoints); } else { String errorMsg = jObj.getString("error_msg"); @@ -473,7 +477,7 @@ public class ViewReportActivity extends BaseActivity { @Override public void onErrorResponse(VolleyError error) { Log.e(TAG, "Error voting incident: " + error.getMessage()); - showMessage(getString(R.string.errormsg_couldnotretrieve)); + handleVolleyErrorResponse(); } }) { @@ -511,7 +515,7 @@ public class ViewReportActivity extends BaseActivity { if (!error) { JSONObject jPoints = jObj.getJSONObject("points"); - scorelabel.setText(Integer.toString(jPoints.getInt("upvoted") - jPoints.getInt("downvoted"))); + scorelabel.setText(String.format("%d", jPoints.getInt("upvoted") - jPoints.getInt("downvoted"))); checkVotetypeAndSetVoteButtons(jPoints); } else { String errorMsg = jObj.getString("error_msg"); @@ -526,7 +530,7 @@ public class ViewReportActivity extends BaseActivity { @Override public void onErrorResponse(VolleyError error) { Log.e(TAG, "Error deleting voting incident: " + error.getMessage()); - showMessage(getString(R.string.errormsg_couldnotretrieve)); + handleVolleyErrorResponse(); } }) { @@ -543,4 +547,13 @@ public class ViewReportActivity extends BaseActivity { }; } + @Override + protected int getLayoutResourceId() { + return R.layout.activity_view_report; + } + + @Override + protected String getActivityName() { + return getResources().getString(R.string.title_activity_view_report); + } } diff --git a/app/src/main/java/org/deke/risk/riskahead/adapter/ProfilePagerAdapter.java b/app/src/main/java/org/deke/risk/riskahead/adapter/ProfilePagerAdapter.java index fbcdf70..78c8340 100644 --- a/app/src/main/java/org/deke/risk/riskahead/adapter/ProfilePagerAdapter.java +++ b/app/src/main/java/org/deke/risk/riskahead/adapter/ProfilePagerAdapter.java @@ -9,6 +9,13 @@ import org.deke.risk.riskahead.fragment.ProfileStatisticsFragment; import org.deke.risk.riskahead.fragment.ReportListFragment; import org.deke.risk.riskahead.fragment.Top10Fragment; +/** + * + * (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 ProfilePagerAdapter extends FragmentStatePagerAdapter { int mNumOfTabs; String userID; diff --git a/app/src/main/java/org/deke/risk/riskahead/adapter/ReportListAdapter.java b/app/src/main/java/org/deke/risk/riskahead/adapter/ReportListAdapter.java index 8c5d254..7af1eef 100644 --- a/app/src/main/java/org/deke/risk/riskahead/adapter/ReportListAdapter.java +++ b/app/src/main/java/org/deke/risk/riskahead/adapter/ReportListAdapter.java @@ -17,6 +17,13 @@ import org.json.JSONObject; import java.util.List; +/** + * + * (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 ReportListAdapter extends BaseAdapter { Context context; diff --git a/app/src/main/java/org/deke/risk/riskahead/adapter/SpinnerHintAdapter.java b/app/src/main/java/org/deke/risk/riskahead/adapter/SpinnerHintAdapter.java index b2d4d05..50b23b3 100644 --- a/app/src/main/java/org/deke/risk/riskahead/adapter/SpinnerHintAdapter.java +++ b/app/src/main/java/org/deke/risk/riskahead/adapter/SpinnerHintAdapter.java @@ -9,8 +9,11 @@ import android.widget.ListAdapter; import android.widget.SpinnerAdapter; /** - * Decorator Adapter to allow a Spinner to show a 'Nothing Selected...' initially - * displayed instead of the first choice in the Adapter. + * + * (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 SpinnerHintAdapter implements SpinnerAdapter, ListAdapter { diff --git a/app/src/main/java/org/deke/risk/riskahead/adapter/Top10ListAdapter.java b/app/src/main/java/org/deke/risk/riskahead/adapter/Top10ListAdapter.java index e0b589e..278c22b 100644 --- a/app/src/main/java/org/deke/risk/riskahead/adapter/Top10ListAdapter.java +++ b/app/src/main/java/org/deke/risk/riskahead/adapter/Top10ListAdapter.java @@ -14,6 +14,13 @@ import org.json.JSONObject; import java.util.List; +/** + * + * (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 Top10ListAdapter extends BaseAdapter { Context context; diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/BaseReportWFFragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/BaseReportWFFragment.java index b395a6a..c0d1a48 100644 --- a/app/src/main/java/org/deke/risk/riskahead/fragment/BaseReportWFFragment.java +++ b/app/src/main/java/org/deke/risk/riskahead/fragment/BaseReportWFFragment.java @@ -10,7 +10,11 @@ import android.widget.TextView; import org.deke.risk.riskahead.helper.IncidentReport; /** - * A simple {@link Fragment} subclass. + * + * (C) Copyright 2016 RiskAhead (http://www.riskahead.net) + * Developer & Contributor: Dennis Thießen (dennis.thiessen@riskahead.net) + * Date of Release: 10.02.2016 + * */ public abstract class BaseReportWFFragment extends Fragment { diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/FacebookButtonFragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/FacebookButtonFragment.java index 73db232..7718aec 100644 --- a/app/src/main/java/org/deke/risk/riskahead/fragment/FacebookButtonFragment.java +++ b/app/src/main/java/org/deke/risk/riskahead/fragment/FacebookButtonFragment.java @@ -30,6 +30,13 @@ import org.json.JSONObject; import java.util.Arrays; +/** + * + * (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 FacebookButtonFragment extends Fragment { private BootstrapButton btnLoginFB; 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 975cd8a..bf740eb 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 @@ -25,6 +25,13 @@ import com.google.android.gms.plus.model.people.Person; import org.deke.risk.riskahead.LoginActivity; import org.deke.risk.riskahead.R; +/** + * + * (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 GooglePlusButtonFragment extends Fragment implements GoogleApiClient.ConnectionCallbacks, GoogleApiClient.OnConnectionFailedListener{ public static final int RC_SIGN_IN = 0; 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 a0e9491..70ee779 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 @@ -27,6 +27,13 @@ import org.json.JSONObject; 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 ProfileStatisticsFragment extends Fragment { private final static String TAG = ProfileStatisticsFragment.class.getSimpleName(); @@ -144,7 +151,7 @@ public class ProfileStatisticsFragment extends Fragment { public void onErrorResponse(VolleyError error) { Log.e(TAG, "Error getting user stats: " + error.getMessage()); ((ProfileActivity)getActivity()).hideDialog(); - parent.showMessage(getString(R.string.errormsg_couldnotretrieve)); + ((ProfileActivity)getActivity()).handleVolleyErrorResponse(); } }) { 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 f644fcd..4abdf63 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 @@ -30,6 +30,13 @@ import java.util.HashMap; import java.util.List; 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 ReportListFragment extends Fragment{ private final static String TAG = ReportListFragment.class.getSimpleName(); @@ -117,8 +124,8 @@ public class ReportListFragment extends Fragment{ @Override public void onErrorResponse(VolleyError error) { Log.e(TAG, "Error getting incident list: " + error.getMessage()); - ((ProfileActivity)getActivity()).hideDialog(); - parent.showMessage(getString(R.string.errormsg_couldnotretrieve)); + parent.handleVolleyErrorResponse(); + parent.hideDialog(); } }) { diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_1_Fragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_1_Fragment.java index 9198c37..08ce32c 100644 --- a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_1_Fragment.java +++ b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_1_Fragment.java @@ -18,7 +18,11 @@ import org.deke.risk.riskahead.helper.IncidentReport; import org.deke.risk.riskahead.adapter.SpinnerHintAdapter; /** - * @author Dennis Thießen + * + * (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 ReportWF_1_Fragment extends BaseReportWFFragment{ private final static int VIOLANCE_GENERAL = 1; diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_2_Fragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_2_Fragment.java index 945b8ae..bfb37af 100644 --- a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_2_Fragment.java +++ b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_2_Fragment.java @@ -29,7 +29,11 @@ import java.util.Calendar; import java.util.Date; /** - * @author Dennis Thießen + * + * (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 ReportWF_2_Fragment extends BaseReportWFFragment { private final static int NOW = 1; diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_3_Fragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_3_Fragment.java index c1e2edf..e3d9cdb 100644 --- a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_3_Fragment.java +++ b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_3_Fragment.java @@ -16,7 +16,11 @@ import org.deke.risk.riskahead.helper.IncidentReport; import org.deke.risk.riskahead.adapter.SpinnerHintAdapter; /** - * @author Dennis Thießen + * + * (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 ReportWF_3_Fragment extends BaseReportWFFragment { private final static int GANGS = 1; diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_4_Fragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_4_Fragment.java index a57a87c..e673d58 100644 --- a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_4_Fragment.java +++ b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_4_Fragment.java @@ -16,7 +16,11 @@ import org.deke.risk.riskahead.adapter.SpinnerHintAdapter; import org.deke.risk.riskahead.helper.IncidentReport; /** - * @author Dennis Thießen + * + * (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 ReportWF_4_Fragment extends BaseReportWFFragment { private final static int COMMON_OBJECTS = 1; diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_5_Fragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_5_Fragment.java index e4a16f6..e9486eb 100644 --- a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_5_Fragment.java +++ b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_5_Fragment.java @@ -16,7 +16,11 @@ import org.deke.risk.riskahead.adapter.SpinnerHintAdapter; import org.deke.risk.riskahead.helper.IncidentReport; /** - * @author Dennis Thießen + * + * (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 ReportWF_5_Fragment extends BaseReportWFFragment { diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_6_Fragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_6_Fragment.java index eb95fe4..d9bb200 100644 --- a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_6_Fragment.java +++ b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_6_Fragment.java @@ -15,7 +15,11 @@ import org.deke.risk.riskahead.adapter.SpinnerHintAdapter; import org.deke.risk.riskahead.helper.IncidentReport; /** - * @author Dennis Thießen + * + * (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 ReportWF_6_Fragment extends BaseReportWFFragment { diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_7_Fragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_7_Fragment.java index f026aca..2c1022a 100644 --- a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_7_Fragment.java +++ b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_7_Fragment.java @@ -16,7 +16,11 @@ import org.deke.risk.riskahead.adapter.SpinnerHintAdapter; import org.deke.risk.riskahead.helper.IncidentReport; /** - * @author Dennis Thießen + * + * (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 ReportWF_7_Fragment extends BaseReportWFFragment { diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_8_Fragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_8_Fragment.java index e39db58..764e38a 100644 --- a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_8_Fragment.java +++ b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_8_Fragment.java @@ -16,7 +16,11 @@ import org.deke.risk.riskahead.adapter.SpinnerHintAdapter; import org.deke.risk.riskahead.helper.IncidentReport; /** - * @author Dennis Thießen + * + * (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 ReportWF_8_Fragment extends BaseReportWFFragment { diff --git a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_Finish_Fragment.java b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_Finish_Fragment.java index e5c9974..22b4562 100644 --- a/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_Finish_Fragment.java +++ b/app/src/main/java/org/deke/risk/riskahead/fragment/ReportWF_Finish_Fragment.java @@ -14,7 +14,11 @@ import org.deke.risk.riskahead.ReportWFActivity; import org.deke.risk.riskahead.helper.IncidentReport; /** - * A simple {@link Fragment} subclass. + * + * (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 ReportWF_Finish_Fragment extends BaseReportWFFragment { 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 c031727..6142333 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 @@ -29,7 +29,11 @@ import java.util.HashMap; import java.util.Map; /** - * @author Dennis Thießen + * + * (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 SettingsFragment extends PreferenceFragment { 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 4b38c31..d08ca7d 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 @@ -30,6 +30,13 @@ import java.util.HashMap; import java.util.List; 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 Top10Fragment extends Fragment { private final static String TAG = ProfileStatisticsFragment.class.getSimpleName(); @@ -114,7 +121,7 @@ public class Top10Fragment extends Fragment { public void onErrorResponse(VolleyError error) { Log.e(TAG, "Error getting top 10 stats: " + error.getMessage()); ((ProfileActivity)getActivity()).hideDialog(); - parent.showMessage(getString(R.string.errormsg_couldnotretrieve)); + ((ProfileActivity)getActivity()).handleVolleyErrorResponse(); } }) { 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 f330e83..2784940 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 @@ -27,6 +27,13 @@ import com.twitter.sdk.android.core.identity.TwitterAuthClient; import org.deke.risk.riskahead.LoginActivity; import org.deke.risk.riskahead.R; +/** + * + * (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 TwitterButtonFragment extends Fragment { private BootstrapButton btnLoginTW; 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 d32b13c..d4125ee 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 @@ -1,7 +1,11 @@ package org.deke.risk.riskahead.helper; /** - * Created by Dennis on 09.08.2015. + * + * (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 AppConfig { /** GENERAL **/ @@ -13,9 +17,7 @@ public class AppConfig { public final static String URL_DEFAULT = "http://www.riskahead.de/helper/rest/"; public final static String URL_ABOUT = "http://www.riskahead.de/en/about/"; - public final static String URL_CONTACT = "http://www.riskahead.de/en/contact-2/"; - public final static String URL_TERMS = "http://www.riskahead.de/en/terms/"; - public final static String URL_PRIVACY = "http://www.riskahead.de/en/privacy/"; + public final static String URL_CONTACT = "http://www.riskahead.de/en/contact/"; /** INTENT MESSAGES **/ public final static String EXTRA_MESSAGE = "org.deke.risk.riskahead.MESSAGE"; @@ -26,7 +28,6 @@ public class AppConfig { public final static String INTENT_LOGIN = "login"; public final static String INTENT_REGISTER = "register"; - public final static String INTENT_NORMALLOGIN = "normallogin"; public final static String INTENT_SOCIALMEDIALOGIN = "socialmedialogin"; public final static String INTENT_LOGOUT = "org.deke.risk.riskahead.ACTION_LOGOUT"; @@ -41,14 +42,10 @@ public class AppConfig { 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_LOGIN_EXISTS_SOCIAL = "checkifsocialuserexists"; public final static String REST_REGISTER = "register"; public final static String REST_RESENDACTIVATIONMAIL = "resendactivationusermail"; - public final static String REST_ACTIVATEUSER = "activateuser"; public final static String REST_REQUESTPWRESET = "requestpwreset"; - public final static String REST_PERFORMPWRESET = "performpwreset"; public final static String REST_GET_NUMOFINCIDENTS = "getincidentcount"; - public final static String REST_GET_ALLACTIVEINCIDENTS = "getallactiveincidents"; 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"; @@ -58,10 +55,11 @@ public class AppConfig { 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_GET_VOTETYPES = "getvotetypes"; 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 static final String REST_CHECK_MAINTENANCE = "checkformaintenance"; + public static final String REST_CHECK_VERSION= "checkifversionvalid"; } diff --git a/app/src/main/java/org/deke/risk/riskahead/helper/AppController.java b/app/src/main/java/org/deke/risk/riskahead/helper/AppController.java index 878d39c..d32011a 100644 --- a/app/src/main/java/org/deke/risk/riskahead/helper/AppController.java +++ b/app/src/main/java/org/deke/risk/riskahead/helper/AppController.java @@ -10,6 +10,13 @@ import com.android.volley.RequestQueue; import com.android.volley.toolbox.Volley; import com.beardedhen.androidbootstrap.TypefaceProvider; +/** + * + * (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 AppController extends Application { public static final String TAG = AppController.class.getSimpleName(); diff --git a/app/src/main/java/org/deke/risk/riskahead/helper/AppRater.java b/app/src/main/java/org/deke/risk/riskahead/helper/AppRater.java index dbf130a..68c7440 100644 --- a/app/src/main/java/org/deke/risk/riskahead/helper/AppRater.java +++ b/app/src/main/java/org/deke/risk/riskahead/helper/AppRater.java @@ -9,10 +9,15 @@ import android.net.Uri; import org.deke.risk.riskahead.R; - +/** + * + * (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 AppRater { - private final static int DAYS_UNTIL_PROMPT = 1; private final static int LAUNCHES_UNTIL_PROMPT = 10; 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 3dfd5e6..0ae809f 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 @@ -69,6 +69,13 @@ import java.util.HashMap; import java.util.Locale; 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 abstract class BaseActivity extends AppCompatActivity { public final static String EXTRA_MESSAGE = "org.deke.risk.riskahead.MESSAGE"; @@ -93,9 +100,11 @@ public abstract class BaseActivity extends AppCompatActivity { private BroadcastReceiver myReceiver; - private static final int TIME_INTERVAL = 2000; // # milliseconds, desired time passed between two back presses. + private static final int TIME_INTERVAL = 3000; // # milliseconds, desired time passed between two back presses. private long mBackPressed; + int onStartCount = 0; + public void userHasToBeLoggedIn(){ if (!session.isLoggedIn()) { logout(); @@ -108,9 +117,36 @@ public abstract class BaseActivity extends AppCompatActivity { return user; } + @Override + protected void onStart() { + super.onStart(); + if (onStartCount > 1) { + this.overridePendingTransition(R.anim.slide_in_right, + R.anim.slide_out_right); + + } else if (onStartCount == 1) { + onStartCount++; + } + + } + @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); + + //overridePendingTransition(R.anim.fade_in_anim, R.anim.fade_out_anim); + //overridePendingTransition(android.R.anim.slide_in_left, android.R.anim.slide_out_right); + + onStartCount = 1; + if (savedInstanceState == null) // 1st time + { + this.overridePendingTransition(R.anim.slide_in_left, + R.anim.slide_out_left); + } else // already created so reverse animation + { + onStartCount = 2; + } + setContentView(getLayoutResourceId()); initAds(); @@ -123,7 +159,7 @@ public abstract class BaseActivity extends AppCompatActivity { setSupportActionBar(mToolbar); initNavigationDrawer(savedInstanceState); - overridePendingTransition(R.anim.fade_in_anim, R.anim.fade_out_anim); + if(!isMyNotificationServiceRunning()){ Log.d(TAG,"onCreate: NotificationService not running. Starting service..."); @@ -325,9 +361,7 @@ public abstract class BaseActivity extends AppCompatActivity { } private void requestNewInterstitial() { - AdRequest adRequest = new AdRequest.Builder() - .addTestDevice("1C182703CED1D65AE86F9E51E94ECDE7") - .build(); + AdRequest adRequest = new AdRequest.Builder().build(); mInterstitialAd.loadAd(adRequest); } @@ -350,6 +384,7 @@ public abstract class BaseActivity extends AppCompatActivity { new AlertDialog.Builder(this) .setTitle(getString(R.string.alert_internetconnection_title)) .setMessage(getString(R.string.alert_internetconnection_text)) + .setCancelable(false) .setNeutralButton(android.R.string.yes, new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { logoutUser(); @@ -365,6 +400,11 @@ public abstract class BaseActivity extends AppCompatActivity { logout(); } + public void handleVolleyErrorResponse() { + showMessage(getString(R.string.errormsg_couldnotretrieve)); + logoutUser(); + } + public void logout() { session.setLogin(false); @@ -509,7 +549,7 @@ public abstract class BaseActivity extends AppCompatActivity { private void showLanguageDialog(){ AlertDialog.Builder b = new AlertDialog.Builder(this); b.setTitle(R.string.txt_language_title); - String[] types = {"ar - العربية", "de - Deutsch", "en - English", "es - Español", "fr - Français", "pt - Português do Brasil", "ru - русский"}; + String[] types = {"ar - العربية", "de - Deutsch", "en - English", "es - Español", "et - Eesti keel", "fr - Français", "lv - Latviešu valoda", "mn - Монгол хэл", "pl - Polszczyzna", "pt - Português do Brasil", "ru - Pусский", "tr - Türkçe"}; b.setItems(types, new DialogInterface.OnClickListener() { @Override @@ -530,14 +570,29 @@ public abstract class BaseActivity extends AppCompatActivity { setLocale("es"); break; case 4: - setLocale("fr"); + setLocale("et"); break; case 5: - setLocale("pt"); + setLocale("fr"); break; case 6: + setLocale("lv"); + break; + case 7: + setLocale("mn"); + break; + case 8: + setLocale("pl"); + break; + case 9: + setLocale("pt"); + break; + case 10: setLocale("ru"); break; + case 11: + setLocale("tr"); + break; } } diff --git a/app/src/main/java/org/deke/risk/riskahead/helper/IncidentReport.java b/app/src/main/java/org/deke/risk/riskahead/helper/IncidentReport.java index 7d0c573..764ea6c 100644 --- a/app/src/main/java/org/deke/risk/riskahead/helper/IncidentReport.java +++ b/app/src/main/java/org/deke/risk/riskahead/helper/IncidentReport.java @@ -16,6 +16,13 @@ import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; +/** + * + * (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 IncidentReport implements ClusterItem { private int id = 0; @@ -605,10 +612,6 @@ public class IncidentReport implements ClusterItem { return this.votedScore; } - public void setVotedScore(int votedScore){ - this.votedScore = votedScore; - } - public int getFidFromUser() { return fidFromUser; } 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 768a754..3c999af 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 @@ -1,15 +1,18 @@ package org.deke.risk.riskahead.helper; +import android.Manifest; import android.app.NotificationManager; import android.app.PendingIntent; import android.app.Service; import android.content.Context; import android.content.Intent; +import android.content.pm.PackageManager; import android.location.Location; import android.location.LocationListener; import android.location.LocationManager; import android.os.*; +import android.support.v4.app.ActivityCompat; import android.support.v4.app.NotificationCompat; import android.support.v4.app.TaskStackBuilder; import android.util.Log; @@ -31,12 +34,19 @@ import java.util.Calendar; 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 NotificationService extends Service { private final static String TAG = NotificationService.class.getSimpleName(); private final static String EXTRA_MESSAGE = "org.deke.risk.riskahead.MESSAGE"; - Handler mNotifyHandler = new Handler(); + Handler mNotifyHandler = new Handler(); NotificationManager mNotificationManager; public SessionManager session; @@ -49,8 +59,8 @@ public class NotificationService extends Service { } @Override - public void onCreate(){ - Log.d(TAG,"onCreate NotificationService"); + public void onCreate() { + Log.d(TAG, "onCreate NotificationService"); mNotificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); @@ -59,8 +69,17 @@ public class NotificationService extends Service { locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE); LocationListener locationListener = new MyLocationListener(); - locationManager.requestLocationUpdates( - LocationManager.NETWORK_PROVIDER, 5000, 10, locationListener); + if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) { + // TODO: Consider calling + // ActivityCompat#requestPermissions + // here to request the missing permissions, and then overriding + // public void onRequestPermissionsResult(int requestCode, String[] permissions, + // int[] grantResults) + // to handle the case where the user grants the permission. See the documentation + // for ActivityCompat#requestPermissions for more details. + return; + } + locationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 5000, 10, locationListener); Log.d(TAG, "Service Created. Starting notification task..."); mNotifyTask.run(); @@ -181,13 +200,13 @@ public class NotificationService extends Service { @Override protected Map getParams() { Map params = new HashMap<>(); - params.put("tag", "getincidentsinareaandtime"); + 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)); params.put("longitude", Double.toString(longitude)); params.put("radius", Integer.toString(radius)); - params.put("time", "'"+time+"'"); + params.put("time", time); return params; } }; diff --git a/app/src/main/java/org/deke/risk/riskahead/helper/OwnIconRendered.java b/app/src/main/java/org/deke/risk/riskahead/helper/OwnIconRendered.java index 860d7eb..af4ab52 100644 --- a/app/src/main/java/org/deke/risk/riskahead/helper/OwnIconRendered.java +++ b/app/src/main/java/org/deke/risk/riskahead/helper/OwnIconRendered.java @@ -7,7 +7,13 @@ import com.google.android.gms.maps.model.MarkerOptions; import com.google.maps.android.clustering.ClusterManager; import com.google.maps.android.clustering.view.DefaultClusterRenderer; - +/** + * + * (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 OwnIconRendered extends DefaultClusterRenderer { Context context; diff --git a/app/src/main/java/org/deke/risk/riskahead/helper/PlaceJSONParser.java b/app/src/main/java/org/deke/risk/riskahead/helper/PlaceJSONParser.java index 96a2a04..bf83e7e 100644 --- a/app/src/main/java/org/deke/risk/riskahead/helper/PlaceJSONParser.java +++ b/app/src/main/java/org/deke/risk/riskahead/helper/PlaceJSONParser.java @@ -8,6 +8,13 @@ import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; +/** + * + * (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 PlaceJSONParser { /** Receives a JSONObject and returns a list */ diff --git a/app/src/main/java/org/deke/risk/riskahead/helper/PlaceJSONParserDetail.java b/app/src/main/java/org/deke/risk/riskahead/helper/PlaceJSONParserDetail.java index e5da3ab..a821467 100644 --- a/app/src/main/java/org/deke/risk/riskahead/helper/PlaceJSONParserDetail.java +++ b/app/src/main/java/org/deke/risk/riskahead/helper/PlaceJSONParserDetail.java @@ -7,6 +7,13 @@ import java.util.List; import org.json.JSONException; import org.json.JSONObject; +/** + * + * (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 PlaceJSONParserDetail { /** Receives a JSONObject and returns a list */ diff --git a/app/src/main/java/org/deke/risk/riskahead/helper/PlaceProvider.java b/app/src/main/java/org/deke/risk/riskahead/helper/PlaceProvider.java index 2ed8546..51d0a45 100644 --- a/app/src/main/java/org/deke/risk/riskahead/helper/PlaceProvider.java +++ b/app/src/main/java/org/deke/risk/riskahead/helper/PlaceProvider.java @@ -23,6 +23,13 @@ import android.database.MatrixCursor; import android.net.Uri; import android.util.Log; +/** + * + * (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 PlaceProvider extends ContentProvider { public static final String AUTHORITY = "org.deke.risk.riskahead.helper.PlaceProvider"; diff --git a/app/src/main/java/org/deke/risk/riskahead/helper/RABroadcastReceiver.java b/app/src/main/java/org/deke/risk/riskahead/helper/RABroadcastReceiver.java index 623a4dd..43d4de7 100644 --- a/app/src/main/java/org/deke/risk/riskahead/helper/RABroadcastReceiver.java +++ b/app/src/main/java/org/deke/risk/riskahead/helper/RABroadcastReceiver.java @@ -8,7 +8,13 @@ import android.content.Intent; import android.text.format.DateUtils; import android.util.Log; - +/** + * + * (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 RABroadcastReceiver extends BroadcastReceiver { private final static String TAG = RABroadcastReceiver.class.getSimpleName(); @@ -29,7 +35,7 @@ public class RABroadcastReceiver extends BroadcastReceiver { am.setInexactRepeating(AlarmManager.RTC, firstStart, interval, wtdSServicePendingIntent); - Log.v("WhatTheDroidService", "AlarmManager gesetzt"); + Log.v(TAG, "AlarmManager gesetzt"); } } } 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 02eb3bb..e1066f4 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 @@ -9,6 +9,13 @@ import com.google.android.gms.maps.model.LatLng; import java.util.HashMap; +/** + * + * (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 SessionManager { @@ -52,10 +59,6 @@ public class SessionManager { public static final String KEY_SUBS_NOADS = "subs_noads"; public static final String KEY_SUBS_PREMIUM = "subs_premium"; - public static final String KEY_ONBACKPRESSED= "onbackpressed"; - - - public SessionManager(Context context) { this._context = context; status = _context.getSharedPreferences(PREF_NAME, PRIVATE_MODE); @@ -73,15 +76,6 @@ public class SessionManager { return status.getBoolean(KEY_IS_LOGGEDIN, false); } - public Long getOnBackPressed(){ - return status.getLong(KEY_ONBACKPRESSED, 0); - } - - public void setOnBackPressed(Long onbackpressed){ - statusEditor.putLong(KEY_ONBACKPRESSED, onbackpressed); - statusEditor.apply(); - } - public void setLocation(Long latitude, Long longitude){ statusEditor.putLong(KEY_LOCATION_LAT, latitude); statusEditor.putLong(KEY_LOCATION_LNG, longitude); 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 dc4c870..3eaf504 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 @@ -5,6 +5,13 @@ import android.text.Editable; import android.text.TextWatcher; import android.widget.TextView; +/** + * + * (C) Copyright 2016 RiskAhead (http://www.riskahead.net) + * Developer & Contributor: Dennis Thießen (dennis.thiessen@riskahead.net) + * Date of Release: 10.02.2016 + * + */ public abstract class TextValidator implements TextWatcher { private final TextView textView; 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 bf4d4cb..e979ab9 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 @@ -16,9 +16,11 @@ import android.widget.Button; import org.deke.risk.riskahead.R; /** - * Copyright 2015 RiskAhead Dennis Thiessen - *

- * Created by Dennis Thiessen on 06.01.2016. + * + * (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 ValidatedEditTextPreference extends EditTextPreference { diff --git a/app/src/main/res/anim/fade_in_anim.xml b/app/src/main/res/anim/fade_in_anim.xml index ee9288f..03a7fc8 100644 --- a/app/src/main/res/anim/fade_in_anim.xml +++ b/app/src/main/res/anim/fade_in_anim.xml @@ -8,6 +8,6 @@ android:repeatCount="0" /> --> - - + + \ No newline at end of file diff --git a/app/src/main/res/anim/fade_out_anim.xml b/app/src/main/res/anim/fade_out_anim.xml index 6c07221..3e3d9f9 100644 --- a/app/src/main/res/anim/fade_out_anim.xml +++ b/app/src/main/res/anim/fade_out_anim.xml @@ -8,6 +8,6 @@ android:repeatCount="0" /> --> - - + + \ No newline at end of file diff --git a/app/src/main/res/anim/slide_in_left.xml b/app/src/main/res/anim/slide_in_left.xml new file mode 100644 index 0000000..95e327e --- /dev/null +++ b/app/src/main/res/anim/slide_in_left.xml @@ -0,0 +1,8 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/anim/slide_in_right.xml b/app/src/main/res/anim/slide_in_right.xml new file mode 100644 index 0000000..13d160d --- /dev/null +++ b/app/src/main/res/anim/slide_in_right.xml @@ -0,0 +1,8 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/anim/slide_out_left.xml b/app/src/main/res/anim/slide_out_left.xml new file mode 100644 index 0000000..f8cca19 --- /dev/null +++ b/app/src/main/res/anim/slide_out_left.xml @@ -0,0 +1,8 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/anim/slide_out_right.xml b/app/src/main/res/anim/slide_out_right.xml new file mode 100644 index 0000000..bf3b8e9 --- /dev/null +++ b/app/src/main/res/anim/slide_out_right.xml @@ -0,0 +1,8 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index d90f57d..99429a8 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -54,7 +54,8 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="38dp" - android:textSize="40sp" /> + android:textSize="40sp" + tools:ignore="HardcodedText" /> + android:textColor="@color/white" + tools:ignore="HardcodedText" /> @@ -128,8 +130,6 @@ - - diff --git a/app/src/main/res/layout/activity_maps.xml b/app/src/main/res/layout/activity_maps.xml index d27cdd2..a44fe3d 100644 --- a/app/src/main/res/layout/activity_maps.xml +++ b/app/src/main/res/layout/activity_maps.xml @@ -51,7 +51,6 @@ android:layout_height="wrap_content" android:layout_alignParentLeft="true" /> - diff --git a/app/src/main/res/layout/activity_profile.xml b/app/src/main/res/layout/activity_profile.xml index 6748f7f..ae204f9 100644 --- a/app/src/main/res/layout/activity_profile.xml +++ b/app/src/main/res/layout/activity_profile.xml @@ -32,7 +32,8 @@ android:src="@drawable/logo_380" android:id="@+id/imageView2" android:alpha="0.05" - android:layout_gravity="center_horizontal" /> + android:layout_gravity="center_horizontal" + tools:ignore="ContentDescription" /> + android:layout_gravity="center_horizontal" + tools:ignore="ContentDescription" /> diff --git a/app/src/main/res/layout/activity_settings.xml b/app/src/main/res/layout/activity_settings.xml index 37bde96..1b5c669 100644 --- a/app/src/main/res/layout/activity_settings.xml +++ b/app/src/main/res/layout/activity_settings.xml @@ -29,7 +29,8 @@ android:id="@+id/imageView2" android:layout_margin="5dp" android:alpha="0.05" - android:layout_gravity="center_horizontal" /> + android:layout_gravity="center_horizontal" + tools:ignore="ContentDescription" /> diff --git a/app/src/main/res/layout/activity_start.xml b/app/src/main/res/layout/activity_start.xml index 2ebe296..d926afb 100644 --- a/app/src/main/res/layout/activity_start.xml +++ b/app/src/main/res/layout/activity_start.xml @@ -17,7 +17,8 @@ android:layout_alignParentTop="true" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" - android:background="#00ffffff" /> + android:background="#00ffffff" + tools:ignore="ContentDescription" /> @@ -36,7 +37,7 @@