Some updates to Spotter template

This commit is contained in:
Disassembler 2022-03-08 11:04:42 +01:00
parent 8ec2608f0e
commit 978d06519a
No known key found for this signature in database
GPG Key ID: 524BD33A0EE29499
14 changed files with 252 additions and 423 deletions

View File

@ -41,7 +41,7 @@ EDITOR,Editor,,project,,,,ALL,CREATE|READ|UPDATE|REVIEW|APPROVE,
EDITOR,Editor,,doc,,,,ALL,CREATE|READ|UPDATE|REVIEW|APPROVE,
EDITOR,Editor,,hrm,,,,ALL,CREATE|READ|UPDATE|REVIEW|APPROVE,
EDITOR,Editor,,appadmin,,,,ALL,CREATE|READ|UPDATE|REVIEW|APPROVE,
EDITOR,Editor,,hms,,,,ALL,CREATE|READ|UPDATE|REVIEW|APPROVE,
EDITOR,Editor,,med,,,,ALL,CREATE|READ|UPDATE|REVIEW|APPROVE,
EDITOR,Editor,,req,,,,ALL,CREATE|READ|UPDATE|REVIEW|APPROVE,
EDITOR,Editor,,mpr,,,,ALL,CREATE|READ|UPDATE|REVIEW|APPROVE,
EDITOR,Editor,,sync,,,,ALL,CREATE|READ|UPDATE|REVIEW|APPROVE,
@ -56,7 +56,7 @@ ORG_ADMIN,Organization Admin,,org,,,,ALL,ALL,
ORG_GROUP_ADMIN,Organzation Group Admin,,,,,,,,
medical_admin,Medical Details Admin,"Complementary role: FULL access but only to medical data of registered evacuees. It must be assigned with other roles to grant access to the other types of data.
When to assign: Medical Staff.",patient,,,,ALL,ALL,
medical_admin,Medical Details Admin,,hms,,,,ALL,ALL,
medical_admin,Medical Details Admin,,med,,,,ALL,ALL,
medical_admin,Medical Details Admin,,dvi,,,,ALL,ALL,
notification_sender,Notification Sender,,msg,,,,ALL,ALL,
org_reader,Organization Reader,"Complementary role: Access in ""READ only"" mode to Organization data and its branches

1 uid role description controller function table entity uacl oacl Notes
41 EDITOR Editor doc ALL CREATE|READ|UPDATE|REVIEW|APPROVE
42 EDITOR Editor hrm ALL CREATE|READ|UPDATE|REVIEW|APPROVE
43 EDITOR Editor appadmin ALL CREATE|READ|UPDATE|REVIEW|APPROVE
44 EDITOR Editor hms med ALL CREATE|READ|UPDATE|REVIEW|APPROVE
45 EDITOR Editor req ALL CREATE|READ|UPDATE|REVIEW|APPROVE
46 EDITOR Editor mpr ALL CREATE|READ|UPDATE|REVIEW|APPROVE
47 EDITOR Editor sync ALL CREATE|READ|UPDATE|REVIEW|APPROVE
56 medical_admin Medical Details Admin Complementary role: FULL access but only to medical data of registered evacuees. It must be assigned with other roles to grant access to the other types of data. When to assign: Medical Staff. patient ALL ALL
57 medical_admin Medical Details Admin hms med ALL ALL
58 medical_admin Medical Details Admin dvi ALL ALL
59 notification_sender Notification Sender msg ALL ALL
60 org_reader Organization Reader Complementary role: Access in "READ only" mode to Organization data and its branches When to assign: Staff Directors org READ READ
61 private_user_editor Private User Editor FULL access to modules Evacuees and Shelter. When to assign: private user member of a shelter / Organization and committed to provide assistance to some evacuees cr ALL ALL
62 private_user_editor Private User Editor dvr ALL ALL

View File

