Ejemplo n.º 1
0
    def ready(self):
        super(GroundtruthAppConfig, self).ready()
        GroundtruthRecord = self.get_model('GroundtruthRecord')
        registry.register(GroundtruthRecord)
        django_monitor.nq(GroundtruthRecord)

        import signals
Ejemplo n.º 2
0
    def ready(self):
        from actstream import registry
        from tunga_activity import signals

        registry.register(
            self.get_model('FieldChangeLog')
        )
Ejemplo n.º 3
0
    def ready(self):
        from actstream import registry
        from tunga_payments import signals

        registry.register(
            self.get_model('Invoice'), self.get_model('Payment')
        )
def populate_document_activity(apps, schema_editor):
    Document = apps.get_model('documents', 'Document')
    File = apps.get_model('documents', 'File')
    Image = apps.get_model('documents', 'Image')
    Link = apps.get_model('documents', 'Link')
    Project = apps.get_model('projects', 'Project')
    from actstream import action
    from actstream import registry
    registry.register(Document)
    registry.register(File)
    registry.register(Image)
    registry.register(Link)
    registry.register(Project)
    for doc in File.objects.all():
        if doc.projects.count() == 1:
            target = doc.projects.first()
        else:
            target = None
        action.send(doc.owner, verb='uploaded', action_object=doc, target=target, timestamp=doc.date_added)
    for doc in Image.objects.all():
        if doc.projects.count() == 1:
            target = doc.projects.first()
        else:
            target = None
        action.send(doc.owner, verb='uploaded', action_object=doc, target=target, timestamp=doc.date_added)
    for link in Link.objects.all():
        if link.projects.count() == 1:
            target = link.projects.first()
        else:
            target = None
        action.send(link.owner, verb='added', action_object=link, target=target, timestamp=link.date_added)
Ejemplo n.º 5
0
 def ready(self):
     registry.register(
     	self.get_model('Module'),
     	self.get_model('Forum_wrap'),
     	self.get_model('Wiki_wrap'),
     	self.get_model('Quiz_wrap'),
     	self.get_model('Material_wrap'),
     	)
Ejemplo n.º 6
0
    def ready(self):
        from actstream import registry
        from tunga_tasks import signals

        registry.register(
                self.get_model('Task'), self.get_model('Application'), self.get_model('Participation'),
                self.get_model('TaskRequest'),self.get_model('TaskUpdate')
        )
Ejemplo n.º 7
0
    def ready(self):
        # Imports need to happen here once things are ready.
        # Please do not move these.
        from actstream import registry
        from icon_commons.models import Icon

        # Register Icon for Activity Strreams
        registry.register(Icon)
Ejemplo n.º 8
0
    def handle(self, *args, **options):

        registry.register(Stream)

        for user in get_user_model().objects.all():

            stream = Stream.objects.get(title=user.username, owner=user)        
            follow(user, stream, actor_only=False)
            self.stdout.write('Subscribed user {0} to stream {1}'.format(user, stream))
Ejemplo n.º 9
0
    def ready(self):
        from actstream import registry
        from tunga_tasks import signals

        registry.register(
                self.get_model('Task'), self.get_model('Application'), self.get_model('Participation'),
                self.get_model('TaskRequest'), self.get_model('ProgressEvent'), self.get_model('ProgressReport'),
                self.get_model('Integration'), self.get_model('IntegrationEvent'),
                self.get_model('IntegrationMeta'), self.get_model('IntegrationActivity'))
    def test_registration(self):
        instance = Unregistered.objects.create(name='fubar')
        self.assertRaises(ImproperlyConfigured, actor_stream, instance)
        register(Unregistered)
        self.assertEqual(actor_stream(instance).count(), 0)

        self.assertRaises(RuntimeError, model_stream, Abstract)
        self.assertRaises(ImproperlyConfigured, register, Abstract)
        unregister(Unregistered)
Ejemplo n.º 11
0
    def ready(self):
        try:
            from actstream import registry
            from . import signals

            registry.register(self.get_model('Photo'))
        except ImportError:
            # django-activity-stream is not installed and that's okay
            pass
Ejemplo n.º 12
0
 def ready(self):
     from actstream import registry
     registry.register(apps.get_model('auth.user'))
     registry.register(self.get_model('UiComment'))
     registry.register(self.get_model('MediaUpload'))
     registry.register(self.get_model('TaskUI'))
     registry.register(self.get_model('Role'))
     
     # registry.register('Profile')
Ejemplo n.º 13
0
    def ready(self):
        registry.register(self.get_model('Translation'))

        # -- signals

        from translations.signalhandlers import new_translation

        from django.db.models.signals import post_save

        post_save.connect(new_translation, sender='translations.Translation', dispatch_uid='new_translation')
Ejemplo n.º 14
0
 def ready(self):
     from actstream import registry
     from badgesfab import signals
     models_to_register = ['SketchFabUser', 'Model3d', 'ModelDescription']
     for model in models_to_register:
         registry.register(self.get_model(model))
         post_save.connect(
             receiver=signals.modelSaveSignal,
             sender=self.get_model(model)
         )
Ejemplo n.º 15
0
    def ready(self):
        super(UserManagementApp, self).ready()

        APIEndPoint(app=self, version_string="1")

        MetadataLookup(description=_("All the groups."), name="group", value=Group.objects.all())
        MetadataLookup(description=_("All the users."), name="users", value=get_user_model().objects.all())

        SourceColumn(source=Group, label=_("Members"), attribute="user_set.count")

        SourceColumn(source=User, label=_("Full name"), attribute="get_full_name")
        SourceColumn(source=User, label=_("Email"), attribute="email")
        SourceColumn(
            source=User, label=_("Active"), func=lambda context: two_state_template(context["object"].is_active)
        )
        SourceColumn(
            source=User,
            label=_("Has usable password?"),
            func=lambda context: two_state_template(context["object"].has_usable_password()),
        )

        menu_multi_item.bind_links(
            links=(link_user_multiple_set_password, link_user_multiple_delete), sources=("user_management:user_list",)
        )
        menu_object.bind_links(links=(link_group_edit, link_group_members, link_group_delete), sources=(Group,))
        menu_object.bind_links(
            links=(link_user_edit, link_user_set_password, link_user_groups, link_user_delete), sources=(User,)
        )
        menu_secondary.bind_links(
            links=(link_group_list, link_group_add),
            sources=(
                "user_management:group_multiple_delete",
                "user_management:group_delete",
                "user_management:group_edit",
                "user_management:group_list",
                "user_management:group_add",
                "user_management:group_members",
            ),
        )
        menu_secondary.bind_links(
            links=(link_user_list, link_user_add),
            sources=(
                User,
                "user_management:user_multiple_set_password",
                "user_management:user_multiple_delete",
                "user_management:user_list",
                "user_management:user_add",
            ),
        )
        menu_setup.bind_links(links=(link_user_setup, link_group_setup))

        registry.register(Group)
        registry.register(User)
