Пример #1
0
def delete_screenshot(request,
                      production_id,
                      screenshot_id,
                      is_artwork_view=False):
    production = get_object_or_404(Production, id=production_id)
    if not request.user.is_staff:
        return HttpResponseRedirect(production.get_absolute_url())

    screenshot = get_object_or_404(Screenshot,
                                   id=screenshot_id,
                                   production=production)
    if request.method == 'POST':
        if request.POST.get('yes'):
            screenshot.delete()

            # reload production model, as the deletion above may have nullified has_screenshot
            # (which won't be reflected in the existing model instance)
            production = Production.objects.get(pk=production.pk)

            production.updated_at = datetime.datetime.now()
            production.has_bonafide_edits = True
            production.save()
            if is_artwork_view:
                Edit.objects.create(action_type='delete_screenshot',
                                    focus=production,
                                    description="Deleted artwork",
                                    user=request.user)
            else:
                Edit.objects.create(action_type='delete_screenshot',
                                    focus=production,
                                    description="Deleted screenshot",
                                    user=request.user)
        return HttpResponseRedirect(
            reverse('production_edit_screenshots', args=[production.id]))
    else:
        if is_artwork_view:
            if production.supertype != 'music':
                return redirect('production_delete_screenshot', production_id,
                                screenshot_id)

            return simple_ajax_confirmation(
                request,
                reverse('production_delete_artwork',
                        args=[production_id, screenshot_id]),
                "Are you sure you want to delete this artwork for %s?" %
                production.title,
                html_title="Deleting artwork for %s" % production.title)
        else:
            if production.supertype == 'music':
                return redirect('production_delete_artwork', production_id,
                                screenshot_id)

            return simple_ajax_confirmation(
                request,
                reverse('production_delete_screenshot',
                        args=[production_id, screenshot_id]),
                "Are you sure you want to delete this screenshot for %s?" %
                production.title,
                html_title="Deleting screenshot for %s" % production.title)
Пример #2
0
def delete_screenshot(request, production_id, screenshot_id):
	production = get_object_or_404(Production, id=production_id)
	if not request.user.is_staff:
		return HttpResponseRedirect(production.get_absolute_url())

	screenshot = get_object_or_404(Screenshot, id=screenshot_id, production=production)
	if request.method == 'POST':
		if request.POST.get('yes'):
			screenshot.delete()

			# reload production model, as the deletion above may have nullified default_screenshot
			# (which won't be reflected in the existing model instance)
			production = Production.objects.get(pk=production.pk)

			production.updated_at = datetime.datetime.now()
			production.has_bonafide_edits = True
			production.save()
			Edit.objects.create(action_type='delete_screenshot', focus=production,
				description="Deleted screenshot", user=request.user)
		return HttpResponseRedirect(reverse('production_edit_screenshots', args=[production.id]))
	else:
		return simple_ajax_confirmation(request,
			reverse('production_delete_screenshot', args=[production_id, screenshot_id]),
			"Are you sure you want to delete this screenshot for %s?" % production.title,
			html_title="Deleting screenshot for %s" % production.title)
Пример #3
0
def lock(request, production_id):
	production = get_object_or_404(Production, id=production_id)
	if not request.user.is_staff:
		return HttpResponseRedirect(production.get_absolute_url())

	if request.method == 'POST':
		if request.POST.get('yes'):
			Edit.objects.create(action_type='lock_production', focus=production,
				description=(u"Protected production '%s'" % production.title), user=request.user)

			production.locked = True
			production.updated_at = datetime.datetime.now()
			production.has_bonafide_edits = True

			production.save()
			messages.success(request, "'%s' locked" % production.title)

		return HttpResponseRedirect(production.get_absolute_url())

	else:
		return simple_ajax_confirmation(request,
			reverse('lock_production', args=[production_id]),
			"Locking down a page is a serious decision and shouldn't be done on a whim - "
			"remember that we want to keep Demozoo as open as possible. "
			"Are you absolutely sure you want to lock '%s'?" % production.title,
			html_title="Locking %s" % production.title)
