Beispiel #1
0
 def generate_context(self, request, form):
     return dict(form.cleaned_data, **{
         'submitting_user_name': request.user.get_profile().name or request.user.username,
         'submitting_user_profile': get_site_url(reverse('profile_detail',
                                                         kwargs={'username':
                                                                 request.user.username})),
         'system_name': '%s %s' % (settings.SITE_NAME, settings.SITE_NAME_STATUS),
         'system_link': get_site_url(),
         'system_info': '%s %s - Freemix %s - Akara %s - Akara Root %s' %
         (settings.SITE_NAME,
          recollection_version,
          freemix_version,
          get_akara_version(),
          AKARA_URL_PREFIX,)
     })
Beispiel #2
0
 def views(cls, instance):
     "URLs for all collection views with the temporary external_view field."
     result = [get_site_url(views.get_absolute_url()) for views in
             instance.views.iterator()]
     if instance.external_view:
         result.append(instance.external_view)
     return result
Beispiel #3
0
    def get(self, request, owner, slug):
        where = request.GET.get('where', 'freemix-embed')
        exhibit = get_published_exhibit(request, owner, slug)

        metadata = exhibit.profile

        canvas = exhibit.canvas
        canvas_html = render_to_string(canvas.location, {}).replace("\n", " ")
        dataset = exhibit.dataset

        data_dict = Dataset.objects.filter(id=dataset.id).values("data__data",
            "profile__data",
            "properties_cache__data")[0]

        response = render(request, self.template_name, {
            "data": data_dict["data__data"],
            "title": exhibit.title,
            "description": exhibit.description,
            "metadata": json.dumps(metadata),
            "data_profile": data_dict["profile__data"],
            "properties": data_dict["properties_cache__data"],
            "where": where,
            "permalink": get_site_url(reverse("exhibit_display",
                                              kwargs={'owner': owner,
                                                      'slug': slug})),
            "canvas": canvas_html})
        response['Content-Type'] = "application/javascript"
        response['Cache-Control'] = "no-cache, must-revalidate, public"
        return response
Beispiel #4
0
    def get(self, request, owner, slug):
        where = request.GET.get('where', 'freemix-embed')
        try:
            exhibit = models.Exhibit.objects.get(slug=slug,
                                                 owner__username=owner,
                                                 published=True)
        except models.Exhibit.DoesNotExist:
            return self.not_found_response(request, where)

        if not exhibit.published:
            return self.not_found_response(request, where)

        if not exhibit.dataset_available(self.request.user):
            return self.no_dataset_response(request, where)
        
        metadata = exhibit.profile

        canvas = exhibit.canvas
        canvas_html = render_to_string(canvas.location, {}).replace("\n", " ")
        profile = exhibit.dataset
        data = profile.data

        response = render(request, self.template_name, {
            "data": json.dumps(data, use_decimal=True),
            "title": exhibit.title,
            "description": exhibit.description,
            "metadata": json.dumps(metadata),
            "data_profile": json.dumps(profile.profile),
            "where": where,
            "permalink": get_site_url(reverse("exhibit_display",
                                              kwargs={'owner': owner,
                                                      'slug': slug})),
            "canvas": canvas_html})
        response['Content-Type'] = "application/javascript"
        return response
Beispiel #5
0
    def generate_context(self, request, form, *args, **kwargs):
        support = get_user(settings.SUPPORT_USER)

        profile_json = form.cleaned_data.get("profile_json")

        profile = parse_profile_json(support, profile_json)

        c = super(AugmentationIssueView, self).generate_context(request, form)
        return dict(c, **{"dataset": get_site_url(profile.get_absolute_url())})
Beispiel #6
0
    def generate_context(self, request, form):
        support = get_user(settings.SUPPORT_USER)
        if self.source_type == "url":
            url = form.cleaned_data.get("url")
        else:
            ds = models.SupportFileDataSource(user = request.user, file=request.FILES['file'])
            ds.save()
            url = get_site_url(ds.file.url)

        c = super(DataLoadIssueView, self).generate_context(request, form)
        return dict(c, **{"url": url})
