/**
  * Constructor
  */
 public function __construct()
 {
     parent::__construct();
     if (class_exists('WC_Subscriptions_Order')) {
         add_action('woocommerce_scheduled_subscription_payment_' . $this->id, array($this, 'scheduled_subscription_payment'), 10, 2);
         add_action('woocommerce_subscription_failing_payment_method_updated_' . $this->id, array($this, 'update_failing_payment_method'), 10, 2);
         add_action('wcs_resubscribe_order_created', array($this, 'delete_resubscribe_meta'), 10);
         // Allow store managers to manually set Payeezy as the payment method on a subscription
         add_filter('woocommerce_subscription_payment_meta', array($this, 'add_subscription_payment_meta'), 10, 2);
         add_filter('woocommerce_subscription_validate_payment_meta', array($this, 'validate_subscription_payment_meta'), 10, 2);
     }
     if (class_exists('WC_Pre_Orders_Order')) {
         add_action('wc_pre_orders_process_pre_order_completion_payment_' . $this->id, array($this, 'process_pre_order_release_payment'));
     }
 }