Ejemplo n.º 16
0
 def ready(self):
     registry.register(User,
         self.get_model('user'), 
     	self.get_model('friends'),
     	self.get_model('status'),
     	self.get_model('questions'),
     	self.get_model('answers'),
     	self.get_model('education'),
     	self.get_model('job'),
     	self.get_model('quizzes'),
     	self.get_model('books'),
     	self.get_model('sites'),
     	)
Ejemplo n.º 17
0
    def ready(self):
        from actstream import registry
        from django.contrib.auth.models import User
        from website.models import Bounty, Solution, Taker, Issue

        registry.register(self.get_model("Issue"))
        registry.register(User)
        registry.register(Bounty)
        registry.register(Solution)
Ejemplo n.º 18
0
    def ready(self):
        registry.register(self.get_model('Language'))

        from django.db.models.signals import post_save

        from nano.user import new_user_created

        import cals.signalhandlers

        from cals.people.models import user_unlurked
        from cals.signalhandlers import (
            new_or_changed_language,
            new_user_anywhere,
            user_now_active
        )
        user_unlurked.connect(user_now_active, sender='cals.Profile',
            dispatch_uid='user-unlurked')
        post_save.connect(new_user_anywhere,
            sender=settings.AUTH_USER_MODEL, dispatch_uid='new-user')
        post_save.connect(new_or_changed_language,
            sender='cals.Language', dispatch_uid='language-update')
Ejemplo n.º 19
0
 def setUp(self):
     registry.register(Layer)
     registry.register(Comment)
     registry.register(Profile)
     create_models(type='layer')
     create_layer_data()
     self.user = get_user_model().objects.filter(username='******')[0]
Ejemplo n.º 20
0
    def setUp(self):
        super(SimpleTest, self).setUp()

        registry.register(Layer)
        registry.register(Comment)
        registry.register(Profile)
        create_layer_data()
        self.user = get_user_model().objects.filter(username='******')[0]
Ejemplo n.º 21
0
    def ready(self):
        from onadata.apps.messaging import signals  # noqa pylint: disable=W0612

        # this needs to be imported inline because otherwise we get
        # django.core.exceptions.AppRegistryNotReady: Apps aren't loaded yet.
        from actstream import registry
        registry.register(apps.get_model(model_name='User', app_label='auth'))
        registry.register(
            apps.get_model(model_name='XForm', app_label='logger'))
        registry.register(
            apps.get_model(model_name='Project', app_label='logger'))
Ejemplo n.º 22
0
    def test_user_actions_stream(self):
        # Register the things
        registry.register(Layer)
        registry.register(Comment)
        registry.register(Profile)

        # Should be empty
        actions = actor_stream(self.user)
        self.assertEqual(actions.count(), 0)

        # Create an action and check for updates.
        action.send(self.user, verb='reached level 10')
        admin_actions = actor_stream(self.user)
        self.assertEqual(admin_actions.count(), 1)
Ejemplo n.º 23
0
    def ready(self):
        # Do the actstram registration
        from actstream import registry
        registry.register(self.get_model('Stack'))
        registry.register(self.get_model('Host'))
        registry.register(self.get_model('StackCommand'))

        # Do the notifications registration
        from stackdio.core.notifications import registry as notifications_registry
        from .serializers import StackSerializer, StackCommandSerializer
        notifications_registry.register(self.get_model('Stack'),
                                        StackSerializer,
                                        'ui:stack-detail')
        notifications_registry.register(self.get_model('StackCommand'),
                                        StackCommandSerializer,
                                        'ui:stack-command-detail')
Ejemplo n.º 24
0
 def ready(self):
     from django.contrib.auth import get_user_model
     from . import signals
     from actstream import registry
     registry.register(self.get_model('Group'))
     registry.register(get_user_model())
Ejemplo n.º 25
0
 def ready(self):
     from actstream import registry
     registry.register(self.get_model('JournalEntry'))
Ejemplo n.º 26
0
 def ready(self):
     from actstream import registry
     from django.contrib.auth.models import User
     registry.register(User)
Ejemplo n.º 27
0
 def ready(self):
     from actstream import registry
     registry.register(self.get_model('CatalogRecord'))
Ejemplo n.º 28
0
 def ready(self):
     """Registers the application with the activity streams plugin"""
     from actstream import registry
     registry.register(self.get_model('Crowdfund'))
     registry.register(self.get_model('CrowdfundPayment'))
Ejemplo n.º 29
0
 def ready(self):
     registry.register(self.get_model('BlogEntry'))
Ejemplo n.º 30
0
    def ready(self):
        from actstream import registry
        from tunga_payments import signals

        registry.register(self.get_model('Invoice'), self.get_model('Payment'))
Ejemplo n.º 31
0
    def ready(self):
        from actstream import registry

        super(DjangoContribAuthConfig, self).ready()
        user_model_string = settings.AUTH_USER_MODEL.rsplit('.', 1)[1]
        registry.register(self.get_model(user_model_string))
Ejemplo n.º 32
0
 def ready(self):
     registry.register(self.get_model('Location'))