@ -6,6 +6,11 @@ from gluon import current
from gluon.storage import Storage
def config(settings):
"""
Template settings for the Default template
- default settings suitable for a small organisation managing it's own resources
"""
T = current.T
# Pre-Populate
@ -26,34 +31,31 @@ def config(settings):
# Theme (folder to use for views/layout.html)
#settings.base.theme = "default"
# Enable Guided Tours
# - defaults to module enabled or not
#settings.base.guided_tour = True
# Authentication settings
# These settings should be changed _after_ the 1st (admin) user is
# registered in order to secure the deployment
# Should users be allowed to register themselves?
#settings.security.self_registration = False
# Do new users need to verify their email address?
#settings.auth.registration_requires_verification = True
settings.auth.registration_requires_verification = True
# Do new users need to be approved by an administrator prior to being able to login?
#settings.auth.registration_requires_approval = True
settings.auth.registration_requires_approval = True
# Disable welcome-emails to newly registered users
#settings.auth.registration_welcome_email = False
# Approval emails get sent to all admins
settings.mail.approver = "ADMIN"
# Allow a new user to be linked to a record (and a new record will be created if it doesn't already exist)
settings.auth.registration_link_user_to = {"staff":T("Staff"),
"volunteer":T("Volunteer"),
"member":T("Member")}
settings.auth.registration_link_user_to = {"staff": T("Staff"),
"volunteer": T("Volunteer"),
"member": T("Member"),
}
settings.auth.registration_link_user_to_default = ["staff"]
# Always notify the approver of a new (verified) user, even if the user is automatically approved
#settings.auth.always_notify_approver = False
# The name of the teams that users are added to when they opt-in to receive alerts
#settings.auth.opt_in_team_list = ["Updates"]
# Uncomment this to set the opt in default to True
#settings.auth.opt_in_default = True
# Uncomment this to request the Home Phone when a user registers
settings.auth.registration_requests_home_phone = True
# Uncomment this to request the Mobile Phone when a user registers
@ -107,7 +109,6 @@ def config(settings):
# Terms of Service to be able to Register on the system
# https://termsfeed.com/terms-conditions/generator/
# uses <template>/views/tos.html
settings.auth.terms_of_service = True
# Enable options for tracking user consent
settings.auth.consent_tracking = True
# Uncomment this to allow users to Login using Gmail's SMTP
@ -128,6 +129,8 @@ def config(settings):
#settings.auth.ignore_levels_for_presence = ("L0", "L1", "L2", "L3")
# Uncomment this to enable the creation of new locations if a user logs in from an unknown location. Warning: This may lead to many useless location entries
#settings.auth.create_unknown_locations = True
# Uncomment this to have the /default/person User Profile use the HRM controller
#settings.auth.profile_controller = "hrm"
# -------------------------------------------------------------------------
# L10n settings
@ -294,7 +297,7 @@ def config(settings):
#settings.gis.poi_create_resources = None
settings.gis.poi_create_resources = [{"c":"event", "f":"incident_report", "table": "gis_poi", "label": T("Add Incident Report") ,"tooltip": T("Add Incident Report"), "layer":"Incident Reports", "location": "popup"}]
# PoIs to export in KML/OSM feeds from Admin locations
#settings.gis.poi_export_resources = ["cr_shelter", "hms_hospital", "org_office"]
settings.gis.poi_export_resources = ["cr_shelter", "med_hospital", "org_office"]
# Uncomment to show the Print control:
# http://eden.sahanafoundation.org/wiki/UserGuidelines/Admin/MapPrinting
#settings.gis.print_button = True
@ -348,8 +351,6 @@ def config(settings):
# 5: Apply Controller, Function & Table ACLs
# 6: Apply Controller, Function, Table ACLs and Entity Realm
# 7: Apply Controller, Function, Table ACLs and Entity Realm + Hierarchy
# 8: Apply Controller, Function, Table ACLs, Entity Realm + Hierarchy and Delegations
settings.security.policy = 7 # Organization ACLs
# Ownership-rule for records without owner:
@ -443,6 +444,8 @@ def config(settings):
#settings.ui.organizer_time_format = "H:mm"
# Configure the snap raster width in organizer (hh:mm:ss)
#settings.ui.organizer_snap_duration = "00:15:00"
# Thumbnail size for Images. Requires enabling fancyZoom JS & CSS
#settings.ui.thumbnail = (60,60)
# -------------------------------------------------------------------------
# Sync
@ -563,6 +566,10 @@ def config(settings):
# Disable tracking of effort (=hours spent) for assistance measures
#settings.br.assistance_track_effort = False
# --- Offers of Assistance ---
# Disable reference numbers in offers of assistance
#settings.br.assistance_offer_refno = False
# -------------------------------------------------------------------------
# CMS
# Uncomment this to hide CMS from module index pages
@ -606,87 +613,6 @@ def config(settings):
# Configure active statuses for shelter inspection tasks (subset of project.task_status_opts)
#settings.cr.shelter_inspection_task_active_statuses = (2, 3, 6)
# -------------------------------------------------------------------------
# Disaster Victim Registry / Case Management
# Uncomment to use the term Beneficiary instead of Case
#settings.dvr.label = "Beneficiary"
# Uncomment this to enable tracking of transfer origin/destination sites
#settings.dvr.track_transfer_sites = True
# Uncomment this to enable features to manage transferability of cases
#settings.dvr.manage_transferability = True
# Uncomment this to enable household size in cases, set to "auto" for automatic counting
#settings.dvr.household_size = True
# Uncomment this to expose flags to mark appointment types as mandatory
#settings.dvr.mandatory_appointments = True
# Uncomment this to have appointments with personal presence update last_seen_on
#settings.dvr.appointments_update_last_seen_on = True
# Uncomment this to automatically update the case status when appointments are completed
#settings.dvr.appointments_update_case_status = True
# Uncomment this to automatically close appointments when registering certain case events
#settings.dvr.case_events_close_appointments = True
# Uncomment this to have allowance payments update last_seen_on
#settings.dvr.payments_update_last_seen_on = True
# Uncomment this to use service types for group/case activites
#settings.dvr.activity_use_service_type = True
# Uncomment this to use sectors in group/case activities
#settings.dvr.activity_sectors = True
# Uncomment this to use case activity types
#settings.dvr.activity_types = True
# Uncomment this to use hierarchical case activity types
#settings.dvr.activity_types_hierarchical = True
# Uncomment this to use status field in case activities
#settings.dvr.case_activity_use_status = True
# Uncomment this to disable follow-up fields in case activities
#settings.dvr.case_activity_follow_up = False
# Uncomment this to include case activity docs on beneficiary documents-tab
#settings.dvr.case_include_activity_docs = True
# Uncomment this to include case group docs on beneficiary documents-tab
#settings.dvr.case_include_group_docs = True
# Uncomment this if Case activities use multiple Needs
#settings.dvr.case_activity_needs_multiple = True
# Uncomment this to use service types for needs
#settings.dvr_needs_use_service_type = True
# Uncomment this to use hierarchical need types
#settings.dvr.needs_hierarchical = True
# Uncomment this to use hierarchical vulnerability types
#settings.dvr.vulnerability_types_hierarchical = True
# Uncomment this to manage individual response actions in case activities
#settings.dvr.manage_response_actions = True
# Uncomment this to not use response action types
#settings.dvr.response_types = False
# Uncomment this to use response themes
#settings.dvr.response_themes = True
# Uncomment this to not use org-specific response themes
#settings.dvr.response_themes_org_specific = False
# Uncomment this to link response themes to org sectors
#settings.dvr.response_themes_sectors = True
# Uncomment this to link response themes to needs
#settings.dvr.response_themes_needs = True
# Uncomment this to automatically link responses to case activities
#settings.dvr.response_activity_autolink = True
# Uncomment this to activate features for response planning
#settings.dvr.response_planning = True
# Uncomment this to use a separate due-date for responses
#settings.dvr.response_due_date = True
# Uncomment this to use date+time for responses (instead of just date)
#settings.dvr.response_use_time = True
# Configure a regular expression pattern for ID Codes (QR Codes)
#settings.dvr.id_code_pattern = "(?P<label>[^,]*),(?P<first_name>[^,]*),(?P<last_name>[^,]*),(?P<date_of_birth>[^,]*)"
# Uncomment this to show a warning during event registration if the person is not currently checked-in
#settings.dvr.event_registration_checkin_warning = True
# Uncomment this to show profile pictures in event registration UI only on demand
#settings.dvr.event_registration_show_picture = False
# -------------------------------------------------------------------------
# Events
# Uncomment to use the term Disaster instead of Event
@ -928,9 +854,7 @@ def config(settings):
#settings.inv.warehouse_code_unique = True
# Uncomment to not track pack values
#settings.inv.track_pack_values = False
settings.inv.show_mode_of_transport = True
settings.inv.send_show_org = False
settings.inv.send_show_time_in = True
settings.inv.send_form_name = "Tally Out Sheet"
settings.inv.send_short_name = "TO"
settings.inv.send_ref_field_name = "Tally Out Number"
@ -962,89 +886,47 @@ def config(settings):
# }
# -------------------------------------------------------------------------
# Requests Management
# Uncomment to disable Inline Forms in Requests module
#settings.req.inline_forms = False
# Label for Inventory Requests
#settings.req.type_inv_label = "Donations"
# Label for People Requests
#settings.req.type_hrm_label = "Volunteers"
# Inventory Requisitions
# Uncomment to disable Inline Forms for Inventory Requisitions
#settings.inv.req_inline_forms = False
# Label for Requester
#settings.req.requester_label = "Site Contact"
# Uncomment to disable Recurring Request
#settings.req.recurring = False
#settings.req.requester_optional = True
# Uncomment if the User Account logging the Request is NOT normally the Requester
#settings.req.requester_is_author = False
#settings.inv.requester_label = "Site Contact"
# Uncomment to disable Recurring Inventory Requisitions
#settings.inv.req_recurring = False
#settings.inv.requester_optional = True
# Uncomment if the User Account logging the Inventory Requisitions is NOT normally the Requester
#settings.inv.requester_is_author = False
# Filter Requester as being from the Site
#settings.req.requester_from_site = True
#settings.inv.requester_from_site = True
# Set the Requester as being an HR for the Site if no HR record yet & as Site contact if none yet exists
#settings.req.requester_to_site = True
#settings.req.date_writable = False
# Allow the status for requests to be set manually,
#settings.inv.requester_to_site = True
#settings.inv.req_date_writable = False
# Allow the status for Inventory Requisitions to be set manually,
# rather than just automatically from commitments and shipments
#settings.req.status_writable = False
#settings.req.item_quantities_writable = True
#settings.req.skill_quantities_writable = True
#settings.req.show_quantity_transit = False
#settings.req.multiple_req_items = False
#settings.req.prompt_match = False
#settings.req.items_ask_purpose = False
#settings.inv.req_status_writable = False
#settings.inv.req_item_quantities_writable = True
#settings.inv.req_show_quantity_transit = False
#settings.inv.req_multiple_items = False
#settings.inv.req_prompt_match = False
#settings.inv.req_ask_purpose = False
# Uncomment to disable the Commit step in the workflow & simply move direct to Ship
#settings.req.use_commit = False
#settings.inv.req_use_commit = False
# Uncomment to have Donations include a 'Value' field
settings.req.commit_value = True
settings.inv.commit_value = True
# Uncomment to allow Donations to be made without a matching Request
#settings.req.commit_without_request = True
# Uncomment to Commit Named People rather than simply Anonymous Skills
#settings.req.commit_people = True
#settings.inv.commit_without_request = True
# Uncomment if the User Account logging the Commitment is NOT normally the Committer
#settings.req.comittter_is_author = False
# Should Requests ask whether Security is required?
#settings.req.ask_security = True
# Should Requests ask whether Transportation is required?
settings.req.ask_transport = True
#settings.req.use_req_number = False
#settings.req.generate_req_number = False
#settings.req.req_form_name = "Request Issue Form"
#settings.req.req_shortname = "RIS"
# Restrict the type of requests that can be made, valid values in the
# list are ("Stock", "People", "Other"). If this is commented out then
# all types will be valid.
#settings.req.req_type = ("Stock",)
# Uncomment to enable Summary 'Site Needs' tab for Offices/Facilities
settings.req.summary = True
#settings.inv.comittter_is_author = False
# Should Inventory Requisitions ask whether Security is required?
settings.inv.req_ask_security = True
# Should Inventory Requisitions ask whether Transportation is required?
settings.inv.req_ask_transport = True
#settings.inv.use_req_number = False
#settings.inv.generate_req_number = False
#settings.inv.req_form_name = "Request Issue Form"
#settings.inv.req_shortname = "RIS"
# Uncomment to restrict adding new commits to Completed commits
#settings.req.req_restrict_on_complete = True
# Custom Crud Strings for specific req_req types
#settings.req.req_crud_strings = dict()
#ADD_ITEM_REQUEST = T("Make a Request for Donations")
# req_req Crud Strings for Item Request (type=1)
#settings.req.req_crud_strings[1] = Storage(
# label_create = ADD_ITEM_REQUEST,
# title_display = T("Request for Donations Details"),
# title_list = T("Requests for Donations"),
# title_update = T("Edit Request for Donations"),
# label_list_button = T("List Requests for Donations"),
# label_delete_button = T("Delete Request for Donations"),
# msg_record_created = T("Request for Donations Added"),
# msg_record_modified = T("Request for Donations Updated"),
# msg_record_deleted = T("Request for Donations Canceled"),
# msg_list_empty = T("No Requests for Donations"))
#ADD_PEOPLE_REQUEST = T("Make a Request for Volunteers")
# req_req Crud Strings for People Request (type=3)
#settings.req.req_crud_strings[3] = Storage(
# label_create = ADD_PEOPLE_REQUEST,
# title_display = T("Request for Volunteers Details"),
# title_list = T("Requests for Volunteers"),
# title_update = T("Edit Request for Volunteers"),
# label_list_button = T("List Requests for Volunteers"),
# label_delete_button = T("Delete Request for Volunteers"),
# msg_record_created = T("Request for Volunteers Added"),
# msg_record_modified = T("Request for Volunteers Updated"),
# msg_record_deleted = T("Request for Volunteers Canceled"),
# msg_list_empty = T("No Requests for Volunteers"))
#settings.inv.req_restrict_on_complete = True
# -------------------------------------------------------------------------
# Supply
@ -1126,11 +1008,6 @@ def config(settings):
# NB Be very cautious about doing this (see docstring in modules/s3cfg.py)
#settings.project.task_status_opts =
# -------------------------------------------------------------------------
# Incidents
# Uncomment this to use vehicles when responding to Incident Reports
#settings.irs.vehicle = True
# -------------------------------------------------------------------------
# Transport
# Uncomment to make Airport codes unique
@ -1161,7 +1038,7 @@ def config(settings):
# -----------------------------------------------------------------------------
# XForms
# Configure xform resources (example)
#settings.xforms.resources = [("Request", "req_req")]
settings.xforms.resources = [("Request", "inv_req")]
# -------------------------------------------------------------------------
# Comment/uncomment modules here to disable/enable them
@ -1207,10 +1084,6 @@ def config(settings):
access = "|1|", # Only Administrators can see this module in the default menu & access the controller
module_type = None # This item is handled separately for the menu
)),
("tour", Storage(
name_nice = T("Guided Tour Functionality"),
module_type = None,
)),
("translate", Storage(
name_nice = T("Translation"),
#description = "Selective translation of strings based on module.",
@ -1339,7 +1212,7 @@ def config(settings):
restricted = True,
module_type = 5
)),
("hms", Storage(
("med", Storage(
name_nice = T("Hospitals"),
#description = "Helps to monitor status of hospitals",
restricted = True,
@ -1397,48 +1270,18 @@ def config(settings):
restricted = True,
module_type = 10
)),
("po", Storage(
name_nice = T("Population Outreach"),
#description = "Population Outreach",
restricted = True,
module_type = 10
)),
("security", Storage(
name_nice = T("Security"),
#description = "Security Management System",
restricted = True,
module_type = 10,
)),
# Vulnerability temporarily disabled - https://github.com/sahana/eden/issues/1562
#("vulnerability", Storage(
# name_nice = T("Vulnerability"),
# #description = "Manages vulnerability indicators",
# module_type = 10,
# )),
("work", Storage(
name_nice = T("Jobs"),
#description = "Simple Volunteer Jobs Management",
restricted = False,
module_type = None,
("vulnerability", Storage(
name_nice = T("Vulnerability"),
#description = "Manages vulnerability indicators",
restricted = True,
module_type = 10,
)),
# Deprecated: Replaced by BR
#("dvr", Storage(
# name_nice = T("Beneficiary Registry"),
# #description = "Disaster Victim Registry",
# module_type = 10
#)),
# Deprecated: Replaced by event
#("irs", Storage(
# name_nice = T("Incidents"),
# #description = "Incident Reporting System",
# module_type = 10
#)),
# Deprecated: Replaced by DC
#("survey", Storage(
# name_nice = T("Surveys"),
# #description = "Create, enter, and manage surveys.",
# module_type = 5,
#)),
# These are specialist modules
("cap", Storage(
name_nice = T("CAP"),
@ -1459,36 +1302,6 @@ def config(settings):
restricted = True,
module_type = 10,
)),
# Requires RPy2 & PostgreSQL
#("climate", Storage(
# name_nice = T("Climate"),
# #description = "Climate data portal",
# module_type = 10,
#)),
("delphi", Storage(
name_nice = T("Delphi Decision Maker"),
#description = "Supports the decision making of large groups of Crisis Management Experts by helping the groups create ranked list.",
restricted = True,
module_type = 10,
)),
# @ToDo: Port these Assessments to the Survey module
#("building", Storage(
# name_nice = T("Building Assessments"),
# #description = "Building Safety Assessments",
# module_type = 10,
#)),
# Deprecated by Surveys module
# - depends on CR, IRS & Impact
#("assess", Storage(
# name_nice = T("Assessments"),
# #description = "Rapid Assessments & Flexible Impact Assessments",
# module_type = 10,
#)),
#("impact", Storage(
# name_nice = T("Impacts"),
# #description = "Used by Assess",
# module_type = None,
#)),
#("ocr", Storage(
# name_nice = T("Optical Character Recognition"),
# #description = "Optical Character Recognition for reading the scanned handwritten paper forms.",

View File

@ -1,4 +1,7 @@
Name,Type,Enabled,Default
Bing Aerial,aerial,False,
Bing Hybrid,hybrid,False,
Bing Road,road,False,
Bing Aerial,Aerial,False,
Bing Aerial with Labels,AerialWithLabelsOnDemand,False,
Bing Roads,RoadOnDemand,False,
Bing Roads (Dark),CanvasDark,False,
Bing Roads (Light),CanvasLight,False,
Bing Roads (Gray),CanvasGray,False,

1 Name Type Enabled Default
2 Bing Aerial aerial Aerial False
3 Bing Hybrid Bing Aerial with Labels hybrid AerialWithLabelsOnDemand False
4 Bing Road Bing Roads road RoadOnDemand False
5 Bing Roads (Dark) CanvasDark False
6 Bing Roads (Light) CanvasLight False
7 Bing Roads (Gray) CanvasGray False

View File

@ -1,17 +1,20 @@
Name,Description,Controller,Function,Marker,GPS Marker,Popup Format,Attributes,Filter,Site,Points,Trackable,Style,Opacity,Folder,Visible,Enabled,Cluster Threshold,Refresh
Airports,All Active Airports,transport,airport,airport,Airport,{name} (T('Airport')),name,~.obsolete=False,,True,,,,,False,,,
Assets,,asset,asset,asset,Flag,{number} (T('Asset'))<br />{person_id},"number,person_id",,,True,True,,,,False,,,
Assets,,asset,asset,asset,Flag,{number} (T('Asset'))<br />{assigned_to_id},"number,assigned_to_id",,,True,True,,,,False,,,
Banks,All Active Banks,fin,bank,bank,Bank,{name} (T('Bank')),name,~.obsolete=False,,True,,,,,False,,,
Checkpoints,All Active Checkpoints,security,checkpoint,checkpoint,Toll Booth,{name} (T('Checkpoint')),name,~.active=True,,True,,,,,False,,,
Demographics,For summary page,stats,demographic_data,,,{location_id}: {value},"location_id,value",,,,,"[{'prop':'value','fillOpacity':0.5}]",0.5,,False,False,0,0
Heliports,All Active Heliports,transport,heliport,helicopter,Heliport,{name} (T('Heliport')),name,~.obsolete=False,,True,,,,,False,,,
Hospitals,All Active Medical Facilities,hms,hospital,hospital,Medical Facility,{name} (T('Hospital')),name,~.obsolete=False,,True,,,,,False,,,
Hospitals,All Active Medical Facilities,med,hospital,hospital,Medical Facility,{name} (T('Hospital')),name,~.obsolete=False,,True,,,,,False,,,
Incident Reports,,event,incident_report,incident,Danger Area,{name} (T('Incident'))<br />{incident_type_id},"name,incident_type_id",,,True,,,,,False,,,
Locations,Used by Location Details,gis,location,,,{name},"name,gis_feature_type",~.level__ne=None&~.end_date=None,,,,"[{'prop':'gis_feature_type','cat':1,'externalGraphic':'img/markers/marker_red.png'},{'prop':'gis_feature_type','cat':3,'fill':'00BFFF','fillOpacity':0.5},{'prop':'gis_feature_type','cat':6,'fill':'00BFFF','fillOpacity':0.5}]",0.9,,False,,0,0
Offices,All Active Offices,org,office,office,Building,{name} (T('Office'))<br />{organisation_id},"name,organisation_id",~.obsolete=False,,True,,,,,False,,,
PoIs,Points of Interest,gis,poi,,,{name} ({poi_type_id}),"name,poi_type_id",,,True,,,,,,False,,
Needs,All Open Needs,req,need,request,"Navaid, Red",{name} (T('Needs')),"name",~.status__ne=2,,,,,,,False,,,
Projects,,project,location,project,,{name} (T('Project'))<br />{location_id}<br />{multi_activity_type_id},"name,location_id,multi_activity_type_id",,,,,,,,False,,,
Requests,All Open Requests,req,req,request,"Navaid, Red",{req_ref} (T('Request'))<br />{site_id},"req_ref,site_id",~.fulfil_status__ne=2,True,,,,,,False,,,
Requisitions,All Open Requisitions,inv,req,request,"Navaid, Red",{req_ref} (T('Requisition'))<br />{site_id},"req_ref,site_id",~.fulfil_status__ne=2,True,,,,,,False,,,
Seaports,All Active Seaports,transport,seaport,port,Marina,{name} (T('Seaport')),name,~.obsolete=False,,True,,,,,False,,,
Shelters,All Active Shelters,cr,shelter,shelter,Campground,{name} (T('Shelter'))<br />T('Population') {population}<br />T('Capacity') {capacity_day},"name,population,capacity_day",~.status__ne=1,,True,,,,,False,,,
Shelters,All Active Shelters,cr,shelter,shelter,Campground,{name} (T('Shelter'))<br />T('Population') {population_day}<br />T('Capacity') {capacity_day},"name,shelter_details.population_day,shelter_details.capacity_day",shelter_details.status__ne=1,,True,,,,,False,,,
Staff,All Active Staff,hrm,staff,staff,"Contact, Dreadlocks",{person_id} (T('Staff'))<br />{job_title_id}<br />{organisation_id},"person_id,job_title_id,organisation_id",~.status=1,,True,True,,,,False,,,
Stock Items,Used for Search Results,inv,inv_item,,,{item_id} (T('Stock Item'))<br />{site_id}<br />{quantity} {item_pack_id}<br />T('Expires') {expiry_date},"item_id,site_id,quantity,item_pack_id,expiry_date",,,,,,,,False,False,,
Training Events,Used for Search Results,hrm,training_event,,,{course_id} (T('Training Event'))<br />{site_id}<br />{start_date},"course_id,site_id,start_date",,,True,,,,,False,False,,

1 Name Description Controller Function Marker GPS Marker Popup Format Attributes Filter Site Points Trackable Style Opacity Folder Visible Enabled Cluster Threshold Refresh
2 Airports All Active Airports transport airport airport Airport {name} (T('Airport')) name ~.obsolete=False True False
3 Assets asset asset asset Flag {number} (T('Asset'))<br />{person_id} {number} (T('Asset'))<br />{assigned_to_id} number,person_id number,assigned_to_id True True False
4 Banks All Active Banks fin bank bank Bank {name} (T('Bank')) name ~.obsolete=False True False
5 Checkpoints All Active Checkpoints security checkpoint checkpoint Toll Booth {name} (T('Checkpoint')) name ~.active=True True False
6 Demographics For summary page stats demographic_data {location_id}: {value} location_id,value [{'prop':'value','fillOpacity':0.5}] 0.5 False False 0 0
7 Heliports All Active Heliports transport heliport helicopter Heliport {name} (T('Heliport')) name ~.obsolete=False True False
8 Hospitals All Active Medical Facilities hms med hospital hospital Medical Facility {name} (T('Hospital')) name ~.obsolete=False True False
9 Incident Reports event incident_report incident Danger Area {name} (T('Incident'))<br />{incident_type_id} name,incident_type_id True False
10 Locations Used by Location Details gis location {name} name,gis_feature_type ~.level__ne=None&~.end_date=None [{'prop':'gis_feature_type','cat':1,'externalGraphic':'img/markers/marker_red.png'},{'prop':'gis_feature_type','cat':3,'fill':'00BFFF','fillOpacity':0.5},{'prop':'gis_feature_type','cat':6,'fill':'00BFFF','fillOpacity':0.5}] 0.9 False 0 0
11 Offices All Active Offices org office office Building {name} (T('Office'))<br />{organisation_id} name,organisation_id ~.obsolete=False True False
12 PoIs Points of Interest gis poi {name} ({poi_type_id}) name,poi_type_id True False
13 Needs All Open Needs req need request Navaid, Red {name} (T('Needs')) name ~.status__ne=2 False
14 Projects project location project {name} (T('Project'))<br />{location_id}<br />{multi_activity_type_id} name,location_id,multi_activity_type_id False
15 Requests Requisitions All Open Requests All Open Requisitions req inv req request Navaid, Red {req_ref} (T('Request'))<br />{site_id} {req_ref} (T('Requisition'))<br />{site_id} req_ref,site_id ~.fulfil_status__ne=2 True False
16 Seaports All Active Seaports transport seaport port Marina {name} (T('Seaport')) name ~.obsolete=False True False
17 Shelters All Active Shelters cr shelter shelter Campground {name} (T('Shelter'))<br />T('Population') {population}<br />T('Capacity') {capacity_day} {name} (T('Shelter'))<br />T('Population') {population_day}<br />T('Capacity') {capacity_day} name,population,capacity_day name,shelter_details.population_day,shelter_details.capacity_day ~.status__ne=1 shelter_details.status__ne=1 True False
18 Staff All Active Staff hrm staff staff Contact, Dreadlocks {person_id} (T('Staff'))<br />{job_title_id}<br />{organisation_id} person_id,job_title_id,organisation_id ~.status=1 True True False
19 Stock Items Used for Search Results inv inv_item {item_id} (T('Stock Item'))<br />{site_id}<br />{quantity} {item_pack_id}<br />T('Expires') {expiry_date} item_id,site_id,quantity,item_pack_id,expiry_date False False
20 Training Events Used for Search Results hrm training_event {course_id} (T('Training Event'))<br />{site_id}<br />{start_date} course_id,site_id,start_date True False False

View File

@ -1,8 +1,6 @@
Name,Description,Type,Enabled,Default
"Google Maps","Streets",maps,"False",
"Google Hybrid","Streets over Satellite imagery",hybrid,"False",
"Google Satellite","Satellite imagery",satellite,"False",
"Google Terrain","Streets over topography",terrain,"False",
"Google MapMaker","Community additions to streets. This is much more detailed than normal Google in some locations. It is incompatioble with Streetview.",mapmaker,"False",
"Google MapMapker Hybrid","Community additions to streets overlaid over Satellite imagery. This is much more detailed than normal Google in some locations. It is incompatioble with Streetview.",mapmakerhybrid,"False",
"Google Streetview","Streetview allows access to a 3D photographic panorama. It is incompatible with MapMaker layers.",streetview,"True",
Google Maps,Streets,roadmap,False,
Google Hybrid,Streets over Satellite imagery,hybrid,False,
Google Satellite,Satellite imagery,satellite,False,
Google Terrain,Streets over Topography,terrain,False,
Google Streetview,Streetview allows access to a 3D photographic panorama.,streetview,True,

1 Name Description Type Enabled Default
2 Google Maps Streets maps roadmap False
3 Google Hybrid Streets over Satellite imagery hybrid False
4 Google Satellite Satellite imagery satellite False
5 Google Terrain Streets over topography Streets over Topography terrain False
6 Google MapMaker Google Streetview Community additions to streets. This is much more detailed than normal Google in some locations. It is incompatioble with Streetview. Streetview allows access to a 3D photographic panorama. mapmaker streetview False True
Google MapMapker Hybrid Community additions to streets overlaid over Satellite imagery. This is much more detailed than normal Google in some locations. It is incompatioble with Streetview. mapmakerhybrid False
Google Streetview Streetview allows access to a 3D photographic panorama. It is incompatible with MapMaker layers. streetview True

View File

@ -1,3 +1,6 @@
Name,Description,Type,Config,Folder,Enabled,Visible
"Current Weather",,city,,Weather,"True","False"
"Weather Stations",,station,,Weather,"True","False"
"Clouds",,clouds_new,,Weather,"True","False"
"Precipitation",,precipitation_new,,Weather,"True","False"
"Sea level pressure",,pressure_new,,Weather,"True","False"
"Temperature",,temp_new,,Weather,"True","False"
"Wind speed",,wind_new,,Weather,"True","False"

1 Name Description Type Config Folder Enabled Visible
2 Current Weather Clouds city clouds_new Weather True False
3 Weather Stations Precipitation station precipitation_new Weather True False
4 Sea level pressure pressure_new Weather True False
5 Temperature temp_new Weather True False
6 Wind speed wind_new Weather True False

View File

@ -10,6 +10,6 @@ Fires (Last 24 Hours),Provides MODIS (MODIS Rapid Response Collection) Fires/Hot
Fires (Last 48 Hours),Provides MODIS (MODIS Rapid Response Collection) Fires/Hotspots for the past 48 hours. Please visit http://maps.geog.umd.edu/firms/ for more information,http://firefly.geog.umd.edu/wms/wms?,fires48,Hazards,WGS84,True,False,False,True,,image/png,False,,,
Population Density 2010 (Alternate server),GPWv3,http://sedac.ciesin.columbia.edu/geoserver/wms?,gpw-v3:gpw-v3-population-density-future-estimates_2010,Population,WGS84,True,False,False,True,0.8,image/png,False,,,
Population Density 2000 (Persons per km2),GRUMPv1,http://beta.sedac.ciesin.columbia.edu:8080/geoserver/wms?,grump-v1:grump-v1-population-density_2000 ,Population,WGS84,True,False,False,True,0.8,image/png,False,,,
Precipitation forecast,,http://geo.weatheroffice.gc.ca/geomet/?,GDPS.ETA_PR,Weather,,True,False,False,True,0.4,image/png,False,http://geo.weatheroffice.gc.ca/geomet/?LANG=E%26SERVICE=WMS%26VERSION=1.1.1%26REQUEST=GetLegendGraphic%26STYLE=PRECIPMM%26LAYER=GDPS.ETA_PR%26format=image/png,PRECIPMM,
Cloud forecast,,http://geo.weatheroffice.gc.ca/geomet/?,GDPS.ETA_NT,Weather,,True,False,False,True,0.4,image/png,False,http://geo.weatheroffice.gc.ca/geomet/?LANG=E%26SERVICE=WMS%26VERSION=1.1.1%26REQUEST=GetLegendGraphic%26STYLE=CLOUD%26LAYER=GDPS.ETA_NT%26format=image/png,CLOUD,
Precipitation forecast,,http://geo.weatheroffice.gc.ca/geomet/?,GDPS.ETA_PR,Weather,,False,False,False,True,0.4,image/png,False,http://geo.weatheroffice.gc.ca/geomet/?LANG=E%26SERVICE=WMS%26VERSION=1.1.1%26REQUEST=GetLegendGraphic%26STYLE=PRECIPMM%26LAYER=GDPS.ETA_PR%26format=image/png,PRECIPMM,
Cloud forecast,,http://geo.weatheroffice.gc.ca/geomet/?,GDPS.ETA_NT,Weather,,False,False,False,True,0.4,image/png,False,http://geo.weatheroffice.gc.ca/geomet/?LANG=E%26SERVICE=WMS%26VERSION=1.1.1%26REQUEST=GetLegendGraphic%26STYLE=CLOUD%26LAYER=GDPS.ETA_NT%26format=image/png,CLOUD,
Sea Level: Rise of 2m,Data from https://www.cresis.ku.edu/data/sea-level-rise-maps,http://lacrmt.sahanafoundation.org:8080/geoserver/wms?,lacrmt:inund2,Hazards,,False,False,False,True,0.4,image/png,False,,,

1 Name Description URL Layers Folder Config Enabled Visible Base Transparent Opacity Format Queryable LegendURL Style Map
10 Fires (Last 48 Hours) Provides MODIS (MODIS Rapid Response Collection) Fires/Hotspots for the past 48 hours. Please visit http://maps.geog.umd.edu/firms/ for more information http://firefly.geog.umd.edu/wms/wms? fires48 Hazards WGS84 True False False True image/png False
11 Population Density 2010 (Alternate server) GPWv3 http://sedac.ciesin.columbia.edu/geoserver/wms? gpw-v3:gpw-v3-population-density-future-estimates_2010 Population WGS84 True False False True 0.8 image/png False
12 Population Density 2000 (Persons per km2) GRUMPv1 http://beta.sedac.ciesin.columbia.edu:8080/geoserver/wms? grump-v1:grump-v1-population-density_2000 Population WGS84 True False False True 0.8 image/png False
13 Precipitation forecast http://geo.weatheroffice.gc.ca/geomet/? GDPS.ETA_PR Weather True False False False True 0.4 image/png False http://geo.weatheroffice.gc.ca/geomet/?LANG=E%26SERVICE=WMS%26VERSION=1.1.1%26REQUEST=GetLegendGraphic%26STYLE=PRECIPMM%26LAYER=GDPS.ETA_PR%26format=image/png PRECIPMM
14 Cloud forecast http://geo.weatheroffice.gc.ca/geomet/? GDPS.ETA_NT Weather True False False False True 0.4 image/png False http://geo.weatheroffice.gc.ca/geomet/?LANG=E%26SERVICE=WMS%26VERSION=1.1.1%26REQUEST=GetLegendGraphic%26STYLE=CLOUD%26LAYER=GDPS.ETA_NT%26format=image/png CLOUD
15 Sea Level: Rise of 2m Data from https://www.cresis.ku.edu/data/sea-level-rise-maps http://lacrmt.sahanafoundation.org:8080/geoserver/wms? lacrmt:inund2 Hazards False False False True 0.4 image/png False

View File

@ -9,7 +9,10 @@ asset,40,40,"ersSymbolsV0202/Operations_S1/Emergency_Staging_Areas_S1.png"
asset_green,40,40,"ersSymbolsV0202/Operations_S1/Emergency_Staging_Areas_S1_green.png"
asset_red,40,40,"ersSymbolsV0202/Operations_S1/Emergency_Staging_Areas_S1_red.png"
asset_yellow,40,40,"ersSymbolsV0202/Operations_S1/Emergency_Staging_Areas_S1_yellow.png"
bank,33,44,"ersSymbolsV0202/Infrastructures_S1/Bank_Banks_S1.png
bridge,33,44,"ersSymbolsV0202/Infrastructures_S1/Trans_Bridge_S1.png"
broker,33,44,"ersSymbolsV0202/Infrastructures_S1/Bank_Financial_Services_Other_S1.png"
checkpoint,40,40,"ersSymbolsV0202/Operations_S1/Law_Border_Patrol_S1.png"
church,33,44,"ersSymbolsV0202/Infrastructures_S1/Public_Venue_Church_S1.png"
earthquake,50,50,"ersSymbolsV0202/Natural_Events/Geo_Earth_Quake_Epicenter.png"
elderly,33,44,"ersSymbolsV0202/Infrastructures_S1/Special_Needs_Elder_Care_S1.png"
@ -31,6 +34,7 @@ hospital_red,40,40,"ersSymbolsV0202/Operations_S1/E_Med_Hospital_S1_Red.png"
hospital_yellow,40,40,"ersSymbolsV0202/Operations_S1/E_Med_Hospital_S1_Yellow.png"
incident,50,50,"ersSymbolsV0202/Incidents/Incident_Theme.png"
information,32,32,Information.png
med_contact,40,40,40,40,"ersSymbolsV0202/Operations_S1/E_Med_Triage_S1.png"
mobile_phone,40,40,Mobile_Phone.png
mosque,33,44,"ersSymbolsV0202/Infrastructures_S1/Public_Venue_Mosque_S1.png"
news,48,48,News.png
@ -39,6 +43,7 @@ office_green,40,40,"ersSymbolsV0202/Operations_S1/Emergency_Operations_Center_S1
office_red,40,40,"ersSymbolsV0202/Operations_S1/Emergency_Operations_Center_S1_red.png"
office_yellow,40,40,"ersSymbolsV0202/Operations_S1/Emergency_Operations_Center_S1_yellow.png"
orphanage,33,44,"ersSymbolsV0202/Infrastructures_S1/Special_Needs_Child_Day_Care_S1.png"
pharmacy,40,40,40,40,"ersSymbolsV0202/Operations_S1/E_Med_Pharmacies_S1.png"
phone,10,5,SMS_Message_Phone.png
police_station,40,40,"ersSymbolsV0202/Operations_S1/Law_Enforcement_Theme_S1.png"
port,33,44,"ersSymbolsV0202/Infrastructures_S1/Trans_Port_S1.png"

Can't render this file because it contains an unexpected character in line 13 and column 14.

View File

@ -1,128 +1,128 @@
Type,Comments,KV:XX
"Animal Die Off",,"EMS:animalHealth.animalDieOff"
"Animal Feed",,"EMS:animalHealth.animalFeed"
"Aircraft Crash",,"EMS:aviation.aircraftCrash"
"Aircraft Hijacking",,"EMS:aviation.aircraftHijacking"
"Airport Closure",,"EMS:aviation.airportClosure"
"Airspace Closure",,"EMS:aviation.airspaceClosure"
"Notice to Airmen",,"EMS:aviation.noticeToAirmen"
"Space Debris",,"EMS:aviation.spaceDebris"
"Demonstrations",,"EMS:civil.demonstrations"
"Dignitary Visit",,"EMS:civil.dignitaryVisit"
"Displaced Populations",,"EMS:civil.displacedPopulations"
"Civil Emergency",,"EMS:civil.emergency"
"Looting",,"EMS:civil.looting"
"Public Event",,"EMS:civil.publicEvent"
"Riot",,"EMS:civil.riot"
"Volunteer Request",,"EMS:civil.volunteerRequest"
"Crime",,"EMS:crime"
"Bomb",,"EMS:crime.bomb"
"Bomb Explosion",,"EMS:crime.bombExplosion"
"Bomb Threat",,"EMS:crime.bombThreat"
"Dangerous Person",,"EMS:crime.dangerousPerson"
"Drugs",,"EMS:crime.drugs"
"Home Crime",,"EMS:crime.homeCrime"
"Illegal Immigrant",,"EMS:crime.illegalImmigrant"
"Industrial Crime",,"EMS:crime.industrialCrime"
"Poisoning",,"EMS:crime.poisoning"
"Retail Crime",,"EMS:crime.retailCrime"
"Shooting",,"EMS:crime.shooting"
"Stowaway",,"EMS:crime.stowaway"
"Terrorism",,"EMS:crime.terrorism"
"Vehicle Crime",,"EMS:crime.vehicleCrime"
"Fire",,"EMS:fire"
"Forest Fire",,"EMS:fire.forestFire"
"Hot Spot",,"EMS:fire.hotSpot"
"Industry Fire",,"EMS:fire.industryFire"
"Smoke",,"EMS:fire.smoke"
"Urban Fire",,"EMS:fire.urbanFire"
"Wild Fire",,"EMS:fire.wildFire"
"Flood",,"EMS:flood"
"Dam Overflow",,"EMS:flood.damOverflow"
"Flash Flood",,"EMS:flood.flashFlood"
"High Water",,"EMS:flood.highWater"
"Overland Flow Flood",,"EMS:flood.overlandFlowFlood"
"Tsunami",,"EMS:flood.tsunami"
"Avalanche",,"EMS:geophysical.avalanche"
"Earthquake",,"EMS:geophysical.earthquake"
"Lahar",,"EMS:geophysical.lahar"
"Landslide",,"EMS:geophysical.landslide"
"Magnetic Storm",,"EMS:geophysical.magneticStorm"
"Meteorite",,"EMS:geophysical.meteorite"
"Pyroclastic Flow",,"EMS:geophysical.pyroclasticFlow"
"Pyroclastic Surge",,"EMS:geophysical.pyroclasticSurge"
"Volcanic Ash Cloud",,"EMS:geophysical.volcanicAshCloud"
"Volcanic Event",,"EMS:geophysical.volcanicEvent"
"Hazardous Material",,"EMS:hazardousMaterial"
"Biological Hazard",,"EMS:hazardousMaterial.biologicalHazard"
"Chemical Hazard",,"EMS:hazardousMaterial.chemicalHazard"
"Explosive Hazard",,"EMS:hazardousMaterial.explosiveHazard"
"Falling Object Hazard",,"EMS:hazardousMaterial.fallingObjectHazard"
"Infectious Disease (Hazardous Material)",,"EMS:hazardousMaterial.infectiousDisease"
"Poisonous Gas",,"EMS:hazardousMaterial.poisonousGas"
"Radiological Hazard",,"EMS:hazardousMaterial.radiologicalHazard"
"Infectious Disease",,"EMS:health.infectiousDisease"
"Infestation",,"EMS:health.infestation"
"Iceberg",,"EMS:ice.iceberg"
"Ice Pressure",,"EMS:ice.icePressure"
"Rapid Close Lead",,"EMS:ice.rapidCloseLead"
"Special Ice",,"EMS:ice.specialIce"
"Marine Security",,"EMS:marine.marineSecurity"
"Nautical Accident",,"EMS:marine.nauticalAccident"
"Nautical Hijacking",,"EMS:marine.nauticalHijacking"
"Port Closure",,"EMS:marine.portClosure"
"Special Marine",,"EMS:marine.specialMarine"
"Blizzard",,"EMS:meteorological.blizzard"
"Blowing Snow",,"EMS:meteorological.blowingSnow"
"Drought",,"EMS:meteorological.drought"
"Dust Storm",,"EMS:meteorological.dustStorm"
"Fog",,"EMS:meteorological.fog"
"Freezing Drizzle",,"EMS:meteorological.freezingDrizzle"
"Freezing Rain",,"EMS:meteorological.freezingRain"
"Freezing Spray",,"EMS:meteorological.freezingSpray"
"Hail",,"EMS:meteorological.hail"
"Hurricane",,"EMS:meteorological.hurricane"
"Rain Fall",,"EMS:meteorological.rainFall"
"Snow Fall",,"EMS:meteorological.snowFall"
"Snow Squall",,"EMS:meteorological.snowSquall"
"Squall",,"EMS:meteorological.squall"
"Storm Surge",,"EMS:meteorological.stormSurge"
"Thunderstorm",,"EMS:meteorological.thunderstorm"
"Tornado",,"EMS:meteorological.tornado"
"Tropical Storm",,"EMS:meteorological.tropicalStorm"
"Waterspout",,"EMS:meteorological.waterspout"
"Winter Storm",,"EMS:meteorological.winterStorm"
"Missing Person",,"EMS:missingPerson"
"Child Abduction Emergency","http://en.wikipedia.org/wiki/Amber_Alert","EMS:missingPerson.amberAlert"
"Missing Vulnerable Person",,"EMS:missingPerson.missingVulnerablePerson"
"Missing Senior Citizen","http://en.wikipedia.org/wiki/Silver_Alert","EMS:missingPerson.silver"
"Emergency Support Facility",,"EMS:publicService.emergencySupportFacility"
"Emergency Support Service",,"EMS:publicService.emergencySupportService"
"School Closure",,"EMS:publicService.schoolClosure"
"School Lockdown",,"EMS:publicService.schoolLockdown"
"Service or Facility",,"EMS:publicService.serviceOrFacility"
"Transit",,"EMS:publicService.transit"
"Railway Accident",,"EMS:railway.railwayAccident"
"Railway Hijacking",,"EMS:railway.railwayHijacking"
"Bridge Closed",,"EMS:roadway.bridgeClosure"
"Hazardous Road Conditions",,"EMS:roadway.hazardousRoadConditions"
"Road Accident",,"EMS:roadway.roadwayAccident"
"Road Closed",,"EMS:roadway.roadwayClosure"
"Road Delay",,"EMS:roadway.roadwayDelay"
"Road Hijacking",,"EMS:roadway.roadwayHijacking"
"Road Usage Condition",,"EMS:roadway.roadwayUsageCondition"
"Traffic Report",,"EMS:roadway.trafficReport"
"Arctic Outflow",,"EMS:temperature.arcticOutflow"
"Cold Wave",,"EMS:temperature.coldWave"
"Flash Freeze",,"EMS:temperature.flashFreeze"
"Frost",,"EMS:temperature.frost"
"Heat and Humidity",,"EMS:temperature.heatAndHumidity"
"Heat Wave",,"EMS:temperature.heatWave"
"Wind Chill",,"EMS:temperature.windChill"
"Gale Wind",,"EMS:wind.galeWind"
"Hurricane Force Wind",,"EMS:wind.hurricaneForceWind"
"Storm Force Wind",,"EMS:wind.stormForceWind"
"Strong Wind",,"EMS:wind.strongWind"
"Building Collapsed",,,
"People Trapped",,,
"Power Failure",,,
Type,Comments,KV:EMS
"Animal Die Off",,"animalHealth.animalDieOff"
"Animal Feed",,"animalHealth.animalFeed"
"Aircraft Crash",,"aviation.aircraftCrash"
"Aircraft Hijacking",,"aviation.aircraftHijacking"
"Airport Closure",,"aviation.airportClosure"
"Airspace Closure",,"aviation.airspaceClosure"
"Notice to Airmen",,"aviation.noticeToAirmen"
"Space Debris",,"aviation.spaceDebris"
"Demonstrations",,"civil.demonstrations"
"Dignitary Visit",,"civil.dignitaryVisit"
"Displaced Populations",,"civil.displacedPopulations"
"Civil Emergency",,"civil.emergency"
"Looting",,"civil.looting"
"Public Event",,"civil.publicEvent"
"Riot",,"civil.riot"
"Volunteer Request",,"civil.volunteerRequest"
"Crime",,"crime"
"Bomb",,"crime.bomb"
"Bomb Explosion",,"crime.bombExplosion"
"Bomb Threat",,"crime.bombThreat"
"Dangerous Person",,"crime.dangerousPerson"
"Drugs",,"crime.drugs"
"Home Crime",,"crime.homeCrime"
"Illegal Immigrant",,"crime.illegalImmigrant"
"Industrial Crime",,"crime.industrialCrime"
"Poisoning",,"crime.poisoning"
"Retail Crime",,"crime.retailCrime"
"Shooting",,"crime.shooting"
"Stowaway",,"crime.stowaway"
"Terrorism",,"crime.terrorism"
"Vehicle Crime",,"crime.vehicleCrime"
"Fire",,"fire"
"Forest Fire",,"fire.forestFire"
"Hot Spot",,"fire.hotSpot"
"Industry Fire",,"fire.industryFire"
"Smoke",,"fire.smoke"
"Urban Fire",,"fire.urbanFire"
"Wild Fire",,"fire.wildFire"
"Flood",,"flood"
"Dam Overflow",,"flood.damOverflow"
"Flash Flood",,"flood.flashFlood"
"High Water",,"flood.highWater"
"Overland Flow Flood",,"flood.overlandFlowFlood"
"Tsunami",,"flood.tsunami"
"Avalanche",,"geophysical.avalanche"
"Earthquake",,"geophysical.earthquake"
"Lahar",,"geophysical.lahar"
"Landslide",,"geophysical.landslide"
"Magnetic Storm",,"geophysical.magneticStorm"
"Meteorite",,"geophysical.meteorite"
"Pyroclastic Flow",,"geophysical.pyroclasticFlow"
"Pyroclastic Surge",,"geophysical.pyroclasticSurge"
"Volcanic Ash Cloud",,"geophysical.volcanicAshCloud"
"Volcanic Event",,"geophysical.volcanicEvent"
"Hazardous Material",,"hazardousMaterial"
"Biological Hazard",,"hazardousMaterial.biologicalHazard"
"Chemical Hazard",,"hazardousMaterial.chemicalHazard"
"Explosive Hazard",,"hazardousMaterial.explosiveHazard"
"Falling Object Hazard",,"hazardousMaterial.fallingObjectHazard"
"Infectious Disease (Hazardous Material)",,"hazardousMaterial.infectiousDisease"
"Poisonous Gas",,"hazardousMaterial.poisonousGas"
"Radiological Hazard",,"hazardousMaterial.radiologicalHazard"
"Infectious Disease",,"health.infectiousDisease"
"Infestation",,"health.infestation"
"Iceberg",,"ice.iceberg"
"Ice Pressure",,"ice.icePressure"
"Rapid Close Lead",,"ice.rapidCloseLead"
"Special Ice",,"ice.specialIce"
"Marine Security",,"marine.marineSecurity"
"Nautical Accident",,"marine.nauticalAccident"
"Nautical Hijacking",,"marine.nauticalHijacking"
"Port Closure",,"marine.portClosure"
"Special Marine",,"marine.specialMarine"
"Blizzard",,"meteorological.blizzard"
"Blowing Snow",,"meteorological.blowingSnow"
"Drought",,"meteorological.drought"
"Dust Storm",,"meteorological.dustStorm"
"Fog",,"meteorological.fog"
"Freezing Drizzle",,"meteorological.freezingDrizzle"
"Freezing Rain",,"meteorological.freezingRain"
"Freezing Spray",,"meteorological.freezingSpray"
"Hail",,"meteorological.hail"
"Hurricane",,"meteorological.hurricane"
"Rain Fall",,"meteorological.rainFall"
"Snow Fall",,"meteorological.snowFall"
"Snow Squall",,"meteorological.snowSquall"
"Squall",,"meteorological.squall"
"Storm Surge",,"meteorological.stormSurge"
"Thunderstorm",,"meteorological.thunderstorm"
"Tornado",,"meteorological.tornado"
"Tropical Storm",,"meteorological.tropicalStorm"
"Waterspout",,"meteorological.waterspout"
"Winter Storm",,"meteorological.winterStorm"
"Missing Person",,"missingPerson"
"Child Abduction Emergency","http://en.wikipedia.org/wiki/Amber_Alert","missingPerson.amberAlert"
"Missing Vulnerable Person",,"missingPerson.missingVulnerablePerson"
"Missing Senior Citizen","http://en.wikipedia.org/wiki/Silver_Alert","missingPerson.silver"
"Emergency Support Facility",,"publicService.emergencySupportFacility"
"Emergency Support Service",,"publicService.emergencySupportService"
"School Closure",,"publicService.schoolClosure"
"School Lockdown",,"publicService.schoolLockdown"
"Service or Facility",,"publicService.serviceOrFacility"
"Transit",,"publicService.transit"
"Railway Accident",,"railway.railwayAccident"
"Railway Hijacking",,"railway.railwayHijacking"
"Bridge Closed",,"roadway.bridgeClosure"
"Hazardous Road Conditions",,"roadway.hazardousRoadConditions"
"Road Accident",,"roadway.roadwayAccident"
"Road Closed",,"roadway.roadwayClosure"
"Road Delay",,"roadway.roadwayDelay"
"Road Hijacking",,"roadway.roadwayHijacking"
"Road Usage Condition",,"roadway.roadwayUsageCondition"
"Traffic Report",,"roadway.trafficReport"
"Arctic Outflow",,"temperature.arcticOutflow"
"Cold Wave",,"temperature.coldWave"
"Flash Freeze",,"temperature.flashFreeze"
"Frost",,"temperature.frost"
"Heat and Humidity",,"temperature.heatAndHumidity"
"Heat Wave",,"temperature.heatWave"
"Wind Chill",,"temperature.windChill"
"Gale Wind",,"wind.galeWind"
"Hurricane Force Wind",,"wind.hurricaneForceWind"
"Storm Force Wind",,"wind.stormForceWind"
"Strong Wind",,"wind.strongWind"
"Building Collapsed",,"other.buildingCollapsed"
"People Trapped",,"other.peopleTrapped"
"Power Failure",,"other.powerFailure"

Can't render this file because it has a wrong number of fields in line 126.

View File

@ -1,2 +0,0 @@
First Name,Last Name,Email,Password,Role,Organisation
Admin,User,${SAHANA_ADMIN_USER},${SAHANA_ADMIN_PWD},ADMIN,
1 First Name Last Name Email Password Role Organisation
2 Admin User ${SAHANA_ADMIN_USER} ${SAHANA_ADMIN_PWD} ADMIN

View File

@ -5,7 +5,7 @@
Template-specific Monitoring Tasks are defined here.
@copyright: 2014-2020 (c) Sahana Software Foundation
@copyright: 2014-2021 (c) Sahana Software Foundation
@license: MIT
Permission is hereby granted, free of charge, to any person
@ -55,7 +55,7 @@ INSTANCE_TYPES = {"prod": 1,
}
# =============================================================================
class S3Monitor(object):
class S3Monitor:
"""
Monitoring Check Scripts
"""

View File

@ -5,7 +5,7 @@
Template-specific Message Parsers are defined here.
@copyright: 2012-2020 (c) Sahana Software Foundation
@copyright: 2012-2021 (c) Sahana Software Foundation
@license: MIT
Permission is hereby granted, free of charge, to any person
@ -50,7 +50,7 @@ from s3.s3parser import S3Parsing
from s3.s3utils import soundex
# =============================================================================
class S3Parser(object):
class S3Parser:
"""
Message Parsing Template
"""
@ -72,7 +72,7 @@ class S3Parser(object):
message_id = message.message_id
table = s3db.msg_email
record = db(table.message_id == message_id).select(table.raw,
limitby=(0, 1)
limitby = (0, 1)
).first()
if not record:
return reply
@ -95,7 +95,8 @@ class S3Parser(object):
# Update the Run entry to show that we have received the reply OK
rtable = s3db.monitor_run
db(rtable.id == run_id).update(result = "Reply Received",
status = 1)
status = 1,
)
return reply
else:
@ -156,12 +157,17 @@ class S3Parser(object):
# # Check when account was created
# (Note that it is still possible to game this - plausible accounts can be purchased)
ktable = s3db.msg_keyword
keywords = db(ktable.deleted == False).select(ktable.id,
ktable.keyword,
ktable.incident_type_id,
cache=cache)
incident_type_represent = S3Represent(lookup="event_incident_type")
# NB This just allows a single Keyword per Incident Type
# - if more are needed then use something like tag.like("KW%")
ttable = s3db.event_incident_type_tag
query = (ttable.tag == "keyword") & \
(ttable.deleted == False)
keywords = db(query).select(#ttable.id,
ttable.value,
ttable.incident_type_id,
cache = cache,
)
incident_type_represent = S3Represent(lookup = "event_incident_type")
if NLTK:
# Lookup synonyms
# @ToDo: Cache
@ -169,22 +175,23 @@ class S3Parser(object):
for kw in keywords:
syns = []
try:
synsets = wn.synsets(kw.keyword)
synsets = wn.synsets(kw.value)
for synset in synsets:
syns += [lemma.name for lemma in synset.lemmas]
except LookupError:
nltk.download("wordnet")
synsets = wn.synsets(kw.keyword)
synsets = wn.synsets(kw.value)
for synset in synsets:
syns += [lemma.name for lemma in synset.lemmas]
synonyms[kw.keyword.lower()] = syns
synonyms[kw.value.lower()] = syns
ltable = s3db.gis_location
query = (ltable.deleted != True) & \
(ltable.name != None)
locs = db(query).select(ltable.id,
ltable.name,
cache=cache)
cache = cache,
)
lat = lon = None
location_id = None
loc_matches = 0
@ -242,7 +249,7 @@ class S3Parser(object):
if not skip:
for kw in keywords:
_word = kw.keyword.lower()
_word = kw.value.lower()
if _word == word:
# Check for negation
if index and words[index - 1].lower() == "no":
@ -284,7 +291,8 @@ class S3Parser(object):
if not loc_matches or loc_matches > 1:
if lat and lon:
location_id = ltable.insert(lat = lat,
lon = lon)
lon = lon,
)
elif service == "twitter":
# @ToDo: Use Geolocation of Tweet
#location_id =
@ -419,8 +427,8 @@ class S3Parser(object):
result = []
# Hospital Search [example: get name hospital facility status ]
table = s3db.hms_hospital
stable = s3db.hms_status
table = s3db.med_hospital
stable = s3db.med_hospital_status
query = (table.deleted == False) & \
(current.auth.s3_accessible_query("read", table))
rows = db(query).select(table.id,

View File

@ -16,7 +16,6 @@
# =============================================================================
# Roles
*,import_role,auth_roles.csv
auth,user,masterUsers.csv,user.xsl
# GIS
# Markers
gis,marker,gis_marker.csv,marker.xsl