Esempio n. 1
0
 def get_context_data(self, request):
     ruleid = self.tab_group.kwargs['policyrule_id']
     actions = []
     classifiers = []
     try:
         policyrule = client.policyrule_get(request, ruleid)
         actions = client.policyaction_list(
             request,
             tenant_id=request.user.tenant_id,
             policyrule_id=ruleid)
         actions = [
             item for item in actions
             if item.id in policyrule.policy_actions
         ]
         classifiers = client.policyclassifier_list(
             request,
             tenant_id=request.user.tenant_id,
             policyrule_id=ruleid)
         classifiers = [
             item for item in classifiers
             if item.id == policyrule.policy_classifier_id
         ]
     except Exception:
         exceptions.handle(request,
                           _('Unable to retrieve policyrule details.'),
                           redirect=self.failure_url)
     return {
         'policyrule': policyrule,
         'classifiers': classifiers,
         'actions': actions
     }
Esempio n. 2
0
    def __init__(self, request, *args, **kwargs):
        super(UpdatePolicyRuleForm, self).__init__(request, *args, **kwargs)
        try:
            policyrule_id = self.initial['policyrule_id']
            rule = client.policyrule_get(request, policyrule_id)

            for item in ['name', 'description',
                         'policy_classifier_id', 'policy_actions', 'shared']:
                self.fields[item].initial = getattr(rule, item)

            actions = client.policyaction_list(request,
                tenant_id=request.user.tenant_id)
            for action in actions:
                action.set_id_as_name_if_empty()
            actions = sorted(actions, key=lambda action: action.name)
            action_list = [(a.id, a.name) for a in actions]
            self.fields['policy_actions'].choices = action_list

            classifiers = client.policyclassifier_list(request,
                tenant_id=request.user.tenant_id)
            classifier_list = [(c.id, c.name) for c in classifiers]
            self.fields['policy_classifier_id'].choices = classifier_list
        except Exception:
            exceptions.handle(
                request, _("Unable to retrive policy rule details."))
def update_pruleset_attributes(request, prset):
    rules = prset.policy_rules
    url = "horizon:project:application_policy:policyruledetails"
    value = ["<ul>"]
    li = lambda x: "<li><a href='" + \
        reverse(url, kwargs={'policyrule_id': x.id}) + \
        "'>" + x.name + "</a></li>"
    for rule in rules:
        r = client.policyrule_get(request, rule)
        value.append(li(r))
    value.append("</ul>")
    value = "".join(value)
    setattr(prset, 'policy_rules', mark_safe(value))
    return prset
def update_pruleset_attributes(request, prset):
    rules = prset.policy_rules
    url = "horizon:project:application_policy:policyruledetails"
    value = ["<ul>"]
    li = lambda x: "<li><a href='" + \
        reverse(url, kwargs={'policyrule_id': x.id}) + \
        "'>" + x.name + "</a></li>"
    for rule in rules:
        r = client.policyrule_get(request, rule)
        value.append(li(r))
    value.append("</ul>")
    value = "".join(value)
    setattr(prset, 'policy_rules', mark_safe(value))
    return prset
Esempio n. 5
0
 def get_context_data(self, request):
     ruleid = self.tab_group.kwargs['policyrule_id']
     actions = []
     classifiers = []
     try:
         policyrule = client.policyrule_get(request, ruleid)
         actions = client.policyaction_list(request, policyrule_id=ruleid)
         actions = [
             item for item in actions if item.id in
             policyrule.policy_actions]
         classifiers = client.policyclassifier_list(
             request, policyrule_id=ruleid)
         classifiers = [
             item for item in classifiers if
             item.id == policyrule.policy_classifier_id]
     except Exception:
         exceptions.handle(request,
                           _('Unable to retrieve policyrule details.'),
                           redirect=self.failure_url)
     return {'policyrule': policyrule,
             'classifiers': classifiers,
             'actions': actions}