mirror of
https://expo.survex.com/repositories/troggle/.git
synced 2025-12-14 18:37:18 +00:00
Removed conversion to wiki, replaced Surveystation models with text, added area 1623 to all relevant caves.
This commit is contained in:
@@ -3,7 +3,8 @@ import troggle.core.models as models
|
||||
from django.conf import settings
|
||||
import csv, time, re, os, logging
|
||||
from utils import save_carefully
|
||||
from utils import html_to_wiki
|
||||
from django.core.urlresolvers import reverse
|
||||
import flatpages.models
|
||||
|
||||
##format of CAVETAB2.CSV is
|
||||
KatasterNumber = 0
|
||||
@@ -54,6 +55,7 @@ Findability = 44
|
||||
FindabilityComment = 45
|
||||
|
||||
def LoadCaveTab():
|
||||
|
||||
cavetab = open(os.path.join(settings.EXPOWEB, "noinfo", "CAVETAB2.CSV"),'rU')
|
||||
caveReader = csv.reader(cavetab)
|
||||
caveReader.next() # Strip out column headers
|
||||
@@ -76,14 +78,14 @@ def LoadCaveTab():
|
||||
if line[MultipleEntrances] == 'yes' or line[MultipleEntrances]=='': #When true, this line contains an actual cave, otherwise it is an extra entrance.
|
||||
args = {}
|
||||
defaultArgs = {}
|
||||
|
||||
|
||||
def addToArgs(CSVname, modelName):
|
||||
if line[CSVname]:
|
||||
args[modelName] = html_to_wiki(line[CSVname])
|
||||
args[modelName] = line[CSVname]
|
||||
|
||||
def addToDefaultArgs(CSVname, modelName): #This has to do with the non-destructive import. These arguments will be passed as the "default" dictionary in a get_or_create
|
||||
if line[CSVname]:
|
||||
defaultArgs[modelName] = html_to_wiki(line[CSVname])
|
||||
defaultArgs[modelName] = line[CSVname]
|
||||
|
||||
# The attributes added using "addToArgs" will be used to look up an existing cave. Those added using "addToDefaultArgs" will not.
|
||||
addToArgs(KatasterNumber, "kataster_number")
|
||||
@@ -103,6 +105,7 @@ def LoadCaveTab():
|
||||
addToDefaultArgs(Extent, "extent")
|
||||
addToDefaultArgs(SurvexFile, "survex_file")
|
||||
addToDefaultArgs(Notes, "notes")
|
||||
addToDefaultArgs(AutogenFile, "url")
|
||||
if line[Area] == "1626":
|
||||
if line[KatasterNumber] != "":
|
||||
args["slug"] = line[Area] + "-" + line[KatasterNumber]
|
||||
@@ -140,6 +143,7 @@ def LoadCaveTab():
|
||||
newArea = models.Area(short_name = line[Area], parent = area1623)
|
||||
newArea.save()
|
||||
newCave.area.add(newArea)
|
||||
newCave.area.add(area1623)
|
||||
elif created:
|
||||
newCave.area.add(area1623)
|
||||
|
||||
@@ -152,6 +156,7 @@ def LoadCaveTab():
|
||||
newUnofficialName.save()
|
||||
|
||||
logging.info("Added unofficial name "+str(newUnofficialName)+" to cave "+str(newCave)+"\n")
|
||||
|
||||
|
||||
if created and line[MultipleEntrances] == '' or \
|
||||
line[MultipleEntrances] == 'entrance' or \
|
||||
@@ -165,10 +170,10 @@ def LoadCaveTab():
|
||||
|
||||
def addToArgs(CSVname, modelName):
|
||||
if line[CSVname]:
|
||||
args[modelName] = html_to_wiki(line[CSVname])
|
||||
args[modelName] = line[CSVname]
|
||||
def addToArgsViaDict(CSVname, modelName, dictionary):
|
||||
if line[CSVname]:
|
||||
args[modelName] = dictionary[html_to_wiki(line[CSVname])]
|
||||
args[modelName] = dictionary[line[CSVname]]
|
||||
addToArgs(EntranceName, 'name')
|
||||
addToArgs(Explorers, 'explorers')
|
||||
addToArgs(Map, 'map_description')
|
||||
@@ -188,6 +193,7 @@ def LoadCaveTab():
|
||||
"Unmarked": "U",
|
||||
"": "?",
|
||||
})
|
||||
|
||||
addToArgs(MarkingComment, 'marking_comment')
|
||||
addToArgsViaDict(Findability, 'findability', {"Surveyed": "S",
|
||||
"Lost": "L",
|
||||
@@ -200,20 +206,15 @@ def LoadCaveTab():
|
||||
addToArgs(Northing, 'northing')
|
||||
addToArgs(Altitude, 'alt')
|
||||
addToArgs(DescriptionOfOtherPoint, 'other_description')
|
||||
def addToArgsSurveyStation(CSVname, modelName):
|
||||
if line[CSVname]:
|
||||
surveyPoint = models.SurveyStation(name = line[CSVname])
|
||||
surveyPoint.save()
|
||||
args[modelName] = surveyPoint
|
||||
addToArgsSurveyStation(TagPoint, 'tag_station')
|
||||
addToArgsSurveyStation(ExactEntrance, 'exact_station')
|
||||
addToArgsSurveyStation(OtherPoint, 'other_station')
|
||||
addToArgs(TagPoint, 'tag_station')
|
||||
addToArgs(ExactEntrance, 'exact_station')
|
||||
addToArgs(OtherPoint, 'other_station')
|
||||
addToArgs(OtherPoint, 'other_description')
|
||||
if line[GPSpreSA]:
|
||||
addToArgsSurveyStation(GPSpreSA, 'other_station')
|
||||
addToArgs(GPSpreSA, 'other_station')
|
||||
args['other_description'] = 'pre selective availability GPS'
|
||||
if line[GPSpostSA]:
|
||||
addToArgsSurveyStation(GPSpostSA, 'other_station')
|
||||
addToArgs(GPSpostSA, 'other_station')
|
||||
args['other_description'] = 'post selective availability GPS'
|
||||
addToArgs(Bearings, 'bearings')
|
||||
args['slug'] = newCave.slug + entrance_letter
|
||||
@@ -227,6 +228,8 @@ def LoadCaveTab():
|
||||
newCaveAndEntrance.save()
|
||||
|
||||
logging.info("Added CaveAndEntrance "+str(newCaveAndEntrance)+"\n")
|
||||
f = flatpages.models.EntranceRedirect(originalURL = line[AutogenFile], entrance = newEntrance)
|
||||
f.save()
|
||||
|
||||
|
||||
# lookup function modelled on GetPersonExpeditionNameLookup
|
||||
|
||||
Reference in New Issue
Block a user