Пример #4
0
def remove_subgroup(request, group_id, subgroup_id):
    group = get_object_or_404(Releaser, is_group=True, id=group_id)
    subgroup = get_object_or_404(Releaser, is_group=True, id=subgroup_id)

    if not group.editable_by_user(request.user):
        raise PermissionDenied

    if request.method == 'POST':
        if request.POST.get('yes'):
            group.member_memberships.filter(member=subgroup).delete()
            group.updated_at = datetime.datetime.now()
            group.save()
            description = u"Removed %s as a subgroup of %s" % (subgroup.name,
                                                               group.name)
            Edit.objects.create(action_type='remove_membership',
                                focus=subgroup,
                                focus2=group,
                                description=description,
                                user=request.user)
        return HttpResponseRedirect(group.get_absolute_edit_url() +
                                    "?editing=subgroups")
    else:
        return simple_ajax_confirmation(
            request,
            reverse('group_remove_subgroup', args=[group_id, subgroup_id]),
            "Are you sure you want to remove %s as a subgroup of %s?" %
            (subgroup.name, group.name),
            html_title="Removing %s from %s" % (subgroup.name, group.name))
Пример #5
0
def delete(request, competition_id):
    competition = get_object_or_404(Competition, id=competition_id)

    if (not request.user.is_staff) or competition.placings.exists():
        return HttpResponseRedirect(competition.party.get_absolute_url())
    if request.method == 'POST':
        if request.POST.get('yes'):

            Edit.objects.create(action_type='delete_competition',
                                focus=competition.party,
                                description=(u"Deleted competition '%s'" %
                                             competition.name),
                                user=request.user)

            competition.delete()

            messages.success(request,
                             "%s competition deleted" % competition.name)
            return HttpResponseRedirect(competition.party.get_absolute_url())
        else:
            return HttpResponseRedirect(competition.party.get_absolute_url())
    else:
        return simple_ajax_confirmation(
            request,
            reverse('delete_competition', args=[competition_id]),
            "Are you sure you want to delete the %s competition?" %
            competition.name,
            html_title="Deleting %s" % competition.name)
Пример #6
0
def delete(request, production_id):
    production = get_object_or_404(Production, id=production_id)
    if not request.user.is_staff:
        return HttpResponseRedirect(production.get_absolute_url())
    if request.method == "POST":
        if request.POST.get("yes"):
            # insert log entry before actually deleting, so that it doesn't try to
            # insert a null ID for the focus field
            Edit.objects.create(
                action_type="delete_production",
                focus=production,
                description=(u"Deleted production '%s'" % production.title),
                user=request.user,
            )
            production.delete()
            messages.success(request, "'%s' deleted" % production.title)
            return HttpResponseRedirect(reverse("productions"))
        else:
            return HttpResponseRedirect(production.get_absolute_url())
    else:
        return simple_ajax_confirmation(
            request,
            reverse("delete_production", args=[production_id]),
            "Are you sure you want to delete '%s'?" % production.title,
            html_title="Deleting %s" % production.title,
        )
Пример #7
0
def delete(request, bbs_id):
    bbs = get_object_or_404(BBS, id=bbs_id)
    if not request.user.is_staff:
        return redirect('bbs', bbs.id)
    if request.method == 'POST':
        if request.POST.get('yes'):

            # insert log entry before actually deleting, so that it doesn't try to
            # insert a null ID for the focus field
            Edit.objects.create(action_type='delete_bbs',
                                focus=bbs,
                                description=(u"Deleted BBS '%s'" % bbs.name),
                                user=request.user)

            bbs.delete()

            messages.success(request, "BBS '%s' deleted" % bbs.name)
            return redirect('bbses')
        else:
            return redirect('bbs', bbs.id)
    else:
        return simple_ajax_confirmation(request,
                                        reverse('delete_bbs', args=[bbs.id]),
                                        "Are you sure you want to delete %s?" %
                                        bbs.name,
                                        html_title="Deleting %s" % bbs.name)