Ejemplo n.º 33
0
 def ready(self):
     from actstream import registry
     registry.register(self.get_model('Project'))
     registry.register(self.get_model('Task'))
    def ready(self):
        super(DocumentsApp, self).ready()
        from actstream import registry

        APIEndPoint(app=self, version_string='1')
        APIResource(label=_('Document types'), name='document_types')
        APIResource(label=_('Documents'), name='documents')
        APIResource(label=_('Trashed documents'), name='trashed_documents')

        DeletedDocument = self.get_model('DeletedDocument')
        Document = self.get_model('Document')
        DocumentPage = self.get_model('DocumentPage')
        DocumentPageResult = self.get_model('DocumentPageResult')
        DocumentType = self.get_model('DocumentType')
        DocumentTypeFilename = self.get_model('DocumentTypeFilename')
        DocumentVersion = self.get_model('DocumentVersion')
        DuplicatedDocument = self.get_model('DuplicatedDocument')

        DynamicSerializerField.add_serializer(
            klass=Document,
            serializer_class='documents.serializers.DocumentSerializer')

        MissingItem(
            label=_('Create a document type'),
            description=_(
                'Every uploaded document must be assigned a document type, '
                'it is the basic way Mayan EDMS categorizes documents.'),
            condition=lambda: not DocumentType.objects.exists(),
            view='documents:document_type_list')

        ModelAttribute(Document,
                       label=_('Label'),
                       name='label',
                       type_name='field')

        ModelAttribute(
            Document,
            description=_(
                'The MIME type of any of the versions of a document'),
            label=_('MIME type'),
            name='versions__mimetype',
            type_name='field')

        ModelEventType.register(model=DocumentType,
                                event_types=(event_document_create, ))
        ModelEventType.register(model=Document,
                                event_types=(event_document_download,
                                             event_document_properties_edit,
                                             event_document_type_change,
                                             event_document_new_version,
                                             event_document_version_revert,
                                             event_document_view))

        ModelPermission.register(model=Document,
                                 permissions=(
                                     permission_acl_edit,
                                     permission_acl_view,
                                     permission_document_delete,
                                     permission_document_download,
                                     permission_document_edit,
                                     permission_document_new_version,
                                     permission_document_print,
                                     permission_document_properties_edit,
                                     permission_document_restore,
                                     permission_document_trash,
                                     permission_document_version_revert,
                                     permission_document_version_view,
                                     permission_document_view,
                                     permission_events_view,
                                     permission_transformation_create,
                                     permission_transformation_delete,
                                     permission_transformation_edit,
                                     permission_transformation_view,
                                 ))

        ModelPermission.register(model=DocumentType,
                                 permissions=(permission_document_create,
                                              permission_document_type_delete,
                                              permission_document_type_edit,
                                              permission_document_type_view))

        ModelPermission.register_proxy(
            source=Document,
            model=DocumentType,
        )

        ModelPermission.register_inheritance(
            model=Document,
            related='document_type',
        )
        ModelPermission.register_inheritance(
            model=DocumentPage,
            related='document',
        )
        ModelPermission.register_inheritance(
            model=DocumentTypeFilename,
            related='document_type',
        )
        ModelPermission.register_inheritance(
            model=DocumentVersion,
            related='document',
        )

        # Document and document page thumbnail widget
        document_page_thumbnail_widget = DocumentPageThumbnailWidget()
        document_thumbnail_widget = DocumentThumbnailWidget()
        document_version_thumbnail_widget = DocumentVersionThumbnailWidget()

        # Document
        SourceColumn(source=Document,
                     label=_('Thumbnail'),
                     func=lambda context: document_thumbnail_widget.render(
                         instance=context['object']))
        SourceColumn(source=Document,
                     label=_('Type'),
                     attribute='document_type')

        # DocumentPage
        SourceColumn(source=DocumentPage,
                     label=_('Thumbnail'),
                     func=lambda context: document_page_thumbnail_widget.
                     render(instance=context['object']))

        SourceColumn(source=DocumentPageResult,
                     label=_('Thumbnail'),
                     func=lambda context: document_page_thumbnail_widget.
                     render(instance=context['object']))

        SourceColumn(source=DocumentPageResult,
                     label=_('Type'),
                     attribute='document_version.document.document_type')

        # DocumentType
        SourceColumn(source=DocumentType,
                     label=_('Documents'),
                     func=lambda context: context['object'].get_document_count(
                         user=context['request'].user))

        SourceColumn(
            source=DocumentTypeFilename,
            label=_('Enabled'),
            func=lambda context: two_state_template(context['object'].enabled))

        # DeletedDocument
        SourceColumn(source=DeletedDocument,
                     label=_('Thumbnail'),
                     func=lambda context: document_thumbnail_widget.render(
                         instance=context['object']))

        SourceColumn(source=DeletedDocument,
                     label=_('Type'),
                     attribute='document_type')
        SourceColumn(source=DeletedDocument,
                     label=_('Date time trashed'),
                     attribute='deleted_date_time')

        # DocumentVersion
        SourceColumn(source=DocumentVersion,
                     label=_('Time and date'),
                     attribute='timestamp')
        SourceColumn(source=DocumentVersion,
                     label=_('MIME type'),
                     attribute='mimetype')
        SourceColumn(source=DocumentVersion,
                     label=_('Encoding'),
                     attribute='encoding')
        SourceColumn(source=DocumentVersion,
                     label=_('Comment'),
                     attribute='comment')
        SourceColumn(source=DocumentVersion,
                     label=_('Thumbnail'),
                     func=lambda context: document_version_thumbnail_widget.
                     render(instance=context['object']))

        # DuplicatedDocument
        SourceColumn(source=DuplicatedDocument,
                     label=_('Thumbnail'),
                     func=lambda context: document_thumbnail_widget.render(
                         instance=context['object'].document))
        SourceColumn(source=DuplicatedDocument,
                     label=_('Duplicates'),
                     func=lambda context: context['object'].documents.count())

        app.conf.CELERYBEAT_SCHEDULE.update({
            'task_check_delete_periods': {
                'task': 'documents.tasks.task_check_delete_periods',
                'schedule': timedelta(seconds=CHECK_DELETE_PERIOD_INTERVAL),
            },
            'task_check_trash_periods': {
                'task': 'documents.tasks.task_check_trash_periods',
                'schedule': timedelta(seconds=CHECK_TRASH_PERIOD_INTERVAL),
            },
            'task_delete_stubs': {
                'task': 'documents.tasks.task_delete_stubs',
                'schedule': timedelta(seconds=DELETE_STALE_STUBS_INTERVAL),
            },
        })

        app.conf.CELERY_QUEUES.extend((
            Queue('converter',
                  Exchange('converter'),
                  routing_key='converter',
                  delivery_mode=1),
            Queue('documents_periodic',
                  Exchange('documents_periodic'),
                  routing_key='documents_periodic',
                  delivery_mode=1),
            Queue('uploads', Exchange('uploads'), routing_key='uploads'),
            Queue('documents', Exchange('documents'), routing_key='documents'),
        ))

        app.conf.CELERY_ROUTES.update({
            'documents.tasks.task_check_delete_periods': {
                'queue': 'documents_periodic'
            },
            'documents.tasks.task_check_trash_periods': {
                'queue': 'documents_periodic'
            },
            'documents.tasks.task_delete_stubs': {
                'queue': 'documents_periodic'
            },
            'documents.tasks.task_clear_image_cache': {
                'queue': 'tools'
            },
            'documents.tasks.task_generate_document_page_image': {
                'queue': 'converter'
            },
            'documents.tasks.task_update_page_count': {
                'queue': 'uploads'
            },
            'documents.tasks.task_upload_new_version': {
                'queue': 'uploads'
            },
            'documents.tasks.task_scan_duplicates_all': {
                'queue': 'tools'
            },
            'documents.tasks.task_scan_duplicates_for': {
                'queue': 'uploads'
            },
            'documents.tasks.task_delete_document': {
                'queue': 'documents'
            },
        })

        dashboard_main.add_widget(widget=widget_document_types)
        dashboard_main.add_widget(widget=widget_documents_in_trash)
        dashboard_main.add_widget(widget=widget_new_documents_this_month)
        dashboard_main.add_widget(widget=widget_pages_per_month)
        dashboard_main.add_widget(widget=widget_total_documents)

        menu_documents.bind_links(links=(link_document_list_recent,
                                         link_document_list,
                                         link_document_list_deleted,
                                         link_duplicated_document_list))

        menu_main.bind_links(links=(menu_documents, ), position=0)

        menu_setup.bind_links(links=(link_document_type_setup, ))
        menu_tools.bind_links(links=(link_clear_image_cache,
                                     link_duplicated_document_scan))

        # Document type links
        menu_object.bind_links(
            links=(link_document_type_edit, link_document_type_filename_list,
                   link_acl_list,
                   link_object_event_types_user_subcriptions_list,
                   link_document_type_delete),
            sources=(DocumentType, ))
        menu_object.bind_links(links=(link_document_type_filename_edit,
                                      link_document_type_filename_delete),
                               sources=(DocumentTypeFilename, ))
        menu_secondary.bind_links(links=(link_document_type_list,
                                         link_document_type_create),
                                  sources=(DocumentType,
                                           'documents:document_type_create',
                                           'documents:document_type_list'))
        menu_sidebar.bind_links(
            links=(link_document_type_filename_create, ),
            sources=(DocumentTypeFilename,
                     'documents:document_type_filename_list',
                     'documents:document_type_filename_create'))
        menu_sidebar.bind_links(links=(link_trash_can_empty, ),
                                sources=('documents:document_list_deleted',
                                         'documents:trash_can_empty'))

        # Document object links
        menu_object.bind_links(links=(
            link_document_edit,
            link_document_document_type_edit,
            link_document_print,
            link_document_trash,
            link_document_download,
            link_document_clear_transformations,
            link_document_clone_transformations,
            link_document_update_page_count,
        ),
                               sources=(Document, ))
        menu_object.bind_links(links=(link_document_restore,
                                      link_document_delete),
                               sources=(DeletedDocument, ))

        # Document facet links
        menu_facet.bind_links(links=(
            link_document_duplicates_list,
            link_acl_list_with_icon,
        ),
                              sources=(Document, ))
        menu_facet.bind_links(links=(link_document_preview, ),
                              sources=(Document, ),
                              position=0)
        menu_facet.bind_links(links=(link_document_properties, ),
                              sources=(Document, ),
                              position=2)
        menu_facet.bind_links(links=(
            link_events_for_object,
            link_object_event_types_user_subcriptions_list_with_icon,
            link_document_version_list,
        ),
                              sources=(Document, ),
                              position=2)
        menu_facet.bind_links(links=(link_document_pages, ),
                              sources=(Document, ))
        menu_facet.bind_links(links=(link_document_version_view, ),
                              sources=(DocumentVersion, ))

        # Document actions
        menu_object.bind_links(links=(link_document_version_view,
                                      link_document_version_revert,
                                      link_document_version_download),
                               sources=(DocumentVersion, ))
        menu_multi_item.bind_links(
            links=(link_document_multiple_clear_transformations,
                   link_document_multiple_trash,
                   link_document_multiple_download,
                   link_document_multiple_update_page_count,
                   link_document_multiple_document_type_edit),
            sources=(Document, ))
        menu_multi_item.bind_links(links=(link_document_multiple_restore,
                                          link_document_multiple_delete),
                                   sources=(DeletedDocument, ))

        # Document pages
        menu_facet.bind_links(
            links=(link_document_page_rotate_left,
                   link_document_page_rotate_right, link_document_page_zoom_in,
                   link_document_page_zoom_out, link_document_page_view_reset),
            sources=('documents:document_page_view', ))
        menu_facet.bind_links(links=(link_document_page_return,
                                     link_document_page_view),
                              sources=(DocumentPage, ))
        menu_facet.bind_links(links=(link_document_page_navigation_first,
                                     link_document_page_navigation_previous,
                                     link_document_page_navigation_next,
                                     link_document_page_navigation_last,
                                     link_transformation_list),
                              sources=(DocumentPage, ))
        menu_object.bind_links(links=(link_transformation_list, ),
                               sources=(DocumentPage, ))

        # Document versions
        menu_facet.bind_links(links=(link_document_version_return_document,
                                     link_document_version_return_list),
                              sources=(DocumentVersion, ))

        namespace = StatisticNamespace(slug='documents', label=_('Documents'))
        namespace.add_statistic(slug='new-documents-per-month',
                                label=_('New documents per month'),
                                func=new_documents_per_month,
                                renderer=CharJSLine,
                                minute='0')
        namespace.add_statistic(slug='new-document-versions-per-month',
                                label=_('New document versions per month'),
                                func=new_document_versions_per_month,
                                renderer=CharJSLine,
                                minute='0')
        namespace.add_statistic(slug='new-document-pages-per-month',
                                label=_('New document pages per month'),
                                func=new_document_pages_per_month,
                                renderer=CharJSLine,
                                minute='0')
        namespace.add_statistic(slug='total-documents-at-each-month',
                                label=_('Total documents at each month'),
                                func=total_document_per_month,
                                renderer=CharJSLine,
                                minute='0')
        namespace.add_statistic(
            slug='total-document-versions-at-each-month',
            label=_('Total document versions at each month'),
            func=total_document_version_per_month,
            renderer=CharJSLine,
            minute='0')
        namespace.add_statistic(slug='total-document-pages-at-each-month',
                                label=_('Total document pages at each month'),
                                func=total_document_page_per_month,
                                renderer=CharJSLine,
                                minute='0')

        post_initial_setup.connect(create_default_document_type,
                                   dispatch_uid='create_default_document_type')
        post_version_upload.connect(
            handler_scan_duplicates_for,
            dispatch_uid='handler_scan_duplicates_for',
        )

        registry.register(DeletedDocument)
        registry.register(Document)
        registry.register(DocumentType)
        registry.register(DocumentVersion)
