diff --git a/.idea/misc.xml b/.idea/misc.xml
index 2497215..59436c9 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -3,7 +3,7 @@
-
+
diff --git a/app/app.iml b/app/app.iml
index 92b07af..fd441bb 100644
--- a/app/app.iml
+++ b/app/app.iml
@@ -83,13 +83,17 @@
-
+
+
+
+
+
diff --git a/app/build.gradle b/app/build.gradle
index 6ccc19f..56b7c9a 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,13 +1,13 @@
apply plugin: 'com.android.application'
android {
- compileSdkVersion 19
- buildToolsVersion '19.1.0'
+ compileSdkVersion 21
+ buildToolsVersion "21.1.2"
defaultConfig {
applicationId "com.avnet.gears.codes.gimbal.store"
- minSdkVersion 19
- targetSdkVersion 19
+ minSdkVersion 21
+ targetSdkVersion 21
versionCode 1
versionName "1.0"
}
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index e1b24f3..65bf74c 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -1,6 +1,6 @@
+ package="com.avnet.gears.codes.gimbal.store">
@@ -10,6 +10,12 @@
+
+
+
+
+
+
+ android:theme="@style/AppTheme">
+ android:label="@string/app_name">
@@ -43,7 +49,7 @@
android:label="@string/title_activity_feed_list" />
+ android:label="@string/title_activity_products_list">
@@ -51,16 +57,25 @@
+ android:parentActivityName=".activity.ProductsListActivity">
+
+
+
+ android:exported="true">
@@ -69,32 +84,40 @@
android:name="android.accounts.AccountAuthenticator"
android:resource="@xml/authenticator" />
-
-
-
+
+ android:permission="com.google.android.c2dm.permission.SEND">
-
+
-
-
-
+
+
+
+
+
+
+
+
+
+
diff --git a/app/src/main/java/com/avnet/gears/codes/gimbal/store/activity/FeedListActivity.java b/app/src/main/java/com/avnet/gears/codes/gimbal/store/activity/FeedListActivity.java
index fe57f21..dd3aa80 100644
--- a/app/src/main/java/com/avnet/gears/codes/gimbal/store/activity/FeedListActivity.java
+++ b/app/src/main/java/com/avnet/gears/codes/gimbal/store/activity/FeedListActivity.java
@@ -32,8 +32,8 @@ public class FeedListActivity extends Activity implements ActionBar.TabListener
ViewPager mViewPager;
private GimbalStoreConstants.FEED_ITEM_TYPE[] feedItemTypes = new GimbalStoreConstants.FEED_ITEM_TYPE[]{
- GimbalStoreConstants.FEED_ITEM_TYPE.FRIEND_RECOMMENDATION,
- GimbalStoreConstants.FEED_ITEM_TYPE.FRIEND_REVIEW,
+ GimbalStoreConstants.FEED_ITEM_TYPE.FRIEND_RECOMMENDED,
+ GimbalStoreConstants.FEED_ITEM_TYPE.FRIEND_REVIEWED,
GimbalStoreConstants.FEED_ITEM_TYPE.SUGGESTED_PRODUCTS
};
@@ -57,7 +57,7 @@ protected void onCreate(Bundle savedInstanceState) {
GimbalStoreConstants.DEFAULT_SPINNER_INFO_TEXT);
Map feedItemParams = ServerURLUtil.getBasicConfigParamsMap(getResources());
feedItemParams.put(GimbalStoreConstants.StoreParameterKeys.type.toString(),
- GimbalStoreConstants.StoreParameterValues.feedItem.toString());
+ GimbalStoreConstants.StoreParameterValues.fetchFeeds.toString());
feedItemParams.put(GimbalStoreConstants.StoreParameterKeys.identifier.toString(),
GimbalStoreConstants.StoreParameterValues.top.toString());
feedItemParams.put(GimbalStoreConstants.StoreParameterKeys.uniqueId.toString(),
@@ -112,7 +112,7 @@ public void onPageSelected(int position) {
paramsMap.put(GimbalStoreConstants.StoreParameterKeys.identifier.toString(),
GimbalStoreConstants.StoreParameterValues.top.toString());
paramsMap.put(GimbalStoreConstants.StoreParameterKeys.type.toString(),
- GimbalStoreConstants.StoreParameterValues.feedItem.toString());
+ GimbalStoreConstants.StoreParameterValues.fetchFeeds.toString());
FeedItemListDataProcessor feedItemListDataProcessor = new FeedItemListDataProcessor(this, mViewPager,
feedItemTypes, progressDialog);
diff --git a/app/src/main/java/com/avnet/gears/codes/gimbal/store/activity/HomeActivity.java b/app/src/main/java/com/avnet/gears/codes/gimbal/store/activity/HomeActivity.java
index 6899a8f..974b585 100644
--- a/app/src/main/java/com/avnet/gears/codes/gimbal/store/activity/HomeActivity.java
+++ b/app/src/main/java/com/avnet/gears/codes/gimbal/store/activity/HomeActivity.java
@@ -39,19 +39,9 @@
import com.avnet.gears.codes.gimbal.store.utils.ServerURLUtil;
import com.avnet.gears.codes.gimbal.store.utils.TypeConversionUtil;
-import com.gimbal.android.Beacon;
-import com.gimbal.android.BeaconEventListener;
-import com.gimbal.android.BeaconManager;
-import com.gimbal.android.BeaconSighting;
-import com.gimbal.android.Gimbal;
-import com.gimbal.android.PlaceEventListener;
-import com.gimbal.android.PlaceManager;
-import com.gimbal.android.Visit;
-
import java.text.MessageFormat;
import java.util.ArrayList;
import java.util.Arrays;
-import java.util.Date;
import java.util.List;
import java.util.Map;
@@ -75,10 +65,6 @@ public class HomeActivity extends Activity
private ProgressDialog progressDialog;
private AccountManager accountManager;
- //Gimbal
- private PlaceEventListener placeEventListener;
- private BeaconEventListener beaconSightingListener;
- private BeaconManager beaconManager;
private static final int SETTINGS_RESULT = 1;
@@ -88,6 +74,9 @@ protected void onCreate(Bundle savedInstanceState) {
setContentView(R.layout.activity_home);
gimbalInitialize();
+ /*IntentFilter filter1 = new IntentFilter(BluetoothDevice.ACTION_ACL_CONNECTED);
+ IntentFilter filter2 = new IntentFilter(BluetoothDevice.ACTION_ACL_DISCONNECT_REQUESTED);
+ IntentFilter filter3 = new IntentFilter(BluetoothDevice.ACTION_ACL_DISCONNECTED); */
mNavigationDrawerFragment = (NavigationDrawerFragment)
getFragmentManager().findFragmentById(R.id.navigation_drawer);
@@ -125,7 +114,7 @@ protected void onCreate(Bundle savedInstanceState) {
asyncTask.execute();
return;
}
- Log.d("DEBUG", "cookieString = " + cookieString);
+ Log.d("DEBUG", "Home Activity , cookieString = " + cookieString);
}
processCategoryListData();
}
@@ -133,60 +122,13 @@ protected void onCreate(Bundle savedInstanceState) {
private void gimbalInitialize() {
Toast t = Toast.makeText(getApplicationContext(), "Gimbal initialise", Toast.LENGTH_SHORT);
t.show();
- Gimbal.setApiKey(this.getApplication(), "70e4f8df-8332-46fd-99de-efa092ee57f9");
+
final TextView placeView = (TextView)findViewById(R.id.placeView);
final TextView sightingView = (TextView)findViewById(R.id.sightingView);
final TextView sightingRssiView = (TextView) findViewById(R.id.sightingRssiView);
final TextView beaconDetailsView = (TextView) findViewById(R.id.beaconDetailsView);
- placeEventListener = new PlaceEventListener() {
- @Override
- public void onVisitStart(Visit visit) {
-
- placeView.setText("Place : Enter: " + visit.getPlace().getName() + ", at: " + new Date(visit.getArrivalTimeInMillis()));
- // This will be invoked when a place is entered. Example below shows a simple log upon enter
- Log.i("Info:", "Enter: " + visit.getPlace().getName() + ", at: " + new Date(visit.getArrivalTimeInMillis()));
-
- boolean setting = PreferenceManager.getDefaultSharedPreferences(getApplicationContext()).getBoolean("example_checkbox", true);
- Toast t = Toast.makeText(getApplicationContext(), "Onvisitstart : " + String.valueOf(setting), Toast.LENGTH_SHORT);
- t.show();
- }
-
- @Override
- public void onVisitEnd(Visit visit) {
-
- placeView.setText("Place : Exit: " + visit.getPlace().getName() + ", at: " + new Date(visit.getDepartureTimeInMillis()));
- // This will be invoked when a place is exited. Example below shows a simple log upon exit
- Log.i("Info:", "Exit: " + visit.getPlace().getName() + ", at: " + new Date(visit.getDepartureTimeInMillis()));
-
- boolean setting = PreferenceManager.getDefaultSharedPreferences(getApplicationContext()).getBoolean("example_checkbox", true);
- Toast t = Toast.makeText(getApplicationContext(), "Onvisitend : " + String.valueOf(setting), Toast.LENGTH_SHORT);
- t.show();
- }
- };
-
- PlaceManager.getInstance().addListener(placeEventListener);
-
- beaconSightingListener = new BeaconEventListener() {
- @Override
- public void onBeaconSighting(BeaconSighting sighting) {
-
- sightingView.setText("BeaconSighting");
- sightingRssiView.setText("RSSI : " + sighting.getRSSI() + "\nTime in Millis : " + new Date(sighting.getTimeInMillis()));
-
- Beacon beacon = sighting.getBeacon();
- beaconDetailsView.setText("Beacon Name : " + beacon.getName() +
- "\nIdentifier : " + beacon.getIdentifier() +
- "\nBattery Level : " + beacon.getBatteryLevel() +
- "\nBeacon Temperature : " + beacon.getTemperature());
- Log.i("INFO", sighting.toString());
- }
- };
- beaconManager = new BeaconManager();
- beaconManager.addListener(beaconSightingListener);
- PlaceManager.getInstance().startMonitoring();
- beaconManager.startListening();
}
@Override
diff --git a/app/src/main/java/com/avnet/gears/codes/gimbal/store/activity/NotificationsListActivity.java b/app/src/main/java/com/avnet/gears/codes/gimbal/store/activity/NotificationsListActivity.java
index 2395598..d64f630 100644
--- a/app/src/main/java/com/avnet/gears/codes/gimbal/store/activity/NotificationsListActivity.java
+++ b/app/src/main/java/com/avnet/gears/codes/gimbal/store/activity/NotificationsListActivity.java
@@ -23,6 +23,7 @@ public class NotificationsListActivity extends Activity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_notifications_list);
+ AndroidUtil.instantiateGimbal(this);
ListView notificationListView = (ListView) findViewById(R.id.user_notification_list_view);
ListView promotionsListView = (ListView) findViewById(R.id.promotions_list_view);
ProgressDialog progressDialog = AndroidUtil.showProgressDialog(this,
@@ -39,9 +40,7 @@ protected void onCreate(Bundle savedInstanceState) {
paramsMap.put(GimbalStoreConstants.StoreParameterKeys.identifier.toString(),
GimbalStoreConstants.StoreParameterValues.top.toString());
paramsMap.put(GimbalStoreConstants.StoreParameterKeys.type.toString(),
- GimbalStoreConstants.StoreParameterValues.notificationItem.toString());
- //TODO finalize
-
+ GimbalStoreConstants.StoreParameterValues.fetchNotifications.toString());
HttpConnectionAsyncTask asyncTask = new HttpConnectionAsyncTask(GimbalStoreConstants.HTTP_METHODS.GET,
Arrays.asList(urlString),
Arrays.asList(paramsMap),
diff --git a/app/src/main/java/com/avnet/gears/codes/gimbal/store/activity/ProductDetailsActivity.java b/app/src/main/java/com/avnet/gears/codes/gimbal/store/activity/ProductDetailsActivity.java
index cc70bde..f3dd0f6 100644
--- a/app/src/main/java/com/avnet/gears/codes/gimbal/store/activity/ProductDetailsActivity.java
+++ b/app/src/main/java/com/avnet/gears/codes/gimbal/store/activity/ProductDetailsActivity.java
@@ -55,7 +55,7 @@ protected void onCreate(Bundle savedInstanceState) {
RatingBar ratingBar = (RatingBar) findViewById(R.id.product_rating_bar);
- Button buyButton = (Button) findViewById(R.id.buy_now_button);
+ Button askReviewButton = (Button) findViewById(R.id.buy_now_button);
Button askButton = (Button) findViewById(R.id.ask_friend_button);
Button recommendButton = (Button) findViewById(R.id.recommend_button);
@@ -67,6 +67,26 @@ protected void onCreate(Bundle savedInstanceState) {
intent.putExtras(data);
final String ratingValue = "" + ratingBar.getRating();
final Activity mActivity = this;
+ askReviewButton.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ progressDialog.show();
+ Map paramsMap = ServerURLUtil.getBasicConfigParamsMap(getResources());
+
+ paramsMap.put(GimbalStoreConstants.StoreParameterKeys.type.toString(),
+ GimbalStoreConstants.StoreParameterValues.fetchContacts.toString());
+ Log.d("DEBUG", "paramsMap=" + paramsMap);
+ String cookieString = AndroidUtil.getPreferenceString(getApplicationContext(), GimbalStoreConstants.PREF_SESSION_COOKIE_PARAM_KEY);
+ FriendsListDataProcessor friendsListDataProcessor = new FriendsListDataProcessor(mActivity, progressDialog,
+ GimbalStoreConstants.NOTIFICATION_TYPE.ASKED_TO_REVIEW,
+ mActivity.getFragmentManager());
+ HttpConnectionAsyncTask asyncTask = new HttpConnectionAsyncTask(GimbalStoreConstants.HTTP_METHODS.GET,
+ Arrays.asList(ServerURLUtil.getStoreServletServerURL(getResources())),
+ Arrays.asList(paramsMap), cookieString,
+ friendsListDataProcessor);
+ asyncTask.execute(new String[]{});
+ }
+ });
recommendButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
@@ -78,7 +98,7 @@ public void onClick(View v) {
Log.d("DEBUG", "paramsMap=" + paramsMap);
String cookieString = AndroidUtil.getPreferenceString(getApplicationContext(), GimbalStoreConstants.PREF_SESSION_COOKIE_PARAM_KEY);
FriendsListDataProcessor friendsListDataProcessor = new FriendsListDataProcessor(mActivity, progressDialog,
- GimbalStoreConstants.NOTIFICATION_TYPE.FRIEND_RECOMMENDATION,
+ GimbalStoreConstants.NOTIFICATION_TYPE.RECOMMENDED,
mActivity.getFragmentManager());
HttpConnectionAsyncTask asyncTask = new HttpConnectionAsyncTask(GimbalStoreConstants.HTTP_METHODS.GET,
Arrays.asList(ServerURLUtil.getStoreServletServerURL(getResources())),
@@ -98,7 +118,7 @@ public void onClick(View v) {
Log.d("DEBUG", "paramsMap=" + paramsMap);
String cookieString = AndroidUtil.getPreferenceString(getApplicationContext(), GimbalStoreConstants.PREF_SESSION_COOKIE_PARAM_KEY);
FriendsListDataProcessor friendsListDataProcessor = new FriendsListDataProcessor(mActivity, progressDialog,
- GimbalStoreConstants.NOTIFICATION_TYPE.ASK_FRIEND,
+ GimbalStoreConstants.NOTIFICATION_TYPE.ASKED_TO_REC_PROD,
mActivity.getFragmentManager());
HttpConnectionAsyncTask asyncTask = new HttpConnectionAsyncTask(GimbalStoreConstants.HTTP_METHODS.GET,
Arrays.asList(ServerURLUtil.getStoreServletServerURL(getResources())),
@@ -121,7 +141,7 @@ public void onClick(View v) {
paramsMap.put(GimbalStoreConstants.StoreParameterKeys.reviewText.toString(),
reviewText);
paramsMap.put(GimbalStoreConstants.StoreParameterKeys.rating.toString(),
- ratingValue);
+ "3");
Log.d("DEBUG", "paramsMap=" + paramsMap);
String cookieString = AndroidUtil.getPreferenceString(getApplicationContext(), GimbalStoreConstants.PREF_SESSION_COOKIE_PARAM_KEY);
@@ -174,13 +194,56 @@ public void onClick(View v) {
@Override
public void onFinishedSelectDialog(List friendIdList, GimbalStoreConstants.NOTIFICATION_TYPE postProcessingType) {
Log.d("DEBUG", "SelectedFriends = " + friendIdList);
- String selectedProductId = getIntent().getStringExtra(GimbalStoreConstants.INTENT_EXTRA_ATTR_KEY.SELECTED_PRODUCT_ID.toString());
- if (postProcessingType == GimbalStoreConstants.NOTIFICATION_TYPE.ASK_FRIEND) {
+ String friends = "";
+ for (String friendId : friendIdList) {
+ if (!friends.isEmpty()) {
+ friends += GimbalStoreConstants.DELIMITER_COMMA;
+ }
+ friends += friendId;
+ }
+ Bundle intentBundle = getIntent().getExtras();
+ String productId = null;
+ if (intentBundle != null) {
+ productId = intentBundle.getString(GimbalStoreConstants.INTENT_EXTRA_ATTR_KEY.SELECTED_PRODUCT_ID.toString(), "");
+ }
+ ProgressDialog progressDialog = AndroidUtil.showProgressDialog(this,
+ GimbalStoreConstants.DEFAULT_SPINNER_TITLE,
+ GimbalStoreConstants.DEFAULT_SPINNER_INFO_TEXT);
+ Map paramsMap = ServerURLUtil.getBasicConfigParamsMap(getResources());
+
- // post this list to ask friend flow
- } else if (postProcessingType == GimbalStoreConstants.NOTIFICATION_TYPE.FRIEND_RECOMMENDATION) {
- // post this list to recommend product flow
+ paramsMap.put(GimbalStoreConstants.StoreParameterKeys.friends.toString(),
+ friends);
+ paramsMap.put(GimbalStoreConstants.StoreParameterKeys.productId.toString(),
+ productId);
+
+ switch (postProcessingType) {
+ case ASKED_TO_REC_PROD:
+ paramsMap.put(GimbalStoreConstants.StoreParameterKeys.type.toString(),
+ GimbalStoreConstants.StoreParameterValues.askRecommendation.toString());
+ paramsMap.put(GimbalStoreConstants.StoreParameterKeys.rectype.toString(),
+ GimbalStoreConstants.StoreParameterValues.product.toString());
+ break;
+ case ASKED_TO_REVIEW:
+ paramsMap.put(GimbalStoreConstants.StoreParameterKeys.type.toString(),
+ GimbalStoreConstants.StoreParameterValues.askToReview.toString());
+ break;
+ case RECOMMENDED:
+ paramsMap.put(GimbalStoreConstants.StoreParameterKeys.type.toString(),
+ GimbalStoreConstants.StoreParameterValues.postRecommendation.toString());
+ break;
+ default:
+ Log.d("DEBUG", "not handling type.." + postProcessingType);
}
+ Log.d("DEBUG", "paramsMap=" + paramsMap);
+ String cookieString = AndroidUtil.getPreferenceString(getApplicationContext(), GimbalStoreConstants.PREF_SESSION_COOKIE_PARAM_KEY);
+ PostReviewsProcessor postReviewsProcessor = new PostReviewsProcessor(this, progressDialog,
+ productId, getIntent());
+ HttpConnectionAsyncTask asyncTask = new HttpConnectionAsyncTask(GimbalStoreConstants.HTTP_METHODS.GET,
+ Arrays.asList(ServerURLUtil.getStoreServletServerURL(getResources())),
+ Arrays.asList(paramsMap), cookieString,
+ postReviewsProcessor);
+ asyncTask.execute(new String[]{});
}
@Override
@@ -218,6 +281,7 @@ protected void onRestart() {
finish();
}
+
@Override
public void onBackPressed() {
super.onBackPressed();
diff --git a/app/src/main/java/com/avnet/gears/codes/gimbal/store/async/response/processor/impl/AuthDataProcessor.java b/app/src/main/java/com/avnet/gears/codes/gimbal/store/async/response/processor/impl/AuthDataProcessor.java
index 6a54441..03cdfe0 100644
--- a/app/src/main/java/com/avnet/gears/codes/gimbal/store/async/response/processor/impl/AuthDataProcessor.java
+++ b/app/src/main/java/com/avnet/gears/codes/gimbal/store/async/response/processor/impl/AuthDataProcessor.java
@@ -12,6 +12,7 @@
import com.avnet.gears.codes.gimbal.store.bean.AuthDataBean;
import com.avnet.gears.codes.gimbal.store.bean.ResponseItemBean;
import com.avnet.gears.codes.gimbal.store.constant.GimbalStoreConstants;
+import com.avnet.gears.codes.gimbal.store.utils.AndroidUtil;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.google.gson.stream.JsonReader;
@@ -49,6 +50,9 @@ public boolean doProcess(List responseItemBeansList) {
JsonReader reader = new JsonReader(new StringReader(responseString));
reader.setLenient(true);
+ AndroidUtil.savePreferenceValue(parentActivity.getApplicationContext(),
+ GimbalStoreConstants.PREF_SESSION_COOKIE_PARAM_KEY,
+ httpResponseBean.getCookieValue());
AuthDataBean responseBean = gson.fromJson(responseString, AuthDataBean.class);
Log.d("HTTP DEBUG", " Response Bean = " + responseBean);
Bundle data = dataIntent.getExtras();
@@ -92,7 +96,7 @@ public boolean doProcess(List responseItemBeansList) {
parentActivity.setAccountAuthenticatorResult(dataIntent.getExtras());
parentActivity.setResult(Activity.RESULT_OK, dataIntent);
-
+ parentActivity.finish();
}
return true;
}
diff --git a/app/src/main/java/com/avnet/gears/codes/gimbal/store/async/response/processor/impl/FeedItemListDataProcessor.java b/app/src/main/java/com/avnet/gears/codes/gimbal/store/async/response/processor/impl/FeedItemListDataProcessor.java
index 8e28f59..d9f4c86 100644
--- a/app/src/main/java/com/avnet/gears/codes/gimbal/store/async/response/processor/impl/FeedItemListDataProcessor.java
+++ b/app/src/main/java/com/avnet/gears/codes/gimbal/store/async/response/processor/impl/FeedItemListDataProcessor.java
@@ -62,8 +62,8 @@ public boolean doProcess(List responseItemBeansList) {
FeedItemBean[] feedItemsArray = responseBean.getCatalogEntryView();
final List feedItemBeans = Arrays.asList(responseBean.getCatalogEntryView());
final Map> feedListMap = new HashMap>();
- feedListMap.put(GimbalStoreConstants.FEED_ITEM_TYPE.FRIEND_REVIEW, new ArrayList());
- feedListMap.put(GimbalStoreConstants.FEED_ITEM_TYPE.FRIEND_RECOMMENDATION, new ArrayList());
+ feedListMap.put(GimbalStoreConstants.FEED_ITEM_TYPE.FRIEND_REVIEWED, new ArrayList());
+ feedListMap.put(GimbalStoreConstants.FEED_ITEM_TYPE.FRIEND_RECOMMENDED, new ArrayList());
feedListMap.put(GimbalStoreConstants.FEED_ITEM_TYPE.SUGGESTED_PRODUCTS, new ArrayList());
if (feedItemsArray != null && feedItemsArray.length > 0) {
for (FeedItemBean feedItem : feedItemBeans) {
diff --git a/app/src/main/java/com/avnet/gears/codes/gimbal/store/async/response/processor/impl/NotificationListDataProcessor.java b/app/src/main/java/com/avnet/gears/codes/gimbal/store/async/response/processor/impl/NotificationListDataProcessor.java
index ff14bc0..aec1221 100644
--- a/app/src/main/java/com/avnet/gears/codes/gimbal/store/async/response/processor/impl/NotificationListDataProcessor.java
+++ b/app/src/main/java/com/avnet/gears/codes/gimbal/store/async/response/processor/impl/NotificationListDataProcessor.java
@@ -66,11 +66,11 @@ public boolean doProcess(List responseItemBeansList) {
final List promotionNotifications = new ArrayList();
if (notificationItemsArray != null && notificationItemsArray.length > 0) {
for (NotificationDataBean notificationItem : notificationItemBeans) {
- if (notificationItem.getNotificationType() != null) {
- GimbalStoreConstants.NOTIFICATION_TYPE notificationType = GimbalStoreConstants.NOTIFICATION_TYPE.valueOf(notificationItem.getNotificationType());
+ if (notificationItem.getType() != null) {
+ GimbalStoreConstants.NOTIFICATION_TYPE notificationType = GimbalStoreConstants.NOTIFICATION_TYPE.valueOf(notificationItem.getType());
switch (notificationType) {
- case FRIEND_RECOMMENDATION:
- case FRIEND_REVIEW:
+ case RECOMMENDED:
+ case REVIEWED:
friendNotificationList.add(notificationItem);
break;
case PRODUCT_PROMOTION:
diff --git a/app/src/main/java/com/avnet/gears/codes/gimbal/store/async/response/processor/impl/PostReviewsProcessor.java b/app/src/main/java/com/avnet/gears/codes/gimbal/store/async/response/processor/impl/PostReviewsProcessor.java
index a3f264b..273e1a8 100644
--- a/app/src/main/java/com/avnet/gears/codes/gimbal/store/async/response/processor/impl/PostReviewsProcessor.java
+++ b/app/src/main/java/com/avnet/gears/codes/gimbal/store/async/response/processor/impl/PostReviewsProcessor.java
@@ -51,10 +51,15 @@ public boolean doProcess(List responseItemBeansList) {
Log.d("DEBUG", "responseString = " + responseString);
PostReviewResponseBean responseBean = gson.fromJson(reader, PostReviewResponseBean.class);
Log.d("HTTP DEBUG", " Response Bean = " + responseBean);
- if (responseBean.getReviewResponse().getErrors().length == 0) {
+ if (responseBean.getReviewResponse() != null &&
+ responseBean.getReviewResponse().getErrors() != null &&
+ responseBean.getReviewResponse().getErrors().length > 0) {
Log.d("DEBUG", "Error submitting Review");
return false;
}
+ if (intent != null) {
+ Log.d("DEBUG", "In review post processor prodId = " + intent.getStringExtra(GimbalStoreConstants.INTENT_EXTRA_ATTR_KEY.SELECTED_PRODUCT_ID.toString()));
+ }
Log.d("DEBUG", "Review submitted successfully!!");
}
progressDialog.dismiss();
diff --git a/app/src/main/java/com/avnet/gears/codes/gimbal/store/async/response/processor/impl/ProductItemProcessor.java b/app/src/main/java/com/avnet/gears/codes/gimbal/store/async/response/processor/impl/ProductItemProcessor.java
index c0437d6..dcd60df 100644
--- a/app/src/main/java/com/avnet/gears/codes/gimbal/store/async/response/processor/impl/ProductItemProcessor.java
+++ b/app/src/main/java/com/avnet/gears/codes/gimbal/store/async/response/processor/impl/ProductItemProcessor.java
@@ -103,7 +103,7 @@ public void run() {
if (reviews.getTotalResults() != null) {
reviewTitleView.setText("This product got " + reviews.getTotalResults() + " user reviews");
} else {
- reviewTitleView.setText("No reviews for this product yet! Be first to review!");
+ reviewTitleView.setText("No reviews for this product yet! Be the first to review!");
}
}
diff --git a/app/src/main/java/com/avnet/gears/codes/gimbal/store/async/response/processor/impl/RecommendationDataProcessor.java b/app/src/main/java/com/avnet/gears/codes/gimbal/store/async/response/processor/impl/RecommendationDataProcessor.java
index 883d5dc..aff9968 100644
--- a/app/src/main/java/com/avnet/gears/codes/gimbal/store/async/response/processor/impl/RecommendationDataProcessor.java
+++ b/app/src/main/java/com/avnet/gears/codes/gimbal/store/async/response/processor/impl/RecommendationDataProcessor.java
@@ -63,15 +63,15 @@ public boolean doProcess(List responseItemBeansList) {
Intent targetIntent;
Bundle bundle = new Bundle();
switch (recommendationType) {
- case TYPE_CATEGORY:
+ case ASK_REC_PROD:
case TYPE_REVIEW_CATEGORY:
targetIntent = new Intent(context, ProductsListActivity.class);
bundle.putString(GimbalStoreConstants.INTENT_EXTRA_ATTR_KEY.SELECTED_SUB_CATEGORY_ID.toString(),
identifierString);
targetIntent.putExtras(bundle);
break;
- case TYPE_PRODUCT:
- case TYPE_REVIEW_PRODUCT:
+ case ASK_REC_CAT:
+ case ASK_REVIEW:
targetIntent = new Intent(context, ProductDetailsActivity.class);
bundle.putString(GimbalStoreConstants.INTENT_EXTRA_ATTR_KEY.SELECTED_PRODUCT_ID.toString(),
identifierString);
diff --git a/app/src/main/java/com/avnet/gears/codes/gimbal/store/authenticator/activity/StoreAuthenticatorActivity.java b/app/src/main/java/com/avnet/gears/codes/gimbal/store/authenticator/activity/StoreAuthenticatorActivity.java
index cb9bfd7..148a1e5 100644
--- a/app/src/main/java/com/avnet/gears/codes/gimbal/store/authenticator/activity/StoreAuthenticatorActivity.java
+++ b/app/src/main/java/com/avnet/gears/codes/gimbal/store/authenticator/activity/StoreAuthenticatorActivity.java
@@ -39,6 +39,7 @@ protected void onCreate(Bundle savedInstanceState) {
Intent authenticationIntent = new Intent();
final AuthDataProcessor authDataProcessor = new AuthDataProcessor(this, authenticationIntent, accountManager);
+
signIn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
diff --git a/app/src/main/java/com/avnet/gears/codes/gimbal/store/bean/NotificationDataBean.java b/app/src/main/java/com/avnet/gears/codes/gimbal/store/bean/NotificationDataBean.java
index 2f10d4f..fb87a8e 100644
--- a/app/src/main/java/com/avnet/gears/codes/gimbal/store/bean/NotificationDataBean.java
+++ b/app/src/main/java/com/avnet/gears/codes/gimbal/store/bean/NotificationDataBean.java
@@ -4,51 +4,51 @@
* Created by 914889 on 3/15/15.
*/
public class NotificationDataBean extends BaseServerDataBean {
- private String notificationId;
- private String notificationText;
- private String notificationType;
- private String notificationStatus;
+ private String Id;
+ private String Text;
+ private String Status;
+ private String Type;
- public String getNotificationId() {
- return notificationId;
+ public String getId() {
+ return Id;
}
- public void setNotificationId(String notificationId) {
- this.notificationId = notificationId;
+ public void setId(String id) {
+ Id = id;
}
- public String getNotificationText() {
- return notificationText;
+ public String getText() {
+ return Text;
}
- public void setNotificationText(String notificationText) {
- this.notificationText = notificationText;
+ public void setText(String text) {
+ Text = text;
}
- public String getNotificationType() {
- return notificationType;
+ public String getStatus() {
+ return Status;
}
- public void setNotificationType(String notificationType) {
- this.notificationType = notificationType;
+ public void setStatus(String status) {
+ Status = status;
}
- public String getNotificationStatus() {
- return notificationStatus;
+ public String getType() {
+ return Type;
}
- public void setNotificationStatus(String notificationStatus) {
- this.notificationStatus = notificationStatus;
+ public void setType(String type) {
+ Type = type;
}
@Override
public String toString() {
return super.toString() +
"NotificationDataBean{" +
- "notificationId='" + notificationId + '\'' +
- ", notificationText='" + notificationText + '\'' +
- ", notificationType='" + notificationType + '\'' +
- ", notificationStatus='" + notificationStatus + '\'' +
+ "Id='" + Id + '\'' +
+ ", Text='" + Text + '\'' +
+ ", Status='" + Status + '\'' +
+ ", Type='" + Type + '\'' +
'}';
}
}
diff --git a/app/src/main/java/com/avnet/gears/codes/gimbal/store/constant/GimbalStoreConstants.java b/app/src/main/java/com/avnet/gears/codes/gimbal/store/constant/GimbalStoreConstants.java
index 98716fa..1ca45f5 100644
--- a/app/src/main/java/com/avnet/gears/codes/gimbal/store/constant/GimbalStoreConstants.java
+++ b/app/src/main/java/com/avnet/gears/codes/gimbal/store/constant/GimbalStoreConstants.java
@@ -55,23 +55,26 @@ public class GimbalStoreConstants {
public static enum RECOMMENDATION_TYPE {
- TYPE_CATEGORY,
- TYPE_PRODUCT,
+ ASK_REC_PROD,
+ ASK_REC_CAT,
TYPE_REVIEW_CATEGORY,
- TYPE_REVIEW_PRODUCT
+ ASK_REVIEW,
+ RECOMMENDED_BY,
+ NOTIFY_REVIEW
}
public static enum NOTIFICATION_TYPE {
- ASK_FRIEND,
- ASK_FRIEND_REVIEW,
- FRIEND_REVIEW,
- FRIEND_RECOMMENDATION,
+ ASKED_TO_REC_PROD,
+ ASKED_TO_REC_CAT,
+ ASKED_TO_REVIEW,
+ REVIEWED,
+ RECOMMENDED,
PRODUCT_PROMOTION
}
public static enum FEED_ITEM_TYPE {
- FRIEND_RECOMMENDATION("Recommended By Friends"),
- FRIEND_REVIEW("Reviewed By Friends"),
+ FRIEND_RECOMMENDED("Recommended By Friends"),
+ FRIEND_REVIEWED("Reviewed By Friends"),
SUGGESTED_PRODUCTS("Products You may like");
private String itemTypeLabel;
@@ -117,6 +120,7 @@ public static enum StoreParameterKeys {
productId,
reviewText,
rating,
+ rectype,
uniqueId
}
@@ -125,14 +129,17 @@ public static enum StoreParameterValues {
top,
category,
product,
- feedItem,
- notificationItem,
+ fetchFeeds,
+ fetchNotifications,
signup,
authentication,
signin,
postReview,
createNetwork,
- fetchContacts
+ fetchContacts,
+ askRecommendation,
+ askToReview,
+ postRecommendation
}
public static enum HTTP_METHODS {
diff --git a/app/src/main/java/com/avnet/gears/codes/gimbal/store/fragment/NavigationDrawerFragment.java b/app/src/main/java/com/avnet/gears/codes/gimbal/store/fragment/NavigationDrawerFragment.java
index 4d6c578..5b0037d 100644
--- a/app/src/main/java/com/avnet/gears/codes/gimbal/store/fragment/NavigationDrawerFragment.java
+++ b/app/src/main/java/com/avnet/gears/codes/gimbal/store/fragment/NavigationDrawerFragment.java
@@ -108,20 +108,22 @@ public void onItemClick(AdapterView> parent, View view, int position, long id)
}
public void refreshDrawerListView() {
- getActivity().runOnUiThread(new Runnable() {
- @Override
- public void run() {
- mDrawerListView.setAdapter(new ArrayAdapter(
- getActionBar().getThemedContext(),
- android.R.layout.simple_list_item_activated_1,
- android.R.id.text1,
- mCategoryTitles
- ));
-
- mDrawerListView.setItemChecked(mCurrentSelectedPosition, true);
- mDrawerListView.refreshDrawableState();
- }
- });
+ if (getActivity() != null) {
+ getActivity().runOnUiThread(new Runnable() {
+ @Override
+ public void run() {
+ mDrawerListView.setAdapter(new ArrayAdapter(
+ getActionBar().getThemedContext(),
+ android.R.layout.simple_list_item_activated_1,
+ android.R.id.text1,
+ mCategoryTitles
+ ));
+
+ mDrawerListView.setItemChecked(mCurrentSelectedPosition, true);
+ mDrawerListView.refreshDrawableState();
+ }
+ });
+ }
}
public boolean isDrawerOpen() {
diff --git a/app/src/main/java/com/avnet/gears/codes/gimbal/store/listener/StoreBeaconEventListener.java b/app/src/main/java/com/avnet/gears/codes/gimbal/store/listener/StoreBeaconEventListener.java
new file mode 100644
index 0000000..1c56486
--- /dev/null
+++ b/app/src/main/java/com/avnet/gears/codes/gimbal/store/listener/StoreBeaconEventListener.java
@@ -0,0 +1,29 @@
+package com.avnet.gears.codes.gimbal.store.listener;
+
+import android.util.Log;
+
+import com.gimbal.android.Beacon;
+import com.gimbal.android.BeaconEventListener;
+import com.gimbal.android.BeaconSighting;
+
+import java.util.Date;
+
+/**
+ * Created by 914889 on 3/18/15.
+ */
+public class StoreBeaconEventListener extends BeaconEventListener {
+ @Override
+ public void onBeaconSighting(BeaconSighting sighting) {
+
+ Log.i("Info:", "BeaconSighting");
+
+ Log.i("Info:", "RSSI : " + sighting.getRSSI() + "\nTime in Millis : " + new Date(sighting.getTimeInMillis()));
+
+ Beacon beacon = sighting.getBeacon();
+ Log.i("Info:", "Beacon Name : " + beacon.getName() +
+ "\nIdentifier : " + beacon.getIdentifier() +
+ "\nBattery Level : " + beacon.getBatteryLevel() +
+ "\nBeacon Temperature : " + beacon.getTemperature());
+ Log.i("INFO", sighting.toString());
+ }
+}
diff --git a/app/src/main/java/com/avnet/gears/codes/gimbal/store/listener/StorePlaceListener.java b/app/src/main/java/com/avnet/gears/codes/gimbal/store/listener/StorePlaceListener.java
new file mode 100644
index 0000000..b08b5e3
--- /dev/null
+++ b/app/src/main/java/com/avnet/gears/codes/gimbal/store/listener/StorePlaceListener.java
@@ -0,0 +1,46 @@
+package com.avnet.gears.codes.gimbal.store.listener;
+
+import android.app.Activity;
+import android.preference.PreferenceManager;
+import android.util.Log;
+import android.widget.Toast;
+
+import com.gimbal.android.PlaceEventListener;
+import com.gimbal.android.Visit;
+
+import java.util.Date;
+
+/**
+ * Created by 914889 on 3/18/15.
+ */
+public class StorePlaceListener extends PlaceEventListener {
+ private Activity activity;
+
+ public StorePlaceListener(Activity activity) {
+ this.activity = activity;
+ }
+
+ @Override
+ public void onVisitStart(Visit visit) {
+ Log.i("Info:", "Place : Enter: " + visit.getPlace().getName() + ", at: " + new Date(visit.getArrivalTimeInMillis()));
+ // This will be invoked when a place is entered. Example below shows a simple log upon enter
+ Log.i("Info:", "Enter: " + visit.getPlace().getName() + ", at: " + new Date(visit.getArrivalTimeInMillis()));
+
+ boolean setting = PreferenceManager.getDefaultSharedPreferences(activity).getBoolean("example_checkbox", true);
+ Toast t = Toast.makeText(activity, "Onvisitstart : " + String.valueOf(setting), Toast.LENGTH_SHORT);
+ t.show();
+ super.onVisitStart(visit);
+ }
+
+ @Override
+ public void onVisitEnd(Visit visit) {
+ Log.i("Info:", "Place : Exit: " + visit.getPlace().getName() + ", at: " + new Date(visit.getDepartureTimeInMillis()));
+ // This will be invoked when a place is exited. Example below shows a simple log upon exit
+ Log.i("Info:", "Exit: " + visit.getPlace().getName() + ", at: " + new Date(visit.getDepartureTimeInMillis()));
+
+ boolean setting = PreferenceManager.getDefaultSharedPreferences(activity).getBoolean("example_checkbox", true);
+ Toast t = Toast.makeText(activity, "Onvisitend : " + String.valueOf(setting), Toast.LENGTH_SHORT);
+ t.show();
+ super.onVisitEnd(visit);
+ }
+}
diff --git a/app/src/main/java/com/avnet/gears/codes/gimbal/store/receiver/StoreBootBroadcastReceiver.java b/app/src/main/java/com/avnet/gears/codes/gimbal/store/receiver/StoreBootBroadcastReceiver.java
new file mode 100644
index 0000000..d58a25a
--- /dev/null
+++ b/app/src/main/java/com/avnet/gears/codes/gimbal/store/receiver/StoreBootBroadcastReceiver.java
@@ -0,0 +1,25 @@
+package com.avnet.gears.codes.gimbal.store.receiver;
+
+import android.content.BroadcastReceiver;
+import android.content.Context;
+import android.content.Intent;
+import android.util.Log;
+
+import com.avnet.gears.codes.gimbal.store.service.StoreGimbalDeviceService;
+
+public class StoreBootBroadcastReceiver extends BroadcastReceiver {
+ public StoreBootBroadcastReceiver() {
+ Log.d("GIMBAL", "instantiating StoreBootBroadcastReceiver");
+ }
+
+ @Override
+ public void onReceive(Context context, Intent intent) {
+
+ Log.d("SERVICE", "in StoreBootBroadcastReceiver.onRecieve()");
+ // start the bluetooth broadcast receiver service
+ Intent startServiceIntent = new Intent(context, StoreGimbalDeviceService.class);
+ context.startService(startServiceIntent);
+ Log.d("GIMBAL", "Started Device state service -- service created");
+
+ }
+}
diff --git a/app/src/main/java/com/avnet/gears/codes/gimbal/store/receiver/StoreGimbalDeviceBroadcastReceiver.java b/app/src/main/java/com/avnet/gears/codes/gimbal/store/receiver/StoreGimbalDeviceBroadcastReceiver.java
new file mode 100644
index 0000000..b3e14ce
--- /dev/null
+++ b/app/src/main/java/com/avnet/gears/codes/gimbal/store/receiver/StoreGimbalDeviceBroadcastReceiver.java
@@ -0,0 +1,52 @@
+package com.avnet.gears.codes.gimbal.store.receiver;
+
+import android.app.Application;
+import android.bluetooth.BluetoothAdapter;
+import android.content.BroadcastReceiver;
+import android.content.Context;
+import android.content.Intent;
+import android.util.Log;
+
+import com.avnet.gears.codes.gimbal.store.activity.NotificationsListActivity;
+import com.gimbal.android.BeaconEventListener;
+import com.gimbal.android.BeaconManager;
+import com.gimbal.android.PlaceEventListener;
+
+public class StoreGimbalDeviceBroadcastReceiver extends BroadcastReceiver {
+ private Application application;
+
+ //Gimbal
+ private PlaceEventListener placeEventListener;
+ private BeaconEventListener beaconSightingListener;
+ private BeaconManager beaconManager;
+
+ public StoreGimbalDeviceBroadcastReceiver() {
+ }
+
+ public StoreGimbalDeviceBroadcastReceiver(Application base) {
+ this.application = base;
+ Log.d("GIMBAL", "Instantiated StoreGimbalDeviceBroadcastReceiver");
+ }
+
+ @Override
+ public void onReceive(final Context context, Intent intent) {
+ String action = intent.getAction();
+ final int bluetoothState = intent.getIntExtra(BluetoothAdapter.EXTRA_STATE, -1);
+
+ if (BluetoothAdapter.ACTION_STATE_CHANGED.equals(action)) {
+ if (bluetoothState == BluetoothAdapter.STATE_TURNING_ON ||
+ bluetoothState == BluetoothAdapter.STATE_ON) {
+ // start the service
+ Log.d("GIMBAL", "Bluetooth state changed ON =" + bluetoothState);
+ Intent mIntent = new Intent(context, NotificationsListActivity.class);
+ mIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
+ context.startActivity(mIntent);
+ }
+ } else if (bluetoothState == BluetoothAdapter.STATE_TURNING_OFF ||
+ bluetoothState == BluetoothAdapter.STATE_OFF) {
+ // Bluetooth is disconnected, do handling here
+ Log.d("GIMBAL", "Bluetooth state changed OFF =" + bluetoothState);
+ // stop the service
+ }
+ }
+}
diff --git a/app/src/main/java/com/avnet/gears/codes/gimbal/store/service/StoreGcmServiceIntent.java b/app/src/main/java/com/avnet/gears/codes/gimbal/store/service/StoreGcmServiceIntent.java
index 5ec5a38..281c15b 100644
--- a/app/src/main/java/com/avnet/gears/codes/gimbal/store/service/StoreGcmServiceIntent.java
+++ b/app/src/main/java/com/avnet/gears/codes/gimbal/store/service/StoreGcmServiceIntent.java
@@ -90,14 +90,16 @@ private void sendNotification(String messageType, Bundle extra) {
String msg = extra.getString(GimbalStoreConstants.notificationDataKey.message.toString());
String notificationTypeString = extra.getString(GimbalStoreConstants.notificationDataKey.notificationType.toString());
- GimbalStoreConstants.NOTIFICATION_TYPE notificationType = GimbalStoreConstants.NOTIFICATION_TYPE.valueOf(notificationTypeString);
-
-
+ GimbalStoreConstants.NOTIFICATION_TYPE notificationType = GimbalStoreConstants.NOTIFICATION_TYPE.PRODUCT_PROMOTION;
+ if (notificationTypeString != null) {
+ notificationType = GimbalStoreConstants.NOTIFICATION_TYPE.valueOf(notificationTypeString);
+ }
Intent targetIntent;
Bundle bundle = new Bundle();
switch (notificationType) {
- case ASK_FRIEND:
- case ASK_FRIEND_REVIEW:
+ case ASKED_TO_REC_PROD:
+ case ASKED_TO_REC_CAT:
+ case ASKED_TO_REVIEW:
String recommendationId = extra.getString(GimbalStoreConstants.notificationDataKey.recommendationId.toString());
RecommendationDataProcessor recommendationDataProcessor = new RecommendationDataProcessor(getApplicationContext(), msg);
Map paramsMap = ServerURLUtil.getBasicConfigParamsMap(getResources());
@@ -109,8 +111,8 @@ private void sendNotification(String messageType, Bundle extra) {
Arrays.asList(paramsMap), null,
recommendationDataProcessor);
return;// Notification is sent in the processor class
- case FRIEND_RECOMMENDATION:
- case FRIEND_REVIEW:
+ case RECOMMENDED:
+ case REVIEWED:
targetIntent = new Intent(this, FeedListActivity.class);
String feedItemId = extra.getString(GimbalStoreConstants.notificationDataKey.feedItemId.toString());
String productId = extra.getString(GimbalStoreConstants.notificationDataKey.productId.toString());
diff --git a/app/src/main/java/com/avnet/gears/codes/gimbal/store/service/StoreGimbalDeviceService.java b/app/src/main/java/com/avnet/gears/codes/gimbal/store/service/StoreGimbalDeviceService.java
new file mode 100644
index 0000000..bdbcc11
--- /dev/null
+++ b/app/src/main/java/com/avnet/gears/codes/gimbal/store/service/StoreGimbalDeviceService.java
@@ -0,0 +1,50 @@
+package com.avnet.gears.codes.gimbal.store.service;
+
+import android.app.IntentService;
+import android.app.Service;
+import android.bluetooth.BluetoothAdapter;
+import android.content.Intent;
+import android.content.IntentFilter;
+import android.os.IBinder;
+import android.util.Log;
+
+import com.avnet.gears.codes.gimbal.store.receiver.StoreGimbalDeviceBroadcastReceiver;
+
+/**
+ * An {@link IntentService} subclass for handling asynchronous task requests in
+ * a service on a separate handler thread.
+ *
+ * helper methods.
+ */
+public class StoreGimbalDeviceService extends Service {
+
+ private StoreGimbalDeviceBroadcastReceiver deviceBroadcastReceiver;
+
+ public StoreGimbalDeviceService() {
+ // super(StoreGimbalDeviceIntentService.class.getName());
+ Log.d("GIMBAL", "instantiating StoreGimbalDeviceIntentService");
+ }
+
+ @Override
+ public void onCreate() {
+ deviceBroadcastReceiver = new StoreGimbalDeviceBroadcastReceiver(getApplication());
+ registerReceiver(deviceBroadcastReceiver, new IntentFilter(BluetoothAdapter.ACTION_STATE_CHANGED));
+ super.onCreate();
+ }
+
+ @Override
+ public IBinder onBind(Intent intent) {
+ if (deviceBroadcastReceiver != null) {
+ Log.d("GIMBAL", "StoreGimbalDeviceIntentService.onBind() deviceBroadcastReceiver != null");
+ return deviceBroadcastReceiver.peekService(getApplicationContext(), intent);
+ }
+ return null;
+ }
+
+ @Override
+ public int onStartCommand(Intent intent, int flags, int startId) {
+ super.onStartCommand(intent, flags, startId);
+ return START_STICKY;
+ }
+
+}
diff --git a/app/src/main/java/com/avnet/gears/codes/gimbal/store/utils/AndroidUtil.java b/app/src/main/java/com/avnet/gears/codes/gimbal/store/utils/AndroidUtil.java
index 9c720d8..890907c 100644
--- a/app/src/main/java/com/avnet/gears/codes/gimbal/store/utils/AndroidUtil.java
+++ b/app/src/main/java/com/avnet/gears/codes/gimbal/store/utils/AndroidUtil.java
@@ -18,12 +18,20 @@
import android.widget.ListView;
import com.avnet.gears.codes.gimbal.store.R;
+import com.avnet.gears.codes.gimbal.store.activity.FeedListActivity;
+import com.avnet.gears.codes.gimbal.store.activity.NotificationsListActivity;
+import com.avnet.gears.codes.gimbal.store.activity.UserSettingsActivity;
import com.avnet.gears.codes.gimbal.store.async.response.processor.impl.ContactsSyncProcessor;
import com.avnet.gears.codes.gimbal.store.bean.ContactBean;
import com.avnet.gears.codes.gimbal.store.bean.NotificationActionBean;
import com.avnet.gears.codes.gimbal.store.bean.PhoneNumberBean;
import com.avnet.gears.codes.gimbal.store.constant.GimbalStoreConstants;
import com.avnet.gears.codes.gimbal.store.handler.HttpConnectionAsyncTask;
+import com.avnet.gears.codes.gimbal.store.listener.StoreBeaconEventListener;
+import com.avnet.gears.codes.gimbal.store.listener.StorePlaceListener;
+import com.gimbal.android.BeaconManager;
+import com.gimbal.android.Gimbal;
+import com.gimbal.android.PlaceManager;
import java.util.ArrayList;
import java.util.List;
@@ -212,12 +220,26 @@ public static boolean processSettingsAction(Activity parentActivity, int selecte
break;
case R.id.action_settings:
Log.d("DEBUG", "In action setting --");
+ Intent intent = new Intent(parentActivity, UserSettingsActivity.class);
+ parentActivity.startActivity(intent);
returnFlag = true;
break;
case R.id.action_about:
Log.d("DEBUG", "In action setting About");
returnFlag = true;
break;
+ case R.id.action_feed_list:
+ Log.d("DEBUG", "In action setting About");
+ intent = new Intent(parentActivity, FeedListActivity.class);
+ parentActivity.startActivity(intent);
+ returnFlag = true;
+ break;
+ case R.id.action_notifications:
+ Log.d("DEBUG", "In action setting About");
+ intent = new Intent(parentActivity, NotificationsListActivity.class);
+ parentActivity.startActivity(intent);
+ returnFlag = true;
+ break;
case android.R.id.home:
Log.d("DEBUG", "Clicked back button");
parentActivity.onBackPressed();
@@ -268,4 +290,19 @@ public static void setDynamicHeight(ListView mListView) {
mListView.setLayoutParams(params);
mListView.requestLayout();
}
+
+ public static void instantiateGimbal(Activity activity) {
+ Gimbal.setApiKey(activity.getApplication(), activity.getResources().getString(R.string.GIMBAL_APPLICATION_ID));
+ Log.d("GIMBAL", "Registering application.." + activity.getResources().getString(R.string.GIMBAL_APPLICATION_ID));
+ StorePlaceListener placeEventListener = new StorePlaceListener(activity);
+ PlaceManager.getInstance().addListener(placeEventListener);
+ StoreBeaconEventListener beaconSightingListener = new StoreBeaconEventListener();
+ BeaconManager beaconManager = new BeaconManager();
+ beaconManager.addListener(beaconSightingListener);
+
+ PlaceManager.getInstance().startMonitoring();
+ beaconManager.startListening();
+
+ Log.d("GIMBAL", "registering receiver");
+ }
}
diff --git a/app/src/main/java/com/avnet/gears/codes/gimbal/store/utils/TypeConversionUtil.java b/app/src/main/java/com/avnet/gears/codes/gimbal/store/utils/TypeConversionUtil.java
index 4e4eea0..e77e986 100644
--- a/app/src/main/java/com/avnet/gears/codes/gimbal/store/utils/TypeConversionUtil.java
+++ b/app/src/main/java/com/avnet/gears/codes/gimbal/store/utils/TypeConversionUtil.java
@@ -81,7 +81,7 @@ public static List getFeedDescriptionTitles(List feedItems
public static List getNotificationTitles(List notificationDataBeans) {
List notificationTitles = new ArrayList();
for (NotificationDataBean notificationDataBean : notificationDataBeans) {
- notificationTitles.add(notificationDataBean.getNotificationText());
+ notificationTitles.add(notificationDataBean.getText());
}
return notificationTitles;
}
diff --git a/app/src/main/res/layout/activity_product_details.xml b/app/src/main/res/layout/activity_product_details.xml
index 4bc3613..73b4bc7 100644
--- a/app/src/main/res/layout/activity_product_details.xml
+++ b/app/src/main/res/layout/activity_product_details.xml
@@ -41,7 +41,7 @@
style="?android:attr/buttonStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:text="@string/buy_now_label"
+ android:text="@string/ask_friend_review_label"
android:id="@+id/buy_now_button"
android:layout_below="@+id/product_price"
android:layout_toEndOf="@+id/product_display_image" />
diff --git a/app/src/main/res/layout/activity_store_authenticator.xml b/app/src/main/res/layout/activity_store_authenticator.xml
index 36ead71..0a3b5ad 100644
--- a/app/src/main/res/layout/activity_store_authenticator.xml
+++ b/app/src/main/res/layout/activity_store_authenticator.xml
@@ -41,7 +41,7 @@
android:layout_alignTop="@+id/textView1"
android:layout_marginStart="38dp"
android:layout_toEndOf="@+id/textView1"
- android:text="rajagopal" />
+ android:text="rajagopal.28" />
+
+
diff --git a/app/src/main/res/values-v21/styles.xml b/app/src/main/res/values-v21/styles.xml
index 629901a..e9d9014 100644
--- a/app/src/main/res/values-v21/styles.xml
+++ b/app/src/main/res/values-v21/styles.xml
@@ -1,7 +1,5 @@
-
+
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index ee3da51..657a050 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -15,10 +15,12 @@
Sync My Contacts
About
Settings
+ Notifications
+ Friend Activties
Show More
Recommend
- Add to cart
+ Ask Friend to Review
Ask
Post Review
@@ -44,7 +46,7 @@
667623029279
-
+ f638944c-9455-4112-a84d-036f60d321fb
FeedListActivity
Hello world!
diff --git a/app/src/main/res/xml/pref_general.xml b/app/src/main/res/xml/pref_general.xml
index afeaeeb..b359c5e 100644
--- a/app/src/main/res/xml/pref_general.xml
+++ b/app/src/main/res/xml/pref_general.xml
@@ -1,9 +1,7 @@
-
-
-