def get_context_data(self, **kwargs): context = super(UpdateArtworkView, self).get_context_data(**kwargs) context['action'] = reverse('artwork-edit', kwargs={'pk': self.get_object().id}) artwork = context['object'] if artwork: context['share_url'] = ShareView.get_share_url( artwork.get_absolute_url()) submissions_qs = Submission.objects.filter( artwork__exact=artwork.id).order_by('-created_at').all() submissions = {int(x.exhibition_id): x for x in submissions_qs} exhibitions_qs = Exhibition.can_see_queryset( Exhibition.objects, self.request.user).order_by('-released_at', 'created_at') exhibitions = exhibitions_qs.all() # Collect the exhibitions we've already submitted this artwork to, # and the ones that can still be submitted to context['exhibitions_submitted'] = [] context['exhibitions_to_submit'] = [] for exh in exhibitions: submission = submissions.get(exh.id) if submission: exh.submitted = submission context['exhibitions_submitted'].append(exh) else: context['exhibitions_to_submit'].append(exh) return context
def get_context_data(self, **kwargs): context = super(UpdateArtworkView, self).get_context_data(**kwargs) context['action'] = reverse('artwork-edit', kwargs={'pk': self.get_object().id}) artwork = context['object'] if artwork: context['share_url'] = ShareView.get_share_url(artwork.get_absolute_url()) submissions_qs = Submission.objects.filter( artwork__exact=artwork.id).order_by('-created_at').all() submissions = { int(x.exhibition_id) : x for x in submissions_qs } exhibitions_qs = Exhibition.can_see_queryset( Exhibition.objects, self.request.user).order_by('-released_at', 'created_at') exhibitions = exhibitions_qs.all() # Collect the exhibitions we've already submitted this artwork to, # and the ones that can still be submitted to context['exhibitions_submitted'] = [] context['exhibitions_to_submit'] = [] for exh in exhibitions: submission = submissions.get(exh.id) if submission: exh.submitted = submission context['exhibitions_submitted'].append(exh) else: context['exhibitions_to_submit'].append(exh) return context
def test_reverse_share_url_home(self): share_url = ShareView.reverse_share_url('home') home_path = reverse('home') home_url = '%s%s' % (self.live_server_url, home_path) # Ensure redirects to home self.selenium.get(share_url) time.sleep(1) self.assertEqual(self.selenium.current_url, home_url)
def test_reverse_share_url_artwork_view(self): share_url = ShareView.reverse_share_url('artwork-view', kwargs={'pk': 1}) artwork_path = reverse('artwork-view', kwargs={'pk': 1}) artwork_url = '%s%s' % (self.live_server_url, artwork_path) # Ensure redirects to artwork view self.selenium.get(share_url) time.sleep(1) self.assertEqual(self.selenium.current_url, artwork_url)
def test_reverse_share_url_exhibition_view(self): share_url = ShareView.reverse_share_url('exhibition-view', kwargs={'pk': 1}) exhibition_path = reverse('exhibition-view', kwargs={'pk': 1}) exhibition_url = '%s%s' % (self.live_server_url, exhibition_path) # Ensure redirects to exhibition view self.selenium.get(share_url) time.sleep(1) self.assertEqual(self.selenium.current_url, exhibition_url)
def get_context_data(self, **kwargs): context = super(ExhibitionView, self).get_context_data(**kwargs) context['model'] = self.get_model() exhibition = context.get('object') if exhibition: context['share_url'] = ShareView.reverse_share_url( 'exhibition-view', kwargs={'pk': exhibition.id}) return context
def get_context_data(self, **kwargs): context = super(ShowSubmissionView, self).get_context_data(**kwargs) submission = self.get_object() # Include share url pk = submission.id context['share_url'] = ShareView.reverse_share_url( 'submission-view', kwargs={'pk': pk}) # Include in the current user's votes for this submission # as a dict of submission.id:vote votes = Vote.can_delete_queryset(user=self.request.user, submission=pk).all() context['votes'] = { v.submission_id:v for v in votes } context['DISQUS_IDENTIFIER'] = submission.disqus_identifier context['DISQUS_TITLE'] = '%s' % submission context['DISQUS_URL'] = self.request.build_absolute_uri(submission.get_absolute_url()) return context
def get_context_data(self, **kwargs): context = super(ShowSubmissionView, self).get_context_data(**kwargs) submission = self.get_object() # Include share url pk = submission.id context['share_url'] = ShareView.reverse_share_url('submission-view', kwargs={'pk': pk}) # Include in the current user's votes for this submission # as a dict of submission.id:vote votes = Vote.can_delete_queryset(user=self.request.user, submission=pk).all() context['votes'] = {v.submission_id: v for v in votes} context['DISQUS_IDENTIFIER'] = submission.disqus_identifier context['DISQUS_TITLE'] = '%s' % submission context['DISQUS_URL'] = self.request.build_absolute_uri( submission.get_absolute_url()) return context
def test_reverse_share_url_exhibition_view_redirects(self): share_url = ShareView.reverse_share_url('exhibition-view', kwargs={'pk': 1}) self.assertShareUrlRedirects(share_url)
def test_reverse_share_url_artwork_view_redirects(self): share_url = ShareView.reverse_share_url('artwork-view', kwargs={'pk': 1}) self.assertShareUrlRedirects(share_url)
def test_reverse_share_url_home_redirects(self): share_url = ShareView.reverse_share_url('home') self.assertShareUrlRedirects(share_url)
def test_share_url_redirect(self): share_url = ShareView.get_share_url() self.assertShareUrlRedirects(share_url)