~pidgeon690/mypidge-base/feature+publicity

« back to all changes in this revision

Viewing changes to MyPidge/Groups/views.py

  • Committer: Fergus Ross Ferrier
  • Date: 2008-12-01 20:32:29 UTC
  • Revision ID: me@fergusrossferrier.co.uk-20081201203229-tz2yh5ylrdihckkw
User now exists in Person multi-table hierarchy.

We can add people without needing them to register. We can use existing data for a person when they try and register. It's a real bitch to use though.

Show diffs side-by-side

added added

removed removed

Lines of Context:
23
23
    
24
24
    if request.session.get('loggedin'):
25
25
        user = User.objects.get(id = request.session['userid'])
26
 
        intgroups = Group.objects.filter(membership__user=user, membership__assoctype='INT').distinct()
27
 
        ctlgroups = Group.objects.filter(membership__user=user, membership__assoctype='CTL').distinct()
28
 
        memgroups = Group.objects.filter(membership__user=user, membership__assoctype='MEM').distinct()
 
26
        intgroups = Group.objects.filter(membership__person = user, membership__assoctype='INT').distinct()
 
27
        ctlgroups = Group.objects.filter(membership__person = user, membership__assoctype='CTL').distinct()
 
28
        memgroups = Group.objects.filter(membership__person = user, membership__assoctype='MEM').distinct()
29
29
        
30
30
    bc = [{'title': 'Overview'}]
31
31
    return render_to_response("groups-groups", {'breadcrumb': bc, 'activetab': 'Groups', 'intgroups': intgroups, 'ctlgroups': ctlgroups, 'memgroups': memgroups, 'loggedin': request.session.get('loggedin')})
75
75
        if "update" in request.GET:
76
76
            
77
77
            if "member" in request.GET:
78
 
                Membership.objects.get_or_create(user=usr, group=group, assoctype='MEM', defaults={'assoctype': 'MEM'})
 
78
                Membership.objects.get_or_create(person = usr, group=group, assoctype='MEM', defaults={'assoctype': 'MEM'})
79
79
            else:
80
80
                try:
81
 
                    uga = Membership.objects.get(user=usr, group=group, assoctype='MEM')
 
81
                    uga = Membership.objects.get(person = usr, group=group, assoctype='MEM')
82
82
                    uga.delete()
83
83
                except Membership.DoesNotExist:
84
84
                    pass
85
85
 
86
86
            if "interested" in request.GET:
87
 
                Membership.objects.get_or_create(user=usr, group=group, assoctype='INT', defaults={'assoctype': 'INT'})
 
87
                Membership.objects.get_or_create(person = usr, group=group, assoctype='INT', defaults={'assoctype': 'INT'})
88
88
            else:
89
89
                try:
90
 
                    uga = Membership.objects.get(user=usr, group=group, assoctype='INT')
 
90
                    uga = Membership.objects.get(person = usr, group=group, assoctype='INT')
91
91
                    uga.delete()
92
92
                except Membership.DoesNotExist:
93
93
                    pass
94
94
 
95
 
        usermemberships = Membership.objects.filter(user=usr, group=group)
 
95
        usermemberships = Membership.objects.filter(person = usr, group=group)
96
96
        
97
97
        for usermembership in usermemberships:
98
98
            if usermembership.assoctype == 'CTL':
141
141
    
142
142
    if request.method == 'POST':
143
143
        user = User.objects.get(id = request.session['userid'])
144
 
        grf = RegisterGroupForm(request.POST, user = user)
 
144
        grf = RegisterGroupForm(request.POST, person = user)
145
145
 
146
146
        if grf.is_valid():
147
147
            newgroup = grf.save()
190
190
    try:
191
191
        invitation = MembershipInvitation.objects.get(linkkey__iexact = linkkey)
192
192
        group = invitation.group
193
 
        usrctl, created = Membership.objects.get_or_create(group = invitation.group, user = usr, assoctype = 'CTL')
 
193
        usrctl, created = Membership.objects.get_or_create(group = invitation.group, person = usr, assoctype = 'CTL')
194
194
        if not created:
195
195
            raise MembershipInvitation.AlreadyController
196
196
 
234
234
    usr = User.objects.get(id = request.session['userid'])
235
235
    
236
236
    try:
237
 
        association = Membership.objects.get(user = usr, group = group, assoctype = "CTL")
 
237
        association = Membership.objects.get(person = usr, group = group, assoctype = "CTL")
238
238
    except Membership.DoesNotExist:
239
239
        pass
240
240
    else: