Parcourir la source

[컨텐츠][New] 전체보기 북마크 : 비회원 팝업 추가

hyodong.min il y a 7 ans
Parent
commit
ce93dd5059

+ 39 - 1
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/contents/ContentsOverviewPresenter.java

@@ -1,10 +1,16 @@
 package kr.co.zumo.app.lifeplus.view.screen.contents;
 
+import kr.co.zumo.app.R;
 import kr.co.zumo.app.lifeplus.helper.NavigationBar;
 import kr.co.zumo.app.lifeplus.supervisor.ActivityDeliveryHelper;
 import kr.co.zumo.app.lifeplus.supervisor.ScreenID;
+import kr.co.zumo.app.lifeplus.util.ResourceUtil;
 import kr.co.zumo.app.lifeplus.view.DoubleChecker;
 import kr.co.zumo.app.lifeplus.view.Event;
+import kr.co.zumo.app.lifeplus.view.dialog.ConfirmDialog;
+import kr.co.zumo.app.lifeplus.view.dialog.DialogBuilder;
+import kr.co.zumo.app.lifeplus.view.dialog.DialogID;
+import kr.co.zumo.app.lifeplus.view.dialog.ICustomConfirmListener;
 
 /**
  * ContentsOverviewPresenter
@@ -58,7 +64,12 @@ public class ContentsOverviewPresenter extends ContentsBasePresenter<ContentsOve
         model.updateLiked();
         break;
       case Event.BOOKMARK:
-        model.updateBookmarked();
+        if (model.isMember()) {
+          model.updateBookmarked();
+        }
+        else {
+          showPopupForGuest();
+        }
         break;
       default:
         break;
@@ -88,6 +99,33 @@ public class ContentsOverviewPresenter extends ContentsBasePresenter<ContentsOve
     }
   }
 
+  protected void showPopupForGuest() {
+    // 비회원 가입 유도
+    new DialogBuilder<ConfirmDialog, ICustomConfirmListener>(getFragmentManager(), DialogID.CONFIRM)
+      .listener(new ICustomConfirmListener<ConfirmDialog>() {
+        @Override
+        public void onPositiveResult(ConfirmDialog dialog, Event event) {
+          dialog.dispose();
+          go(ScreenID.SIGN_UP_START);
+        }
+
+        @Override
+        public void onNegativeResult(ConfirmDialog dialog, Event event) {
+          dialog.dispose();
+        }
+
+        @Override
+        public void onDialogCanceled(ConfirmDialog dialog) {
+          dialog.dispose();
+        }
+      })
+      .attribute(dialog -> {
+        dialog.setText(ResourceUtil.getString(R.string.bookmark_guest_guide));
+        dialog.setPositiveButtonLabelId(R.string.member_confirm);
+      })
+      .show();
+  }
+
   @Override
   public void onNavigationClickClose(NavigationBar navigationBar) {
     onBackPressed();

+ 0 - 2
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/contents/ContentsPresenter.java

@@ -290,13 +290,11 @@ public class ContentsPresenter extends ContentsBasePresenter<ContentsModel, ICon
         @Override
         public void onNegativeResult(ConfirmDialog dialog, Event event) {
           dialog.dispose();
-
         }
 
         @Override
         public void onDialogCanceled(ConfirmDialog dialog) {
           dialog.dispose();
-
         }
       })
       .attribute(dialog -> {