<?php $id = elgg_extract('id', $vars); $user = elgg_get_page_owner_entity(); $stripe = new StripeClient(); $charge = $stripe->getSubscription($user, $id); $title = elgg_echo('stripe:charges:title', array($charge->id)); echo elgg_view_module('info', elgg_echo('stripe:charges:title', array($charge->id)), elgg_view('stripe/objects/invoice', array('object' => $charge))); if ($charge->invoice) { $invoice = $stripe->getInvoice($charge->invoice); echo elgg_view_module('info', elgg_echo('stripe:invoices:title', array($invoice->id)), elgg_view('stripe/objects/charge', array('object' => $charge))); } if (elgg_get_logged_in_user_guid() !== elgg_get_page_owner_guid()) { $customer = $stripe->getCustomer($charge->customer); echo elgg_view_module('info', elgg_echo('stripe:customers:title', array($customer->id)), elgg_view('stripe/objects/customer', array('object' => $customer))); }
<?php $user = elgg_get_page_owner_entity(); $subscription_id = elgg_extract('id', $vars, null); $stripe = new StripeClient(); $invoice = $stripe->getUpcomingInvoice($user, $subscription_id); echo elgg_view_module('info', elgg_echo('stripe:invoices:upcoming'), elgg_view('stripe/objects/invoice', array('object' => $invoice))); $list = elgg_view('stripe/objects/list', array('objects' => $invoice->lines)); echo elgg_view_module('info', elgg_echo('stripe:invoices:items'), $list); if ($invoice->subscription) { $subscription = $stripe->getSubscription($invoice->customer, $invoice->subscription); if ($subscription) { echo elgg_view_module('info', elgg_echo('stripe:subscriptions:title', array($subscription->id)), elgg_view('stripe/objects/subscription', array('object' => $subscription))); } }
<?php $subscription_id = get_input('subscription_id'); $customer_id = get_input('customer_id'); $user = stripe_get_user_from_customer_id($customer_id); if (!elgg_instanceof($user) || !$user->canEdit()) { register_error(elgg_echo('stripe:access_error')); forward(REFERER); } $stripe = new StripeClient(); $subscription = $stripe->getSubscription($user->guid, $subscription_id); if ($subscription) { $subscription = $stripe->cancelSubscription($user->guid, $subscription->id); } if ($subscription->status == 'canceled' || $subscription->cancel_at_period_end) { system_message(elgg_echo('subscriptions:cancel:success')); } else { register_error(elgg_echo('subscriptions:cancel:error')); } forward(REFERER);