Пример #8
0
def delete(request, releaser_id):
	releaser = get_object_or_404(Releaser, id=releaser_id)
	if not request.user.is_staff:
		return HttpResponseRedirect(releaser.get_absolute_edit_url())
	if request.method == 'POST':
		if request.POST.get('yes'):

			# insert log entry before actually deleting, so that it doesn't try to
			# insert a null ID for the focus field
			if releaser.is_group:
				Edit.objects.create(action_type='delete_group', focus=releaser,
					description=(u"Deleted group '%s'" % releaser.name), user=request.user)
			else:
				Edit.objects.create(action_type='delete_scener', focus=releaser,
					description=(u"Deleted scener '%s'" % releaser.name), user=request.user)

			releaser.delete()

			messages.success(request, "'%s' deleted" % releaser.name)
			if releaser.is_group:
				return HttpResponseRedirect(reverse('groups'))
			else:
				return HttpResponseRedirect(reverse('sceners'))
		else:
			return HttpResponseRedirect(releaser.get_absolute_edit_url())
	else:
		return simple_ajax_confirmation(request,
			reverse('delete_releaser', args=[releaser_id]),
			"Are you sure you want to delete %s?" % releaser.name,
			html_title="Deleting %s" % releaser.name)
Пример #9
0
def convert_to_scener(request, group_id):
    group = get_object_or_404(Releaser, is_group=True, id=group_id)
    if not request.user.is_staff or not group.can_be_converted_to_scener():
        return HttpResponseRedirect(group.get_absolute_edit_url())
    if request.method == 'POST':
        if request.POST.get('yes'):
            group.is_group = False
            group.updated_at = datetime.datetime.now()
            group.save()
            for nick in group.nicks.all():
                # sceners do not have specific 'abbreviation' fields on their nicks
                if nick.abbreviation:
                    nick.abbreviation = ''
                    nick.save()

            Edit.objects.create(
                action_type='convert_to_scener',
                focus=group,
                description=(u"Converted %s from a group to a scener" % group),
                user=request.user)
        return HttpResponseRedirect(group.get_absolute_edit_url())
    else:
        return simple_ajax_confirmation(
            request,
            reverse('group_convert_to_scener', args=[group_id]),
            "Are you sure you want to convert %s into a scener?" %
            (group.name),
            html_title="Converting %s to a scener" % (group.name))
Пример #10
0
def delete_nick(request, releaser_id, nick_id):
	releaser = get_object_or_404(Releaser, id=releaser_id)
	nick = get_object_or_404(Nick, releaser=releaser, id=nick_id)
	if nick.is_primary_nick():  # not allowed to delete primary nick
		return HttpResponseRedirect(releaser.get_absolute_edit_url())

	if request.method == 'POST':
		if request.POST.get('yes'):
			nick.reassign_references_and_delete()
			releaser.updated_at = datetime.datetime.now()
			releaser.save()
			Edit.objects.create(action_type='delete_nick', focus=releaser,
				description=(u"Deleted nick '%s'" % nick.name), user=request.user)
		return HttpResponseRedirect(releaser.get_absolute_edit_url() + "?editing=nicks")
	else:
		if nick.is_referenced():
			prompt = """
				Are you sure you want to delete %s's alternative name '%s'?
				This will cause all releases under the name '%s' to be reassigned back to '%s'.
			""" % (releaser.name, nick.name, nick.name, releaser.name)
		else:
			prompt = "Are you sure you want to delete %s's alternative name '%s'?" % (releaser.name, nick.name)

		return simple_ajax_confirmation(request,
			reverse('releaser_delete_nick', args=[releaser_id, nick_id]),
			prompt,
			html_title="Deleting name: %s" % nick.name)