Ejemplo n.º 35
0
 def ready(self):
     registry.register(self.get_model('User'))
Ejemplo n.º 36
0
    def ready(self):
        super(UserManagementApp, self).ready()
        from actstream import registry

        Group = apps.get_model(app_label='auth', model_name='Group')
        User = get_user_model()

        DynamicSerializerField.add_serializer(
            klass=get_user_model(),
            serializer_class='user_management.serializers.UserSerializer')

        MetadataLookup(description=_('All the groups.'),
                       name='groups',
                       value=get_groups)
        MetadataLookup(description=_('All the users.'),
                       name='users',
                       value=get_users)
        ModelPermission.register(model=Group,
                                 permissions=(
                                     permission_acl_edit,
                                     permission_acl_view,
                                     permission_group_delete,
                                     permission_group_edit,
                                     permission_group_view,
                                 ))
        ModelPermission.register(
            model=User,
            permissions=(permission_acl_edit, permission_acl_view,
                         permission_user_delete, permission_user_edit,
                         permission_user_view))
        SourceColumn(source=Group,
                     label=_('Users'),
                     attribute='user_set.count')

        SourceColumn(source=User,
                     label=_('Full name'),
                     attribute='get_full_name')
        SourceColumn(source=User, label=_('Email'), attribute='email')
        SourceColumn(source=User,
                     label=_('Active'),
                     func=lambda context: TwoStateWidget(state=context[
                         'object'].is_active).render())
        SourceColumn(source=User,
                     label=_('Has usable password?'),
                     func=lambda context: TwoStateWidget(state=context[
                         'object'].has_usable_password()).render())

        menu_multi_item.bind_links(links=(link_user_multiple_set_password,
                                          link_user_multiple_delete),
                                   sources=('user_management:user_list', ))
        menu_object.bind_links(links=(
            link_group_edit,
            link_group_members,
        ),
                               sources=(Group, ))
        menu_object.bind_links(links=(
            link_acl_list,
            link_group_delete,
        ),
                               position=99,
                               sources=(Group, ))
        menu_object.bind_links(links=(link_user_edit, link_user_set_password,
                                      link_user_groups, link_user_set_options,
                                      link_acl_list, link_user_delete),
                               sources=(User, ))
        menu_secondary.bind_links(
            links=(link_group_list, link_group_create),
            sources=('user_management:group_multiple_delete',
                     'user_management:group_list',
                     'user_management:group_create', Group))
        menu_secondary.bind_links(
            links=(link_user_list, link_user_create),
            sources=(User, 'user_management:user_multiple_set_password',
                     'user_management:user_multiple_delete',
                     'user_management:user_list',
                     'user_management:user_create'))
        menu_setup.bind_links(links=(link_user_setup, link_group_setup))

        post_save.connect(
            dispatch_uid='user_management_handler_initialize_new_user_options',
            receiver=handler_initialize_new_user_options,
            sender=User)
        registry.register(Group)
        registry.register(User)
