Changeset - a907b78bd131
[Not reviewed]
0 3 0
James Tauber - 12 years ago 2012-07-28 22:29:19
jtauber@jtauber.com
added helper method to determine team membership state for a user
3 files changed with 8 insertions and 1 deletions:
0 comments (0 inline, 0 general)
symposion/teams/models.py
Show inline comments
...
 
@@ -17,24 +17,30 @@ TEAM_ACCESS_CHOICES = [
 
class Team(models.Model):
 

	
 
    slug = models.SlugField(unique=True)
 
    name = models.CharField(max_length=100)
 
    description = models.TextField(blank=True)
 
    access = models.CharField(max_length=20, choices=TEAM_ACCESS_CHOICES)
 
    permissions = models.ManyToManyField(Permission, blank=True)
 
    created = models.DateTimeField(default=datetime.datetime.now, editable=False)
 
    
 
    def __unicode__(self):
 
        return self.name
 

	
 
    def get_state_for_user(self, user):
 
        try:
 
            return self.memberships.get(user=user).state
 
        except Membership.DoesNotExist:
 
            return None
 

	
 

	
 
MEMBERSHIP_STATE_CHOICES = [
 
    ("applied", "applied"),
 
    ("invited", "invited"),
 
    ("declined", "declined"),
 
    ("rejected", "rejected"),
 
    ("member", "member"),
 
    ("manager", "manager"),
 
]
 

	
 

	
 
class Membership(models.Model):
symposion_project/templates/dashboard.html
Show inline comments
...
 
@@ -126,24 +126,24 @@
 
        <div class="dashboard-panel-header">
 
            <i class="icon-group"></i>
 
            <h3>{% trans "Teams" %}</h3>
 
        </div>
 
        
 
        <div class="dashboard-panel-content">
 
            {% if user.memberships.exists %}
 
                <h4>Your Teams</h4>
 
                <ul>
 
                    {% for membership in user.memberships.all %}
 
                        <li>
 
                            {% if membership.state == "manager" %}
 
                                <a href="#">{{ membership.team.name }}</a>
 
                                <a href="{% url team_detail membership.team.slug %}">{{ membership.team.name }}</a>
 
                            {% else %}
 
                                {{ membership.team.name }}
 
                            {% endif %}
 
                            <span class="badge">{{ membership.get_state_display }}</span>
 
                        </li>
 
                    {% endfor %}
 
                </ul>
 
            {% endif %}
 
        </div>
 
    </div>
 
{% endblock %}
symposion_project/urls.py
Show inline comments
...
 
@@ -19,19 +19,20 @@ urlpatterns = patterns("",
 
    }, name="home"),
 
    url(r"^admin/", include(admin.site.urls)),
 
    
 
    url(r"^account/signup/$", symposion.views.SignupView.as_view(), name="account_signup"),
 
    url(r"^account/login/$", symposion.views.LoginView.as_view(), name="account_login"),
 
    url(r"^account/", include("account.urls")),
 
    
 
    url(r"^dashboard/", symposion.views.dashboard, name="dashboard"),
 
    url(r"^speaker/", include("symposion.speakers.urls")),
 
    url(r"^proposals/", include("symposion.proposals.urls")),
 
    url(r"^sponsors/", include("symposion.sponsorship.urls")),
 
    url(r"^boxes/", include("symposion.boxes.urls")),
 
    url(r"^teams/", include("symposion.teams.urls")),
 
    url(r"^markitup/", include("markitup.urls")),
 
    
 
    url(r"^", include("symposion.cms.urls")),
 
)
 

	
 

	
 
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
0 comments (0 inline, 0 general)