# time zone. GEOCAM_TRACK_OPS_TIME_ZONE is currently used only to # choose how to split up days in the daily track index. We split at # midnight in the specified time zone. Since ops are usually idle at # night and we want to split during the idle period, we usually set this # to the time zone where most ops actually occur. GEOCAM_TRACK_OPS_TIME_ZONE = 'UTC' GEOCAM_TRACK_FEED_NAME = 'GeoCam Track' BOWER_INSTALLED_APPS = getOrCreateArray('BOWER_INSTALLED_APPS') BOWER_INSTALLED_APPS += ['jquery-mobile', 'google-maps-utility-library-v3-infobubble', 'klass=git://github.com/ded/klass.git' ] XGDS_MAP_SERVER_JS_MAP = getOrCreateDict('XGDS_MAP_SERVER_JS_MAP') XGDS_MAP_SERVER_JS_MAP[GEOCAM_TRACK_TRACK_MONIKIER] = {'ol': 'geocamTrack/js/olTrackMap.js', 'model': GEOCAM_TRACK_TRACK_MODEL, 'columns': ['name','resource_name', 'type', 'color', 'alpha', 'pk', 'app_label', 'model_type', 'times', 'coords', 'lat', 'DT_RowId'], 'hiddenColumns': ['type', 'color', 'alpha', 'pk', 'app_label', 'model_type', 'times', 'coords', 'lat', 'DT_RowId'], 'columnTitles': ['Name', 'Resource',''], 'searchableColumns': ['name', 'resource_name'], 'search_form_class': 'geocamTrack.forms.SearchTrackForm'} XGDS_MAP_SERVER_JS_MAP['Position'] = {'ol': 'geocamTrack/js/olPositionMap.js', 'model': GEOCAM_TRACK_PAST_POSITION_MODEL, 'hiddenColumns': ['type','id']} XGDS_DATA_MASKED_FIELDS = getOrCreateDict('XGDS_DATA_MASKED_FIELDS') XGDS_DATA_MASKED_FIELDS['geocamTrack'] = {'Track': ['uuid', 'iconStyle',
# 'backbone-forms/distribution/templates/old.css', 'xgds_planner2/css/planner.css', #'xgds_planner2/css/forms_adjust.css', ), 'output_filename': 'css/planner_app.css', 'template_name': 'xgds_planner2/pipelineCSS.css', }, 'xgds_planner2_testing': { 'source_filenames': ('qunit/qunit/qunit.css', ), 'output_filename': 'css/planner_tests.css', }, } PIPELINE = getOrCreateDict('PIPELINE') PIPELINE['CSS'] = XGDS_PLANNER_PIPELINE_CSS PIPELINE['JAVASCRIPT'] = getOrCreateDict('PIPELINE.JAVASCRIPT') # if we are using the planner we want to add uploadJson into the custom map for right now. Really it should not be jammed in that file. PIPELINE['JAVASCRIPT']['custom_map'] = { 'source_filenames': ('xgds_planner2/js/uploadJson.js', 'xgds_map_server/js/map_viewer/olShowMapCoords.js', 'xgds_map_server/js/map_viewer/olInitialLayers.js'), 'output_filename': 'js/custom_map.js' } # Override this compilation of javascript files for your planner and simulator PIPELINE['JAVASCRIPT']['simulator'] = { 'source_filenames': (
) # XGDS_DATA_LOG_ENABLED = False XGDS_DATA_MAX_PULLDOWNABLE = 100 XGDS_DATA_MAX_SERIESABLE = 100 # possible fields to treat as the 'primary time field' for a model. # try in order until the model has one of the fields. XGDS_DATA_TIME_FIELDS = ( 'timestampSeconds', 'timeStampSeconds', 'timestamp', ) XGDS_DATA_MASKED_FIELDS = getOrCreateDict('XGDS_DATA_MASKED_FIELDS') XGDS_DATA_MASKED_FIELDS['auth']= {'User': ['password', 'is_staff', 'is_active', 'is_superuser', 'last_login', 'date_joined', 'groups', 'user_permissions', ], } XGDS_DATA_EXPAND_RELATED = getOrCreateDict('XGDS_DATA_EXPAND_RELATED') XGDS_DATA_EXPAND_RELATED['xgds_data'] = {'RequestLog': [('requestargument_set', 'all', 'Arguments'), ('responselog_set', 'all', 'Response'), ], 'ResponseLog': [('responseargument_set', 'all', 'Arguments'), ('responselist_set', 'all', 'Results'), ], 'Collection': [ (None,'contents','Contents'), ] ,
# If you are not, override the below values. XGDS_MAP_SERVER_DEFAULT_COORD_SYSTEM = 'EPSG:3857' XGDS_MAP_SERVER_DEFAULT_COORD_SYSTEM_CENTER = 'null' XGDS_MAP_SERVER_DEFAULT_ZOOM = 14 XGDS_MAP_SERVER_DEFAULT_ROTATION = 0 # to set the default rotation for the map view if it is not 0. In radians. XGDS_MAP_SERVER_SHOW_COMPASS = '******' # to show compass control XGDS_MAP_SERVER_MAP_SETUP_COORD_SYSTEM = 'null' XGDS_MAP_SERVER_BODY_RADIUS_METERS = 6371010 XGDS_MAP_SERVER_SITE_MONIKER = 'Site' XGDS_MAP_SERVER_PLACE_MONIKER = 'Place' # in case you are using this as a default, for example for sample recording XGDS_MAP_SERVER_DEFAULT_PLACE_ID = None XGDS_DATA_IMPORTS = getOrCreateDict('XGDS_DATA_IMPORTS') XGDS_DATA_IMPORTS['GeoTiff Map Tile'] = '/xgds_map_server/addGeotiff' XGDS_MAP_SERVER_DEFAULT_HOURS_RANGE = 12 # if you are in live mode how many hours back to search through for objects by default PIPELINE = getOrCreateDict('PIPELINE') # Override this compilation of javascript files for the map if you want PIPELINE['JAVASCRIPT'] = getOrCreateDict('PIPELINE.JAVASCRIPT') PIPELINE['JAVASCRIPT']['custom_map'] = { 'source_filenames': ( 'xgds_map_server/js/map_viewer/olShowMapCoords.js', 'xgds_map_server/js/map_viewer/olInitialLayers.js', ), 'output_filename': 'js/custom_map.js',
'typeahead.js' ] XGDS_IMAGE_DATA_SUBDIRECTORY = "xgds_image/" # This is the directory appended to MEDIA_ROOT for storing generated deep zooms. # If defined, but not physically created, the directory will be created for you. # If not defined, the following default directory name will be used: DEEPZOOM_ROOT = XGDS_IMAGE_DATA_SUBDIRECTORY + 'deepzoom_images/' XGDS_IMAGE_IMAGE_SET_MODEL = 'xgds_image.ImageSet' XGDS_IMAGE_SINGLE_IMAGE_MODEL = 'xgds_image.SingleImage' XGDS_IMAGE_CAMERA_MODEL = 'xgds_image.Camera' XGDS_IMAGE_IMAGE_SET_MONIKER = 'Photo' XGDS_CORE_TEMPLATE_DIRS = getOrCreateDict('XGDS_CORE_TEMPLATE_DIRS') XGDS_CORE_TEMPLATE_DIRS[XGDS_IMAGE_IMAGE_SET_MODEL] = [os.path.join('xgds_image', 'templates', 'handlebars')] XGDS_MAP_SERVER_JS_MAP = getOrCreateDict('XGDS_MAP_SERVER_JS_MAP') XGDS_MAP_SERVER_JS_MAP[XGDS_IMAGE_IMAGE_SET_MONIKER] = {'ol': 'xgds_image/js/olImageMap.js', 'model': XGDS_IMAGE_IMAGE_SET_MODEL, 'columns': ['acquisition_time', 'timezone', 'name', 'author', 'thumbnail_image_url'], 'columnTitles': ['Acquisition', 'Timezone', 'Name', 'Author', ''], 'viewHandlebars': 'xgds_image/templates/handlebars/image-view2.handlebars', 'viewJS': ['/static/openseadragon/built-openseadragon/openseadragon/openseadragon.min.js', '/static/xgds_image/js/imageReview.js' ], 'viewCss': ['/static/xgds_image/css/xgds_image.css'], 'viewInitMethods': ['xgds_image.setupImageViewer'], 'event_time_field': 'acquisition_time', 'event_timezone_field': 'acquisition_timezone' }
If the admin for the site doesn't like the default value, they can override it in the site-level settings module, like this: FOO = 'a better value' Other modules can access the value of FOO like this: from django.conf import settings print settings.FOO Don't try to get the value of FOO from django.conf.settings. That settings object will not know about the default value! """ from geocamUtil.SettingsUtil import getOrCreateArray, getOrCreateDict XGDS_INSTRUMENT_INSTRUMENT_MODEL = 'xgds_instrument.ScienceInstrument' XGDS_INSTRUMENT_IMPORT_MODULE_PATH = 'xgds_instrument.instrumentDataImporters' XGDS_INSTRUMENT_DATA_SUBDIRECTORY = "xgds_instrument/" # Include a dictionary of name to url for imports if you wish to include import functionality XGDS_DATA_IMPORTS = getOrCreateDict('XGDS_DATA_IMPORTS') XGDS_DATA_IMPORTS[ "Science Instruments"] = '/xgds_instrument/instrumentDataImport' SCIENCE_INSTRUMENT_DATA_IMPORTERS = [] XGDS_MAP_SERVER_JS_MAP = getOrCreateDict('XGDS_MAP_SERVER_JS_MAP') # XGDS_MAP_SERVER_JS_MAP['InstrumentDataProduct'] = {'ol': 'xgds_instrument/js/olInstrumentDataProduct.js', # 'model': XGDS_INSTRUMENT_DATA_PRODUCT_MODEL, # 'hiddenColumns': []}
STATICFILES_STORAGE = 'pipeline.storage.PipelineCachedStorage' STATICFILES_FINDERS = ( 'django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder', 'pipeline.finders.FileSystemFinder', 'pipeline.finders.AppDirectoriesFinder', 'pipeline.finders.PipelineFinder', 'pipeline.finders.CachedFileFinder', 'djangobower.finders.BowerFinder', 'django_npm_apps.finders.NpmAppFinder', ) # SET UP PIPELINE PIPELINE = getOrCreateDict('PIPELINE') PIPELINE['PIPELINE_ENABLED'] = True PIPELINE['JS_COMPRESSOR'] = 'pipeline.compressors.yuglify.YuglifyCompressor' PIPELINE['CSS_COMPRESSOR'] = 'pipeline.compressors.yuglify.YuglifyCompressor' PIPELINE['YUGLIFY_JS_ARGUMENTS'] = 'mangle:false --terminal' PIPELINE['DISABLE_WRAPPER'] = True COMPRESS_ENABLED = False #COMPRESS_CSSTIDY_BINARY = '/usr/bin/csstidy' # PIPELINE_COMPILERS = () DEBUG_TOOLBAR = False if DEBUG_TOOLBAR: INSTALLED_APPS += ('debug_toolbar', ) MIDDLEWARE_CLASSES_LIST = list(MIDDLEWARE_CLASSES)
XGDS_PLANNER_SCHEDULE_INCLUDED = True XGDS_PLANNER_SITE_MONIKER = 'Zone' XGDS_PLANNER_PLAN_EXECUTION_MODEL = "basaltApp.BasaltPlanExecution" XGDS_PLANNER_HANDLEBARS_DIRS = [ os.path.join('xgds_planner2', 'templates', 'handlebars'), os.path.join('basaltApp', 'templates', 'xgds_planner2'), os.path.join('basaltApp', 'templates', 'xgds_sample'), os.path.join('xgds_map_server', 'templates', 'handlebars', 'search') ] XGDS_PLANNER_EDITOR_CONTEXT_METHOD = 'basaltApp.views.addToPlannerContext' XGDS_PLANNER_SCHEDULE_EXTRAS_METHOD = 'basaltApp.views.addEVToPlanExecution' XGDS_PLANNER_PLOTS = getOrCreateDict('XGDS_PLANNER_PLOTS') XGDS_PLANNER_PLOTS['Temp'] = 'hi_temp' # list of (formatCode, extension, exporterClass) XGDS_PLANNER_PLAN_EXPORTERS = ( ('xpjson', '.json', 'xgds_planner2.planExporter.XpjsonPlanExporter'), ('bearing_distance', '.bdj', 'xgds_planner2.planExporter.BearingDistanceJsonPlanExporter'), ('kml', '.kml', 'basaltApp.kmlPlanExporter.KmlPlanExporter'), ('pml', '.pml', 'xgds_planner2.pmlPlanExporter.PmlPlanExporter'), ) XGDS_NOTES_OPS_TIME_ZONE = GEOCAM_TRACK_OPS_TIME_ZONE XGDS_NOTES_USER_SESSION_MODEL = 'basaltApp.BasaltUserSession' XGDS_NOTES_NOTE_MODEL = 'basaltApp.BasaltNote' XGDS_NOTES_TAGGED_NOTE_MODEL = 'basaltApp.BasaltTaggedNote'
# # By default we use the VIPS library deepzoom tiler beacause it's much faster than the python based one # in django-deepzoom. But we have this flag for backward compatibility with the BASALT site until we # get it migrated. USE_PYTHON_DEEPZOOM_TILER = False # True to create each deepzoom in a separate thread, false to block. XGDS_IMAGE_DEEPZOOM_THREAD = True XGDS_IMAGE_IMAGE_SET_MODEL = 'xgds_image.ImageSet' XGDS_IMAGE_SINGLE_IMAGE_MODEL = 'xgds_image.SingleImage' XGDS_IMAGE_CAMERA_MODEL = 'xgds_image.Camera' XGDS_IMAGE_IMAGE_SET_MONIKER = 'Photo' XGDS_IMAGE_IMAGE_MODEL_NAME = 'Photo' # used for building filters XGDS_CORE_TEMPLATE_DIRS = getOrCreateDict('XGDS_CORE_TEMPLATE_DIRS') XGDS_CORE_TEMPLATE_DIRS[XGDS_IMAGE_IMAGE_SET_MODEL] = [ os.path.join('xgds_image', 'templates', 'handlebars') ] XGDS_MAP_SERVER_JS_MAP = getOrCreateDict('XGDS_MAP_SERVER_JS_MAP') STATIC_URL = '/static/' EXTERNAL_URL = STATIC_URL XGDS_MAP_SERVER_JS_MAP[XGDS_IMAGE_IMAGE_MODEL_NAME] = { 'ol': 'xgds_image/js/olImageMap.js', 'model': XGDS_IMAGE_IMAGE_SET_MODEL, 'searchableColumns': ['name', 'description', 'flight_name', 'author_name', 'camera_name'], 'columns': [
# XGDS_MAP_SERVER_MAP_LOADED_CALLBACK: The fully qualified name of an # extra JavaScript callback to call after the map is loaded. XGDS_MAP_SERVER_MAP_LOADED_CALLBACK = 'xgds_map.coordinator.init' # dict of models to a dict of javascript files to render the models on the map and the model class # for example # XGDS_MAP_SERVER_JS_MAP['Note'] = {'ol': 'plrpExplorer/js/olNoteMap.js', # 'model': 'plrpExplorer.Note', # 'viewHandlebars' : 'mypath/templates/handlebars/myvew.handlebars', # 'hiddenColumns': ['type', 'color', 'alpha', 'times', 'coords'], # you can exclude columns and include all others OR BETTER # 'columns': ['acquisition_time', 'acquisition_timezone', 'name', 'thumbnail_url']} # you can explicitly columns # these models should ideally have a toMapDict method that returns the dict you would want to use to render the model. XGDS_MAP_SERVER_JS_MAP = {} # If you are using spherical mercator this will be the norm. # If you are not, override the below values. XGDS_MAP_SERVER_DEFAULT_COORD_SYSTEM = 'EPSG:3857' XGDS_MAP_SERVER_DEFAULT_COORD_SYSTEM_CENTER = 'null' XGDS_MAP_SERVER_DEFAULT_ZOOM = 9 XGDS_MAP_SERVER_DEFAULT_ROTATION = 0 # to set the default rotation for the map view if it is not 0. In radians. XGDS_MAP_SERVER_SHOW_COMPASS = '******' # to show compass control XGDS_MAP_SERVER_MAP_SETUP_COORD_SYSTEM = 'null' XGDS_MAP_SERVER_BODY_RADIUS_METERS = 6371010 XGDS_MAP_SERVER_SITE_MONIKER = 'Site' XGDS_DATA_IMPORTS = getOrCreateDict('XGDS_DATA_IMPORTS') XGDS_DATA_IMPORTS['GeoTiff Map Tile'] = '/xgds_map_server/addTile' XGDS_MAP_SERVER_DEFAULT_HOURS_RANGE = 12 # if you are in live mode how many hours back to search through for objects by default
STATICFILES_STORAGE = 'pipeline.storage.PipelineCachedStorage' STATICFILES_FINDERS = ( 'django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder', 'pipeline.finders.FileSystemFinder', 'pipeline.finders.AppDirectoriesFinder', 'pipeline.finders.PipelineFinder', 'pipeline.finders.CachedFileFinder', 'djangobower.finders.BowerFinder', 'django_npm_apps.finders.NpmAppFinder', ) # SET UP PIPELINE PIPELINE = getOrCreateDict('PIPELINE') PIPELINE['PIPELINE_ENABLED'] = True PIPELINE['JS_COMPRESSOR'] = 'pipeline.compressors.yuglify.YuglifyCompressor' PIPELINE['CSS_COMPRESSOR'] = 'pipeline.compressors.yuglify.YuglifyCompressor' PIPELINE['YUGLIFY_JS_ARGUMENTS'] = 'mangle:false --terminal' PIPELINE['DISABLE_WRAPPER'] = True COMPRESS_ENABLED = False # TODO this does not yet work for some reason #COMPRESS_CSSTIDY_BINARY = '/usr/bin/csstidy' # PIPELINE_COMPILERS = () DEBUG_TOOLBAR = False if DEBUG_TOOLBAR: INSTALLED_APPS += ('debug_toolbar',) MIDDLEWARE_CLASSES_LIST = list(MIDDLEWARE_CLASSES)
] XGDS_SAMPLE_HANDLEBARS_DIR = [ os.path.join('xgds_sample', 'templates', 'handlebars') ] XGDS_SAMPLE_PERM_LINK_PREFIX = "https://basalt.xgds.org" XGDS_IMAGE_IMAGE_SET_MODEL = 'basaltApp.BasaltImageSet' XGDS_IMAGE_SINGLE_IMAGE_MODEL = 'basaltApp.BasaltSingleImage' XGDS_INSTRUMENT_IMPORT_MODULE_PATH = 'basaltApp.instrumentDataImporters' GEOCAM_TRACK_RECENT_TIME_FUNCTION = 'basaltApp.views.getCurrentTimeWithDelayCorrection' # Include a dictionary of name to url for imports if you wish to include import functionality XGDS_DATA_IMPORTS = getOrCreateDict('XGDS_DATA_IMPORTS') # Override generic instrument importer if it's already defined if "Science Instruments" in XGDS_DATA_IMPORTS: del XGDS_DATA_IMPORTS["Science Instruments"] XGDS_DATA_IMPORTS["FTIR"] = '../../basaltApp/instrumentDataImport/FTIR' XGDS_DATA_IMPORTS["ASD"] = '../../basaltApp/instrumentDataImport/ASD' XGDS_DATA_IMPORTS["pXRF"] = '../../basaltApp/pXRFDataImport/' XGDS_IMAGE_DEFAULT_CREATE_DEEPZOOM = True XGDS_DATA_MASKED_FIELDS = getOrCreateDict('XGDS_DATA_MASKED_FIELDS') XGDS_DATA_MASKED_FIELDS['basaltApp'] = { 'BasaltImageSet': [ 'exif_position', 'track_position', 'user_position',
XGDS_PLANNER2_HANDLEBARS_DIRS = [ os.path.join('xgds_planner2', 'templates', 'handlebars'), os.path.join('xgds_map_server', 'templates', 'handlebars', 'search') ] XGDS_PLANNER2_PLAN_BEARING_HANDLEBAR_PATH = 'xgds_planner2/templates/xgds_planner2/bearingDistancePlan.handlebars' # XGDS_PLANNER2_LINKS_LOADED_CALLBACK: The fully qualified name of an # extra JavaScript callback to call after the links tab is loaded. XGDS_PLANNER2_LINKS_LOADED_CALLBACK = 'null' # This is used to hold a map of site frames, so we can convert lat/long to the closest site frame. # It is initialized by calling views.getSiteFrames(). XGDS_PLANNER2_SITE_FRAMES = [] XGDS_MAP_SERVER_JS_MAP = getOrCreateDict('XGDS_MAP_SERVER_JS_MAP') XGDS_MAP_SERVER_JS_MAP['Plan'] = { 'ol': 'xgds_planner2/js/olPlanMap.js', 'model': XGDS_PLANNER2_PLAN_MODEL, 'hiddenColumns': ['stations', 'type', 'id'] } BOWER_INSTALLED_APPS = getOrCreateArray('BOWER_INSTALLED_APPS') BOWER_INSTALLED_APPS += [ 'string-format=git://github.com/tamarmot/string-format.git', 'proj4', 'usng=git://github.com/codice/usng.js.git', 'qunit#2.1.1', 'pure-uuid', 'jquery-fileDownload=git://github.com/johnculviner/jquery.fileDownload.git', 'flot' ] XGDS_DATA_MASKED_FIELDS = getOrCreateDict('XGDS_DATA_MASKED_FIELDS')
XGDS_PLANNER2_HANDLEBARS_DIRS = [ os.path.join("xgds_planner2", "templates", "handlebars"), os.path.join("xgds_map_server", "templates", "handlebars", "search"), ] XGDS_PLANNER2_PLAN_BEARING_HANDLEBAR_PATH = "xgds_planner2/templates/xgds_planner2/bearingDistancePlan.handlebars" # XGDS_PLANNER2_LINKS_LOADED_CALLBACK: The fully qualified name of an # extra JavaScript callback to call after the links tab is loaded. XGDS_PLANNER2_LINKS_LOADED_CALLBACK = "null" # This is used to hold a map of site frames, so we can convert lat/long to the closest site frame. # It is initialized by calling views.getSiteFrames(). XGDS_PLANNER2_SITE_FRAMES = [] XGDS_MAP_SERVER_JS_MAP = getOrCreateDict("XGDS_MAP_SERVER_JS_MAP") XGDS_MAP_SERVER_JS_MAP["Plan"] = { "ol": "xgds_planner2/js/olPlanMap.js", "model": XGDS_PLANNER2_PLAN_MODEL, "hiddenColumns": ["stations", "type", "id"], } BOWER_INSTALLED_APPS = getOrCreateArray("BOWER_INSTALLED_APPS") BOWER_INSTALLED_APPS += [ "jquery-migrate=http://code.jquery.com/jquery-migrate-1.2.1.js", "lodash#3.10.0", "backbone#1.1.2", "marionette=marionette#2.4.7", "backbone-relational", "backbone-forms",
""" This app may define some new parameters that can be modified in the Django settings module. Let's say one such parameter is FOO. The default value for FOO is defined in this file, like this: FOO = 'my default value' If the admin for the site doesn't like the default value, they can override it in the site-level settings module, like this: FOO = 'a better value' Other modules can access the value of FOO like this: from django.conf import settings print settings.FOO Don't try to get the value of FOO from django.conf.settings. That settings object will not know about the default value! """ from geocamUtil.SettingsUtil import getOrCreateArray, getOrCreateDict XGDS_CORE_TEMPLATE_DEBUG = False # If this is true, handlebars templates will not be cached. XGDS_CORE_TEMPLATE_DIRS = getOrCreateDict( "XGDS_CORE_TEMPLATE_DIRS" ) # a dictionary to store directories of handlebars to load based on class name XGDS_CORE_LIVE_INDEX_URL = "/" BOWER_INSTALLED_APPS = getOrCreateArray("BOWER_INSTALLED_APPS") BOWER_INSTALLED_APPS += ["moment-range", "gridstack"]
# under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR # CONDITIONS OF ANY KIND, either express or implied. See the License for the # specific language governing permissions and limitations under the License. #__END_LICENSE__ import os from geocamUtil.SettingsUtil import getOrCreateDict XGDS_SAMPLE_SAMPLE_MODEL = 'xgds_sample.Sample' XGDS_SAMPLE_LABEL_MODEL = 'xgds_sample.Label' XGDS_SAMPLE_RESOURCE_MODEL = 'geocamTrack.Resource' XGDS_SAMPLE_PERM_LINK_PREFIX = 'TODO:FIXME' XGDS_SAMPLE_DEFAULT_COLLECTOR = 'EV2' XGDS_SAMPLE_PDF_DIR = "xgds_sample/labels" XGDS_CORE_TEMPLATE_DIRS = getOrCreateDict('XGDS_CORE_TEMPLATE_DIRS') XGDS_CORE_TEMPLATE_DIRS[XGDS_SAMPLE_SAMPLE_MODEL] = [os.path.join('xgds_sample', 'templates', 'handlebars')] XGDS_SAMPLE_HANDLEBARS_DIR = [os.path.join('xgds_sample', 'templates', 'handlebars')] XGDS_MAP_SERVER_JS_MAP = getOrCreateDict('XGDS_MAP_SERVER_JS_MAP') XGDS_SAMPLE_SAMPLE_KEY = 'Sample' XGDS_MAP_SERVER_JS_MAP[XGDS_SAMPLE_SAMPLE_KEY] = {'ol': 'xgds_sample/js/olSampleMap.js', 'model': XGDS_SAMPLE_SAMPLE_MODEL, 'columns': ['collection_time', 'timezone', 'name', 'sample_type', 'label', 'collector', 'resource', 'thumbnail_image_url'], 'columnTitles': ['Collected', 'Timezone', 'Name', 'Type', 'Label', 'Collector', 'Resource', ''] } XGDS_MAP_SERVER_JS_MAP['Label'] = {'model': XGDS_SAMPLE_LABEL_MODEL, 'columns': ['number', 'url', 'last_printed', 'sampleName', 'pk'], }