Ejemplo n.º 1
0
def disposition_added(context, event):
    storage = IHistoryStorage(context)
    storage.add('added',
                api.user.get_current().getId(),
                context.get_dossier_representations())

    DispositionAddedActivity(context, getRequest()).record()
Ejemplo n.º 2
0
def disposition_state_changed(context, event):
    if event.action == 'disposition-transition-appraise':
        context.finalize_appraisal()

    if event.action == 'disposition-transition-archive':
        context.mark_dossiers_as_archived()

    if event.action == 'disposition-transition-close':
        context.destroy_dossiers()
        context.remove_sip_package()

    if event.action == 'disposition-transition-appraised-to-closed':
        context.mark_dossiers_as_archived()
        context.destroy_dossiers()
        context.remove_sip_package()

    if event.action == 'disposition-transition-dispose':
        context.store_sip_package()
        context.schedule_sip_for_delivery()

    storage = IHistoryStorage(context)
    storage.add(event.action,
                api.user.get_current().getId(),
                context.get_dossier_representations())

    DispositionStateChangedActivity(context, getRequest(),
                                    storage.get_history()[0]).record()
Ejemplo n.º 3
0
    def test_listing(self):
        self.login(self.records_manager)

        with freeze(datetime(2016, 11, 1, 11, 0)):
            storage = IHistoryStorage(self.disposition)
            storage.add('edited', api.user.get_current().getId(), [])

        with freeze(datetime(2016, 11, 6, 12, 33)), elevated_privileges():
            api.content.transition(self.disposition,
                                   'disposition-transition-appraise')
            api.content.transition(self.disposition,
                                   'disposition-transition-dispose')

        with freeze(datetime(2016, 11, 16, 8, 12)), elevated_privileges():
            api.content.transition(self.disposition,
                                   'disposition-transition-archive')

        rows = self.get_listing_rows(self.disposition,
                                     'disposition_history',
                                     self.disposition.get_history())

        expected_rows = [
            ['Nov 16, 2016 08:12 AM', 'Flucht Ramon (ramon.flucht)', 'disposition-transition-archive'],
            ['Nov 06, 2016 12:33 PM', 'Flucht Ramon (ramon.flucht)', 'disposition-transition-dispose'],
            ['Nov 06, 2016 12:33 PM', 'Flucht Ramon (ramon.flucht)', 'disposition-transition-appraise'],
            ['Nov 01, 2016 11:00 AM', 'Flucht Ramon (ramon.flucht)', 'Disposition edited'],
            ['Aug 31, 2016 07:05 PM', 'Flucht Ramon (ramon.flucht)', 'Disposition added']]

        for row, expected_row in zip(rows, expected_rows):
            self.assert_row_values(expected_row, row)
Ejemplo n.º 4
0
    def test_listing(self):
        self.login(self.records_manager)

        with freeze(datetime(2016, 11, 1, 11, 0)):
            storage = IHistoryStorage(self.disposition)
            storage.add('edited', api.user.get_current().getId(), [])

        with freeze(datetime(2016, 11, 6, 12, 33)), elevated_privileges():
            api.content.transition(self.disposition,
                                   'disposition-transition-appraise')
            api.content.transition(self.disposition,
                                   'disposition-transition-dispose')

        with freeze(datetime(2016, 11, 16, 8, 12)), elevated_privileges():
            api.content.transition(self.disposition,
                                   'disposition-transition-archive')

        rows = self.get_listing_rows(self.disposition,
                                     'disposition_history',
                                     self.disposition.get_history())

        expected_rows = [
            ['Nov 16, 2016 08:12 AM', 'Flucht Ramon (ramon.flucht)', 'disposition-transition-archive'],
            ['Nov 06, 2016 12:33 PM', 'Flucht Ramon (ramon.flucht)', 'disposition-transition-dispose'],
            ['Nov 06, 2016 12:33 PM', 'Flucht Ramon (ramon.flucht)', 'disposition-transition-appraise'],
            ['Nov 01, 2016 11:00 AM', 'Flucht Ramon (ramon.flucht)', 'Disposition edited'],
            ['Aug 31, 2016 07:07 PM', 'Flucht Ramon (ramon.flucht)', 'Disposition added']]

        for row, expected_row in zip(rows, expected_rows):
            self.assert_row_values(expected_row, row)
Ejemplo n.º 5
0
def disposition_added(context, event):
    storage = IHistoryStorage(context)
    storage.add('added',
                api.user.get_current().getId(),
                context.get_dossier_representations())

    DispositionAddedActivity(context, getRequest()).record()
    context.register_watchers()
