def ProcessSubscription(self, pArgumentDic): tVipSubscriber = VipSubscriber() tVipSub = VipSubscription() tVipPayment = VipPayment() tLogList = [] tOwnerEmail = pArgumentDic['payer_email'] tOwnerId = pArgumentDic['payer_id'] tVipSubscriber = VipSubscriber.GetSubscriberByIdAndEmail( tOwnerId, tOwnerEmail) tVipSubs = VipSubscription.GetActiveSubscriptionsByOwner(tOwnerId) if (tVipSubs != None and len(tVipSubs) > 0): tVipSub = tVipSubs[0] tVipSub.subscriptionIsActive = True tLogList = tVipSub.subscriptionLog tLogList.append("Paid: " + str(datetime.datetime.now()) + " with transaction id " + pArgumentDic['txn_id']) tVipSub.subscriptionLog = tLogList else: tVipSub.subscriptionAutoState = "Tier0" tVipSub.subscriptionId = pArgumentDic['subscr_id'] tLogList = tVipSub.subscriptionLog tLogList.append("Started: " + str(datetime.datetime.now()) + " with transaction id " + pArgumentDic['txn_id']) tVipSub.subscriptionLog = tLogList tVipSub.subscriptionNeedsUpgrade = True tVipSub.subscriptionOwner = tOwnerId tVipSub.subscriptionIsActive = True tSubKey = str(tVipSub.put()) tVipSubscriber.subscriberHasActiveSubscription = True tVipSubscriber.subscriberActiveSubscription = tSubKey tSubList = [] tSubList = tVipSubscriber.subscriberSubscriptions tSubList.append(tSubKey) tVipSubscriber.put() if ('payment_gross' in pArgumentDic.keys()): tVipPayment.paymentAmount = pArgumentDic['payment_gross'] tVipPayment.paymentEmail = tOwnerEmail tVipPayment.paymentPaypalId = tOwnerId tVipPayment.put()
def ProcessSubscriptionCancellation(self, pArgumentDic): tVipSubscriber = VipSubscriber() tVipSub = VipSubscription() tVipPayment = VipPayment() tLogList = [] tOwnerEmail = pArgumentDic['payer_email'] tOwnerId = pArgumentDic['payer_id'] tVipSubList = VipSubscription.GetActiveSubscriptionsByOwner(tOwnerId) if (tVipSubList != None): if (len(tVipSubList) > 0): tVipSub = tVipSubList[0] tVipSub.subscriptionIsActive = False tVipSub.subscriptionEnd = datetime.datetime.now() tVipSub.subscriptionNeedsCancel = True tVipSub.put() tVipSubscriber.subscriberHasActiveSubscription = False tVipSubscriber.subscriberActiveSubscription = "" tVipSubscriber.put()