Пример #11
0
def delete_credit(request, releaser_id, nick_id, production_id):
    releaser = get_object_or_404(Releaser, id=releaser_id)
    nick = get_object_or_404(Nick, releaser=releaser, id=nick_id)
    production = get_object_or_404(Production, id=production_id)

    if not releaser.editable_by_user(request.user):
        raise PermissionDenied

    if request.method == 'POST':
        if request.POST.get('yes'):
            credits = Credit.objects.filter(nick=nick, production=production)
            if credits:
                credits.delete()
                releaser.updated_at = datetime.datetime.now()
                releaser.save()
                production.updated_at = datetime.datetime.now()
                production.has_bonafide_edits = True
                production.save()
                Edit.objects.create(action_type='delete_credit',
                                    focus=production,
                                    focus2=releaser,
                                    description=(u"Deleted %s's credit on %s" %
                                                 (nick, production)),
                                    user=request.user)
        return HttpResponseRedirect(releaser.get_absolute_edit_url())
    else:
        return simple_ajax_confirmation(
            request,
            reverse('releaser_delete_credit',
                    args=[releaser_id, nick_id, production_id]),
            "Are you sure you want to delete %s's credit from %s?" %
            (nick.name, production.title),
            html_title="Deleting %s's credit from %s" %
            (nick.name, production.title))
Пример #12
0
def lock(request, production_id):
    production = get_object_or_404(Production, id=production_id)
    if not request.user.is_staff:
        return HttpResponseRedirect(production.get_absolute_url())

    if request.method == 'POST':
        if request.POST.get('yes'):
            Edit.objects.create(action_type='lock_production', focus=production,
                description=(u"Protected production '%s'" % production.title), user=request.user)

            production.locked = True
            production.updated_at = datetime.datetime.now()
            production.has_bonafide_edits = True

            production.save()
            messages.success(request, "'%s' locked" % production.title)

        return HttpResponseRedirect(production.get_absolute_url())

    else:
        return simple_ajax_confirmation(request,
            reverse('lock_production', args=[production_id]),
            "Locking down a page is a serious decision and shouldn't be done on a whim - "
            "remember that we want to keep Demozoo as open as possible. "
            "Are you absolutely sure you want to lock '%s'?" % production.title,
            html_title="Locking %s" % production.title)
Пример #13
0
 def get(self, request, *args, **kwargs):
     commentable_name = self.get_commentable_name(self.commentable)
     return simple_ajax_confirmation(
         request,
         reverse(self.url_name, args=[self.commentable.id,
                                      self.comment.id]),
         "Are you sure you want to delete this comment?",
         html_title="Deleting comment on %s" % commentable_name)
Пример #14
0
def delete_production_comment(request, production_id, comment_id):
	production = get_object_or_404(Production, id=production_id)
	comment = get_object_or_404(ProductionComment, id=comment_id, production=production)

	if not request.user.is_staff:
		return redirect(production.get_absolute_url() + ('#comment-%d' % comment.id))

	if request.method == 'POST':
		if request.POST.get('yes'):
			comment.delete()
		return redirect(production.get_absolute_url())
	else:
		return simple_ajax_confirmation(request,
			reverse('delete_production_comment', args=[production_id, comment_id]),
			"Are you sure you want to delete this comment?",
			html_title="Deleting comment on %s" % production.title)
Пример #15
0
def remove_organiser(request, party_id, organiser_id):
    party = get_object_or_404(Party, id=party_id)
    organiser = get_object_or_404(Organiser, party=party, id=organiser_id)

    if request.method == 'POST':
        if request.POST.get('yes'):
            organiser.delete()
            description = u"Removed %s as organiser of %s" % (organiser.releaser.name, party.name)
            Edit.objects.create(action_type='remove_party_organiser', focus=organiser.releaser, focus2=party,
                description=description, user=request.user)
        return HttpResponseRedirect(party.get_absolute_edit_url() + "?editing=organisers")
    else:
        return simple_ajax_confirmation(request,
            reverse('party_remove_organiser', args=[party_id, organiser_id]),
            "Are you sure you want to remove %s as organiser of %s?" % (organiser.releaser.name, party.name),
            html_title="Removing %s as organiser of %s" % (organiser.releaser.name, party.name))
