summaryrefslogtreecommitdiffstats
path: root/expo
diff options
context:
space:
mode:
authorsubstantialnoninfringinguser <substantialnoninfringinguser@gmail.com>2009-05-13 05:39:52 +0100
committersubstantialnoninfringinguser <substantialnoninfringinguser@gmail.com>2009-05-13 05:39:52 +0100
commit0ba4dd4ef47eeeb8ef38b4c30b6d39649c56342a (patch)
tree7a806015bda042e5d13d55e6d52a37924fb4e11e /expo
parent39ab4d25147a8e115fc4f6f05c8246dbe51c3ca0 (diff)
downloadtroggle-0ba4dd4ef47eeeb8ef38b4c30b6d39649c56342a.tar.gz
troggle-0ba4dd4ef47eeeb8ef38b4c30b6d39649c56342a.tar.bz2
troggle-0ba4dd4ef47eeeb8ef38b4c30b6d39649c56342a.zip
[svn] survey block object
Copied from http://cucc@cucc.survex.com/svn/trunk/expoweb/troggle/, rev. 8199 by julian @ 1/19/2009 12:22 AM
Diffstat (limited to 'expo')
-rw-r--r--expo/models.py5
-rw-r--r--expo/models_survex.py16
-rw-r--r--expo/templatetags/survex_markup.py1
-rw-r--r--expo/views_caves.py9
-rw-r--r--expo/views_logbooks.py5
-rw-r--r--expo/views_other.py7
-rw-r--r--expo/views_survex.py2
7 files changed, 37 insertions, 8 deletions
diff --git a/expo/models.py b/expo/models.py
index 6d38b4f..2e8dc88 100644
--- a/expo/models.py
+++ b/expo/models.py
@@ -7,6 +7,7 @@ from django.core.files.storage import FileSystemStorage
import os
import troggle.settings as settings
import datetime
+
from models_survex import *
class Expedition(models.Model):
@@ -27,6 +28,7 @@ class Expedition(models.Model):
date+=datetime.timedelta(days=1)
return res
+ # deprecated
def GetPersonExpedition(self, name):
person_expeditions = PersonExpedition.objects.filter(expedition=self)
res = None
@@ -38,6 +40,8 @@ class Expedition(models.Model):
res = person_expedition
return res
+
+
class Person(models.Model):
first_name = models.CharField(max_length=100)
@@ -64,6 +68,7 @@ class PersonExpedition(models.Model):
is_guest = models.BooleanField(default=False)
nickname = models.CharField(max_length=100,blank=True,null=True)
+ # deprecated
def GetPossibleNameForms(self):
res = [ ]
if self.person.last_name:
diff --git a/expo/models_survex.py b/expo/models_survex.py
index 80e5f5b..4b65357 100644
--- a/expo/models_survex.py
+++ b/expo/models_survex.py
@@ -6,6 +6,8 @@ class SurvexBlock(models.Model):
name = models.CharField(max_length=100, blank=True, null=True)
parent = models.ForeignKey('SurvexBlock', blank=True, null=True)
text = models.TextField()
+
+ # non-useful representation of incomplete data
start_year = models.IntegerField(blank=True, null=True)
start_month = models.IntegerField(blank=True, null=True)
start_day = models.IntegerField(blank=True, null=True)
@@ -13,8 +15,13 @@ class SurvexBlock(models.Model):
end_month = models.IntegerField(blank=True, null=True)
end_day = models.IntegerField(blank=True, null=True)
- person = models.ManyToManyField('Person', through='PersonRole', blank=True, null=True)
+ date = models.DateField(blank=True, null=True)
+ survexpath = models.CharField(max_length=100)
+
+ # superfluous
+ person = models.ManyToManyField('Person', through='PersonRole', blank=True, null=True)
+ # code for where in the survex data files this block sits
begin_file = models.CharField(max_length=200)
begin_char = models.IntegerField()
end_file = models.CharField(max_length=200, blank=True, null=True)
@@ -25,8 +32,8 @@ class SurvexBlock(models.Model):
def filecontents(self):
f = os.path.join(settings.SURVEX_DATA, self.begin_file)
- fin = open(f)
- res = fin.read()
+ fin = open(f, "rb")
+ res = fin.read().decode("latin1")
fin.close()
return res
@@ -43,4 +50,5 @@ class PersonRole(models.Model):
class Role(models.Model):
name = models.CharField(max_length=50)
def __unicode__(self):
- return unicode(self.name) \ No newline at end of file
+ return unicode(self.name)
+
diff --git a/expo/templatetags/survex_markup.py b/expo/templatetags/survex_markup.py
index c9992a9..464a04b 100644
--- a/expo/templatetags/survex_markup.py
+++ b/expo/templatetags/survex_markup.py
@@ -6,6 +6,7 @@ import re
register = template.Library()
+# seems to add extra lines between the commented lines, which isn't so great.
regexes = []
regexes.append((re.compile(r"(;.*)$", re.IGNORECASE|re.MULTILINE),
r'<span class = "comment">\1</span>\n'))
diff --git a/expo/views_caves.py b/expo/views_caves.py
index 045dbcf..4e691e5 100644
--- a/expo/views_caves.py
+++ b/expo/views_caves.py
@@ -1,5 +1,6 @@
from django.shortcuts import render_to_response
from troggle.expo.models import Cave, CaveAndEntrance, Survey, Expedition
+import troggle.expo.models as models
import troggle.settings as settings
from troggle.expo.forms import CaveForm
import search
@@ -20,6 +21,11 @@ def ent(request, cave_id, ent_letter):
'entrance': cave_and_ent.entrance,
'letter': cave_and_ent.entrance_letter,
'settings': settings})
+def survexblock(request, survexpath):
+ survexblock = models.SurvexBlock.objects.get(survexpath=survexpath)
+ #ftext = survexblock.filecontents()
+ ftext = survexblock.text
+ return render_to_response('survexblock.html', {'survexblock':survexblock, 'ftext':ftext, 'settings':settings })
def caveSearch(request):
query_string = ''
@@ -54,4 +60,5 @@ def survey(request,year,wallet_number):
dictToPass=locals()
dictToPass.update({'settings':settings})
- return render_to_response('survey.html',dictToPass) \ No newline at end of file
+ return render_to_response('survey.html',dictToPass)
+
diff --git a/expo/views_logbooks.py b/expo/views_logbooks.py
index 935eebd..7d18ba1 100644
--- a/expo/views_logbooks.py
+++ b/expo/views_logbooks.py
@@ -1,7 +1,10 @@
from django.shortcuts import render_to_response
from troggle.expo.models import Expedition, Person, PersonExpedition, PersonTrip, LogbookEntry
import troggle.settings as settings
+
from troggle.parsers.logbooks import LoadLogbookForExpedition
+from troggle.parsers.people import GetPersonExpeditionNameLookup
+
import search
import re
@@ -17,7 +20,7 @@ def expedition(request, expeditionname):
message = "No message"
if "reload" in request.GET:
message = LoadLogbookForExpedition(expedition)
-
+ #message = str(GetPersonExpeditionNameLookup(expedition).keys())
logbookentries = expedition.logbookentry_set.order_by('date')
return render_to_response('expedition.html', {'expedition': expedition, 'expedition_next':expedition_next, 'expedition_prev':expedition_prev, 'logbookentries':logbookentries, 'message':message, 'settings': settings})
diff --git a/expo/views_other.py b/expo/views_other.py
index 43cdbca..7d5d655 100644
--- a/expo/views_other.py
+++ b/expo/views_other.py
@@ -5,6 +5,7 @@ from django import forms
from django.db.models import Q
from troggle.parsers.people import LoadPersonsExpos
import re
+from troggle.parsers.survex import LoadAllSurvexBlocks
import randSent
from django.core.urlresolvers import reverse
@@ -19,9 +20,13 @@ def stats(request):
def frontPage(request):
message = "no test message" #reverse('personn', kwargs={"name":"hkjhjh"})
- if "reload" in request.GET:
+ if "reloadexpos" in request.GET:
message = LoadPersonsExpos()
message = "Reloaded personexpos"
+ if "reloadsurvex" in request.GET:
+ message = LoadAllSurvexBlocks()
+ message = "Reloaded survexblocks"
+
#'randSent':randSent.randomLogbookSentence(),
expeditions = Expedition.objects.all()
return render_to_response('index.html', {'expeditions':expeditions, 'settings':settings, "message":message})
diff --git a/expo/views_survex.py b/expo/views_survex.py
index c356363..067d4e3 100644
--- a/expo/views_survex.py
+++ b/expo/views_survex.py
@@ -41,4 +41,4 @@ def process(survex_file):
cwd = os.getcwd()
os.chdir(os.path.split(settings.SURVEX_DATA + survex_file)[0])
os.system(settings.CAVERN + " --log " +settings.SURVEX_DATA + survex_file + ".svx")
- os.chdir(cwd) \ No newline at end of file
+ os.chdir(cwd)