128
128
import io .kommunicate .utils .KmAppSettingPreferences ;
129
129
import io .kommunicate .utils .KmConstants ;
130
130
import io .kommunicate .utils .KmUtils ;
131
+ import io .sentry .Hint ;
132
+ import io .sentry .Sentry ;
131
133
132
134
import static android .view .View .GONE ;
133
135
import static android .view .View .VISIBLE ;
@@ -475,39 +477,52 @@ public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
475
477
} else if (type == 6 ) {
476
478
MyViewHolder6 myViewholder6 = (MyViewHolder6 ) holder ;
477
479
if (message .getMetadata () != null ) {
478
- JSONObject jsonObject = new JSONObject (message .getMetadata ().get (FEEDBACK ));
479
- int ratingValue = (int ) jsonObject .get (RATING );
480
- switch (ratingValue ) {
481
- case FeedbackInputFragment .RATING_POOR :
482
- myViewholder6 .imageViewFeedbackRating .setImageDrawable (ContextCompat .getDrawable (context , com .applozic .mobicomkit .uiwidgets .R .drawable .ic_sad_1 ));
483
- break ;
484
- case FeedbackInputFragment .RATING_AVERAGE :
485
- myViewholder6 .imageViewFeedbackRating .setImageDrawable (ContextCompat .getDrawable (context , com .applozic .mobicomkit .uiwidgets .R .drawable .ic_confused ));
486
- break ;
487
- case FeedbackInputFragment .RATING_GOOD :
488
- myViewholder6 .imageViewFeedbackRating .setImageDrawable (ContextCompat .getDrawable (context , com .applozic .mobicomkit .uiwidgets .R .drawable .ic_happy ));
489
- break ;
490
- default :
491
- myViewholder6 .imageViewFeedbackRating .setImageDrawable (ContextCompat .getDrawable (context , com .applozic .mobicomkit .uiwidgets .R .drawable .ic_confused ));
492
-
493
- }
494
- if (!jsonObject .has (COMMENTS )) {
495
- myViewholder6 .scrollViewFeedbackCommentWrap .setVisibility (GONE );
480
+ String json = message .getMetadata ().get (FEEDBACK );
481
+ if (json == null ) {
482
+ Sentry .captureException (new RuntimeException ("Unable to find feedback in message of type feedback message " + message ));
496
483
return ;
497
484
}
498
- String comment = String .valueOf (jsonObject .get (COMMENTS ));
499
- myViewholder6 .scrollViewFeedbackCommentWrap .setVisibility (View .VISIBLE );
500
- myViewholder6 .textViewFeedbackComment .setText (comment );
501
- if (alCustomizationSettings .isAgentApp ()) {
502
- myViewholder6 .textViewFeedbackText .setText (context .getString (R .string .user_rating_text ));
485
+
486
+ JSONObject jsonObject = new JSONObject (json );
487
+ int ratingValue = (int ) jsonObject .get (RATING );
488
+
489
+ if (KmAppSettingPreferences .getRatingBase () != 3 ) {
490
+ switch (ratingValue ) {
491
+ case 1 :
492
+ myViewholder6 .imageViewFeedbackRating .setImageDrawable (ContextCompat .getDrawable (context , R .drawable .star ));
493
+ break ;
494
+ case 2 :
495
+ myViewholder6 .imageViewFeedbackRating .setImageDrawable (ContextCompat .getDrawable (context , R .drawable .ic_two_star_filled ));
496
+ break ;
497
+ case 4 :
498
+ myViewholder6 .imageViewFeedbackRating .setImageDrawable (ContextCompat .getDrawable (context , R .drawable .ic_four_star_filled ));
499
+ break ;
500
+ case 5 :
501
+ myViewholder6 .imageViewFeedbackRating .setImageDrawable (ContextCompat .getDrawable (context , R .drawable .ic_five_star_filled ));
502
+ break ;
503
+ default :
504
+ myViewholder6 .imageViewFeedbackRating .setImageDrawable (ContextCompat .getDrawable (context , R .drawable .ic_three_star_filled ));
505
+ }
506
+ if (alCustomizationSettings .isAgentApp ()) {
507
+ myViewholder6 .textViewFeedbackText .setText (context .getString (R .string .user_rating_text ));
508
+ myViewholder6 .textViewFeedbackText .setVisibility (View .VISIBLE );
509
+
510
+ } else {
511
+ myViewholder6 .textViewFeedbackText .setText ("" );
512
+ myViewholder6 .textViewFeedbackText .setVisibility (GONE );
513
+ }
514
+ if (!jsonObject .has (COMMENTS )) {
515
+ myViewholder6 .scrollViewFeedbackCommentWrap .setVisibility (GONE );
516
+ return ;
517
+ }
518
+ String comment = String .valueOf (jsonObject .get (COMMENTS ));
519
+ myViewholder6 .scrollViewFeedbackCommentWrap .setVisibility (View .VISIBLE );
520
+ myViewholder6 .textViewFeedbackComment .setText (comment );
503
521
} else {
504
522
switch (ratingValue ) {
505
523
case FeedbackInputFragment .RATING_POOR :
506
524
myViewholder6 .imageViewFeedbackRating .setImageDrawable (ContextCompat .getDrawable (context , com .applozic .mobicomkit .uiwidgets .R .drawable .ic_sad_1 ));
507
525
break ;
508
- case FeedbackInputFragment .RATING_AVERAGE :
509
- myViewholder6 .imageViewFeedbackRating .setImageDrawable (ContextCompat .getDrawable (context , com .applozic .mobicomkit .uiwidgets .R .drawable .ic_confused ));
510
- break ;
511
526
case FeedbackInputFragment .RATING_GOOD :
512
527
myViewholder6 .imageViewFeedbackRating .setImageDrawable (ContextCompat .getDrawable (context , com .applozic .mobicomkit .uiwidgets .R .drawable .ic_happy ));
513
528
break ;
@@ -517,10 +532,11 @@ public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
517
532
}
518
533
myViewholder6 .textViewFeedbackText .setVisibility (View .VISIBLE );
519
534
520
- if (!jsonObject .has ("comments" )) {
535
+ if (!jsonObject .has (COMMENTS )) {
521
536
myViewholder6 .scrollViewFeedbackCommentWrap .setVisibility (GONE );
522
537
return ;
523
538
}
539
+ String comment = String .valueOf (jsonObject .get (COMMENTS ));
524
540
myViewholder6 .scrollViewFeedbackCommentWrap .setVisibility (View .VISIBLE );
525
541
myViewholder6 .textViewFeedbackComment .setText (comment );
526
542
@@ -543,7 +559,9 @@ public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
543
559
bindMessageView (holder , message , position );
544
560
}
545
561
} catch (Exception e ) {
546
- e .printStackTrace ();
562
+ Hint hint = new Hint ();
563
+ hint .set ("MESSAGE" , message );
564
+ Sentry .captureException (e , hint );
547
565
}
548
566
}
549
567
0 commit comments