Exemplo n.º 1
0
        public void HappyPathNoCouponTest()
        {
            Majorsilence.Vpn.Logic.Helpers.SslSecurity.Callback();
            var pay = new Majorsilence.Vpn.Logic.Payments.StripePayment(userid, new Majorsilence.Vpn.Logic.Email.FakeEmail());

            pay.MakePayment(this.token, "");
        }
Exemplo n.º 2
0
        public void MissingTokenTest()
        {
            Majorsilence.Vpn.Logic.Helpers.SslSecurity.Callback();
            var pay = new Majorsilence.Vpn.Logic.Payments.StripePayment(userid, new Majorsilence.Vpn.Logic.Email.FakeEmail());

            Assert.Throws <Majorsilence.Vpn.Logic.Exceptions.InvalidStripeTokenException>(() => pay.MakePayment("", ""));
        }
Exemplo n.º 3
0
        public void Charge(string stripeToken, string discount)
        {
            if (sessionInstance.LoggedIn == false)
            {
                return;
            }

            // Test credit card number: 4242 4242 4242 4242

            string message = "";

            try
            {
                var pay = new Majorsilence.Vpn.Logic.Payments.StripePayment(sessionInstance.UserId,
                                                                            email);
                pay.MakePayment(stripeToken, discount);

                Majorsilence.Vpn.Logic.ActionLog.Log_BackgroundThread("Payment made", sessionInstance.UserId);


                Task.Run(() => SetDefaultVpnServer());
            }
            catch (Exception ex)
            {
                Majorsilence.Vpn.Logic.Helpers.Logging.Log(ex);
                message = "fail";
            }

            this.HttpContext.Response.Redirect("/charge?status=" + message, false);
        }
Exemplo n.º 4
0
        public void RemoveStripeAccount(int id, string removeaccount)
        {
            if (sessionInstance.LoggedIn == false || sessionInstance.IsAdmin == false)
            {
                return;
            }

            try
            {
                if (removeaccount != null && removeaccount == "yes")
                {
                    var payments = new Majorsilence.Vpn.Logic.Payments.StripePayment(id, email);
                    payments.CancelSubscription();
                    payments.CancelAccount();


                    Response.Redirect("/admin/users?status=" + HttpUtility.HtmlEncode("User with id removed: " + id), false);
                }
            }
            catch (Exception ex)
            {
                Majorsilence.Vpn.Logic.Helpers.Logging.Log(ex);
                Response.Redirect("/admin/users?status=" + HttpUtility.HtmlEncode(ex.Message), false);
            }
        }
Exemplo n.º 5
0
        public void CancelSubscription()
        {
            if (sessionInstance.LoggedIn == false)
            {
                return;
            }

            this.HttpContext.Response.ContentType = "text/html";
            try
            {
                var pay = new Majorsilence.Vpn.Logic.Payments.StripePayment(sessionInstance.UserId, email);
                pay.CancelSubscription();
                this.HttpContext.Response.StatusCode = (int)System.Net.HttpStatusCode.OK;

                Majorsilence.Vpn.Logic.ActionLog.Log_BackgroundThread("Subscription Cancelled", sessionInstance.UserId);
            }
            catch (Exception ex)
            {
                Majorsilence.Vpn.Logic.Helpers.Logging.Log(ex);
                this.HttpContext.Response.StatusCode = (int)System.Net.HttpStatusCode.InternalServerError;
            }
        }