Example #1
0
    public IEnumerator Create(PWOneTimeToken tokenModel, string email, string currency, string amount, string fingerprint, string description)
    {
        this.email       = email;
        this.currency    = currency;
        this.amount      = amount;
        this.fingerprint = fingerprint;
        this.description = description;

        string cardNumber = tokenModel.GetCardNumber();
        string expMonth   = tokenModel.GetExpMonth();
        string expYear    = tokenModel.getExpYear();
        string cvv        = tokenModel.getCVV();

        isRequestFinished = false;
        yield return(StartCoroutine(RequestOneTimeToken(tokenModel.GetPublicKey(), cardNumber, expMonth, expYear, cvv)));
    }
Example #2
0
    public void Create(PWOneTimeToken tokenModel, string email, string currency, string amount, string fingerprint, string description, string plan, string period, string duration)
    {
        this.email       = email;
        this.currency    = currency;
        this.amount      = amount;
        this.fingerprint = fingerprint;
        this.description = description;
        this.plan        = plan;
        this.period      = period;
        this.duration    = duration;

        string cardNumber = tokenModel.GetCardNumber();
        string expMonth   = tokenModel.GetExpMonth();
        string expYear    = tokenModel.getExpYear();
        string cvv        = tokenModel.getCVV();

        StartCoroutine(RequestOneTimeToken(tokenModel.GetPublicKey(), cardNumber, expMonth, expYear, cvv));
    }
Example #3
0
    public IEnumerator OnPay()
    {
        flagCreditCard = true;
        flagExpDate    = true;
        flagCVV        = true;
        flagEmail      = true;
        errTextCard.SetActive(false);
        errTextEmail.SetActive(false);

        if (!PWUltils.IsCVVNumberValid(inputCVV.text))
        {
            inputCVV.transform.parent.GetComponent <InputFieldEventHandle> ().OnError();
            flagCVV = false;
            errTextCard.GetComponent <Text>().text = "Please check CVV2 (CVC) code.";
            errTextCard.SetActive(true);
        }
        if (!PWUltils.IsExpireDateValid(inputExpDate.text))
        {
            inputExpDate.transform.parent.GetComponent <InputFieldEventHandle>().OnError();
            flagExpDate = false;
            errTextCard.GetComponent <Text>().text = "Please check card expiry date.";
            errTextCard.SetActive(true);
        }
        if (!PWUltils.IsCreditCardNumberValid(inputCardNumber.text))
        {
            inputCardNumber.transform.parent.GetComponent <InputFieldEventHandle> ().OnError();
            flagCreditCard = false;
            errTextCard.GetComponent <Text>().text = "Please check your credit card number.";
            errTextCard.SetActive(true);
        }

        if (!PWUltils.IsEmailValid(inputEmail.text))
        {
            inputEmail.transform.parent.GetComponent <InputFieldEventHandle> ().OnError();
            flagEmail = false;
            errTextEmail.SetActive(true);
        }

        if (!flagCreditCard || !flagExpDate || !flagCVV || !flagEmail)
        {
            return(false);
        }

        string cardNumber = inputCardNumber.text;
        string cvv        = inputCVV.text;

        string expMonth = inputExpDate.text.Substring(0, 2);
        string expYear  = inputExpDate.text.Substring(3);

        if (FakeAccountController.Instance.IsAccountOnline())
        {
            PWOneTimeToken token = new PWOneTimeToken();
            token.Create(PWBase.GetAppKey(), cardNumber, expMonth, expYear, cvv);
            PWCharge charge = gameObject.AddComponent <PWCharge>();
            yield return(StartCoroutine(charge.Create(token, inputEmail.text, this.currency, this.amount.ToString(), "fingerprint here", "description here")));

            if (charge.IsSuccessful())
            {
                TransactionSuccess(charge.GetReceipt(), charge.GetChargeAmount().ToString());
            }
            else
            {
                TransactionFail(charge.GetErrorMessage());
            }
        }
        else
        {
            TransactionFail("You must login before progess any purchase");
        }
    }