Пример #16
0
def remove_subgroup(request, group_id, subgroup_id):
	group = get_object_or_404(Releaser, is_group=True, id=group_id)
	subgroup = get_object_or_404(Releaser, is_group=True, id=subgroup_id)
	if request.method == 'POST':
		if request.POST.get('yes'):
			group.member_memberships.filter(member=subgroup).delete()
			group.updated_at = datetime.datetime.now()
			group.save()
			description = u"Removed %s as a subgroup of %s" % (subgroup.name, group.name)
			Edit.objects.create(action_type='remove_membership', focus=subgroup, focus2=group,
				description=description, user=request.user)
		return HttpResponseRedirect(group.get_absolute_edit_url() + "?editing=subgroups")
	else:
		return simple_ajax_confirmation(request,
			reverse('group_remove_subgroup', args=[group_id, subgroup_id]),
			"Are you sure you want to remove %s as a subgroup of %s?" % (subgroup.name, group.name),
			html_title="Removing %s from %s" % (subgroup.name, group.name))
Пример #17
0
def delete_blurb(request, production_id, blurb_id):
    production = get_object_or_404(Production, id=production_id)
    if not request.user.is_staff:
        return HttpResponseRedirect(production.get_absolute_url())
    blurb = get_object_or_404(ProductionBlurb, production=production, id=blurb_id)

    if request.method == 'POST':
        if request.POST.get('yes'):
            blurb.delete()
            Edit.objects.create(action_type='delete_production_blurb', focus=production,
                description="Deleted blurb", user=request.user, admin_only=True)
        return HttpResponseRedirect(production.get_absolute_url())
    else:
        return simple_ajax_confirmation(request,
            reverse('production_delete_blurb', args=[production_id, blurb_id]),
            "Are you sure you want to delete this blurb?",
            html_title="Deleting blurb for %s" % production.title)
Пример #18
0
def delete_blurb(request, production_id, blurb_id):
	production = get_object_or_404(Production, id=production_id)
	if not request.user.is_staff:
		return HttpResponseRedirect(production.get_absolute_url())
	blurb = get_object_or_404(ProductionBlurb, production=production, id=blurb_id)

	if request.method == 'POST':
		if request.POST.get('yes'):
			blurb.delete()
			Edit.objects.create(action_type='delete_production_blurb', focus=production,
				description="Deleted blurb", user=request.user, admin_only=True)
		return HttpResponseRedirect(production.get_absolute_url())
	else:
		return simple_ajax_confirmation(request,
			reverse('production_delete_blurb', args=[production_id, blurb_id]),
			"Are you sure you want to delete this blurb?",
			html_title="Deleting blurb for %s" % production.title)
Пример #19
0
def convert_to_group(request, scener_id):
	scener = get_object_or_404(Releaser, is_group=False, id=scener_id)
	if not request.user.is_staff or not scener.can_be_converted_to_group():
		return HttpResponseRedirect(scener.get_absolute_edit_url())
	if request.method == 'POST':
		if request.POST.get('yes'):
			scener.is_group = True
			scener.updated_at = datetime.datetime.now()
			scener.save()
			Edit.objects.create(action_type='convert_to_group', focus=scener,
				description=(u"Converted %s from a scener to a group" % scener), user=request.user)
		return HttpResponseRedirect(scener.get_absolute_edit_url())
	else:
		return simple_ajax_confirmation(request,
			reverse('scener_convert_to_group', args=[scener_id]),
			"Are you sure you want to convert %s into a group?" % (scener.name),
			html_title="Converting %s to a group" % (scener.name))
Пример #20
0
def convert_to_group(request, scener_id):
    scener = get_object_or_404(Releaser, is_group=False, id=scener_id)
    if not request.user.is_staff or not scener.can_be_converted_to_group():
        return HttpResponseRedirect(scener.get_absolute_edit_url())
    if request.method == 'POST':
        if request.POST.get('yes'):
            scener.is_group = True
            scener.updated_at = datetime.datetime.now()
            scener.save()
            Edit.objects.create(action_type='convert_to_group', focus=scener,
                description=(u"Converted %s from a scener to a group" % scener), user=request.user)
        return HttpResponseRedirect(scener.get_absolute_edit_url())
    else:
        return simple_ajax_confirmation(request,
            reverse('scener_convert_to_group', args=[scener_id]),
            "Are you sure you want to convert %s into a group?" % (scener.name),
            html_title="Converting %s to a group" % (scener.name))
