benhuson / expire-users

Set expiry dates for users in WordPress
http://wordpress.org/plugins/expire-users/
24 stars 16 forks source link

Expire Users for Easy Digital Downloads registration form #40

Open gasatrya opened 9 years ago

gasatrya commented 9 years ago

I took your code to hook to WooCommerce registration/purchase, I slightly modified the code to work with Easy Digital Downloads

/**
 * Set expire
 */
function prefix_user_expire( $payment_id = 0 ) {

    global $expire_users;

    if ( ! class_exists( 'Expire_User' ) ) {
        return;
    }

    $expire_settings = $expire_users->admin->settings->get_default_expire_settings();
    $expire_data = array(
        'expire_user_date_type'         => $expire_settings['expire_user_date_type'],
        'expire_user_date_in_num'       => $expire_settings['expire_user_date_in_num'],
        'expire_user_date_in_block'     => $expire_settings['expire_user_date_in_block'],
        'expire_user_date_on_timestamp' => $expire_settings['expire_timestamp'],
        'expire_user_role'              => $expire_settings['expire_user_role'],
        'expire_user_reset_password'    => $expire_settings['expire_user_reset_password'],
        'expire_user_email'             => $expire_settings['expire_user_email'],
        'expire_user_email_admin'       => $expire_settings['expire_user_email_admin'],
        'expire_user_remove_expiry'     => $expire_settings['expire_user_remove_expiry']
    );
    $user_id = edd_get_payment_user_id( $payment_id );
    $user    = new Expire_User( $user_id );
    $user->set_expire_data( $expire_data );
    $user->save_user();

}
add_action( 'edd_complete_purchase', 'prefix_user_expire', 10, 3 );

It worked perfectly, but do you know how to expire the login form?