class Locmare.ListGroup @types: () -> { public: Locmare.ListGroupModule.PublicList, private: Locmare.ListGroupModule.PrivateList, system_resource: Locmare.ListGroupModule.SystemResourceList, filter: Locmare.ListGroupModule.FilterList, through_filter: Locmare.ListGroupModule.ThroughFilterList, foreign_filter: Locmare.ListGroupModule.ForeignFilterList, play: Locmare.ListGroupModule.PlayList } @list: (controller_name, action_name, operators, options = {}) -> controller_manifest = Manifest.manifest().controllers[controller_name] action_manifest = controller_manifest.actions[action_name] if action_manifest.alias options['order'] ||= action_manifest.order options['direction'] ||= action_manifest.direction alias_action = action_manifest.alias_action Locmare.ListGroup.list(alias_action.path_name(), alias_action.name, operators, options) else list_group_manifest = LocalManifest.manifest().list_groups[controller_name] list_manifest = list_group_manifest.lists[action_name] c = Locmare.ListGroup.types()[list_manifest.type] new c({list_group_name: controller_name, list_name: action_name, operators: operators, options: options}) class Locmare.ListGroupModule