Changeset 54c467a for asadb/groups
- Timestamp:
- May 28, 2011, 5:08:51 AM (14 years ago)
- Branches:
- master, space-access, stable, stage, test-hooks
- Children:
- 5daa12a
- Parents:
- c4a4d13 (diff), 9480c7b (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent. - git-author:
- Alex Dehnert <adehnert@…> (05/28/11 05:08:51)
- git-committer:
- Alex Dehnert <adehnert@…> (05/28/11 05:08:51)
- Location:
- asadb/groups
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
asadb/groups/admin.py
r3398d3a r54c467a 17 17 ) 18 18 list_display_links = ('id', 'name', ) 19 search_fields = [ 'id', 'name', 'abbreviation', 'officer_email', 'athena_locker', ] 19 20 20 21 class ActivityCategoryAdmin(admin.ModelAdmin): -
asadb/groups/views.py
r5be39cc rc4a4d13 1 1 # Create your views here. 2 3 import groups.models 4 5 from django.contrib.auth.decorators import user_passes_test, login_required 6 from django.core.exceptions import PermissionDenied 7 from django.views.generic import DetailView 8 from django.shortcuts import render_to_response, get_object_or_404 9 from django.template import RequestContext 10 from django.template import Context, Template 11 from django.template.loader import get_template 12 from django.http import Http404, HttpResponseRedirect 13 from django.core.urlresolvers import reverse 14 from django.core.mail import EmailMessage, mail_admins 15 from django.forms import Form 16 from django.forms import ModelForm 17 from django.forms import ModelChoiceField 18 from django.db.models import Q 19 20 import form_utils.forms 21 22 class GroupChangeMainForm(form_utils.forms.BetterModelForm): 23 class Meta: 24 fieldsets = [ 25 ('basic', { 26 'legend': 'Basic Information', 27 'fields': ['name', 'abbreviation', 'description', 'activity_category', ], 28 }), 29 ('size', { 30 'legend':'Membership Numbers', 31 'fields': ['num_undergrads', 'num_grads', 'num_community', 'num_other',], 32 }), 33 ('contact', { 34 'legend': 'Contact Information', 35 'fields': ['website_url', 'meeting_times', 'group_email', 'officer_email', ], 36 }), 37 ('more-info', { 38 'legend': 'Additional Information', 39 'fields': ['constitution_url', 'advisor_name', 'main_account_id', 'funding_account_id', 'athena_locker', 'recognition_date', ], 40 }), 41 ] 42 model = groups.models.Group 43 44 def manage_main(request, group_id, ): 45 group = get_object_or_404(groups.models.Group, pk=group_id) 46 47 if not request.user.has_perm('groups.change_group', group): 48 raise PermissionDenied 49 50 msg = None 51 52 initial = {} 53 if request.method == 'POST': # If the form has been submitted... 54 form = GroupChangeMainForm(request.POST, request.FILES, instance=group, ) # A form bound to the POST data 55 56 if form.is_valid(): # All validation rules pass 57 request_obj = form.save() 58 59 # Send email 60 #tmpl = get_template('fysm/update_email.txt') 61 #ctx = Context({ 62 # 'group': group_obj, 63 # 'fysm': fysm_obj, 64 # 'view_uri': view_uri, 65 # 'submitter': request.user, 66 # 'request': request, 67 # 'sender': "ASA FYSM team", 68 #}) 69 #body = tmpl.render(ctx) 70 #email = EmailMessage( 71 # subject='FYSM entry for "%s" updated by "%s"' % ( 72 # group_obj.name, 73 # request.user, 74 # ), 75 # body=body, 76 # from_email='asa-fysm@mit.edu', 77 # to=[group_obj.officer_email, request.user.email, ], 78 # bcc=['asa-fysm-submissions@mit.edu', ] 79 #) 80 #email.send() 81 msg = "Thanks for editing!" 82 83 else: 84 form = GroupChangeMainForm(instance=group, initial=initial, ) # An unbound form 85 86 context = { 87 'group': group, 88 'form': form, 89 'msg': msg, 90 } 91 return render_to_response('groups/group_change_main.html', context, context_instance=RequestContext(request), ) 92 93 class GroupDetailView(DetailView): 94 context_object_name = "group" 95 model = groups.models.Group 96 def get_context_data(self, **kwargs): 97 # Call the base implementation first to get a context 98 context = super(GroupDetailView, self).get_context_data(**kwargs) 99 group = context['group'] 100 101 # Indicate whether this person should be able to see "private" info 102 context['viewpriv'] = self.request.user.has_perm('groups.view_group_private_info', group) 103 return context
Note: See TracChangeset
for help on using the changeset viewer.