SciPost Code Repository

Skip to content
Snippets Groups Projects
Commit 4c619e42 authored by Jorran de Wit's avatar Jorran de Wit
Browse files

Remove file from another project

parent 3d917bad
No related branches found
No related tags found
No related merge requests found
from django.db import models
from django.core.urlresolvers import reverse
from staff.behaviors import WhiteLabelClientMixin, TimeStampedMixin
from .managers import LocationManager
class Location(WhiteLabelClientMixin):
"""
Physical location to be related to WCLs.
"""
code = models.CharField(max_length=64)
client = models.ForeignKey('clients.Client', related_name='locations', blank=True, null=True)
subtitle = models.CharField(max_length=128, blank=True)
address = models.CharField(max_length=512)
postal_code = models.CharField(max_length=512, blank=True)
main_phone = models.CharField(max_length=32, blank=True)
city = models.CharField(max_length=512, blank=True)
description = models.TextField(blank=True)
objects = LocationManager()
class Meta:
unique_together = ('white_label_client', 'code',)
ordering = ('-code',)
def __str__(self):
return '%s, %s' % (self.address, self.city)
def get_absolute_url(self):
return reverse('locations:detailview', args=(self.code,))
def get_edit_url(self):
return reverse('locations:editview', args=(self.code,))
class GeoLocation(TimeStampedMixin):
"""
Geocode which links `Location` objects to the 2D map.
"""
location = models.OneToOneField('locations.Location')
latitude = models.CharField(max_length=64)
longitude = models.CharField(max_length=64)
class LocationObject(TimeStampedMixin):
"""
An physical object can be assigned to a `Location` object.
"""
location = models.ForeignKey('locations.Location', related_name='location_objects')
code = models.CharField(max_length=64, blank=True)
name = models.CharField(max_length=255)
description = models.TextField(blank=True)
def __str__(self):
_str = self.name
if self.code:
_str += ' (%s)' % self.code
return _str
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment