Пример #1
0
def metadata(recid, of='hd', ot=None):
    """Display formated record metadata."""
    from invenio.legacy.bibrank.downloads_similarity import \
        register_page_view_event
    from invenio.modules.formatter import get_output_format_content_type
    register_page_view_event(recid, current_user.get_id(),
                             str(request.remote_addr))
    if get_output_format_content_type(of) != 'text/html':
        from invenio.modules.search.views.search import \
            response_formated_records
        return response_formated_records([recid], g.collection, of, qid=None)

    # Send the signal 'document viewed'
    record_viewed.send(
        current_app._get_current_object(),
        recid=recid,
        id_user=current_user.get_id(),
        request=request)

    from invenio.b2share.modules.b2deposit.edit import is_record_editable
    return render_template('records/metadata.html', of=of, ot=ot,
                            editable=is_record_editable(recid))
Пример #2
0
def metadata(recid, of='hd', ot=None):
    """Display formated record metadata."""
    from invenio.legacy.bibrank.downloads_similarity import \
        register_page_view_event
    from invenio.modules.formatter import get_output_format_content_type
    register_page_view_event(recid, current_user.get_id(),
                             str(request.remote_addr))
    if get_output_format_content_type(of) != 'text/html':
        from invenio.modules.search.views.search import \
            response_formated_records
        return response_formated_records([recid], g.collection, of, qid=None)

    # Send the signal 'document viewed'
    record_viewed.send(current_app._get_current_object(),
                       recid=recid,
                       id_user=current_user.get_id(),
                       request=request)

    from invenio.b2share.modules.b2deposit.edit import is_record_editable
    return render_template('records/metadata.html',
                           of=of,
                           ot=ot,
                           editable=is_record_editable(recid))
Пример #3
0
    def test_record_access_for_edit(self):
        from invenio.b2share.modules.b2deposit.edit import is_record_editable,\
                                                    get_domain_admin_group
        current_app.config.update(PRESERVE_CONTEXT_ON_EXCEPTION=False)

        self.create_and_login_user("the_owner")
        public_record = self.make_record(open_access=True)
        private_record = self.make_record(open_access=False)
        self.assertFalse(is_record_editable(public_record))
        self.assertTrue(is_record_editable(private_record))
        self.remove_user()

        self.create_and_login_user("the_domain_admin")
        admin_group = get_domain_admin_group(self.metadata(True).get('domain'))
        self.add_current_user_to_group(admin_group)
        self.assertFalse(is_record_editable(public_record))
        self.assertTrue(is_record_editable(private_record))
        self.remove_current_user_from_group(admin_group)
        self.remove_user()

        self.create_and_login_user("the_third")
        self.assertFalse(is_record_editable(public_record))
        self.assertFalse(is_record_editable(private_record))
        self.remove_user()
    def test_record_access_for_edit(self):
        from invenio.b2share.modules.b2deposit.edit import is_record_editable,\
                                                    get_domain_admin_group
        current_app.config.update(PRESERVE_CONTEXT_ON_EXCEPTION = False)

        self.create_and_login_user("the_owner")
        public_record = self.make_record(open_access=True)
        private_record = self.make_record(open_access=False)
        self.assertFalse(is_record_editable(public_record))
        self.assertTrue(is_record_editable(private_record))
        self.remove_user()

        self.create_and_login_user("the_domain_admin")
        admin_group = get_domain_admin_group(self.metadata(True).get('domain'))
        self.add_current_user_to_group(admin_group)
        self.assertFalse(is_record_editable(public_record))
        self.assertTrue(is_record_editable(private_record))
        self.remove_current_user_from_group(admin_group)
        self.remove_user()

        self.create_and_login_user("the_third")
        self.assertFalse(is_record_editable(public_record))
        self.assertFalse(is_record_editable(private_record))
        self.remove_user()