add_action( 'mepr_before_account_subscriptions' )

    $tables = MeprHooks::apply_filters(
      'mepr_db_tables',
      array(
        'events',
        'jobs',
        'members',
        'subscriptions',
        'subscription_meta',
        'tax_rates',
        'tax_rate_locations',
        'transactions',
        'transaction_meta',
        'rule_access_conditions',
      )
    );
      $mepr_db = new MeprDb();

Events txn_expired($txn, $sub_status) {}

$meprEvent = new MeprEventsCtrl; _action('mepr-txn-expired', array($meprEvent, 'txn_expired'), 10, 2);
line 28 in `MeprEventsCtrl`
array(
            'id'          => 0,
            'args'        => null,
            'event'       => 'login',
            'evt_id'      => 0,
            'evt_id_type' => 'users',
            'created_at'  => null
          ),
          $obj
send the object associated with the event
          case $users_str:
          $obj = new MeprUser($this->evt_id);

Subscriptions class MeprSubscription $subscr = new MeprSubscription($s->id);

Also

$nba = $sub->next_billing_at

    MeprUser()->get_user_product_signup_date($user_id, $product_id)
    MeprUser()->get_user_product_expires_at_date($user_id, $product_id, $return_txn = false) 

        if(isset($_REQUEST['subscription']) && is_numeric($_REQUEST['subscription'])) {
            $sub = new MeprSubscription($_REQUEST['subscription']);
            $usr = $sub->user();
            $prd = $sub->product();
            $user_login = $usr->user_login;
            $subscr_num = $sub->subscr_id;
            $txn->product_id = $sub->product_id;
          }    
$current_subscriptions->active_product_subscriptions('ids') top

Transactions $txn = new MeprTransaction($_POST['id']);

function update_txn($txn) {$txn->product_id = sanitize_key($_POST['product_id']);}

$txns = MeprTransaction::get_all_complete_by_user_id( $usr->ID, 'created_at DESC',

$expires_at_ts = $prd->get_expires_at(strtotime($_REQUEST['created_at']))

$user = new MeprUser();$usr = new MeprUser($_REQUEST['uid']);

if($geo_country = get_user_meta($user->ID, 'mepr-geo-country', true))

mepr_resend_welcome_email

static function email_users_with_expiring_transactions()

_shortcode('mepr-list-subscriptions', 'MeprUsersCtrl::list_users_subscriptions)

$product = new MeprProduct($product_id);

$active_products = $this->active_product_subscriptions('products')

    
    add_shortcode('mepr-product-link', 'MeprProductsCtrl::shortcode_product_link'); // DEPRECATED
    add_shortcode('mepr-product-registration-form', 'MeprProductsCtrl::shortcode_registration_form'); // DEPRECATED
    add_shortcode('mepr-product-purchased', 'MeprProductsCtrl::shortcode_if_product_was_purchased'); // DEPRECATED
    add_shortcode('mepr-product-access-url', 'MeprProductsCtrl::shortcode_access_url_link'); // DEPRECATED

    add_shortcode('mepr-membership-link', 'MeprProductsCtrl::shortcode_product_link');
    add_shortcode('mepr-membership-registration-form', 'MeprProductsCtrl::shortcode_registration_form');
    add_shortcode('mepr-membership-purchased', 'MeprProductsCtrl::shortcode_if_product_was_purchased');
    add_shortcode('mepr-membership-access-url', 'MeprProductsCtrl::shortcode_access_url_link');

    add_action('wp_ajax_mepr_get_product_price_str', 'MeprProductsCtrl::get_price_str_ajax');

//$prod_id = do_shortcode( '[mepr-product-purchased field="ID"]' );

<input class="mepr-date-picker hasDatepicker" name="_mepr_expire_fixed" id="_mepr_expire_fixed" value="2019-09-01" type="text">

function($txn) $product_expiration = $product->get_expires_at(strtotime($txn->created_at));

$prd = new MeprProduct; $prd->get_one($_REQUEST['product_id']))

get_option('mepr_calculate_taxes')

 
$mepr_options = MeprOptions::fetch();
    return $mepr_options->account_page_url;

calculate_subtotal()
                
top