summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMagnus Hagander2010-02-25 16:03:12 +0000
committerMagnus Hagander2010-02-25 16:03:12 +0000
commit37c79c78821a8646580948d94544f02faa215458 (patch)
tree9620c43da7b433f099b9f8999046add1d0ebe408
parent0d55002019c0807906b382d954d480e35f06e37b (diff)
Make professional services also use organisations
-rw-r--r--pgweb/profserv/models.py11
-rw-r--r--pgweb/profserv/views.py2
-rw-r--r--templates/profserv/list.html2
3 files changed, 8 insertions, 7 deletions
diff --git a/pgweb/profserv/models.py b/pgweb/profserv/models.py
index 543c0054..19b125fb 100644
--- a/pgweb/profserv/models.py
+++ b/pgweb/profserv/models.py
@@ -1,13 +1,14 @@
from django.db import models
from django.contrib.auth.models import User
+from pgweb.core.models import Organisation
from pgweb.util.bases import PgModel
class ProfessionalService(models.Model):
submitter = models.ForeignKey(User, null=False, blank=False)
approved = models.BooleanField(null=False, blank=False, default=False)
- name = models.CharField(max_length=100, null=False, blank=False)
+ organisation = models.ForeignKey(Organisation, null=False, blank=False)
description = models.TextField(null=False,blank=False)
employees = models.CharField(max_length=32, null=True, blank=True)
locations = models.CharField(max_length=128, null=True, blank=True)
@@ -21,18 +22,18 @@ class ProfessionalService(models.Model):
languages = models.CharField(max_length=128, null=True, blank=True)
customerexample = models.TextField(blank=True, null=True)
experience = models.TextField(blank=True, null=True)
- contact = models.CharField(max_length=128, null=True, blank=True)
+ contact = models.TextField(null=True, blank=True)
url = models.URLField(max_length=128, null=True, blank=True)
provides_support = models.BooleanField(null=False, default=False)
provides_hosting = models.BooleanField(null=False, default=False)
- interfaces = models.CharField(max_length=128, null=True, blank=True)
+ interfaces = models.CharField(max_length=512, null=True, blank=True)
send_notification = True
def __unicode__(self):
- return self.name
+ return self.organisation.name
class Meta:
- ordering = ('name',)
+ ordering = ('organisation__name',)
diff --git a/pgweb/profserv/views.py b/pgweb/profserv/views.py
index 668a3a5e..70ac79fe 100644
--- a/pgweb/profserv/views.py
+++ b/pgweb/profserv/views.py
@@ -44,7 +44,7 @@ def region(request, servtype, regionname):
# DB model is a bit funky here, so use the extra-where functionality to filter properly.
# Field names are cleaned up earlier, so it's safe against injections.
- services = ProfessionalService.objects.filter(approved=True).extra(where=["region_%s AND provides_%s" % (regionname, what),])
+ services = ProfessionalService.objects.select_related('organisation').filter(approved=True).extra(where=["region_%s AND provides_%s" % (regionname, what),])
return render_to_response('profserv/list.html', {
'title': title,
diff --git a/templates/profserv/list.html b/templates/profserv/list.html
index dfa152b3..2d94c42e 100644
--- a/templates/profserv/list.html
+++ b/templates/profserv/list.html
@@ -9,7 +9,7 @@
<table border="0" cellpadding="0" cellspacing="0" class="tblBasicGrey">
<tr>
<td class="colFirst">Name</td>
- <td class="colMid"><b>{{s.name}}</b>{%if s.url%} (<a href="{{s.url}}">{{s.url}}</a>){%endif%}</td>
+ <td class="colMid"><b>{{s.organisation.name}}</b>{%if s.url%} (<a href="{{s.url}}">{{s.url}}</a>){%endif%}</td>
<th class="colLast" />
</tr>
{%if s.provides_hosting and s.provides_support %}