Пример #21
0
def delete_banner(request, banner_id):
    if not request.user.has_perm('homepage.delete_banner'):
        return redirect('home')

    banner = get_object_or_404(Banner, id=banner_id)

    if request.method == 'POST':
        if request.POST.get('yes'):
            banner.delete()
            messages.success(request, "Banner deleted")
            return redirect('home')
        else:
            return redirect('edit_banner', banner_id)
    else:
        return simple_ajax_confirmation(request,
            reverse('delete_banner', args=[banner_id]),
            "Are you sure you want to delete this banner?",
            html_title="Deleting banner: %s" % banner.title)
Пример #22
0
def delete_news(request, news_story_id):
	if not request.user.has_perm('homepage.delete_newsstory'):
		return redirect('home')

	news_story = get_object_or_404(NewsStory, id=news_story_id)

	if request.method == 'POST':
		if request.POST.get('yes'):
			news_story.delete()
			messages.success(request, "News story deleted")
			return redirect('home')
		else:
			return redirect('edit_news', news_story_id)
	else:
		return simple_ajax_confirmation(request,
			reverse('delete_news', args=[news_story_id]),
			"Are you sure you want to delete this news story?",
			html_title="Deleting news story: %s" % news_story.title)
Пример #23
0
def delete_banner(request, banner_id):
	if not request.user.has_perm('homepage.delete_banner'):
		return redirect('home')

	banner = get_object_or_404(Banner, id=banner_id)

	if request.method == 'POST':
		if request.POST.get('yes'):
			banner.delete()
			messages.success(request, "Banner deleted")
			return redirect('home')
		else:
			return redirect('edit_banner', banner_id)
	else:
		return simple_ajax_confirmation(request,
			reverse('delete_banner', args=[banner_id]),
			"Are you sure you want to delete this banner?",
			html_title="Deleting banner: %s" % banner.title)
Пример #24
0
def delete_news(request, news_story_id):
    if not request.user.has_perm('homepage.delete_newsstory'):
        return redirect('home')

    news_story = get_object_or_404(NewsStory, id=news_story_id)

    if request.method == 'POST':
        if request.POST.get('yes'):
            news_story.delete()
            messages.success(request, "News story deleted")
            return redirect('home')
        else:
            return redirect('edit_news', news_story_id)
    else:
        return simple_ajax_confirmation(request,
            reverse('delete_news', args=[news_story_id]),
            "Are you sure you want to delete this news story?",
            html_title="Deleting news story: %s" % news_story.title)
Пример #25
0
def delete(request, production_id):
    production = get_object_or_404(Production, id=production_id)
    if not request.user.is_staff:
        return HttpResponseRedirect(production.get_absolute_url())
    if request.method == 'POST':
        if request.POST.get('yes'):
            # insert log entry before actually deleting, so that it doesn't try to
            # insert a null ID for the focus field
            Edit.objects.create(action_type='delete_production', focus=production,
                description=(u"Deleted production '%s'" % production.title), user=request.user)
            production.delete()
            messages.success(request, "'%s' deleted" % production.title)
            return HttpResponseRedirect(reverse('productions'))
        else:
            return HttpResponseRedirect(production.get_absolute_url())
    else:
        return simple_ajax_confirmation(request,
            reverse('delete_production', args=[production_id]),
            "Are you sure you want to delete '%s'?" % production.title,
            html_title="Deleting %s" % production.title)
