from apps.managers.challenge_mgr import challenge_mgr from apps.managers.resource_mgr.models import WaterUsage from apps.widgets.resource_goal.admin import GoalSettingsAdmin, GoalAdmin, BaselineDailyAdmin from apps.widgets.resource_goal.models import WaterGoalSetting, WaterGoal, WaterBaselineDaily, \ WaterBaselineHourly from apps.admin.admin import challenge_designer_site, challenge_manager_site, developer_site admin.site.register(WaterGoalSetting, GoalSettingsAdmin) challenge_designer_site.register(WaterGoalSetting, GoalSettingsAdmin) challenge_manager_site.register(WaterGoalSetting, GoalSettingsAdmin) developer_site.register(WaterGoalSetting, GoalSettingsAdmin) admin.site.register(WaterGoal, GoalAdmin) challenge_designer_site.register(WaterGoal, GoalAdmin) challenge_manager_site.register(WaterGoal, GoalAdmin) developer_site.register(WaterGoal, GoalAdmin) admin.site.register(WaterBaselineDaily, BaselineDailyAdmin) challenge_designer_site.register(WaterBaselineDaily, BaselineDailyAdmin) challenge_manager_site.register(WaterBaselineDaily, BaselineDailyAdmin) developer_site.register(WaterBaselineDaily, BaselineDailyAdmin) challenge_mgr.register_designer_game_info_model("Water Game", WaterGoalSetting) challenge_mgr.register_admin_game_info_model("Water Game", WaterUsage) challenge_mgr.register_admin_challenge_info_model("Status", 1, WaterGoal, 3) challenge_mgr.register_developer_game_info_model("Water Game", WaterGoalSetting) challenge_mgr.register_developer_game_info_model("Water Game", WaterGoal) challenge_mgr.register_developer_game_info_model("Water Game", WaterBaselineDaily) challenge_mgr.register_developer_game_info_model("Water Game", WaterBaselineHourly)
args=(obj.pk, )) else: leader = obj.leader() return leader winner.allow_tags = True winner.short_description = 'Current Winner' def notice_sent(self, obj): """return True if the notification had been sent.""" if obj.award_to == 'individual_overall': leader = obj.leader() return self._notification_exists(obj, leader) elif obj.award_to == 'individual_team': teams = Team.objects.all() for team in teams: leader = obj.leader(team=team) return self._notification_exists(obj, leader) else: return "N/A" notice_sent.short_description = 'Winner Notice Sent' admin.site.register(Prize, PrizeAdmin) challenge_designer_site.register(Prize, PrizeAdmin) challenge_manager_site.register(Prize, PrizeAdmin) developer_site.register(Prize, PrizeAdmin) challenge_mgr.register_designer_game_info_model("Top Score Game", Prize) challenge_mgr.register_developer_game_info_model("Top Score Game", Prize)
from apps.admin.admin import challenge_designer_site, challenge_manager_site, developer_site admin.site.register(EnergyGoalSetting, GoalSettingsAdmin) challenge_designer_site.register(EnergyGoalSetting, GoalSettingsAdmin) challenge_manager_site.register(EnergyGoalSetting, GoalSettingsAdmin) developer_site.register(EnergyGoalSetting, GoalSettingsAdmin) admin.site.register(EnergyGoal, GoalAdmin) challenge_designer_site.register(EnergyGoal, GoalAdmin) challenge_manager_site.register(EnergyGoal, GoalAdmin) developer_site.register(EnergyGoal, GoalAdmin) admin.site.register(EnergyBaselineDaily, BaselineDailyAdmin) challenge_designer_site.register(EnergyBaselineDaily, BaselineDailyAdmin) challenge_manager_site.register(EnergyBaselineDaily, BaselineDailyAdmin) developer_site.register(EnergyBaselineDaily, BaselineDailyAdmin) admin.site.register(EnergyBaselineHourly, BaselineHourlyAdmin) challenge_designer_site.register(EnergyBaselineHourly, BaselineHourlyAdmin) challenge_manager_site.register(EnergyBaselineHourly, BaselineHourlyAdmin) developer_site.register(EnergyBaselineHourly, BaselineHourlyAdmin) challenge_mgr.register_designer_game_info_model("Energy Game", EnergyGoalSetting) challenge_mgr.register_admin_game_info_model("Energy Game", EnergyUsage) challenge_mgr.register_admin_challenge_info_model("Status", 1, EnergyGoal, 2) challenge_mgr.register_developer_game_info_model("Energy Game", EnergyGoalSetting) challenge_mgr.register_developer_game_info_model("Energy Game", EnergyGoal) challenge_mgr.register_developer_game_info_model("Energy Game", EnergyBaselineDaily) challenge_mgr.register_developer_game_info_model("Energy Game", EnergyBaselineHourly)
print_selected.short_description = "Set the printed or distributed flag." def view_selected(self, request, queryset): """Views the Bonus Points Codes for printing.""" _ = request _ = queryset return render_to_response( "view_bonus_points.html", {"codes": queryset, "per_page": 10}, context_instance=RequestContext(request) ) view_selected.short_description = "View the selected Bonus Points." def view_codes(self, request, queryset): """Views the Bonus Points Codes for printing.""" _ = request _ = queryset response = HttpResponseRedirect(reverse("bonus_view_codes", args=())) return response admin.site.register(BonusPoint, BonusPointAdmin) challenge_designer_site.register(BonusPoint, BonusPointAdmin) challenge_manager_site.register(BonusPoint, BonusPointAdmin) developer_site.register(BonusPoint, BonusPointAdmin) challenge_mgr.register_designer_game_info_model("Smart Grid Game", BonusPoint) challenge_mgr.register_admin_game_info_model("Smart Grid Game", BonusPoint) challenge_mgr.register_developer_game_info_model("Smart Grid Game", BonusPoint)
] def has_add_permission(self, request): return False def has_delete_permission(self, request, obj=None): return False admin.site.register(ReferralSetting, ReferralSettingAdmin) challenge_designer_site.register(ReferralSetting, ReferralSettingAdmin) challenge_manager_site.register(ReferralSetting, ReferralSettingAdmin) developer_site.register(ReferralSetting, ReferralSettingAdmin) challenge_mgr.register_designer_challenge_info_model("Challenge", 1, ScoreSetting, 3) challenge_mgr.register_designer_game_info_model("Referral Game Mechanics", ReferralSetting) challenge_mgr.register_admin_challenge_info_model("Status", 1, PointsTransaction, 4) challenge_mgr.register_admin_challenge_info_model("Status", 1, ScoreboardEntry, 5) challenge_mgr.register_developer_challenge_info_model("Challenge", 1, ScoreSetting, 3) challenge_mgr.register_developer_challenge_info_model("Status", 4, PointsTransaction, 2) challenge_mgr.register_developer_challenge_info_model("Status", 4, ScoreboardEntry, 3) challenge_mgr.register_developer_game_info_model("Referral Game Mechanics", ReferralSetting)
copy_raffle_prize.short_description = "Copy selected Raffle Prizes" def winner_form(self, obj): """return the winner and link to pickup form.""" if obj.winner: return "%s (<a href='%s'>View pickup form</a>)" % ( obj.winner.profile, reverse('raffle_view_form', args=(obj.pk, ))) else: return '(None)' winner_form.allow_tags = True winner_form.short_description = 'Winner' def notice_sent(self, obj): """return True if the notification had been sent.""" return UserNotification.objects.filter( recipient=obj.winner, content_type=ContentType.objects.get(model="raffleprize"), object_id=obj.id).exists() notice_sent.short_description = 'Winner Notice Sent' admin.site.register(RafflePrize, RafflePrizeAdmin) challenge_designer_site.register(RafflePrize, RafflePrizeAdmin) challenge_manager_site.register(RafflePrize, RafflePrizeAdmin) developer_site.register(RafflePrize, RafflePrizeAdmin) challenge_mgr.register_designer_game_info_model("Raffle Game", RafflePrize) challenge_mgr.register_developer_game_info_model("Raffle Game", RafflePrize)
'prize_team_winners', args=(obj.pk, )) else: leader = obj.leader() return leader winner.allow_tags = True winner.short_description = 'Current Winner' def notice_sent(self, obj): """return True if the notification had been sent.""" if obj.award_to == 'individual_overall': leader = obj.leader() return self._notification_exists(obj, leader) elif obj.award_to == 'individual_team': teams = Team.objects.all() for team in teams: leader = obj.leader(team=team) return self._notification_exists(obj, leader) else: return "N/A" notice_sent.short_description = 'Winner Notice Sent' admin.site.register(Prize, PrizeAdmin) challenge_designer_site.register(Prize, PrizeAdmin) challenge_manager_site.register(Prize, PrizeAdmin) developer_site.register(Prize, PrizeAdmin) challenge_mgr.register_designer_game_info_model("Top Score Game", Prize) challenge_mgr.register_developer_game_info_model("Top Score Game", Prize)
print_selected.short_description = "Set the printed or distributed flag." def view_selected(self, request, queryset): """Views the Bonus Points Codes for printing.""" _ = request _ = queryset return render_to_response("view_bonus_points.html", { "codes": queryset, "per_page": 10, }, context_instance=RequestContext(request)) view_selected.short_description = "View the selected Bonus Points." def view_codes(self, request, queryset): """Views the Bonus Points Codes for printing.""" _ = request _ = queryset response = HttpResponseRedirect(reverse("bonus_view_codes", args=())) return response admin.site.register(BonusPoint, BonusPointAdmin) challenge_designer_site.register(BonusPoint, BonusPointAdmin) challenge_manager_site.register(BonusPoint, BonusPointAdmin) developer_site.register(BonusPoint, BonusPointAdmin) challenge_mgr.register_designer_game_info_model("Smart Grid Game", BonusPoint) challenge_mgr.register_admin_game_info_model("Smart Grid Game", BonusPoint) challenge_mgr.register_developer_game_info_model("Smart Grid Game", BonusPoint)
BaselineHourlyAdmin from apps.widgets.resource_goal.models import EnergyGoalSetting, EnergyGoal, EnergyBaselineDaily, \ EnergyBaselineHourly from apps.admin.admin import challenge_designer_site, challenge_manager_site, developer_site admin.site.register(EnergyGoalSetting, GoalSettingsAdmin) challenge_designer_site.register(EnergyGoalSetting, GoalSettingsAdmin) challenge_manager_site.register(EnergyGoalSetting, GoalSettingsAdmin) developer_site.register(EnergyGoalSetting, GoalSettingsAdmin) admin.site.register(EnergyGoal, GoalAdmin) challenge_designer_site.register(EnergyGoal, GoalAdmin) challenge_manager_site.register(EnergyGoal, GoalAdmin) developer_site.register(EnergyGoal, GoalAdmin) admin.site.register(EnergyBaselineDaily, BaselineDailyAdmin) challenge_designer_site.register(EnergyBaselineDaily, BaselineDailyAdmin) challenge_manager_site.register(EnergyBaselineDaily, BaselineDailyAdmin) developer_site.register(EnergyBaselineDaily, BaselineDailyAdmin) admin.site.register(EnergyBaselineHourly, BaselineHourlyAdmin) challenge_designer_site.register(EnergyBaselineHourly, BaselineHourlyAdmin) challenge_manager_site.register(EnergyBaselineHourly, BaselineHourlyAdmin) developer_site.register(EnergyBaselineHourly, BaselineHourlyAdmin) challenge_mgr.register_designer_game_info_model("Energy Game", EnergyGoalSetting) challenge_mgr.register_admin_game_info_model("Energy Game", EnergyUsage) challenge_mgr.register_admin_challenge_info_model("Status", 1, EnergyGoal, 2) challenge_mgr.register_developer_game_info_model("Energy Game", EnergyGoalSetting) challenge_mgr.register_developer_game_info_model("Energy Game", EnergyGoal) challenge_mgr.register_developer_game_info_model("Energy Game", EnergyBaselineDaily) challenge_mgr.register_developer_game_info_model("Energy Game", EnergyBaselineHourly)
def clean_unlock_conditions(self): """Validates the unlock conditions of the quest.""" data = self.cleaned_data["unlock_conditions"] predicate_mgr.validate_form_predicates(data) return data def clean_completion_conditions(self): """Validates the unlock conditions of the quest.""" data = self.cleaned_data["completion_conditions"] predicate_mgr.validate_form_predicates(data) return data class QuestAdmin(admin.ModelAdmin): """Admin""" list_display = ["name", "priority", "unlock_conditions"] ordering = ["priority"] # Automatically populates the slug field. prepopulated_fields = {"quest_slug": ("name",)} form = QuestAdminForm admin.site.register(Quest, QuestAdmin) challenge_designer_site.register(Quest, QuestAdmin) challenge_manager_site.register(Quest, QuestAdmin) developer_site.register(Quest, QuestAdmin) challenge_mgr.register_designer_game_info_model("Quest Game Mechanics", Quest) challenge_mgr.register_developer_game_info_model("Quest Game Mechanics", Quest)
" of points awarded per player for the various levels of team participation." def has_add_permission(self, request): return False def has_delete_permission(self, request, obj=None): return False admin.site.register(ParticipationSetting, ParticipationSettingAdmin) challenge_designer_site.register(ParticipationSetting, ParticipationSettingAdmin) challenge_manager_site.register(ParticipationSetting, ParticipationSettingAdmin) developer_site.register(ParticipationSetting, ParticipationSettingAdmin) challenge_mgr.register_designer_game_info_model("Participation Game", ParticipationSetting) class TeamParticipationAdmin(admin.ModelAdmin): """EnergyGoal administrator interface definition.""" list_display = [ "round_name", "team", "participation", "awarded_percent", "updated_at" ] list_filter = ["round_name"] def has_add_permission(self, request): return False def has_delete_permission(self, request, obj=None): return False
obj.slug = slug + "-copy" try: obj.save() except IntegrityError: # How do we indicate an error to the admin? pass copy_action.short_description = "Copy selected Action(s)" def get_urls(self): return redirect_urls(self, "change") admin.site.register(Action, ActionAdmin) challenge_designer_site.register(Action, ActionAdmin) challenge_manager_site.register(Action, ActionAdmin) developer_site.register(Action, ActionAdmin) challenge_mgr.register_designer_game_info_model("Smart Grid Game", Action) challenge_mgr.register_developer_game_info_model("Smart Grid Game", Action) class ActivityAdminForm(forms.ModelForm): """Activity Admin Form.""" class Meta: """Meta""" model = Activity def clean_unlock_condition(self): """Validates the unlock conditions of the action.""" data = self.cleaned_data["unlock_condition"] utils.validate_form_predicates(data) return data
"""Administrator interface to badge.""" from django.contrib import admin from apps.managers.challenge_mgr import challenge_mgr from apps.widgets.badges.models import Badge, BadgeAward from apps.admin.admin import challenge_designer_site, challenge_manager_site, developer_site class BadgeAdmin(admin.ModelAdmin): """Category Admin""" list_display = ["name", "points", "award_condition", "award_trigger", "priority"] fields = ["name", "slug", "label", "description", "hint", "points", "priority", "award_condition", "award_trigger", "theme"] prepopulated_fields = {"slug": ("name",)} ordering = ["priority"] admin.site.register(Badge, BadgeAdmin) challenge_designer_site.register(Badge, BadgeAdmin) challenge_manager_site.register(Badge, BadgeAdmin) developer_site.register(Badge, BadgeAdmin) admin.site.register(BadgeAward) challenge_designer_site.register(BadgeAward) challenge_manager_site.register(BadgeAward) developer_site.register(BadgeAward) challenge_mgr.register_designer_game_info_model("Badge Game Mechanics", Badge) challenge_mgr.register_admin_game_info_model("Badge Game Mechanics", BadgeAward) challenge_mgr.register_developer_game_info_model("Badge Game Mechanics", Badge) challenge_mgr.register_developer_game_info_model("Badge Game Mechanics", BadgeAward)
list_display = ["name", ] list_display_links = ["name", ] page_text = "There must only be one Participation Setting. You can edit the amount" + \ " of points awarded per player for the various levels of team participation." def has_add_permission(self, request): return False def has_delete_permission(self, request, obj=None): return False admin.site.register(ParticipationSetting, ParticipationSettingAdmin) challenge_designer_site.register(ParticipationSetting, ParticipationSettingAdmin) challenge_manager_site.register(ParticipationSetting, ParticipationSettingAdmin) developer_site.register(ParticipationSetting, ParticipationSettingAdmin) challenge_mgr.register_designer_game_info_model("Participation Game", ParticipationSetting) class TeamParticipationAdmin(admin.ModelAdmin): """EnergyGoal administrator interface definition.""" list_display = ["round_name", "team", "participation", "awarded_percent", "updated_at"] list_filter = ["round_name"] def has_add_permission(self, request): return False def has_delete_permission(self, request, obj=None): return False admin.site.register(TeamParticipation, TeamParticipationAdmin) challenge_designer_site.register(TeamParticipation, TeamParticipationAdmin)
def clean_unlock_conditions(self): """Validates the unlock conditions of the quest.""" data = self.cleaned_data["unlock_conditions"] predicate_mgr.validate_form_predicates(data) return data def clean_completion_conditions(self): """Validates the unlock conditions of the quest.""" data = self.cleaned_data["completion_conditions"] predicate_mgr.validate_form_predicates(data) return data class QuestAdmin(admin.ModelAdmin): """Admin""" list_display = ["name", "priority", "unlock_conditions"] ordering = ["priority"] # Automatically populates the slug field. prepopulated_fields = {"quest_slug": ("name", )} form = QuestAdminForm admin.site.register(Quest, QuestAdmin) challenge_designer_site.register(Quest, QuestAdmin) challenge_manager_site.register(Quest, QuestAdmin) developer_site.register(Quest, QuestAdmin) challenge_mgr.register_designer_game_info_model("Quest Game Mechanics", Quest) challenge_mgr.register_developer_game_info_model("Quest Game Mechanics", Quest)
from apps.admin.admin import challenge_designer_site, challenge_manager_site, developer_site class BadgeAdmin(admin.ModelAdmin): """Badge Admin""" list_display = [ "name", "points", "award_condition", "award_trigger", "priority" ] fields = [ "name", "slug", "label", "description", "hint", "points", "priority", "award_condition", "award_trigger", "theme" ] prepopulated_fields = {"slug": ("name", )} ordering = ["priority"] admin.site.register(Badge, BadgeAdmin) challenge_designer_site.register(Badge, BadgeAdmin) challenge_manager_site.register(Badge, BadgeAdmin) developer_site.register(Badge, BadgeAdmin) admin.site.register(BadgeAward) challenge_designer_site.register(BadgeAward) challenge_manager_site.register(BadgeAward) developer_site.register(BadgeAward) challenge_mgr.register_designer_game_info_model("Badge Game Mechanics", Badge) challenge_mgr.register_admin_game_info_model("Badge Game Mechanics", BadgeAward) challenge_mgr.register_developer_game_info_model("Badge Game Mechanics", Badge) challenge_mgr.register_developer_game_info_model("Badge Game Mechanics", BadgeAward)
obj.save() except IntegrityError: # How do we indicate an error to the admin? pass copy_raffle_prize.short_description = "Copy selected Raffle Prizes" def winner_form(self, obj): """return the winner and link to pickup form.""" if obj.winner: return "%s (<a href='%s'>View pickup form</a>)" % (obj.winner.profile, reverse('raffle_view_form', args=(obj.pk,))) else: return '(None)' winner_form.allow_tags = True winner_form.short_description = 'Winner' def notice_sent(self, obj): """return True if the notification had been sent.""" return UserNotification.objects.filter( recipient=obj.winner, content_type=ContentType.objects.get(model="raffleprize"), object_id=obj.id).exists() notice_sent.short_description = 'Winner Notice Sent' admin.site.register(RafflePrize, RafflePrizeAdmin) challenge_designer_site.register(RafflePrize, RafflePrizeAdmin) challenge_manager_site.register(RafflePrize, RafflePrizeAdmin) developer_site.register(RafflePrize, RafflePrizeAdmin) challenge_mgr.register_designer_game_info_model("Raffle Game", RafflePrize) challenge_mgr.register_developer_game_info_model("Raffle Game", RafflePrize)
developer_site.register(ScoreSetting, ScoreSettingAdmin) class ReferralSettingAdmin(admin.ModelAdmin): """PointsTransaction administrator interface definition.""" list_display = ["normal_referral_points", "super_referral_points", "mega_referral_points", "start_dynamic_bonus", ] list_display_links = ["normal_referral_points", "super_referral_points", "mega_referral_points", "start_dynamic_bonus", ] def has_add_permission(self, request): return False def has_delete_permission(self, request, obj=None): return False admin.site.register(ReferralSetting, ReferralSettingAdmin) challenge_designer_site.register(ReferralSetting, ReferralSettingAdmin) challenge_manager_site.register(ReferralSetting, ReferralSettingAdmin) developer_site.register(ReferralSetting, ReferralSettingAdmin) challenge_mgr.register_designer_challenge_info_model("Challenge", 1, ScoreSetting, 3) challenge_mgr.register_designer_game_info_model("Referral Game Mechanics", ReferralSetting) challenge_mgr.register_admin_challenge_info_model("Status", 1, PointsTransaction, 4) challenge_mgr.register_admin_challenge_info_model("Status", 1, ScoreboardEntry, 5) challenge_mgr.register_developer_challenge_info_model("Challenge", 1, ScoreSetting, 3) challenge_mgr.register_developer_challenge_info_model("Status", 4, PointsTransaction, 2) challenge_mgr.register_developer_challenge_info_model("Status", 4, ScoreboardEntry, 3) challenge_mgr.register_developer_game_info_model("Referral Game Mechanics", ReferralSetting)
from django.contrib import admin from apps.managers.challenge_mgr import challenge_mgr from apps.managers.resource_mgr.models import WaterUsage from apps.widgets.resource_goal.admin import GoalSettingsAdmin, GoalAdmin, BaselineDailyAdmin from apps.widgets.resource_goal.models import WaterGoalSetting, WaterGoal, WaterBaselineDaily, \ WaterBaselineHourly from apps.admin.admin import challenge_designer_site, challenge_manager_site, developer_site admin.site.register(WaterGoalSetting, GoalSettingsAdmin) challenge_designer_site.register(WaterGoalSetting, GoalSettingsAdmin) challenge_manager_site.register(WaterGoalSetting, GoalSettingsAdmin) developer_site.register(WaterGoalSetting, GoalSettingsAdmin) admin.site.register(WaterGoal, GoalAdmin) challenge_designer_site.register(WaterGoal, GoalAdmin) challenge_manager_site.register(WaterGoal, GoalAdmin) developer_site.register(WaterGoal, GoalAdmin) admin.site.register(WaterBaselineDaily, BaselineDailyAdmin) challenge_designer_site.register(WaterBaselineDaily, BaselineDailyAdmin) challenge_manager_site.register(WaterBaselineDaily, BaselineDailyAdmin) developer_site.register(WaterBaselineDaily, BaselineDailyAdmin) challenge_mgr.register_designer_game_info_model("Water Game", WaterGoalSetting) challenge_mgr.register_admin_game_info_model("Water Game", WaterUsage) challenge_mgr.register_admin_challenge_info_model("Status", 1, WaterGoal, 3) challenge_mgr.register_developer_game_info_model("Water Game", WaterGoalSetting) challenge_mgr.register_developer_game_info_model("Water Game", WaterGoal) challenge_mgr.register_developer_game_info_model("Water Game", WaterBaselineDaily) challenge_mgr.register_developer_game_info_model("Water Game", WaterBaselineHourly)
"""Energy goal widget administrator interface; shows the projects, actual vs. goal, last update.""" from django.contrib import admin from apps.managers.challenge_mgr import challenge_mgr from apps.widgets.projects.models import Comment, Goal, Project from apps.admin.admin import challenge_designer_site, challenge_manager_site, developer_site class ProjectAdmin(admin.ModelAdmin): """Project administrator interface definition.""" list_display = ["title", "short_description", "long_description", "number_of_members", "created", "deadline", "upvotes", "points", "status"] admin.site.register(Project, ProjectAdmin) challenge_designer_site.register(Project, ProjectAdmin) challenge_manager_site.register(Project, ProjectAdmin) developer_site.register(Project, ProjectAdmin) challenge_mgr.register_designer_game_info_model("Projects", Project) challenge_mgr.register_admin_game_info_model("Projects", Project) challenge_mgr.register_admin_challenge_info_model("Projects", 1, Project, 1) challenge_mgr.register_developer_challenge_info_model("Projects", 1, Project, 1) class CommentAdmin(admin.ModelAdmin): """Comment administrator interface definition"""