Example #1
0
 def member(self, dataset, dimension, name, format="html"):
     self._get_member(dataset, dimension, name)
     handle_request(request, c, c.member, c.dimension.name)
     member = [member_apply_links(dataset, dimension, c.member)]
     if format == "json":
         return write_json(member, response)
     elif format == "csv":
         return write_csv(member, response)
     else:
         # If there are no views set up, then go direct to the entries
         # search page
         if c.view is None:
             return redirect(
                 url_for(
                     controller="dimension", action="entries", dataset=c.dataset.name, dimension=dimension, name=name
                 )
             )
         if "embed" in request.params:
             return redirect(
                 url_for(
                     controller="view",
                     action="embed",
                     dataset=c.dataset.name,
                     widget=c.view.vis_widget.get("name"),
                     state=json.dumps(c.view.vis_state),
                 )
             )
         return templating.render("dimension/member.html")
Example #2
0
 def member(self, dataset, dimension, name, format="html"):
     self._get_member(dataset, dimension, name)
     handle_request(request, c, c.member, c.dimension.name)
     member = [member_apply_links(dataset, dimension, c.member)]
     if format == 'json':
         return write_json(member, response)
     elif format == 'csv':
         return write_csv(member, response)
     else:
         # If there are no views set up, then go direct to the entries
         # search page
         if c.view is None:
             return redirect(
                 url_for(controller='dimension',
                         action='entries',
                         dataset=c.dataset.name,
                         dimension=dimension,
                         name=name))
         if 'embed' in request.params:
             return redirect(
                 url_for(controller='view',
                         action='embed',
                         dataset=c.dataset.name,
                         widget=c.view.vis_widget.get('name'),
                         state=json.dumps(c.view.vis_state)))
         return templating.render('dimension/member.html')
Example #3
0
    def index_export(self, dataset, format):
        self._get_dataset(dataset)

        # TODO include html_urls in dumps.
        #processor = lambda e: entry_apply_links(c.dataset.name, e)

        if format == 'json':
            return write_json(c.dataset.entries(), response,
                filename=c.dataset.name + '.json')
        if format == 'csv':
            return write_csv(c.dataset.entries(), response,
                filename=c.dataset.name + '.csv')
        else:
            return redirect(h.url_for(controller='entry', action='index'))
Example #4
0
    def entries(self, dataset, dimension, name, format='html'):
        self._get_member(dataset, dimension, name)

        handle_request(request, c, c.member, c.dimension.name)

        entries = c.dataset.entries(c.dimension.alias.c.name == c.member['name'])
        entries = (entry_apply_links(dataset, e) for e in entries)
        attachment_name = '__'.join([dataset, dimension, name])

        if format == 'json':
            return write_json(entries, response, filename=attachment_name + '.json')
        elif format == 'csv':
            return write_csv(entries, response, filename=attachment_name + '.csv')
        else:
            return render('dimension/entries.html')
Example #5
0
    def entries(self, dataset, dimension, name, format="html"):
        self._get_member(dataset, dimension, name)

        handle_request(request, c, c.member, c.dimension.name)

        entries = c.dataset.entries(c.dimension.alias.c.name == c.member["name"])
        entries = (entry_apply_links(dataset, e) for e in entries)
        attachment_name = "__".join([dataset, dimension, name])

        if format == "json":
            return write_json(entries, response, filename=attachment_name + ".json")
        elif format == "csv":
            return write_csv(entries, response, filename=attachment_name + ".csv")
        else:
            return render("dimension/entries.html")
Example #6
0
    def index_export(self, dataset, format):
        self._get_dataset(dataset)

        # TODO include html_urls in dumps.
        #processor = lambda e: entry_apply_links(c.dataset.name, e)

        if format == 'json':
            return write_json(c.dataset.entries(),
                              response,
                              filename=c.dataset.name + '.json')
        if format == 'csv':
            return write_csv(c.dataset.entries(),
                             response,
                             filename=c.dataset.name + '.csv')
        else:
            return redirect(h.url_for(controller='entry', action='index'))
Example #7
0
    def member(self, dataset, dimension, name, format="html"):
        self._get_member(dataset, dimension, name)

        handle_request(request, c, c.member, c.dimension.name)

        # If there are no views set up, then go direct to the entries search page
        if c.view is None and format is "html":
            return redirect(url_for(controller='dimension', action='entries',
                dataset=c.dataset.name, dimension=dimension, name=name))

        member = [member_apply_links(dataset, dimension, c.member)]
        if format == 'json':
            return write_json(member, response)
        elif format == 'csv':
            return write_csv(member, response)
        else:
            return render('dimension/member.html')
Example #8
0
    def entries(self, dataset, dimension, name, format='html'):
        self._get_member(dataset, dimension, name)

        handle_request(request, c, c.member, c.dimension.name)

        entries = c.dataset.entries(
            c.dimension.alias.c.name == c.member['name'])
        entries = (entry_apply_links(dataset, e) for e in entries)
        attachment_name = '__'.join([dataset, dimension, name])

        if format == 'json':
            return write_json(entries,
                              response,
                              filename=attachment_name + '.json')
        elif format == 'csv':
            return write_csv(entries,
                             response,
                             filename=attachment_name + '.csv')
        else:
            return render('dimension/entries.html')
Example #9
0
 def member(self, dataset, dimension, name, format="html"):
     self._get_member(dataset, dimension, name)
     handle_request(request, c, c.member, c.dimension.name)
     member = [member_apply_links(dataset, dimension, c.member)]
     if format == 'json':
         return write_json(member, response)
     elif format == 'csv':
         return write_csv(member, response)
     else:
         # If there are no views set up, then go direct to the entries
         # search page
         if c.view is None:
             return redirect(url_for(controller='dimension', action='entries',
                 dataset=c.dataset.name, dimension=dimension, name=name))
         if 'embed' in request.params:
             return redirect(url_for(controller='view',
                 action='embed', dataset=c.dataset.name,
                 widget=c.view.vis_widget.get('name'),
                 state=json.dumps(c.view.vis_state)))
         return render('dimension/member.html')