feat: added sweet-error library
diff --git a/app/src/main/java/org/apache/fineract/ui/offline/CustomerPayloadFragment.java b/app/src/main/java/org/apache/fineract/ui/offline/CustomerPayloadFragment.java
index c5a1a03..7658094 100644
--- a/app/src/main/java/org/apache/fineract/ui/offline/CustomerPayloadFragment.java
+++ b/app/src/main/java/org/apache/fineract/ui/offline/CustomerPayloadFragment.java
@@ -85,11 +85,12 @@
 
     @Override
     public void showNoInternetConnection() {
-
+        sweetUIErrorHandler.showSweetNoInternetUI(swipeRefreshLayout,layoutError);
     }
 
     @Override
     public void showError(String message) {
-
+        sweetUIErrorHandler.showSweetCustomErrorUI(message,
+                R.drawable.ic_error_black_24dp,swipeRefreshLayout,layoutError);
     }
 }
diff --git a/app/src/main/java/org/apache/fineract/ui/online/customers/customerlist/CustomersFragment.java b/app/src/main/java/org/apache/fineract/ui/online/customers/customerlist/CustomersFragment.java
index 36e0edf..54a97f8 100644
--- a/app/src/main/java/org/apache/fineract/ui/online/customers/customerlist/CustomersFragment.java
+++ b/app/src/main/java/org/apache/fineract/ui/online/customers/customerlist/CustomersFragment.java
@@ -144,11 +144,13 @@
     @Override
     public void onRefresh() {
         customerPresenter.fetchCustomers(0, false);
+        sweetUIErrorHandler.hideSweetErrorLayoutUI(rvCustomers,layoutError);
     }
 
     @OnClick(R.id.btn_try_again)
     void onRetry() {
         customerPresenter.fetchCustomers(0, false);
+        sweetUIErrorHandler.hideSweetErrorLayoutUI(rvCustomers,layoutError);
     }
 
     @Override
@@ -162,7 +164,7 @@
         swipeRefreshLayout.setColorSchemeColors(getActivity()
                 .getResources().getIntArray(R.array.swipeRefreshColors));
         swipeRefreshLayout.setOnRefreshListener(this);
-
+        sweetUIErrorHandler = new SweetUIErrorHandler(getActivity(),rootView);
     }
 
     @OnClick(R.id.fab_add_customer)
@@ -190,8 +192,8 @@
     @Override
     public void showEmptyCustomers(String message) {
         showRecyclerView(false);
-        showFineractEmptyUI(getString(R.string.customers), getString(R.string.customer),
-                R.drawable.ic_customer_black_24dp);
+        sweetUIErrorHandler.showSweetCustomErrorUI(getString(R.string.customer),
+                getString(Integer.parseInt(message)),R.drawable.ic_customer_black_24dp,rvCustomers,layoutError);
     }
 
     @Override
@@ -229,15 +231,18 @@
     public void showNoInternetConnection() {
         showRecyclerView(false);
         showFineractNoInternetUI();
+        sweetUIErrorHandler.showSweetNoInternetUI(swipeRefreshLayout,layoutError);
     }
 
     @Override
     public void showError(String message) {
         if (customerAdapter.getItemCount() != 0) {
-            showMessage(getString(R.string.error_failed_to_refresh_customers));
+            sweetUIErrorHandler.showSweetCustomErrorUI(message,
+                    R.drawable.ic_error_black_24dp,swipeRefreshLayout,layoutError);
         } else {
             showRecyclerView(false);
-            showFineractErrorUI(getString(R.string.customers));
+            sweetUIErrorHandler.showSweetCustomErrorUI(getString(R.string.customers),
+                    R.drawable.ic_error_black_24dp,swipeRefreshLayout,layoutError);
         }
     }
 
diff --git a/app/src/main/java/org/apache/fineract/ui/online/customers/customerprofile/CustomerProfileActivity.java b/app/src/main/java/org/apache/fineract/ui/online/customers/customerprofile/CustomerProfileActivity.java
index bed1d69..7bed36d 100644
--- a/app/src/main/java/org/apache/fineract/ui/online/customers/customerprofile/CustomerProfileActivity.java
+++ b/app/src/main/java/org/apache/fineract/ui/online/customers/customerprofile/CustomerProfileActivity.java
@@ -16,6 +16,7 @@
 import android.view.MenuItem;
 import android.widget.ImageView;
 
+import com.github.therajanmaurya.sweeterror.SweetUIErrorHandler;
 import org.apache.fineract.R;
 import org.apache.fineract.ui.base.FineractBaseActivity;
 import org.apache.fineract.ui.base.Toaster;
@@ -38,10 +39,12 @@
  */
 public class CustomerProfileActivity extends FineractBaseActivity
         implements CustomerProfileContract.View, RefreshProfileImage {
-
+    private SweetUIErrorHandler sweetUIErrorHandler;
     @BindView(R.id.iv_customer_picture)
     ImageView ivCustomerProfile;
 
+    @BindView(R.id.layout_error)
+    ImageView errorView;
     private String customerIdentifier;
 
     @Override
@@ -52,6 +55,7 @@
 
         customerIdentifier = getIntent().getExtras().getString(ConstantKeys.CUSTOMER_IDENTIFIER);
 
+        sweetUIErrorHandler = new SweetUIErrorHandler(this, findViewById(android.R.id.content));
         loadCustomerPortrait();
 
         showBackButton();
@@ -163,13 +167,15 @@
     @Override
     public void refreshUI() {
         loadCustomerPortrait();
+        sweetUIErrorHandler.hideSweetErrorLayoutUI(ivCustomerProfile,errorView);
     }
 
     @Override
-    public void showNoInternetConnection() {
+    public void showNoInternetConnection() {sweetUIErrorHandler.showSweetNoInternetUI(ivCustomerProfile,errorView);
     }
 
     @Override
-    public void showError(String message) {
+    public void showError(String message) {sweetUIErrorHandler.showSweetCustomErrorUI(message,
+            R.drawable.ic_error_black_24dp,ivCustomerProfile,errorView);
     }
 }
diff --git a/app/src/main/res/layout/activity_customer_profile.xml b/app/src/main/res/layout/activity_customer_profile.xml
index 8fa1a60..50707b8 100644
--- a/app/src/main/res/layout/activity_customer_profile.xml
+++ b/app/src/main/res/layout/activity_customer_profile.xml
@@ -25,5 +25,9 @@
 
     </LinearLayout>
 
+    <include
+        layout="@layout/layout_sweet_exception_handler"
+        android:id="@+id/layout_error"
+        android:visibility="gone"/>
 </RelativeLayout>
 
diff --git a/app/src/main/res/layout/fragment_roles_list.xml b/app/src/main/res/layout/fragment_roles_list.xml
index 466dec4..ac12610 100644
--- a/app/src/main/res/layout/fragment_roles_list.xml
+++ b/app/src/main/res/layout/fragment_roles_list.xml
@@ -33,5 +33,8 @@
         android:layout_width="wrap_content"
         app:layout_behavior="org.apache.fineract.utils.ScrollFabBehavior"
         app:srcCompat="@drawable/ic_add_black_24dp"/>
-
+    <include
+        layout="@layout/layout_sweet_exception_handler"
+        android:id="@+id/layout_error"
+        android:visibility="gone"/>
 </android.support.design.widget.CoordinatorLayout>
\ No newline at end of file