diff --git a/backend/app/plugins/wiaas/includes/product/class-wiaas-product-supplier.php b/backend/app/plugins/wiaas/includes/product/class-wiaas-product-supplier.php index 68957f8..2bfc50f 100644 --- a/backend/app/plugins/wiaas/includes/product/class-wiaas-product-supplier.php +++ b/backend/app/plugins/wiaas/includes/product/class-wiaas-product-supplier.php @@ -6,7 +6,8 @@ class Wiaas_Product_Supplier { public static function init() { add_action('init', array(__CLASS__, 'register_supplier_taxonomy')); - add_action('created_' . 'wiaas-user-organization', array(__CLASS__, 'on_organization_added')); + add_action('wiaas_organization_created', array(__CLASS__, 'on_organization_added'),20, 2); + add_action('wiaas_organization_roles_updated' , array(__CLASS__, 'on_organization_added'),20, 2); } /** @@ -46,13 +47,15 @@ class Wiaas_Product_Supplier { * Create corresponding supplier term for organization * * @param $organization_id + * @param $roles */ - public static function on_organization_added($organization_id) { + public static function on_organization_added($organization_id, $roles) { + $organization = get_term_by('id', $organization_id, 'wiaas-user-organization'); $supplier = term_exists($organization->slug, 'supplier'); - if (! $supplier) { + if (! $supplier && in_array('supplier', $roles) ) { $supplier = wp_insert_term($organization->name, 'supplier', array( 'slug' => $organization->slug )); diff --git a/backend/app/plugins/wiaas/includes/user/class-wiaas-user-organization.php b/backend/app/plugins/wiaas/includes/user/class-wiaas-user-organization.php index d5bd1df..03874f9 100644 --- a/backend/app/plugins/wiaas/includes/user/class-wiaas-user-organization.php +++ b/backend/app/plugins/wiaas/includes/user/class-wiaas-user-organization.php @@ -65,10 +65,9 @@ class Wiaas_User_Organization extends WP_User_Taxonomy { */ public static function on_organization_added($organization_id) { self::_create_organization_access_group($organization_id); - - do_action('wiaas_organization_created', $organization_id); - $roles = wiaas_get_organization_roles($organization_id); + + do_action('wiaas_organization_created', $organization_id, $roles); self::_assign_organization_roles_capabilities($organization_id, $roles); }