Ejemplo n.º 6
0
def disposition_modified(context, event):
    # Skip modified events during dossier destruction
    if IDuringDossierDestruction.providedBy(context.REQUEST):
        return

    storage = IHistoryStorage(context)
    storage.add('edited',
                api.user.get_current().getId(),
                context.get_dossier_representations())
Ejemplo n.º 7
0
def disposition_modified(context, event):
    # Skip modified events during dossier destruction
    if IDuringDossierDestruction.providedBy(context.REQUEST):
        return

    storage = IHistoryStorage(context)
    storage.add('edited',
                api.user.get_current().getId(),
                context.get_dossier_representations())
Ejemplo n.º 8
0
    def test_transition_label_for_added_and_edited_entries_is_translated_correctly(self):
        self.login(self.records_manager)

        storage = IHistoryStorage(self.disposition)
        storage.add('edited', api.user.get_current().getId(), [])

        rows = self.get_listing_rows(self.disposition,
                                     'disposition_history',
                                     self.disposition.get_history())

        self.assert_row_values(
            ['Disposition edited'], rows[0][2])
        self.assert_row_values(
            ['Disposition added'], rows[1][2])
Ejemplo n.º 9
0
    def test_transition_label_for_added_and_edited_entries_is_translated_correctly(self):
        self.login(self.records_manager)

        storage = IHistoryStorage(self.disposition)
        storage.add('edited', api.user.get_current().getId(), [])

        rows = self.get_listing_rows(self.disposition,
                                     'disposition_history',
                                     self.disposition.get_history())

        self.assert_row_values(
            ['Disposition edited'], rows[0][2])
        self.assert_row_values(
            ['Disposition added'], rows[1][2])
Ejemplo n.º 10
0
def disposition_state_changed(context, event):
    if event.action == 'disposition-transition-appraise':
        context.finalize_appraisal()

    if event.action == 'disposition-transition-archive':
        context.mark_dossiers_as_archived()

    if event.action == 'disposition-transition-close':
        context.destroy_dossiers()

    storage = IHistoryStorage(context)
    storage.add(event.action,
                api.user.get_current().getId(),
                context.get_dossier_representations())
    def test_transition_label_for_added_and_edited_entries_is_translated_correctly(
            self):
        disposition = create(Builder('disposition'))

        storage = IHistoryStorage(disposition)
        storage.add('added', api.user.get_current().getId(), [])
        storage.add('edited', api.user.get_current().getId(), [])

        self.listing = getMultiAdapter(
            (disposition, disposition.REQUEST, self),
            ILaTexListing,
            name='disposition_history')
        self.listing.items = disposition.get_history()

        table = lxml.html.fromstring(self.listing.template())
        rows = table.xpath(CSSSelector('tbody tr').path)

        self.assert_row_values(['Disposition edited'], rows[0][2])
        self.assert_row_values(['Disposition added'], rows[1][2])
Ejemplo n.º 12
0
    def test_transition_label_for_added_and_edited_entries_is_translated_correctly(self):
        disposition = create(Builder('disposition'))

        storage = IHistoryStorage(disposition)
        storage.add('added', api.user.get_current().getId(), [])
        storage.add('edited', api.user.get_current().getId(), [])

        self.listing = getMultiAdapter(
            (disposition, disposition.REQUEST, self),
            ILaTexListing, name='disposition_history')
        self.listing.items = disposition.get_history()

        table = lxml.html.fromstring(self.listing.template())
        rows = table.xpath(CSSSelector('tbody tr').path)

        self.assert_row_values(
            ['Disposition edited'], rows[0][2])
        self.assert_row_values(
            ['Disposition added'], rows[1][2])
Ejemplo n.º 13
0
def disposition_state_changed(context, event):
    if event.action == 'disposition-transition-appraise':
        context.finalize_appraisal()

    if event.action == 'disposition-transition-archive':
        context.mark_dossiers_as_archived()

    if event.action == 'disposition-transition-close':
        context.destroy_dossiers()

    if event.action == 'disposition-transition-appraised-to-closed':
        context.mark_dossiers_as_archived()
        context.destroy_dossiers()

    storage = IHistoryStorage(context)
    storage.add(event.action,
                api.user.get_current().getId(),
                context.get_dossier_representations())

    DispositionStateChangedActivity(
        context, getRequest(), storage.get_history()[0]).record()
Ejemplo n.º 14
0
def disposition_added(context, event):
    storage = IHistoryStorage(context)
    storage.add('added',
                api.user.get_current().getId(),
                context.get_dossier_representations())