discord-jadx/app/src/main/java/com/discord/utilities/premium/PremiumGuildSubscriptionUti...

155 lines
7.2 KiB
Java

package com.discord.utilities.premium;
import com.discord.app.AppLog;
import com.discord.models.domain.ModelSubscription;
import com.discord.models.domain.premium.SubscriptionPlanType;
import com.discord.stores.StorePremiumGuildSubscription;
import com.discord.utilities.logging.Logger;
import com.discord.utilities.rest.RestAPI;
import d0.t.n;
import d0.t.u;
import d0.z.d.m;
import j0.p.a;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
import java.util.List;
import rx.Observable;
/* compiled from: PremiumGuildSubscriptionUtils.kt */
public final class PremiumGuildSubscriptionUtils {
public static final int DEFAULT_GUILD_SUBSCRIPTION_GUILD_COUNT = 1;
public static final int DEFAULT_GUILD_SUBSCRIPTION_SLOT_COUNT = 1;
public static final PremiumGuildSubscriptionUtils INSTANCE = new PremiumGuildSubscriptionUtils();
public static final int PREMIUM_SUBSCRIPTION_COOLDOWN_DAYS = 7;
/* compiled from: PremiumGuildSubscriptionUtils.kt */
public enum ModifySubscriptionSlotResult {
SUCCESS,
FAILURE_MODIFYING_SLOT,
FAILURE_UPDATING_SUBSCRIPTION
}
private PremiumGuildSubscriptionUtils() {
}
private final int getCurrentTierSubs(int i) {
if (i == 1) {
return 2;
}
if (i != 2) {
return i != 3 ? 0 : 30;
}
return 15;
}
private final int getNextTierSubs(int i) {
if (i == 1) {
return 15;
}
if (i != 2) {
return i != 3 ? 2 : 0;
}
return 30;
}
private final Observable<ModifySubscriptionSlotResult> modifySubscriptionSlot(RestAPI restAPI, long j, ModelSubscription modelSubscription, boolean z2, StorePremiumGuildSubscription storePremiumGuildSubscription) {
Observable<ModifySubscriptionSlotResult> z3 = (z2 ? restAPI.cancelSubscriptionSlot(j) : restAPI.uncancelSubscriptionSlot(j)).X(a.c()).t(new PremiumGuildSubscriptionUtils$modifySubscriptionSlot$1(storePremiumGuildSubscription)).F(PremiumGuildSubscriptionUtils$modifySubscriptionSlot$2.INSTANCE).L(PremiumGuildSubscriptionUtils$modifySubscriptionSlot$3.INSTANCE).z(new PremiumGuildSubscriptionUtils$modifySubscriptionSlot$4(restAPI, modelSubscription, z2));
m.checkNotNullExpressionValue(z3, "apiObs\n .subscrib…N }\n }\n }");
return z3;
}
/* JADX DEBUG: Multi-variable search result rejected for r5v8, resolved type: java.lang.Object */
/* JADX WARN: Multi-variable type inference failed */
public final List<ModelSubscription.SubscriptionAdditionalPlan> calculateAdditionalPlansWithPremiumGuildAdjustment(ModelSubscription modelSubscription, int i) {
List<ModelSubscription.SubscriptionAdditionalPlan> list;
boolean z2;
m.checkNotNullParameter(modelSubscription, "subscription");
ModelSubscription.SubscriptionRenewalMutations renewalMutations = modelSubscription.getRenewalMutations();
if (renewalMutations == null) {
list = modelSubscription.getPremiumAdditionalPlans();
} else {
list = renewalMutations.getPremiumAdditionalPlans();
if (list == null) {
list = n.emptyList();
}
}
ModelSubscription.SubscriptionAdditionalPlan subscriptionAdditionalPlan = null;
if (list != null) {
Iterator<T> it = list.iterator();
while (true) {
if (!it.hasNext()) {
break;
}
Object next = it.next();
ModelSubscription.SubscriptionAdditionalPlan subscriptionAdditionalPlan2 = (ModelSubscription.SubscriptionAdditionalPlan) next;
if (subscriptionAdditionalPlan2.getPlanId() == SubscriptionPlanType.PREMIUM_GUILD_MONTH.getPlanId() || subscriptionAdditionalPlan2.getPlanId() == SubscriptionPlanType.PREMIUM_GUILD_YEAR.getPlanId()) {
z2 = true;
continue;
} else {
z2 = false;
continue;
}
if (z2) {
subscriptionAdditionalPlan = next;
break;
}
}
subscriptionAdditionalPlan = subscriptionAdditionalPlan;
}
int quantity = (subscriptionAdditionalPlan != null ? subscriptionAdditionalPlan.getQuantity() : 0) + i;
if (quantity < 0 || subscriptionAdditionalPlan == null) {
AppLog appLog = AppLog.g;
Logger.e$default(appLog, "Error calculating additional_plans adjustment, new sub count:" + quantity, null, null, 6, null);
return modelSubscription.getPremiumAdditionalPlans();
}
ArrayList arrayList = new ArrayList();
for (Object obj : list) {
ModelSubscription.SubscriptionAdditionalPlan subscriptionAdditionalPlan3 = (ModelSubscription.SubscriptionAdditionalPlan) obj;
if ((subscriptionAdditionalPlan3.getPlanId() == SubscriptionPlanType.PREMIUM_GUILD_MONTH.getPlanId() || subscriptionAdditionalPlan3.getPlanId() == SubscriptionPlanType.PREMIUM_GUILD_YEAR.getPlanId()) ? false : true) {
arrayList.add(obj);
}
}
return quantity == 0 ? arrayList : u.plus((Collection) arrayList, (Iterable) d0.t.m.listOf(new ModelSubscription.SubscriptionAdditionalPlan(subscriptionAdditionalPlan.getPlanId(), quantity)));
}
public final int calculatePercentToNextTier(int i, int i2) {
if (i >= 3) {
return 100;
}
return d0.a0.a.roundToInt((((float) (i2 - getCurrentTierSubs(i))) / ((float) getNextTierSubs(i))) * ((float) 100));
}
public final int calculateTotalProgress(int i, int i2) {
if (i >= 3) {
return 100;
}
int nextTierSubs = getNextTierSubs(i);
int currentTierSubs = getCurrentTierSubs(i);
return d0.a0.a.roundToInt(((((float) (i2 - currentTierSubs)) / ((float) (nextTierSubs - currentTierSubs))) * 33.3f) + (((float) i) * 33.3f));
}
public final Observable<ModifySubscriptionSlotResult> cancelSubscriptionSlot(RestAPI restAPI, long j, ModelSubscription modelSubscription, StorePremiumGuildSubscription storePremiumGuildSubscription) {
m.checkNotNullParameter(restAPI, "api");
m.checkNotNullParameter(modelSubscription, "subscription");
m.checkNotNullParameter(storePremiumGuildSubscription, "storePremiumGuild");
return modifySubscriptionSlot(restAPI, j, modelSubscription, true, storePremiumGuildSubscription);
}
public final int getPremiumGuildTier(int i) {
if (i >= 30) {
return 3;
}
if (i >= 15) {
return 2;
}
return i >= 2 ? 1 : 0;
}
public final Observable<ModifySubscriptionSlotResult> uncancelSubscriptionSlot(RestAPI restAPI, long j, ModelSubscription modelSubscription, StorePremiumGuildSubscription storePremiumGuildSubscription) {
m.checkNotNullParameter(restAPI, "api");
m.checkNotNullParameter(modelSubscription, "subscription");
m.checkNotNullParameter(storePremiumGuildSubscription, "storePremiumGuild");
return modifySubscriptionSlot(restAPI, j, modelSubscription, false, storePremiumGuildSubscription);
}
}