Ejemplo n.º 37
0
 def ready(self):
     from actstream import registry
     registry.register(self.get_model('Course'),apps.get_model('auth','User')),
Ejemplo n.º 38
0
 def ready(self):
     registry.register(User, self.get_model('Task'),
                       self.get_model('Supervisor'))
Ejemplo n.º 39
0
 def ready(self):
     registry.register(self.get_model('Discussion'))
     registry.register(self.get_model('Entry'))
Ejemplo n.º 40
0
    def ready(self):
        super(UserManagementApp, self).ready()
        from actstream import registry

        Group = apps.get_model(app_label='auth', model_name='Group')
        User = get_user_model()

        APIEndPoint(app=self, version_string='1')
        DynamicSerializerField.add_serializer(
            klass=get_user_model(),
            serializer_class='user_management.serializers.UserSerializer')

        MetadataLookup(description=_('All the groups.'),
                       name='groups',
                       value=get_groups)
        MetadataLookup(description=_('All the users.'),
                       name='users',
                       value=get_users)

        SourceColumn(source=Group,
                     label=_('Members'),
                     attribute='user_set.count')

        SourceColumn(source=User,
                     label=_('Full name'),
                     attribute='get_full_name')
        SourceColumn(source=User, label=_('Email'), attribute='email')
        SourceColumn(source=User,
                     label=_('Active'),
                     func=lambda context: two_state_template(context['object'].
                                                             is_active))
        SourceColumn(source=User,
                     label=_('Has usable password?'),
                     func=lambda context: two_state_template(context[
                         'object'].has_usable_password()))

        menu_multi_item.bind_links(links=(link_user_multiple_set_password,
                                          link_user_multiple_delete),
                                   sources=('user_management:user_list', ))
        menu_object.bind_links(links=(link_group_edit, link_group_members,
                                      link_group_delete),
                               sources=(Group, ))
        menu_object.bind_links(links=(link_user_edit, link_user_set_password,
                                      link_user_groups, link_user_delete),
                               sources=(User, ))
        menu_secondary.bind_links(
            links=(link_group_list, link_group_add),
            sources=('user_management:group_multiple_delete',
                     'user_management:group_delete',
                     'user_management:group_edit',
                     'user_management:group_list', 'user_management:group_add',
                     'user_management:group_members'))
        menu_secondary.bind_links(
            links=(link_user_list, link_user_add),
            sources=(User, 'user_management:user_multiple_set_password',
                     'user_management:user_multiple_delete',
                     'user_management:user_list', 'user_management:user_add'))
        menu_setup.bind_links(links=(link_user_setup, link_group_setup))

        registry.register(Group)
        registry.register(User)
Ejemplo n.º 41
0
 def ready(self):
     from actstream import registry
     registry.register(self.get_model('Group'))
Ejemplo n.º 42
0
 def ready(self, **kwargs):
     from actstream import registry
     from lead_management.models import Lead
     registry.register(Lead)
Ejemplo n.º 43
0
 def ready(self):
     registry.register(self.get_model("ClientProfile"))
Ejemplo n.º 44
0
 def ready(self):
     registry.register(self.get_model('Badge'))
     registry.register(apps.get_model('auth.user'))
Ejemplo n.º 45
0
from django.db.models.signals import post_save
from django.contrib.auth.models import User
from django.utils.translation import ugettext_lazy as _

from taggit.managers import TaggableManager

import actstream.models
from actstream import actions, registry

User.add_to_class('following',
                  lambda self: actstream.models.following(self)[::-1])
User.add_to_class('followers',
                  lambda self: actstream.models.followers(self)[::-1])
User.add_to_class('action_list',
                  lambda self: actstream.models.actor_stream(self))
registry.register(User)


@property
def created_at(self):
    return self.date_joined


User.add_to_class('created_at', created_at)