Beispiel #7
0
 def get_context_data(self, **kwargs):
     context = super(ExhibitDetailView, self).get_context_data(**kwargs)
     user = self.request.user
     can_embed = user.has_perm("exhibit.can_embed", self.get_object())
     context["can_embed"] = can_embed
     context["can_share"] = user.has_perm("exhibit.can_share", self.get_object())
     if can_embed:
         context["exhibit_embed_url"] = get_site_url(reverse('exhibit_embed_js',
                                                 kwargs={
                                                     "owner": self.get_object().owner,
                                                     "slug": self.get_object().slug
                                                 }))
     return context
Beispiel #8
0
    def generate_context(self, request, form, *args, **kwargs):
        username = request.user.username
        profile = reverse('profile_detail', kwargs={'username': username})
        profile = get_site_url(profile)
        system_name = '%s %s' % (settings.SITE_NAME,
                                 settings.SITE_NAME_STATUS)

        info = (settings.SITE_NAME,
                viewshare_version,
                freemix_version,
                get_akara_version(),
                AKARA_URL_PREFIX,)
        system_info = '%s %s - Freemix %s - Akara %s - Akara Root %s' % info

        return dict(form.cleaned_data, **{
            'submitting_user_name': request.user.username,
            'submitting_user_profile': profile,
            'system_name': system_name,
            'system_link': get_site_url(),
            'system_info': system_info,
            'user_agent': request.META["HTTP_USER_AGENT"]
        })
Beispiel #9
0
 def get_context_data(self, **kwargs):
     context = super(ExhibitDetailView, self).get_context_data(**kwargs)
     user = self.request.user
     can_embed = user.has_perm("exhibit.can_embed", self.get_object())
     context["can_embed"] = can_embed
     context["can_share"] = user.has_perm("exhibit.can_share",
                                          self.get_object())
     if can_embed:
         context["exhibit_embed_url"] = get_site_url(
             reverse('exhibit_embed_js',
                     kwargs={
                         "owner": self.get_object().owner,
                         "slug": self.get_object().slug
                     }))
     return context
Beispiel #10
0
    def get(self, request, owner, slug):
        where = request.GET.get('where', 'freemix-embed')
        try:
            exhibit = models.Exhibit.objects.get(slug=slug,
                                                 owner__username=owner,
                                                 published=True)
        except models.Exhibit.DoesNotExist:
            return self.not_found_response(request, where)

        if not exhibit.published:
            return self.not_found_response(request, where)

        if not exhibit.dataset_available(self.request.user):
            return self.no_dataset_response(request, where)

        metadata = exhibit.profile

        canvas = exhibit.canvas
        canvas_html = render_to_string(canvas.location, {}).replace("\n", " ")
        profile = exhibit.dataset
        data = profile.data

        response = render(
            request, self.template_name, {
                "data":
                json.dumps(data, use_decimal=True),
                "title":
                exhibit.title,
                "description":
                exhibit.description,
                "metadata":
                json.dumps(metadata),
                "data_profile":
                json.dumps(profile.profile),
                "where":
                where,
                "permalink":
                get_site_url(
                    reverse("exhibit_display",
                            kwargs={
                                'owner': owner,
                                'slug': slug
                            })),
                "canvas":
                canvas_html
            })
        response['Content-Type'] = "application/javascript"
        return response
Beispiel #11
0
 def link(self, obj):
     return get_site_url(reverse("profile_detail", kwargs={'username':
                 obj.username}))
def site_url(path="/"):
    return str(get_site_url(path))
Beispiel #13
0
def site_url(path="/"):
    return str(get_site_url(path))
Beispiel #14
0
 def organizations(cls, instance):
     "URLs for organization resources"
     return [get_site_url(o.get_absolute_url()) for o in instance.organizations.iterator()]
Beispiel #15
0
 def topics(cls, instance):
     "URLs for all topic resources"
     return [get_site_url(t.get_absolute_url()) for t in instance.topics.iterator()]
Beispiel #16
0
 def project(cls, instance):
     "URL for the collection's project"
     return get_site_url(instance.project.get_absolute_url())
Beispiel #17
0
 def id(cls, instance):
     " For exhibit, we want the unique ID for a resource to be it's URL."
     return get_site_url(instance.get_absolute_url())