Esempio n. 1
0
def handle_action(group_name, name, action):
    util = getDescriptionUtility()
    if group_name not in util.actions_by_group:
        util.actions_by_group[group_name] = BTreeContainer()
    util.actions_by_group[group_name][name] = action
    action.__name__ = name
    action.__parent__ = util.actions_by_group[group_name]
def handle_action(group_name, name, action):
    util = getDescriptionUtility()
    if group_name not in util.actions_by_group:
        util.actions_by_group[group_name]=BTreeContainer()
    util.actions_by_group[group_name][name] = action
    action.__name__ = name
    action.__parent__ = util.actions_by_group[group_name]
Esempio n. 3
0
def handle_crowd_description(context, group_id, action_id, interface,
                             permission_id, crowd_getter, description_factory):
    util = getDescriptionUtility()

    group = None
    if group_id is not None:
        group = util.groups[group_id]

    action = None
    if action_id is not None:
        action = util.actions_by_group[group_id][action_id]

    crowd_factory = crowd_getter()

    provideAdapter(description_factory,
                   provides=ICrowdDescription,
                   adapts=[
                       crowd_factory,
                       action and action.__class__ or None,
                       group and group.__class__ or None,
                   ])
def handle_switch_description(context, group_id, action_id,
                              crowd_getter, replacement_crowd_getter):
    util = getDescriptionUtility()

    group = None
    if group_id is not None:
        group = util.groups[group_id]

    action = None
    if action_id is not None:
        action = util.actions_by_group[group_id][action_id]

    replacement = replacement_crowd_getter()
    unpack_replacement = lambda crowd, action, group: replacement(crowd)

    provideAdapter(unpack_replacement,
                   provides=ICrowdToDescribe,
                   adapts=[crowd_getter(),
                           action and action.__class__ or None,
                           group and group.__class__ or None,
                           ])
def handle_crowd_description(context, group_id, action_id,
                             interface, permission_id,
                             crowd_getter, description_factory):
    util = getDescriptionUtility()

    group = None
    if group_id is not None:
        group = util.groups[group_id]

    action = None
    if action_id is not None:
        action = util.actions_by_group[group_id][action_id]

    crowd_factory = crowd_getter()

    provideAdapter(description_factory,
                   provides=ICrowdDescription,
                   adapts=[crowd_factory,
                           action and action.__class__ or None,
                           group and group.__class__ or None,
                           ])
Esempio n. 6
0
def handle_switch_description(context, group_id, action_id, crowd_getter,
                              replacement_crowd_getter):
    util = getDescriptionUtility()

    group = None
    if group_id is not None:
        group = util.groups[group_id]

    action = None
    if action_id is not None:
        action = util.actions_by_group[group_id][action_id]

    replacement = replacement_crowd_getter()
    unpack_replacement = lambda crowd, action, group: replacement(crowd)

    provideAdapter(unpack_replacement,
                   provides=ICrowdToDescribe,
                   adapts=[
                       crowd_getter(),
                       action and action.__class__ or None,
                       group and group.__class__ or None,
                   ])
Esempio n. 7
0
def handle_group(name, group):
    util = getDescriptionUtility()
    util.groups[name] = group
    group.__name__ = name
    group.__parent__ = util.groups
def handle_group(name, group):
    util = getDescriptionUtility()
    util.groups[name] = group
    group.__name__ = name
    group.__parent__ = util.groups