Code Analysis: S2 Subscription for WooCommerce 1.0.2

Function Rating Maintainability Complexity Lines of code
S2_Subscription::change_status()
D
22
58 168
S2_Stripe_Custom_Webhook_Handler::process_subscription_webhook()
D
25
43 138
S2_Subscription_List::prepare_items()
D
27
38 131
S2_Subscription_Order::check_order_for_subscription()
D
24
31 172
S2_PayPal_API_Error::mapToBuyerFriendlyError()
D
41 35 40
S2_PayPal_IPN_Handler::process_ipn_request()
D
31 31 99
S2_Gateway_Stripe::create_stripe_subscriptions()
C
27
24 139
S2_Gateway_Paypal::subscription_args()
C
31 25 106
S2_Subscription_My_Account::myaccount_actions()
B
48 23 24
S2_Gateway_Stripe::create_non_subscription_product_price_data()
B
38 17 70
S2_Subscription_Helper::before_data_saving()
B
43 18 43
S2_PayPal_API_Exception::__construct()
B
43 16 47
S2_Subscription_Product::custom_price_html()
A
40 15 56
S2_Subscription_Coupons::coupon_get_discount_amount()
A
46 16 34
S2_Gateway_Paypal::__construct()
A
43 15 43
S2_Subscription::get_product_meta()
A
43 14 47
S2_Subscription::start()
A
45 13 40
S2_PayPal_Response::get_shipping_details()
A
52 14 21
S2_Subscription_Cart::change_prices_for_calculation()
A
51 12 26
S2_PayPal_IPN_Handler::is_a_valid_transaction()
A
50 11 28
S2_Subscription_Coupons::validate_coupon()
A
50 11 25
S2_Subscription_Cart::change_name_in_cart_html()
A
51 11 24
S2_Subscription_Cart::change_subtotal_in_cart_html()
A
49 10 28
S2_Gateway_Stripe::process_payment()
A
45 9 42
S2_Subscription_List::get_views()
A
49 10 26
S2_Gateway_Paypal::cancel_paypal_subscription()
A
47 9 37
S2_Subscription_Helper::show_schedule_subscription()
A
52 10 21
S2_Subscription_List::column_default()
A
48 9 34
S2_Gateway_Stripe::cancel_stripe_subscription()
A
50 9 28
S2_Stripe_Custom_Webhook_Handler::get_subscription_id()
A
50 8 27
s2_order_has_subscriptions()
A
53 8 23
s2_get_order_fields_to_edit()
A
37 3 97
S2_PayPal_Response::get_errors()
S
57 8 15
S2_Stripe_Custom_Webhook_Handler::get_order_id()
S
50 7 29
S2_Subscription_Gateway::disable_gateways()
S
59 8 13
S2_Subscription_Gateway::add_gateways()
S
60 8 12
S2_Subscription::get_formatted_recurring()
S
50 7 26
s2_cart_has_subscriptions()
S
54 7 21
S2_Subscription_Cart::change_price_in_cart_html()
S
54 7 20
s2_get_price_per_string()
S
55 7 19
S2_Subscription_Plugin_Panel::register_panel()
S
48 6 31
S2_Gateway_Paypal::update_paypal_subscription()
S
51 6 28
S2_Gateway_Stripe::update_stripe_subscription()
S
53 6 24
S2_Subscription::get_address_fields()
S
52 6 22
S2_PayPal_IPN_Handler::save_paypal_data()
S
55 6 19
S2_Subscription::get_address_fields_from_order()
S
57 6 17
S2_Subscription_Cron::set_cron()
S
57 6 16
S2_Stripe_Custom_Webhook_Handler::is_a_valid_transaction()
S
57 6 16
S2_Subscription::get_default_meta_data()
S
38 1 85
S2_Variable_Product_Subscription_Admin::save_fields_for_variation_products()
S
52 5 25
S2_PayPal_IPN_Handler::get_subscription_id()
S
52 5 25
S2_PayPal_Request::get_body()
S
54 5 20
S2_Stripe_Product::create_product()
S
56 5 18
s2_get_trial_period_options()
S
42 2 63
S2_Subscription_Helper::init()
S
44 3 45
S2_Subscription_My_Account::endpoint_title()
S
63 6 9
S2_Subscription_Order::change_prices_for_calculation()
S
59 5 15
S2_Subscription::get_next_payment_due_date()
S
58 5 14
S2_Subscription_Admin::admin_scripts()
S
49 4 29
S2_Stripe_Custom_Webhook_Handler::check_for_subscription_webhook()
S
58 5 14
s2_subscription_install()
S
52 4 25
S2_Subscription_Cron::s2_check_subscription_payment()
S
47 3 39
S2_Subscription_Cron::s2_check_subscription_expired()
S
47 3 39
S2_Subscription_Cron::s2_check_subscription_trial_period()
S
47 3 39
S2_Stripe_Custom_Webhook_Handler::get_subscription_id_by_invoice_id()
S
53 4 23
S2_Customer_Subscription_Overdue::trigger()
S
54 4 21
S2_Customer_Subscription_Suspended::trigger()
S
54 4 20
S2_Subscription_List::restrict_by_payment_method()
S
55 4 20
S2_Subscription_My_Account::add_menu_items()
S
58 4 16
S2_Subscription_Plugin_Panel::show_subscription()
S
57 4 16
S2_Subscription_Helper::add_subscription_capabilities()
S
58 4 15
S2_Subscription_Logger::log()
S
62 5 9
S2_Stripe_Event::update_id_in_meta()
S
59 4 14
S2_Stripe_Plan::update_id_in_meta()
S
59 4 14
S2_Stripe_Subscription_Item::update_id_in_meta()
S
59 4 14
S2_Stripe_Subscription::update_id_in_meta()
S
59 4 14
S2_Subscription_Plugin_Panel::print_tabs_nav()
S
57 4 14
s2_is_subscription()
S
60 4 14
s2_get_billing_frequency_options()
S
47 2 43
S2_Subscription_Email::load_wc_mailer()
S
47 1 58
S2_PayPal_API_Handler::needs_billing_agreement()
S
62 4 13
S2_Subscription::check_payment_gateway_available()
S
62 4 12
S2_Customer_Subscription::get_headers()
S
60 4 12
s2_get_user_subscriptions()
S
53 3 24
S2_Stripe_Cron::s2_check_stripe_subscription()
S
53 3 24
S2_Subscription_Helper::get_schedule_data_subscription_fields()
S
54 3 22
s2_get_split_payment_options()
S
50 2 33
S2_PayPal_API_Handler::get_response()
S
56 3 18
S2_Subscription_List::search_box()
S
56 3 17
S2_Customer_Subscription::__construct()
S
57 3 16
S2_Subscription::get_customer_order_note()
S
66 4 8
S2_PayPal_Request::update_recurring_payments_profile()
S
59 3 15
S2_Subscription_Cart::cart_needs_payment()
S
70 4 6
S2_Subscription_Plugin_Setting::__construct()
S
66 4 8
S2_Subscription_Order::order_need_payment()
S
70 4 6
S2_Subscription::__construct()
S
65 4 9
S2_Stripe_Invoice::create_invoice()
S
60 3 13
S2_Stripe_Plan::create_plan()
S
60 3 13
S2_Stripe_Refund::create_refund()
S
60 3 13
S2_Stripe_Subscription_Item::create_subscription_item()
S
60 3 13
S2_Stripe_Subscription::create_subscription()
S
60 3 13
S2_Subscription_List::restrict_by_customer()
S
54 2 22
S2_Subscription_List::extra_tablenav()
S
57 2 19
S2_Product_Subscription_Admin::save_fields_for_products()
S
57 2 19
S2_PayPal_Request::refund_transaction()
S
56 2 19
S2_Subscription::add_subscription()
S
55 2 18
S2_Subscription_List::restrict_by_product()
S
58 2 16
S2_Stripe_Subscription_Item::__construct()
S
69 3 8
S2_Stripe_Subscription::__construct()
S
69 3 8
S2_Customer_Subscription::init_form_fields()
S
51 1 30
S2_Subscription_Helper::show_action_subscription()
S
68 3 6
S2_PayPal_API_Handler::get_request_headers()
S
67 3 7
S2_Subscription_Activity::delete_activities()
S
70 3 6
S2_Subscription_My_Account::maybe_add_active_class()
S
68 3 7
S2_Customer_Subscription::trigger()
S
62 3 10
S2_Stripe_Cron::set_cron()
S
66 3 7
S2_Subscription::get()
S
66 3 8
S2_Stripe_Event::__construct()
S
69 3 8
s2_subscription_log()
S
64 3 9
S2_Stripe_Invoice::__construct()
S
69 3 8
S2_Stripe_Plan::__construct()
S
69 3 8
S2_Stripe_Refund::__construct()
S
69 3 8
S2_Subscription_Activity::add_activity()
S
59 2 14
S2_PayPal_API_Handler::prepare_request()
S
60 2 13
S2_Subscription_Helper::show_subscription_schedule_metabox()
S
59 2 13
S2_PayPal_Request::__construct()
S
61 2 13
S2_Gateway_Stripe::create_price_data()
S
60 2 13
S2_PayPal_Request::bill_outstanding_amount()
S
61 2 12
S2_Gateway_Stripe::__construct()
S
54 1 23
S2_Subscription_Activity::fill_activities()
S
52 1 21
S2_Customer_Subscription::get_content_html()
S
59 1 16
S2_Subscription_List::get_sortable_columns()
S
59 1 16
S2_Stripe_Cron::get_instance()
S
72 2 6
S2_Product_Subscription_Admin::get_instance()
S
72 2 6
S2_Subscription_Gateway::__construct()
S
67 2 7
S2_Stripe_Invoice::update_invoice()
S
69 2 6
S2_Gateway_Stripe::get_instance()
S
72 2 6
S2_Stripe_Invoice::finalize_invoice()
S
68 2 6
S2_Subscription::update_subscription_meta()
S
73 2 5
S2_Subscription::get_order()
S
74 2 4
S2_Stripe_Invoice::pay_invoice()
S
68 2 6
S2_Subscription::get_billing_email()
S
74 2 4
S2_Subscription::populate()
S
70 2 6
S2_Subscription_List::column_cb()
S
71 2 5
S2_Subscription::get_billing_phone()
S
74 2 4
S2_PayPal_IPN_Handler::validate_amount()
S
69 2 6
S2_Subscription_Product::get_instance()
S
72 2 6
S2_PayPal_IPN_Handler::validate_transaction_type()
S
70 2 6
S2_Stripe_Invoice::retrieve_invoice()
S
69 2 6
S2_Stripe_Plan::update_plan()
S
69 2 6
S2_Subscription_Order::add_subscription_order_item_meta()
S
73 2 5
S2_Subscription_Plugin_Panel::get_instance()
S
72 2 6
S2_Stripe_Plan::cancel_plan()
S
68 2 6
S2_PayPal_Request::add_fields()
S
73 2 5
S2_Stripe_Product::__construct()
S
71 2 6
S2_Stripe_Event::retrieve_event()
S
69 2 6
S2_Subscription::get_payment_due_date_paused_offset()
S
65 2 9
S2_Subscription_Plugin_Setting::get_instance()
S
72 2 6
S2_PayPal_Response::has_error()
S
66 2 8
S2_PayPal_Response::get_response_parameter()
S
78 2 3
S2_Subscription::get_view_subscription_url()
S
66 2 8
S2_Subscription_Email::get_instance()
S
72 2 6
S2_Stripe_Subscription::cancel_subscription()
S
68 2 6
S2_PayPal_IPN_Handler::valid_response()
S
67 2 8
S2_Subscription_Order::get_instance()
S
72 2 6
S2_Stripe_Refund::update_id_in_meta()
S
65 2 9
S2_PayPal_Response::get_billing_agreement_accepted_status()
S
78 2 3
S2_Variable_Product_Subscription_Admin::get_instance()
S
72 2 6
S2_PayPal_API_Handler::__construct()
S
68 2 7
S2_PayPal_Response::get_payment_status()
S
78 2 3
S2_Stripe_Subscription_Item::update_subscription_item()
S
69 2 6
S2_Subscription_Frontend::get_instance()
S
72 2 6
S2_PayPal_IPN_Handler::get_order_info()
S
70 2 6
S2_PayPal_Response::get_pending_reason()
S
78 2 3
S2_Gateway_Paypal::get_order_info()
S
70 2 6
S2_Subscription_Gateway::get_instance()
S
72 2 6
S2_PayPal_Response::get_error_code()
S
74 2 4
S2_Stripe_Subscription::retrieve_subscription()
S
69 2 6
S2_Gateway_Paypal::get_instance()
S
72 2 6
S2_Subscription_Activity::get_instance()
S
72 2 6
S2_Subscription_Cart::get_instance()
S
72 2 6
S2_Gateway_Paypal::format_item_name()
S
69 2 6
S2_Subscription_Helper::get_instance()
S
72 2 6
S2_PayPal_Response::get_billing_agreement_id()
S
78 2 3
S2_Stripe_Subscription::update_subscription()
S
69 2 6
S2_PayPal_API_Handler::get_instance()
S
72 2 6
S2_PayPal_API_Handler::get_default_request_args()
S
59 1 15
S2_Stripe_Custom_Webhook_Handler::get_order_info()
S
72 2 6
S2_PayPal_Response::get_custom()
S
78 2 3
S2_Subscription_Admin::get_instance()
S
72 2 6
S2_Subscription_Plugin_Panel::action_links()
S
71 2 5
s2_validate_max_length()
S
73 2 5
S2_PayPal_Request::get_instance()
S
72 2 6
S2_Subscription_My_Account::get_instance()
S
72 2 6
S2_PayPal_Response::get_error_message()
S
74 2 4
S2_PayPal_Response::get_order()
S
78 2 3
S2_PayPal_Response::get_payer_email()
S
78 2 3
S2_PayPal_Response::get_transaction_id()
S
78 2 3
S2_Stripe_Refund::update_refund()
S
69 2 6
S2_PayPal_Response::get_token()
S
78 2 3
S2_Stripe_Product::retrieve_product()
S
69 2 6
S2_PayPal_Response::get_recurring_payments_profile_id()
S
78 2 3
s2_get_price_time_option_paypal()
S
65 2 9
S2_Subscription_List::column_id()
S
62 2 9
S2_Subscription_Product::add_to_cart_text()
S
68 2 7
S2_Subscription_Coupons::get_instance()
S
72 2 6
S2_PayPal_Response::get_payer_id()
S
78 2 3
S2_Subscription::get_subscription_meta()
S
68 2 7
S2_Stripe_Subscription_Item::cancel_subscription_item()
S
68 2 6
S2_Stripe_Event::get_all_events()
S
70 2 6
S2_Subscription_Coupons::add_coupon_error()
S
71 2 6
S2_Stripe_Invoice::update_id_in_meta()
S
65 2 9
S2_Subscription_Cron::get_instance()
S
72 2 6
S2_Subscription_Plugin_Setting::admin_options()
S
61 1 14
s2_get_status()
S
60 1 13
S2_Subscription::calculate_totals_from_changes()
S
59 1 13
S2_Subscription_My_Account::__construct()
S
61 1 11
S2_Subscription_List::get_columns()
S
62 1 11
S2_Subscription_List::__construct()
S
62 1 11
S2_Subscription_Helper::__construct()
S
62 1 11
S2_Subscription_Helper::show_subscription_action_metabox()
S
62 1 11
S2_Subscription_My_Account::view_subscription()
S
62 1 11
S2_Subscription_Email::add_woocommerce_emails()
S
62 1 11
s2_get_subscriptions_by_meta()
S
63 1 11
S2_Stripe_Subscription_Item::get_id_from_meta()
S
79 1 3
S2_Subscription_Cron()
S
82 1 3
S2_PayPal_IPN_Handler::__construct()
S
72 1 5
S2_Subscription_Product::__construct()
S
71 1 5
S2_Stripe_Product::get_id()
S
82 1 3
S2_Stripe_Subscription::set_id()
S
80 1 3
S2_PayPal_Request::add_field()
S
80 1 3
S2_Subscription_Plugin_Panel::get_nav_url()
S
72 1 5
S2_Subscription_Cart::remove_change_prices_filter()
S
75 1 4
S2_Subscription::get_change_status_link()
S
64 1 10
S2_Customer_Subscription_Paused::__construct()
S
64 1 9
s2_get_max_length_period()
S
65 1 9
S2_Subscription_Helper::show_subscription_info_metabox()
S
66 1 9
S2_PayPal_API_Handler::call_get_transaction_details()
S
71 1 6
S2_Stripe_Event::get_id()
S
82 1 3
S2_Subscription_Helper::show_product_subscription()
S
65 1 10
S2_Stripe_Invoice::get_id_from_meta()
S
79 1 3
S2_Subscription_Helper::show_subscription_product_metabox()
S
66 1 9
S2_Stripe_Subscription_Item::set_subscription_id()
S
80 1 3
S2_Customer_Subscription_Suspended::get_content_html()
S
72 1 5
S2_Subscription_Cart()
S
82 1 3
S2_Stripe_Product::set_product_id()
S
80 1 3
S2_Subscription_Email::__construct()
S
74 1 4
S2_Stripe_Subscription::get_id()
S
82 1 3
S2_Subscription_Cart::__construct()
S
63 1 9
S2_Gateway_Stripe::check_for_subscription_webhook()
S
74 1 5
S2_Customer_Subscription_Expired::__construct()
S
64 1 9
S2_PayPal_Response_Payment::__construct()
S
80 1 3
S2_Subscription_Plugin_Panel::add_submenu_page()
S
76 1 3
S2_Stripe_Invoice::set_id()
S
80 1 3
S2_Stripe_Invoice::get_id()
S
82 1 3
S2_Subscription_Plugin_Setting()
S
82 1 3
S2_Gateway_COD::__construct()
S
66 1 10
S2_Subscription_Helper::show_subscription_activity_metabox()
S
66 1 9
S2_Subscription_Helper::remove_publish_box()
S
79 1 3
S2_Subscription_Coupons::add_coupon_discount_types_list()
S
68 1 9
S2_Stripe_Event::get_order_id()
S
80 1 3
S2_PayPal_API_Handler::call_refund_transaction()
S
71 1 6
S2_Stripe_Cron()
S
82 1 3
S2_Subscription_Activity::get_activity_by_subscription()
S
79 1 3
S2_Subscription_Frontend::__construct()
S
68 1 7
S2_Stripe_Invoice::set_subscription_id()
S
80 1 3
S2_Stripe_Invoice::get_subscription_id()
S
80 1 3
S2_Customer_Subscription_Activated::__construct()
S
64 1 9
S2_PayPal_Request::manage_recurring_payments_profile_status()
S
65 1 10
S2_Stripe_Product::update_id_in_meta()
S
79 1 3
S2_Subscription_Order::__construct()
S
71 1 5
S2_Stripe_Custom_Webhook_Handler::__construct()
S
81 1 3
S2_Stripe_Refund::get_id()
S
82 1 3
S2_Stripe_Plan::get_order_id()
S
80 1 3
S2_Stripe_Plan::set_order_id()
S
80 1 3
S2_PayPal_Response_Payment::get_response_payment_parameter()
S
76 1 4
S2_Stripe_Refund::get_id_from_meta()
S
79 1 3
S2_Customer_Subscription_Overdue::get_content_html()
S
72 1 5
S2_Customer_Subscription_Cancelled::__construct()
S
64 1 9
s2_get_time_options()
S
65 1 9
S2_Stripe_Event::get_id_from_meta()
S
79 1 3
S2_PayPal_API_Handler::call_manage_recurring_payments_profile_status()
S
70 1 6
S2_Customer_Subscription_Suspended::__construct()
S
64 1 9
S2_Subscription_My_Account::subscriptions()
S
65 1 9
S2_Stripe_Plan::get_id_from_meta()
S
79 1 3
S2_Subscription_Cart::add_change_prices_filter()
S
74 1 4
S2_Subscription::get_payment_method()
S
79 1 3
S2_PayPal_Response::has_response_parameter()
S
79 1 3
S2_Stripe_Refund::get_subscription_id()
S
80 1 3
S2_PayPal_API_Handler::clear_response()
S
77 1 4
S2_PayPal_Response_Payment::transaction_approved()
S
79 1 3
S2_Subscription_Activity::remove_activities_of_subscription()
S
79 1 3
S2_Subscription_Plugin_Panel::__construct()
S
73 1 4
S2_Subscription_Admin::__construct()
S
66 1 8
S2_Stripe_Subscription::get_order_id()
S
80 1 3
S2_PayPal_Response::__construct()
S
79 1 3
S2_Variable_Product_Subscription_Admin::add_fields_for_variable_products()
S
67 1 8
S2_Stripe_Product::set_id()
S
80 1 3
S2_PayPal_API_Handler::call_bill_outstanding_amount()
S
70 1 6
S2_Subscription::set()
S
75 1 4
S2_Subscription_Coupons::add_coupon_discount_types()
S
72 1 5
S2_Stripe_Subscription::set_order_id()
S
80 1 3
S2_Customer_Subscription_Resumed::__construct()
S
64 1 9
S2_Subscription_Activity()
S
82 1 3
S2_Subscription_Plugin_Panel::show_subscription_setting_page()
S
66 1 9
S2_Subscription_Cron::__construct()
S
70 1 6
S2_Subscription::get_id()
S
82 1 3
S2_Subscription_Plugin_Panel::change_parent_file()
S
77 1 4
S2_Stripe_Product::get_product_id()
S
80 1 3
S2_PayPal_Response_Payment::get_response_payment_parameter_name()
S
80 1 3
S2_Subscription_Plugin_Panel::change_submenu_file()
S
77 1 4
s2_subscription_install_woocommerce_stripe_admin_notice()
S
72 1 7
S2_PayPal_API_Handler::call_update_recurring_payments_profile()
S
70 1 6
S2_Subscription_My_Account::add_query_vars()
S
74 1 5
S2_Subscription_Helper::show_activity_subscription()
S
65 1 10
S2_Subscription_Activity::__construct()
S
75 1 4
S2_Stripe_Subscription_Item::get_id()
S
82 1 3
S2_Product_Subscription_Admin::add_fields_for_products()
S
69 1 8
S2_Subscription_My_Account::add_endpoints()
S
75 1 4
S2_PayPal_API_Error::__construct()
S
71 1 6
S2_Stripe_Plan::get_id()
S
82 1 3
S2_Stripe_Subscription_Item::get_subscription_id()
S
80 1 3
s2_get_subscription()
S
80 1 3
S2_Stripe_Subscription_Item::set_id()
S
80 1 3
S2_Product_Subscription_Admin::__construct()
S
74 1 4
S2_Stripe_Event::set_id()
S
80 1 3
S2_Stripe_Refund::set_id()
S
80 1 3
s2_get_payment_type_options()
S
65 1 9
S2_PayPal_API_Handler::get_request()
S
78 1 3
s2_subscription_remove_flush_rewrite_rule_option()
S
82 1 3
S2_Subscription_Plugin_Panel::show_subscription_list_page()
S
66 1 9
S2_PayPal_Response::get_response_parameters()
S
82 1 3
S2_Stripe_Refund::set_subscription_id()
S
80 1 3
S2_Subscription_Plugin_Panel::create_menu_items()
S
78 1 3
S2_Stripe_Subscription::get_id_from_meta()
S
79 1 3
S2_PayPal_API_Handler::get_request_user_agent()
S
79 1 3
S2_Stripe_Event::set_order_id()
S
80 1 3
S2_Subscription_Plugin_Setting::init_form_fields()
S
80 1 3
S2_Stripe_Plan::set_id()
S
80 1 3
S2_Customer_Subscription_Overdue::__construct()
S
64 1 9
S2_Stripe_Product::get_id_from_meta()
S
79 1 3
S2_Subscription_Helper::show_info_subscription()
S
65 1 10
S2_Subscription_Coupons::__construct()
S
67 1 7
S2_Subscription_Plugin_Panel::add_menu_page()
S
76 1 3
S2_PayPal_Request::get_transaction_details()
S
76 1 4
s2_subscription_install_woocommerce_admin_notice()
S
72 1 7
S2_Stripe_Cron::__construct()
S
72 1 5
S2_Variable_Product_Subscription_Admin::__construct()
S
74 1 4