diff --git a/README.txt b/README.txt index 8dbc33e..81c2b14 100644 --- a/README.txt +++ b/README.txt @@ -21,6 +21,8 @@ Troggle itself Choose a directory where you will keep troggle, and git clone Troggle into it using the following command: git clone git://expo.survex.com/troggle +or more reliably +git clone ssh://expo@expo.survex.com/home/expo/troggle If you want to work on the source code and be able to commit, your account will need to be added to the troggle project members list. Contact wookey at wookware dot org to get this set up. diff --git a/flatpages/views.py b/flatpages/views.py index 6360393..6ef2404 100644 --- a/flatpages/views.py +++ b/flatpages/views.py @@ -38,7 +38,7 @@ def flatpage(request, path): print("flat path noinfo", path) return HttpResponseRedirect(reverse("auth_login") + '?next=%s' % request.path) - if path.endswith("/") or path == "": + if path.endswith("/") or path == "": try: o = open(os.path.normpath(settings.EXPOWEB + path + "index.html"), "rb") path = path + "index.html" @@ -165,4 +165,4 @@ def editflatpage(request, path): class FlatPageForm(forms.Form): title = forms.CharField(widget=forms.TextInput(attrs={'size':'60'})) - html = forms.CharField(widget=forms.Textarea()) + html = forms.CharField(widget=TinyMCE(attrs={'cols': 80, 'rows': 20})) diff --git a/localsettingsdocker.py b/localsettingsdocker.py index aa7e7a9..bc7d8cb 100644 --- a/localsettingsdocker.py +++ b/localsettingsdocker.py @@ -47,13 +47,13 @@ MEDIA_URL = URL_ROOT + DIR_ROOT + 'site_media/' MEDIA_ROOT = REPOS_ROOT_PATH + '/troggle/media/' MEDIA_ADMIN_DIR = '/usr/lib/python2.7/site-packages/django/contrib/admin/media/' -STATIC_URL = URL_ROOT -STATIC_ROOT = DIR_ROOT +STATIC_URL = "/static/" +STATIC_ROOT = "/expo/static" JSLIB_URL = URL_ROOT + 'javascript/' -TINY_MCE_MEDIA_ROOT = '/usr/share/tinymce/www/' -TINY_MCE_MEDIA_URL = URL_ROOT + DIR_ROOT + '/tinymce_media/' +TINY_MCE_MEDIA_ROOT = STATIC_ROOT + '/tiny_mce/' +TINY_MCE_MEDIA_URL = STATIC_ROOT + '/tiny_mce/' TEMPLATE_DIRS = ( PYTHON_PATH + "templates", diff --git a/localsettingsserver.py b/localsettingsserver.py index 1d8fbe7..259974e 100644 --- a/localsettingsserver.py +++ b/localsettingsserver.py @@ -52,8 +52,8 @@ MEDIA_ADMIN_DIR = '/usr/lib/python2.7/site-packages/django/contrib/admin/media/' JSLIB_URL = URL_ROOT + 'javascript/' -TINY_MCE_MEDIA_ROOT = '/usr/share/tinymce/www/' -TINY_MCE_MEDIA_URL = URL_ROOT + DIR_ROOT + 'tinymce_media/' +TINY_MCE_MEDIA_ROOT = STATIC_ROOT + '/tiny_mce/' +TINY_MCE_MEDIA_URL = STATIC_ROOT + '/tiny_mce/' TEMPLATE_DIRS = ( PYTHON_PATH + "templates", diff --git a/parsers/logbooks.py b/parsers/logbooks.py index 12124ca..e5817a6 100644 --- a/parsers/logbooks.py +++ b/parsers/logbooks.py @@ -25,9 +25,10 @@ from utils import save_carefully # # the logbook loading section # -def GetTripPersons(trippeople, expedition, logtime_underground): +def GetTripPersons(trippeople, expedition, logtime_underground): res = [ ] author = None + round_bracket_regex = re.compile(r"[\(\[].*?[\)\]]") for tripperson in re.split(r",|\+|&|&(?!\w+;)| and ", trippeople): tripperson = tripperson.strip() mul = re.match(r"(.*?)$(?i)", tripperson) @@ -35,6 +36,7 @@ def GetTripPersons(trippeople, expedition, logtime_underground): tripperson = mul.group(1).strip() if tripperson and tripperson[0] != '*': #assert tripperson in personyearmap, "'%s' << %s\n\n %s" % (tripperson, trippeople, personyearmap) + tripperson = re.sub(round_bracket_regex, "", tripperson).strip() personyear = GetPersonExpeditionNameLookup(expedition).get(tripperson.lower()) if not personyear: print(" - No name match for: '%s'" % tripperson) @@ -172,8 +174,8 @@ def Parseloghtmltxt(year, expedition, txt): tripid, tripid1, tripdate, trippeople, triptitle, triptext, tu = s.groups() ldate = ParseDate(tripdate.strip(), year) #assert tripid[:-1] == "t" + tripdate, (tripid, tripdate) - #trippeople = re.sub(r"Ol(?!l)", "Olly", trippeople) - #trippeople = re.sub(r"Wook(?!e)", "Wookey", trippeople) + #trippeople = re.sub(r"Ol(?!l)", "Olly", trippeople) + #trippeople = re.sub(r"Wook(?!e)", "Wookey", trippeople) triptitles = triptitle.split(" - ") if len(triptitles) >= 2: tripcave = triptitles[0] diff --git a/parsers/people.py b/parsers/people.py index eb877f2..34a5ff3 100644 --- a/parsers/people.py +++ b/parsers/people.py @@ -4,6 +4,8 @@ from django.conf import settings import troggle.core.models as models import csv, re, datetime, os, shutil from utils import save_carefully +from HTMLParser import HTMLParser +from unidecode import unidecode def saveMugShot(mugShotPath, mugShotFilename, person): if mugShotFilename.startswith(r'i/'): #if filename in cell has the directory attached (I think they all do), remove it @@ -132,11 +134,12 @@ def GetPersonExpeditionNameLookup(expedition): print("Calculating GetPersonExpeditionNameLookup for " + expedition.year) personexpeditions = models.PersonExpedition.objects.filter(expedition=expedition) + htmlparser = HTMLParser() for personexpedition in personexpeditions: possnames = [ ] - f = personexpedition.person.first_name.lower() - l = personexpedition.person.last_name.lower() - full = personexpedition.person.fullname.lower() + f = unidecode(htmlparser.unescape(personexpedition.person.first_name.lower())) + l = unidecode(htmlparser.unescape(personexpedition.person.last_name.lower())) + full = unidecode(htmlparser.unescape(personexpedition.person.fullname.lower())) if l: possnames.append(f + " " + l) possnames.append(f + " " + l[0]) @@ -154,6 +157,8 @@ def GetPersonExpeditionNameLookup(expedition): possnames.append(personexpedition.nickname.lower() + " " + l) if str(personexpedition.nickname.lower() + " " + l[0]) not in possnames: possnames.append(personexpedition.nickname.lower() + " " + l[0]) + if str(personexpedition.nickname.lower() + l[0]) not in possnames: + possnames.append(personexpedition.nickname.lower() + l[0]) for possname in possnames: if possname in res: diff --git a/templates/editflatpage.html b/templates/editflatpage.html index 4768078..de09b4e 100644 --- a/templates/editflatpage.html +++ b/templates/editflatpage.html @@ -3,6 +3,11 @@ {% block extrahead %} {% load csrffaker %} + {% endblock %} {% block body %}

Edit {{ path }}