class UserProfile(models.Model):
    user = models.OneToOneField(User)
    realname = models.CharField(
        null=True,
        max_length=20,
Ejemplo n.º 46
0
 def ready(self):
     registry.register(self.get_model('Discussion'))
     registry.register(self.get_model('Entry'))
Ejemplo n.º 47
0
 def ready(self):
     registry.register(User, self.get_model('Entry'),
                       self.get_model('Activity'),
                       self.get_model('Student'),
                       self.get_model('Coordinator'),
                       self.get_model('Advisor'))
Ejemplo n.º 48
0
 def ready(self):
     from actstream import registry
     registry.register(self.get_model('SlackUser'))
Ejemplo n.º 49
0
    def ready(self):
        super(CabinetsApp, self).ready()
        from actstream import registry
        from .wizard_steps import WizardStepCabinets  # NOQA

        Cabinet = self.get_model(model_name='Cabinet')
        CabinetSearchResult = self.get_model(model_name='CabinetSearchResult')
        Document = apps.get_model(app_label='documents', model_name='Document')
        DocumentCabinet = self.get_model(model_name='DocumentCabinet')
        DocumentPageResult = apps.get_model(app_label='documents',
                                            model_name='DocumentPageResult')

        # Add explicit order_by as DocumentCabinet ordering Meta option has no
        # effect.
        Document.add_to_class(name='get_cabinets',
                              value=method_document_get_cabinets)

        ModelEventType.register(model=Cabinet,
                                event_types=(event_cabinet_edited,
                                             event_cabinet_add_document,
                                             event_cabinet_remove_document))

        ModelPermission.register(
            model=Document,
            permissions=(permission_cabinet_add_document,
                         permission_cabinet_remove_document,
                         permission_events_view))

        ModelPermission.register(
            model=Cabinet,
            permissions=(permission_acl_edit, permission_acl_view,
                         permission_cabinet_delete, permission_cabinet_edit,
                         permission_cabinet_view,
                         permission_cabinet_add_document,
                         permission_cabinet_remove_document))

        def get_root_filter():
            return {
                'acl_filter': {
                    'level': 0
                },
                'acl_values': ('tree_id', ),
                'field_lookup': 'tree_id__in'
            }

        ModelPermission.register_field_query_function(model=Cabinet,
                                                      function=get_root_filter)

        SourceColumn(attribute='label',
                     is_identifier=True,
                     is_sortable=True,
                     source=Cabinet)

        SourceColumn(attribute='label',
                     is_identifier=True,
                     is_sortable=True,
                     source=CabinetSearchResult)
        SourceColumn(attribute='get_full_path', source=CabinetSearchResult)

        SourceColumn(func=lambda context: widget_document_cabinets(
            document=context['object'], user=context['request'].user),
                     label=_('Cabinets'),
                     order=1,
                     source=Document)

        SourceColumn(func=lambda context: widget_document_cabinets(
            document=context['object'].document, user=context['request'].user),
                     label=_('Cabinets'),
                     order=1,
                     source=DocumentPageResult)

        document_page_search.add_model_field(
            field='document_version__document__cabinets__label',
            label=_('Cabinets'))
        document_search.add_model_field(field='cabinets__label',
                                        label=_('Cabinets'))

        menu_facet.bind_links(links=(link_document_cabinet_list, ),
                              sources=(Document, ))

        menu_cabinets.bind_links(links=(link_cabinet_list,
                                        link_cabinet_create))
        menu_list_facet.bind_links(links=(
            link_cabinet_view,
            link_custom_acl_list,
            link_events_for_object,
            link_object_event_types_user_subcriptions_list,
        ),
                                   sources=(Cabinet, CabinetSearchResult))

        # menu_main.bind_links(links=(menu_cabinets,), position=98)

        menu_multi_item.bind_links(
            links=(link_document_multiple_cabinet_add,
                   link_multiple_document_cabinet_remove),
            sources=(Document, ))
        menu_object.bind_links(links=(link_cabinet_view, ),
                               sources=(DocumentCabinet, ))
        menu_object.bind_links(links=(link_cabinet_delete, link_cabinet_edit,
                                      link_cabinet_child_add),
                               sources=(Cabinet, CabinetSearchResult))
        menu_object.unbind_links(links=(link_cabinet_delete, link_cabinet_edit,
                                        link_cabinet_child_add),
                                 sources=(DocumentCabinet, ))
        menu_secondary.bind_links(links=(link_document_cabinet_add,
                                         link_document_cabinet_remove),
                                  sources=('cabinets:document_cabinet_list',
                                           'cabinets:document_cabinet_add',
                                           'cabinets:document_cabinet_remove'))

        registry.register(Cabinet)
def forwards_func(apps, schema_editor):
    # FIXME: This throws...
    # ValueError: Cannot query "User object": Must be "User" instance.
    # ...when run. WTF.
    # - The same actions.follows code works in runserver
    # - Debugging shows the user is indeed a user object
    # - Same result passing in user object created by apps.get_model(settings.AUTH_USER_MODEL).get(id=tune.author.id)
    #
    # So, ah, run this manually, somehow.

    Tune = apps.get_model('archiver', 'Tune')
    registry.register(Tune)
    folkrnn_anon_submission_default_author_id = 1
    for tune in Tune.objects.all():
        if tune.author.id == folkrnn_anon_submission_default_author_id:
            continue
        actions.follow(tune.author, tune, actor_only=False, send_action=False)

    Setting = apps.get_model('archiver', 'Setting')
    registry.register(Setting)
    for setting in Setting.objects.all():
        actions.follow(setting.author,
                       setting.tune,
                       actor_only=False,
                       send_action=False)

    Competition = apps.get_model('archiver', 'Competition')
    registry.register(Competition)
    CompetitionRecording = apps.get_model('archiver', 'CompetitionRecording')
    registry.register(CompetitionRecording)
    for cr in CompetitionRecording.objects.all():
        actions.follow(cr.recording.author,
                       cr.competition,
                       actor_only=False,
                       send_action=False)

    TuneComment = apps.get_model('archiver', 'TuneComment')
    registry.register(TuneComment)
    for tc in TuneComment.objects.all():
        actions.follow(tc.author, tc.tune, actor_only=False, send_action=False)

    CompetitionComment = apps.get_model('archiver', 'CompetitionComment')
    registry.register(CompetitionComment)
    for cc in CompetitionComment.objects.all():
        actions.follow(cc.author,
                       cc.competition,
                       actor_only=False,
                       send_action=False)

    Collection = apps.get_model('archiver', 'Collection')
    registry.register(Collection)
    CollectionEntry = apps.get_model('archiver', 'CollectionEntry')
    registry.register(CollectionEntry)
    for ce in CollectionEntry.objects.all():
        if ce.tune:
            actions.follow(ce.collection.user,
                           ce.tune,
                           actor_only=False,
                           send_action=False)
        else:
            actions.follow(ce.collection.user,
                           ce.setting,
                           actor_only=False,
                           send_action=False)

    CompetitionTuneVote = apps.get_model('archiver', 'CompetitionTuneVote')
    registry.register(CompetitionTuneVote)
    for ctv in CompetitionTuneVote.objects.all():
        actions.follow(ctv.user,
                       ctv.votable.competition,
                       actor_only=False,
                       send_action=False)
        actions.follow(ctv.user,
                       ctv.votable.tune,
                       actor_only=False,
                       send_action=False)

    CompetitionRecordingVote = apps.get_model('archiver',
                                              'CompetitionRecordingVote')
    registry.register(CompetitionRecordingVote)
    for crv in CompetitionRecordingVote.objects.all():
        actions.follow(ctv.user,
                       ctv.votable.competition,
                       actor_only=False,
                       send_action=False)
        actions.follow(crv.user,
                       crv.votable.recording,
                       actor_only=False,
                       send_action=False)
Ejemplo n.º 51
0
    def ready(self):
        super(MetadataApp, self).ready()
        from actstream import registry

        from .wizard_steps import WizardStepMetadata  # NOQA

        Document = apps.get_model(app_label='documents', model_name='Document')
        DocumentPageResult = apps.get_model(app_label='documents',
                                            model_name='DocumentPageResult')

        DocumentType = apps.get_model(app_label='documents',
                                      model_name='DocumentType')

        DocumentMetadata = self.get_model('DocumentMetadata')
        DocumentTypeMetadataType = self.get_model('DocumentTypeMetadataType')
        MetadataType = self.get_model('MetadataType')

        Document.add_to_class('metadata_value_of',
                              DocumentMetadataHelper.constructor)

        ModelAttribute(
            Document,
            'metadata_value_of',
            description=_('Return the value of a specific document metadata'),
        )

        ModelField(Document,
                   'metadata__metadata_type__name',
                   label=_('Metadata type name'))
        ModelField(
            Document,
            'metadata__value',
            label=_('Metadata type value'),
        )

        ModelEventType.register(model=Document,
                                event_types=(
                                    event_document_metadata_added,
                                    event_document_metadata_edited,
                                    event_document_metadata_removed,
                                ))

        ModelEventType.register(model=MetadataType,
                                event_types=(
                                    event_document_metadata_added,
                                    event_document_metadata_edited,
                                    event_document_metadata_removed,
                                    event_metadata_type_edited,
                                    event_metadata_type_relationship,
                                ))

        ModelEventType.register(
            model=DocumentType,
            event_types=(event_metadata_type_relationship, ))

        ModelPermission.register(model=Document,
                                 permissions=(
                                     permission_metadata_document_add,
                                     permission_metadata_document_edit,
                                     permission_metadata_document_remove,
                                     permission_metadata_document_view,
                                 ))
        ModelPermission.register(model=MetadataType,
                                 permissions=(permission_acl_edit,
                                              permission_acl_view,
                                              permission_events_view,
                                              permission_metadata_type_delete,
                                              permission_metadata_type_edit,
                                              permission_metadata_type_view))

        SourceColumn(
            source=Document,
            label=_('Metadata'),
            func=lambda context: get_metadata_string(context['object']))

        SourceColumn(source=DocumentPageResult,
                     label=_('Metadata'),
                     func=lambda context: get_metadata_string(context['object']
                                                              .document))

        SourceColumn(source=DocumentMetadata,
                     label=_('Value'),
                     attribute='value')
        SourceColumn(source=DocumentMetadata,
                     label=_('Required'),
                     func=lambda context: TwoStateWidget(state=context[
                         'object'].is_required).render())

        app.conf.CELERY_QUEUES.append(
            Queue('metadata', Exchange('metadata'), routing_key='metadata'), )

        app.conf.CELERY_ROUTES.update({
            'metadata.tasks.task_remove_metadata_type': {
                'queue': 'metadata'
            },
            'metadata.tasks.task_add_required_metadata_type': {
                'queue': 'metadata'
            },
        })

        document_search.add_model_field(field='metadata__metadata_type__name',
                                        label=_('Metadata type'))
        document_search.add_model_field(field='metadata__value',
                                        label=_('Metadata value'))

        document_page_search.add_model_field(
            field='document_version__document__metadata__metadata_type__name',
            label=_('Metadata type'))
        document_page_search.add_model_field(
            field='document_version__document__metadata__value',
            label=_('Metadata value'))

        menu_facet.bind_links(links=(link_metadata_view, ),
                              sources=(Document, ))
        menu_multi_item.bind_links(links=(link_metadata_multiple_add,
                                          link_metadata_multiple_edit,
                                          link_metadata_multiple_remove),
                                   sources=(Document, ))
        menu_object.bind_links(
            links=(link_setup_document_type_metadata_types, ),
            sources=(DocumentType, ))
        menu_object.bind_links(links=(
            link_setup_metadata_type_edit,
            link_setup_metadata_type_document_types,
            link_acl_list,
            link_object_event_types_user_subcriptions_list,
            link_events_for_object,
            link_setup_metadata_type_delete,
        ),
                               sources=(MetadataType, ))
        menu_secondary.bind_links(
            links=(link_setup_metadata_type_list,
                   link_setup_metadata_type_create),
            sources=(MetadataType, 'metadata:setup_metadata_type_list',
                     'metadata:setup_metadata_type_create'))
        menu_setup.bind_links(links=(link_setup_metadata_type_list, ))
        menu_sidebar.bind_links(
            links=(link_metadata_add, link_metadata_edit,
                   link_metadata_remove),
            sources=('metadata:metadata_add', 'metadata:metadata_edit',
                     'metadata:metadata_remove', 'metadata:metadata_view'))

        post_delete.connect(
            post_document_type_metadata_type_delete,
            dispatch_uid='metadata_post_document_type_metadata_type_delete',
            sender=DocumentTypeMetadataType)
        post_document_type_change.connect(
            post_document_type_change_metadata,
            dispatch_uid='metadata_post_document_type_change_metadata',
            sender=Document)
        post_save.connect(
            post_document_type_metadata_type_add,
            dispatch_uid='metadata_post_document_type_metadata_type_add',
            sender=DocumentTypeMetadataType)

        # Index updating

        post_delete.connect(
            handler_index_document,
            dispatch_uid='metadata_handler_index_document_delete',
            sender=DocumentMetadata)
        post_save.connect(handler_index_document,
                          dispatch_uid='metadata_handler_index_document_save',
                          sender=DocumentMetadata)

        registry.register(MetadataType)
        registry.register(DocumentTypeMetadataType)
Ejemplo n.º 52
0
 def ready(self):
     from actstream import registry
     from django.contrib.auth.models import User
     from indigo_api.models import Amendment, Document, Task, Work, Workflow
     registry.register(Amendment)
     registry.register(Document)
     registry.register(Task)
     registry.register(User)
     registry.register(Work)
     registry.register(Workflow)
Ejemplo n.º 53
0
 def ready(self):
     super(LotsAppConfig, self).ready()
     registry.register(self.get_model('Lot'))
     registry.register(self.get_model('LotGroup'))
     import signals
Ejemplo n.º 54
0
    def ready(self):
        from actstream import registry
        from tunga_messages import signals

        registry.register(self.get_model('Message'))
Ejemplo n.º 55
0
    def ready(self):
        super(DocumentIndexingApp, self).ready()
        from actstream import registry

        Document = apps.get_model(app_label='documents', model_name='Document')

        DocumentType = apps.get_model(app_label='documents',
                                      model_name='DocumentType')

        DocumentIndexInstanceNode = self.get_model(
            model_name='DocumentIndexInstanceNode')

        Index = self.get_model(model_name='Index')
        IndexInstance = self.get_model(model_name='IndexInstance')
        IndexInstanceNode = self.get_model(model_name='IndexInstanceNode')
        IndexTemplateNode = self.get_model(model_name='IndexTemplateNode')

        ModelEventType.register(event_types=(event_index_template_created,
                                             event_index_template_edited),
                                model=Index)

        ModelPermission.register(
            model=Index,
            permissions=(
                permission_acl_edit,
                permission_acl_view,
                permission_document_indexing_create,
                permission_document_indexing_delete,
                permission_document_indexing_edit,
                permission_document_indexing_instance_view,
                permission_document_indexing_rebuild,
                permission_document_indexing_view,
            ))
        ModelPermission.register_inheritance(model=IndexTemplateNode,
                                             related='index')

        ModelPermission.register_inheritance(
            model=IndexInstanceNode, related='index_template_node__index')

        SourceColumn(attribute='label',
                     is_identifier=True,
                     is_sortable=True,
                     source=Index)
        SourceColumn(attribute='slug', is_sortable=True, source=Index)
        SourceColumn(attribute='enabled',
                     is_sortable=True,
                     source=Index,
                     widget=TwoStateWidget)

        SourceColumn(func=lambda context: context['object'].instance_root.
                     get_descendants_count(),
                     label=_('Total levels'),
                     source=IndexInstance)
        SourceColumn(
            func=lambda context: context['object'].instance_root.
            get_descendants_document_count(user=context['request'].user),
            label=_('Total documents'),
            source=IndexInstance)

        SourceColumn(func=lambda context: node_level(context['object']),
                     label=_('Level'),
                     source=IndexTemplateNode)
        SourceColumn(attribute='enabled',
                     is_sortable=True,
                     source=IndexTemplateNode,
                     widget=TwoStateWidget)
        SourceColumn(attribute='link_documents',
                     is_sortable=True,
                     source=IndexTemplateNode,
                     widget=TwoStateWidget)
        SourceColumn(
            func=lambda context: index_instance_item_link(context['object']),
            label=_('Level'),
            is_sortable=True,
            sort_field='value',
            source=IndexInstanceNode)
        SourceColumn(
            func=lambda context: context['object'].get_descendants_count(),
            label=_('Levels'),
            source=IndexInstanceNode)

        SourceColumn(
            func=lambda context: context['object'].
            get_descendants_document_count(user=context['request'].user),
            label=_('Documents'),
            source=IndexInstanceNode)

        SourceColumn(func=lambda context: get_instance_link(
            index_instance_node=context['object'], ),
                     label=_('Level'),
                     is_sortable=True,
                     sort_field='value',
                     source=DocumentIndexInstanceNode)
        SourceColumn(
            func=lambda context: context['object'].get_descendants_count(),
            label=_('Levels'),
            source=DocumentIndexInstanceNode)
        SourceColumn(
            func=lambda context: context['object'].
            get_descendants_document_count(user=context['request'].user),
            label=_('Documents'),
            source=DocumentIndexInstanceNode)

        menu_facet.bind_links(links=(link_document_index_instance_list, ),
                              sources=(Document, ))
        menu_list_facet.bind_links(
            links=(link_document_type_index_templates, ),
            sources=(DocumentType, ))
        menu_list_facet.bind_links(
            links=(link_acl_list, link_events_for_object,
                   link_index_template_document_types,
                   link_index_template_node_tree_view,
                   link_object_event_types_user_subcriptions_list),
            sources=(Index, ))
        menu_object.bind_links(links=(link_index_template_delete,
                                      link_index_template_edit,
                                      link_index_instance_rebuild),
                               sources=(Index, ))
        menu_object.bind_links(links=(link_index_template_node_create,
                                      link_index_template_node_edit,
                                      link_index_template_node_delete),
                               sources=(IndexTemplateNode, ))
        menu_main.bind_links(links=(link_index_instance_menu, ), position=98)
        menu_secondary.bind_links(links=(link_index_template_list,
                                         link_index_template_create),
                                  sources=(Index, 'indexing:index_setup_list',
                                           'indexing:index_setup_create'))
        menu_setup.bind_links(links=(link_index_template_setup, ))
        menu_tools.bind_links(links=(link_index_instances_rebuild, ))

        post_delete.connect(
            dispatch_uid='document_indexing_handler_delete_empty',
            receiver=handler_delete_empty,
            sender=Document)
        post_document_created.connect(
            dispatch_uid='document_indexing_handler_index_document',
            receiver=handler_index_document,
            sender=Document)
        post_initial_document_type.connect(
            dispatch_uid=
            'document_indexing_handler_create_default_document_index',
            receiver=handler_create_default_document_index,
            sender=DocumentType)
        post_save.connect(
            dispatch_uid='document_indexing_handler_post_save_index_document',
            receiver=handler_post_save_index_document,
            sender=Document)
        pre_delete.connect(
            dispatch_uid='document_indexing_handler_remove_document',
            receiver=handler_remove_document,
            sender=Document)

        registry.register(Index)
Ejemplo n.º 56
0
    def ready(self):
        post_migrate.connect(create_default_settings, sender=self)
        post_migrate.connect(create_background_refresh_task, sender=self)

        from actstream import registry  # noqa
        registry.register(self.get_model('Podcast'), self.get_model('Episode'))
Ejemplo n.º 57
0
 def ready(self):
     from actstream.registry import register
     register(self.get_model('nestedmodel'))
Ejemplo n.º 58
0
 def ready(self):
     from actstream import registry
     registry.register(*self.get_models())
Ejemplo n.º 59
0
 def ready(self):
     from .signals import *
     from actstream import registry
     registry.register(self.get_model('Garden'))
     registry.register(self.get_model('GardenGroup'))
Ejemplo n.º 60
0
 def ready(self):
     from actstream import registry
     from django.contrib.auth.models import Group
     from fiches.models import Fiche, Atelier as fiche_at
     registry.register(self.get_model('Profil'))
     registry.register(self.get_model('MessageGeneral'))
     registry.register(self.get_model('Conversation'))
     registry.register(self.get_model('Suivis'))
     registry.register(Fiche)
     registry.register(fiche_at)
     registry.register(Group)