def wrapped(request, *args, **kwargs): try: if (hasattr(request, 'subscription') and request.subscription is not None and request.subscription.is_trial and request.subscription.date_end is not None ): edition_req = DefaultProductPlan.get_lowest_edition_by_domain( request.domain, [slug] ) plan_name = request.subscription.plan_version.user_facing_description['name'] feature_name = privileges.Titles.get_name_from_privilege(slug) request.show_trial_notice = True request.trial_info = { 'current_plan': plan_name, 'feature_name': feature_name, 'required_plan': edition_req, 'date_end': request.subscription.date_end.strftime(USER_DATE_FORMAT) } request.is_billing_admin = (hasattr(request, 'couch_user') and BillingAccountAdmin.get_admin_status_and_account( request.couch_user, request.domain )[0]) return requires_privilege(slug, **assignment)(fn)( request, *args, **kwargs ) except PermissionDenied: request.show_trial_notice = False from corehq.apps.domain.views import SubscriptionUpgradeRequiredView return SubscriptionUpgradeRequiredView().get( request, request.domain, slug )
def handle(self, *args, **kwargs): domain_names = args privileges = sorted(_privilege_to_response_function().keys()) print ','.join(['Project Space'] + privileges + ['Lowest Plan']) for domain in filter(lambda domain: domain, map(Domain.get_by_name, domain_names)): is_privilege_being_used = { priv: _is_domain_using_privilege(domain, priv) for priv in privileges } using_privileges = [priv for (priv, is_in_use) in is_privilege_being_used.items() if is_in_use] minimum_plan = DefaultProductPlan.get_lowest_edition_by_domain(domain.name, using_privileges) print ','.join( [domain.name] + ['X' if is_privilege_being_used[priv] else '' for priv in privileges] + [minimum_plan] )
def wrapped(request, *args, **kwargs): try: if (hasattr(request, 'subscription') and request.subscription is not None and (request.subscription.is_trial or request.subscription.plan_version.plan.visibility == SoftwarePlanVisibility.TRIAL_INTERNAL) and request.subscription.date_end is not None): edition_req = DefaultProductPlan.get_lowest_edition_by_domain( request.domain, [slug]) plan_name = request.subscription.plan_version.user_facing_description[ 'name'] feature_name = privileges.Titles.get_name_from_privilege( slug) request.show_trial_notice = True request.trial_info = { 'current_plan': plan_name, 'feature_name': feature_name, 'required_plan': edition_req, 'date_end': request.subscription.date_end.strftime( USER_DATE_FORMAT) } request.is_domain_admin = ( hasattr(request, 'couch_user') and request.couch_user.is_domain_admin(request.domain)) return requires_privilege(slug, **assignment)(fn)(request, *args, **kwargs) except PermissionDenied: request.show_trial_notice = False from corehq.apps.domain.views import SubscriptionUpgradeRequiredView return SubscriptionUpgradeRequiredView().get( request, request.domain, slug)
def wrapped(request, *args, **kwargs): try: if (hasattr(request, 'subscription') and request.subscription is not None and request.subscription.is_trial and request.subscription.date_end is not None): edition_req = DefaultProductPlan.get_lowest_edition_by_domain( request.domain, [slug]) plan_name = request.subscription.plan_version.user_facing_description[ 'name'] feature_name = privileges.Titles.get_name_from_privilege( slug) request.show_trial_notice = True request.trial_info = { 'current_plan': plan_name, 'feature_name': feature_name, 'required_plan': edition_req, 'date_end': request.subscription.date_end.strftime("%d %B %Y") } request.is_billing_admin = ( hasattr(request, 'couch_user') and BillingAccountAdmin.get_admin_status_and_account( request.couch_user, request.domain)[0]) return requires_privilege(slug, **assignment)(fn)(request, *args, **kwargs) except PermissionDenied: request.show_trial_notice = False from corehq.apps.domain.views import SubscriptionUpgradeRequiredView return SubscriptionUpgradeRequiredView().get( request, request.domain, slug)