Пример #26
0
def delete_credit(request, releaser_id, nick_id, production_id):
	releaser = get_object_or_404(Releaser, id=releaser_id)
	nick = get_object_or_404(Nick, releaser=releaser, id=nick_id)
	production = get_object_or_404(Production, id=production_id)
	if request.method == 'POST':
		if request.POST.get('yes'):
			credits = Credit.objects.filter(nick=nick, production=production)
			if credits:
				credits.delete()
				releaser.updated_at = datetime.datetime.now()
				releaser.save()
				production.updated_at = datetime.datetime.now()
				production.has_bonafide_edits = True
				production.save()
				Edit.objects.create(action_type='delete_credit', focus=production, focus2=releaser,
					description=(u"Deleted %s's credit on %s" % (nick, production)), user=request.user)
		return HttpResponseRedirect(releaser.get_absolute_edit_url())
	else:
		return simple_ajax_confirmation(request,
			reverse('releaser_delete_credit', args=[releaser_id, nick_id, production_id]),
			"Are you sure you want to delete %s's credit from %s?" % (nick.name, production.title),
			html_title="Deleting %s's credit from %s" % (nick.name, production.title))
Пример #27
0
def convert_to_scener(request, group_id):
	group = get_object_or_404(Releaser, is_group=True, id=group_id)
	if not request.user.is_staff or not group.can_be_converted_to_scener():
		return HttpResponseRedirect(group.get_absolute_edit_url())
	if request.method == 'POST':
		if request.POST.get('yes'):
			group.is_group = False
			group.updated_at = datetime.datetime.now()
			group.save()
			for nick in group.nicks.all():
				# sceners do not have specific 'abbreviation' fields on their nicks
				if nick.abbreviation:
					nick.abbreviation = ''
					nick.save()

			Edit.objects.create(action_type='convert_to_scener', focus=group,
				description=(u"Converted %s from a group to a scener" % group), user=request.user)
		return HttpResponseRedirect(group.get_absolute_edit_url())
	else:
		return simple_ajax_confirmation(request,
			reverse('group_convert_to_scener', args=[group_id]),
			"Are you sure you want to convert %s into a scener?" % (group.name),
			html_title="Converting %s to a scener" % (group.name))
Пример #28
0
def remove_affiliation(request, bbs_id, affiliation_id):
    bbs = get_object_or_404(BBS, id=bbs_id)
    affiliation = get_object_or_404(Affiliation, bbs=bbs, id=affiliation_id)

    if request.method == 'POST':
        if request.POST.get('yes'):
            affiliation.delete()
            description = u"Removed %s's affiliation with %s" % (
                affiliation.group.name, bbs.name)
            Edit.objects.create(action_type='remove_bbs_affiliation',
                                focus=affiliation.group,
                                focus2=bbs,
                                description=description,
                                user=request.user)
        return HttpResponseRedirect(bbs.get_absolute_edit_url() +
                                    "?editing=affiliations")
    else:
        return simple_ajax_confirmation(
            request,
            reverse('bbs_remove_affiliation', args=[bbs_id, affiliation_id]),
            "Are you sure you want to remove %s's affiliation with %s?" %
            (affiliation.group.name, bbs.name),
            html_title="Removing %s's affiliation with %s" %
            (affiliation.group.name, bbs.name))
Пример #29
0
def remove_operator(request, bbs_id, operator_id):
    bbs = get_object_or_404(BBS, id=bbs_id)
    operator = get_object_or_404(Operator, bbs=bbs, id=operator_id)

    if request.method == 'POST':
        if request.POST.get('yes'):
            operator.delete()
            description = u"Removed %s as staff member of %s" % (
                operator.releaser.name, bbs.name)
            Edit.objects.create(action_type='remove_bbs_operator',
                                focus=operator.releaser,
                                focus2=bbs,
                                description=description,
                                user=request.user)
        return HttpResponseRedirect(bbs.get_absolute_edit_url() +
                                    "?editing=staff")
    else:
        return simple_ajax_confirmation(
            request,
            reverse('bbs_remove_operator', args=[bbs_id, operator_id]),
            "Are you sure you want to remove %s as staff member of %s?" %
            (operator.releaser.name, bbs.name),
            html_title="Removing %s as staff member of %s" %
            (operator.releaser.name, bbs.name))
Пример #30
0
	def get(self, request, *args, **kwargs):
		commentable_name = self.get_commentable_name(self.commentable)
		return simple_ajax_confirmation(request,
			reverse(self.url_name, args=[self.commentable.id, self.comment.id]),
			"Are you sure you want to delete this comment?",
			html_title="Deleting comment on %s" % commentable_name)