This work is closely coupled with work on [ADL](https://github.com/simon-brooke/adl), q.v. At present ADL largely supports this project.
This commit is contained in:
parent
79bf3ed7eb
commit
85b54fbd60
2
.gitignore
vendored
2
.gitignore
vendored
|
@ -21,4 +21,4 @@ pom.xml.asc
|
|||
*-init.clj
|
||||
profiles\.clj
|
||||
.bowerrc
|
||||
bower.json
|
||||
bower.json
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
-- File queries.sql
|
||||
-- autogenerated by adl.to-hugsql-queries at
|
||||
-- 2018-05-26T15:03:25.295Z
|
||||
-- 2018-06-05T12:33:53.043Z
|
||||
-- See [Application Description Language](https://github.com/simon-brooke/adl).
|
||||
|
||||
|
||||
|
||||
-- :name create-address! :! :n
|
||||
-- :name create-address! :! :n
|
||||
-- :doc creates a new address record
|
||||
INSERT INTO addresses (address,
|
||||
postcode,
|
||||
|
@ -21,13 +21,13 @@ VALUES (:address,
|
|||
:longitude)
|
||||
returning id
|
||||
|
||||
-- :name create-authority! :! :n
|
||||
-- :name create-authority! :! :n
|
||||
-- :doc creates a new authority record
|
||||
INSERT INTO authorities (id)
|
||||
VALUES (:id)
|
||||
returning id
|
||||
|
||||
-- :name create-canvasser! :! :n
|
||||
-- :name create-canvasser! :! :n
|
||||
-- :doc creates a new canvasser record
|
||||
INSERT INTO canvassers (username,
|
||||
fullname,
|
||||
|
@ -36,7 +36,8 @@ INSERT INTO canvassers (username,
|
|||
phone,
|
||||
email,
|
||||
authority_id,
|
||||
authorised)
|
||||
authorised,
|
||||
roles)
|
||||
VALUES (:username,
|
||||
:fullname,
|
||||
:elector_id,
|
||||
|
@ -44,16 +45,17 @@ VALUES (:username,
|
|||
:phone,
|
||||
:email,
|
||||
:authority_id,
|
||||
:authorised)
|
||||
:authorised,
|
||||
:roles)
|
||||
returning id
|
||||
|
||||
-- :name create-district! :! :n
|
||||
-- :name create-district! :! :n
|
||||
-- :doc creates a new district record
|
||||
INSERT INTO districts (name)
|
||||
VALUES (:name)
|
||||
returning id
|
||||
|
||||
-- :name create-dwelling! :! :n
|
||||
-- :name create-dwelling! :! :n
|
||||
-- :doc creates a new dwelling record
|
||||
INSERT INTO dwellings (address_id,
|
||||
sub-address)
|
||||
|
@ -61,7 +63,7 @@ VALUES (:address_id,
|
|||
:sub-address)
|
||||
returning id
|
||||
|
||||
-- :name create-elector! :! :n
|
||||
-- :name create-elector! :! :n
|
||||
-- :doc creates a new elector record
|
||||
INSERT INTO electors (name,
|
||||
dwelling_id,
|
||||
|
@ -75,7 +77,7 @@ VALUES (:name,
|
|||
:gender)
|
||||
returning id
|
||||
|
||||
-- :name create-followupaction! :! :n
|
||||
-- :name create-followupaction! :! :n
|
||||
-- :doc creates a new followupaction record
|
||||
INSERT INTO followupactions (request_id,
|
||||
actor,
|
||||
|
@ -89,13 +91,13 @@ VALUES (:request_id,
|
|||
:closed)
|
||||
returning id
|
||||
|
||||
-- :name create-followupmethod! :! :n
|
||||
-- :name create-followupmethod! :! :n
|
||||
-- :doc creates a new followupmethod record
|
||||
INSERT INTO followupmethods (id)
|
||||
VALUES (:id)
|
||||
returning id
|
||||
|
||||
-- :name create-followuprequest! :! :n
|
||||
-- :name create-followuprequest! :! :n
|
||||
-- :doc creates a new followuprequest record
|
||||
INSERT INTO followuprequests (elector_id,
|
||||
visit_id,
|
||||
|
@ -107,13 +109,13 @@ VALUES (:elector_id,
|
|||
:method_id)
|
||||
returning id
|
||||
|
||||
-- :name create-gender! :! :n
|
||||
-- :name create-gender! :! :n
|
||||
-- :doc creates a new gender record
|
||||
INSERT INTO genders (id)
|
||||
VALUES (:id)
|
||||
returning id
|
||||
|
||||
-- :name create-intention! :! :n
|
||||
-- :name create-intention! :! :n
|
||||
-- :doc creates a new intention record
|
||||
INSERT INTO intentions (visit_id,
|
||||
elector_id,
|
||||
|
@ -123,7 +125,7 @@ VALUES (:visit_id,
|
|||
:option_id)
|
||||
returning Id
|
||||
|
||||
-- :name create-issue! :! :n
|
||||
-- :name create-issue! :! :n
|
||||
-- :doc creates a new issue record
|
||||
INSERT INTO issues (url,
|
||||
current,
|
||||
|
@ -133,8 +135,8 @@ VALUES (:url,
|
|||
:id)
|
||||
returning id
|
||||
|
||||
-- :name create-issueexpertis! :! :n
|
||||
-- :doc creates a new issueexpertis record
|
||||
-- :name create-issueexpertise! :! :n
|
||||
-- :doc creates a new issueexpertise record
|
||||
INSERT INTO issueexpertise (canvasser_id,
|
||||
issue_id,
|
||||
method_id)
|
||||
|
@ -143,19 +145,19 @@ VALUES (:canvasser_id,
|
|||
:method_id)
|
||||
returning Id
|
||||
|
||||
-- :name create-option! :! :n
|
||||
-- :name create-option! :! :n
|
||||
-- :doc creates a new option record
|
||||
INSERT INTO options (id)
|
||||
VALUES (:id)
|
||||
returning id
|
||||
|
||||
-- :name create-role! :! :n
|
||||
-- :name create-role! :! :n
|
||||
-- :doc creates a new role record
|
||||
INSERT INTO roles (name)
|
||||
VALUES (:name)
|
||||
returning id
|
||||
|
||||
-- :name create-rolemembership! :! :n
|
||||
-- :name create-rolemembership! :! :n
|
||||
-- :doc creates a new rolemembership record
|
||||
INSERT INTO rolememberships (role_id,
|
||||
canvasser_id)
|
||||
|
@ -163,7 +165,7 @@ VALUES (:role_id,
|
|||
:canvasser_id)
|
||||
returning Id
|
||||
|
||||
-- :name create-team! :! :n
|
||||
-- :name create-team! :! :n
|
||||
-- :doc creates a new team record
|
||||
INSERT INTO teams (name,
|
||||
district_id,
|
||||
|
@ -175,7 +177,7 @@ VALUES (:name,
|
|||
:longitude)
|
||||
returning id
|
||||
|
||||
-- :name create-teammembership! :! :n
|
||||
-- :name create-teammembership! :! :n
|
||||
-- :doc creates a new teammembership record
|
||||
INSERT INTO teammemberships (team_id,
|
||||
canvasser_id)
|
||||
|
@ -183,7 +185,7 @@ VALUES (:team_id,
|
|||
:canvasser_id)
|
||||
returning Id
|
||||
|
||||
-- :name create-teamorganisership! :! :n
|
||||
-- :name create-teamorganisership! :! :n
|
||||
-- :doc creates a new teamorganisership record
|
||||
INSERT INTO teamorganiserships (team_id,
|
||||
canvasser_id)
|
||||
|
@ -191,7 +193,7 @@ VALUES (:team_id,
|
|||
:canvasser_id)
|
||||
returning Id
|
||||
|
||||
-- :name create-visit! :! :n
|
||||
-- :name create-visit! :! :n
|
||||
-- :doc creates a new visit record
|
||||
INSERT INTO visits (address_id,
|
||||
canvasser_id,
|
||||
|
@ -261,8 +263,8 @@ WHERE intentions.Id = :Id
|
|||
DELETE FROM issues
|
||||
WHERE issues.id = :id
|
||||
|
||||
-- :name delete-issueexpertis! :! :n
|
||||
-- :doc updates an existing issueexpertis record
|
||||
-- :name delete-issueexpertise! :! :n
|
||||
-- :doc updates an existing issueexpertise record
|
||||
DELETE FROM issueexpertise
|
||||
WHERE issueexpertise.Id = :Id
|
||||
|
||||
|
@ -323,6 +325,15 @@ ORDER BY canvassers.username,
|
|||
canvassers.email,
|
||||
canvassers.id
|
||||
|
||||
-- :name get-canvasser-by-username :? :1
|
||||
-- :doc selects an existing canvasser record
|
||||
SELECT * FROM canvassers
|
||||
WHERE canvassers.username = :username
|
||||
ORDER BY canvassers.username,
|
||||
canvassers.fullname,
|
||||
canvassers.email,
|
||||
canvassers.id
|
||||
|
||||
-- :name get-district :? :1
|
||||
-- :doc selects an existing district record
|
||||
SELECT * FROM districts
|
||||
|
@ -374,8 +385,8 @@ WHERE intentions.Id = :Id
|
|||
SELECT * FROM issues
|
||||
WHERE issues.id = :id
|
||||
|
||||
-- :name get-issueexpertis :? :1
|
||||
-- :doc selects an existing issueexpertis record
|
||||
-- :name get-issueexpertise :? :1
|
||||
-- :doc selects an existing issueexpertise record
|
||||
SELECT * FROM issueexpertise
|
||||
WHERE issueexpertise.Id = :Id
|
||||
|
||||
|
@ -482,6 +493,16 @@ ORDER BY canvassers.username,
|
|||
canvassers.email,
|
||||
canvassers.id
|
||||
|
||||
-- :name list-canvassers-by-role :? :*
|
||||
-- :doc lists all existing canvasser records related to a given role
|
||||
SELECT *
|
||||
FROM canvassers
|
||||
WHERE canvassers.roles = :id
|
||||
ORDER BY canvassers.username,
|
||||
canvassers.fullname,
|
||||
canvassers.email,
|
||||
canvassers.id
|
||||
|
||||
-- :name list-districts :? :*
|
||||
-- :doc lists all existing district records
|
||||
SELECT * FROM districts
|
||||
|
@ -496,8 +517,8 @@ SELECT * FROM dwellings
|
|||
--~ (if (:offset params) "OFFSET :offset ")
|
||||
--~ (if (:limit params) "LIMIT :limit" "LIMIT 100")
|
||||
|
||||
-- :name list-dwellings-by-addres :? :*
|
||||
-- :doc lists all existing dwelling records related to a given addres
|
||||
-- :name list-dwellings-by-address :? :*
|
||||
-- :doc lists all existing dwelling records related to a given address
|
||||
SELECT *
|
||||
FROM dwellings
|
||||
WHERE dwellings.address_id = :id
|
||||
|
@ -617,25 +638,25 @@ FROM intentions
|
|||
WHERE intentions.visit_id = :id
|
||||
|
||||
-- :name list-issueexpertise :? :*
|
||||
-- :doc lists all existing issueexpertis records
|
||||
-- :doc lists all existing issueexpertise records
|
||||
SELECT * FROM issueexpertise
|
||||
--~ (if (:offset params) "OFFSET :offset ")
|
||||
--~ (if (:limit params) "LIMIT :limit" "LIMIT 100")
|
||||
|
||||
-- :name list-issueexpertise-by-canvasser :? :*
|
||||
-- :doc lists all existing issueexpertis records related to a given canvasser
|
||||
-- :doc lists all existing issueexpertise records related to a given canvasser
|
||||
SELECT *
|
||||
FROM issueexpertise
|
||||
WHERE issueexpertise.canvasser_id = :id
|
||||
|
||||
-- :name list-issueexpertise-by-followupmethod :? :*
|
||||
-- :doc lists all existing issueexpertis records related to a given followupmethod
|
||||
-- :doc lists all existing issueexpertise records related to a given followupmethod
|
||||
SELECT *
|
||||
FROM issueexpertise
|
||||
WHERE issueexpertise.method_id = :id
|
||||
|
||||
-- :name list-issueexpertise-by-issue :? :*
|
||||
-- :doc lists all existing issueexpertis records related to a given issue
|
||||
-- :doc lists all existing issueexpertise records related to a given issue
|
||||
SELECT *
|
||||
FROM issueexpertise
|
||||
WHERE issueexpertise.issue_id = :id
|
||||
|
@ -760,6 +781,14 @@ ORDER BY addresses.address,
|
|||
--~ (if (:offset params) "OFFSET :offset ")
|
||||
--~ (if (:limit params) "LIMIT :limit" "LIMIT 100")
|
||||
|
||||
-- :name search-strings-authority :? :1
|
||||
-- :doc selects existing authority records having any string field matching `:pattern` by substring match
|
||||
SELECT * FROM authorities
|
||||
WHERE
|
||||
id LIKE '%:pattern%'
|
||||
--~ (if (:offset params) "OFFSET :offset ")
|
||||
--~ (if (:limit params) "LIMIT :limit" "LIMIT 100")
|
||||
|
||||
-- :name search-strings-canvasser :? :1
|
||||
-- :doc selects existing canvasser records having any string field matching `:pattern` by substring match
|
||||
SELECT * FROM canvassers
|
||||
|
@ -807,11 +836,65 @@ ORDER BY electors.name,
|
|||
--~ (if (:offset params) "OFFSET :offset ")
|
||||
--~ (if (:limit params) "LIMIT :limit" "LIMIT 100")
|
||||
|
||||
-- :name search-strings-followupaction :? :1
|
||||
-- :doc selects existing followupaction records having any string field matching `:pattern` by substring match
|
||||
SELECT * FROM followupactions
|
||||
WHERE
|
||||
notes LIKE '%:pattern%'
|
||||
--~ (if (:offset params) "OFFSET :offset ")
|
||||
--~ (if (:limit params) "LIMIT :limit" "LIMIT 100")
|
||||
|
||||
-- :name search-strings-followupmethod :? :1
|
||||
-- :doc selects existing followupmethod records having any string field matching `:pattern` by substring match
|
||||
SELECT * FROM followupmethods
|
||||
WHERE
|
||||
id LIKE '%:pattern%'
|
||||
--~ (if (:offset params) "OFFSET :offset ")
|
||||
--~ (if (:limit params) "LIMIT :limit" "LIMIT 100")
|
||||
|
||||
-- :name search-strings-followuprequest :? :1
|
||||
-- :doc selects existing followuprequest records having any string field matching `:pattern` by substring match
|
||||
SELECT * FROM followuprequests
|
||||
WHERE
|
||||
--~ (if (:offset params) "OFFSET :offset ")
|
||||
--~ (if (:limit params) "LIMIT :limit" "LIMIT 100")
|
||||
|
||||
-- :name search-strings-gender :? :1
|
||||
-- :doc selects existing gender records having any string field matching `:pattern` by substring match
|
||||
SELECT * FROM genders
|
||||
WHERE
|
||||
id LIKE '%:pattern%'
|
||||
--~ (if (:offset params) "OFFSET :offset ")
|
||||
--~ (if (:limit params) "LIMIT :limit" "LIMIT 100")
|
||||
|
||||
-- :name search-strings-intention :? :1
|
||||
-- :doc selects existing intention records having any string field matching `:pattern` by substring match
|
||||
SELECT * FROM intentions
|
||||
WHERE
|
||||
--~ (if (:offset params) "OFFSET :offset ")
|
||||
--~ (if (:limit params) "LIMIT :limit" "LIMIT 100")
|
||||
|
||||
-- :name search-strings-issue :? :1
|
||||
-- :doc selects existing issue records having any string field matching `:pattern` by substring match
|
||||
SELECT * FROM issues
|
||||
WHERE
|
||||
url LIKE '%:pattern%'
|
||||
OR id LIKE '%:pattern%'
|
||||
--~ (if (:offset params) "OFFSET :offset ")
|
||||
--~ (if (:limit params) "LIMIT :limit" "LIMIT 100")
|
||||
|
||||
-- :name search-strings-issueexpertise :? :1
|
||||
-- :doc selects existing issueexpertise records having any string field matching `:pattern` by substring match
|
||||
SELECT * FROM issueexpertise
|
||||
WHERE
|
||||
--~ (if (:offset params) "OFFSET :offset ")
|
||||
--~ (if (:limit params) "LIMIT :limit" "LIMIT 100")
|
||||
|
||||
-- :name search-strings-option :? :1
|
||||
-- :doc selects existing option records having any string field matching `:pattern` by substring match
|
||||
SELECT * FROM options
|
||||
WHERE
|
||||
id LIKE '%:pattern%'
|
||||
--~ (if (:offset params) "OFFSET :offset ")
|
||||
--~ (if (:limit params) "LIMIT :limit" "LIMIT 100")
|
||||
|
||||
|
@ -825,6 +908,13 @@ ORDER BY roles.name,
|
|||
--~ (if (:offset params) "OFFSET :offset ")
|
||||
--~ (if (:limit params) "LIMIT :limit" "LIMIT 100")
|
||||
|
||||
-- :name search-strings-rolemembership :? :1
|
||||
-- :doc selects existing rolemembership records having any string field matching `:pattern` by substring match
|
||||
SELECT * FROM rolememberships
|
||||
WHERE
|
||||
--~ (if (:offset params) "OFFSET :offset ")
|
||||
--~ (if (:limit params) "LIMIT :limit" "LIMIT 100")
|
||||
|
||||
-- :name search-strings-team :? :1
|
||||
-- :doc selects existing team records having any string field matching `:pattern` by substring match
|
||||
SELECT * FROM teams
|
||||
|
@ -834,3 +924,159 @@ ORDER BY teams.name,
|
|||
teams.id
|
||||
--~ (if (:offset params) "OFFSET :offset ")
|
||||
--~ (if (:limit params) "LIMIT :limit" "LIMIT 100")
|
||||
|
||||
-- :name search-strings-teammembership :? :1
|
||||
-- :doc selects existing teammembership records having any string field matching `:pattern` by substring match
|
||||
SELECT * FROM teammemberships
|
||||
WHERE
|
||||
--~ (if (:offset params) "OFFSET :offset ")
|
||||
--~ (if (:limit params) "LIMIT :limit" "LIMIT 100")
|
||||
|
||||
-- :name search-strings-teamorganisership :? :1
|
||||
-- :doc selects existing teamorganisership records having any string field matching `:pattern` by substring match
|
||||
SELECT * FROM teamorganiserships
|
||||
WHERE
|
||||
--~ (if (:offset params) "OFFSET :offset ")
|
||||
--~ (if (:limit params) "LIMIT :limit" "LIMIT 100")
|
||||
|
||||
-- :name search-strings-visit :? :1
|
||||
-- :doc selects existing visit records having any string field matching `:pattern` by substring match
|
||||
SELECT * FROM visits
|
||||
WHERE
|
||||
--~ (if (:offset params) "OFFSET :offset ")
|
||||
--~ (if (:limit params) "LIMIT :limit" "LIMIT 100")
|
||||
|
||||
-- :name update-address! :! :n
|
||||
-- :doc updates an existing address record
|
||||
UPDATE addresses
|
||||
SET address = :address,
|
||||
postcode = :postcode,
|
||||
phone = :phone,
|
||||
district_id = :district_id,
|
||||
latitude = :latitude,
|
||||
longitude = :longitude
|
||||
WHERE addresses.id = :id
|
||||
|
||||
-- :name update-canvasser! :! :n
|
||||
-- :doc updates an existing canvasser record
|
||||
UPDATE canvassers
|
||||
SET username = :username,
|
||||
fullname = :fullname,
|
||||
elector_id = :elector_id,
|
||||
address_id = :address_id,
|
||||
phone = :phone,
|
||||
email = :email,
|
||||
authority_id = :authority_id,
|
||||
authorised = :authorised,
|
||||
roles = :roles
|
||||
WHERE canvassers.id = :id
|
||||
|
||||
-- :name update-district! :! :n
|
||||
-- :doc updates an existing district record
|
||||
UPDATE districts
|
||||
SET name = :name
|
||||
WHERE districts.id = :id
|
||||
|
||||
-- :name update-dwelling! :! :n
|
||||
-- :doc updates an existing dwelling record
|
||||
UPDATE dwellings
|
||||
SET address_id = :address_id,
|
||||
sub-address = :sub-address
|
||||
WHERE dwellings.id = :id
|
||||
|
||||
-- :name update-elector! :! :n
|
||||
-- :doc updates an existing elector record
|
||||
UPDATE electors
|
||||
SET name = :name,
|
||||
dwelling_id = :dwelling_id,
|
||||
phone = :phone,
|
||||
email = :email,
|
||||
gender = :gender
|
||||
WHERE electors.id = :id
|
||||
|
||||
-- :name update-followupaction! :! :n
|
||||
-- :doc updates an existing followupaction record
|
||||
UPDATE followupactions
|
||||
SET request_id = :request_id,
|
||||
actor = :actor,
|
||||
date = :date,
|
||||
notes = :notes,
|
||||
closed = :closed
|
||||
WHERE followupactions.id = :id
|
||||
|
||||
-- :name update-followuprequest! :! :n
|
||||
-- :doc updates an existing followuprequest record
|
||||
UPDATE followuprequests
|
||||
SET elector_id = :elector_id,
|
||||
visit_id = :visit_id,
|
||||
issue_id = :issue_id,
|
||||
method_id = :method_id
|
||||
WHERE followuprequests.id = :id
|
||||
|
||||
-- :name update-intention! :! :n
|
||||
-- :doc updates an existing intention record
|
||||
UPDATE intentions
|
||||
SET visit_id = :visit_id,
|
||||
elector_id = :elector_id,
|
||||
option_id = :option_id
|
||||
WHERE intentions.Id = :Id
|
||||
|
||||
-- :name update-issue! :! :n
|
||||
-- :doc updates an existing issue record
|
||||
UPDATE issues
|
||||
SET url = :url,
|
||||
current = :current,
|
||||
id = :id
|
||||
WHERE issues.id = :id
|
||||
|
||||
-- :name update-issueexpertise! :! :n
|
||||
-- :doc updates an existing issueexpertise record
|
||||
UPDATE issueexpertise
|
||||
SET canvasser_id = :canvasser_id,
|
||||
issue_id = :issue_id,
|
||||
method_id = :method_id
|
||||
WHERE issueexpertise.Id = :Id
|
||||
|
||||
-- :name update-role! :! :n
|
||||
-- :doc updates an existing role record
|
||||
UPDATE roles
|
||||
SET name = :name
|
||||
WHERE roles.id = :id
|
||||
|
||||
-- :name update-rolemembership! :! :n
|
||||
-- :doc updates an existing rolemembership record
|
||||
UPDATE rolememberships
|
||||
SET role_id = :role_id,
|
||||
canvasser_id = :canvasser_id
|
||||
WHERE rolememberships.Id = :Id
|
||||
|
||||
-- :name update-team! :! :n
|
||||
-- :doc updates an existing team record
|
||||
UPDATE teams
|
||||
SET name = :name,
|
||||
district_id = :district_id,
|
||||
latitude = :latitude,
|
||||
longitude = :longitude
|
||||
WHERE teams.id = :id
|
||||
|
||||
-- :name update-teammembership! :! :n
|
||||
-- :doc updates an existing teammembership record
|
||||
UPDATE teammemberships
|
||||
SET team_id = :team_id,
|
||||
canvasser_id = :canvasser_id
|
||||
WHERE teammemberships.Id = :Id
|
||||
|
||||
-- :name update-teamorganisership! :! :n
|
||||
-- :doc updates an existing teamorganisership record
|
||||
UPDATE teamorganiserships
|
||||
SET team_id = :team_id,
|
||||
canvasser_id = :canvasser_id
|
||||
WHERE teamorganiserships.Id = :Id
|
||||
|
||||
-- :name update-visit! :! :n
|
||||
-- :doc updates an existing visit record
|
||||
UPDATE visits
|
||||
SET address_id = :address_id,
|
||||
canvasser_id = :canvasser_id,
|
||||
date = :date
|
||||
WHERE visits.id = :id
|
||||
|
|
204
resources/templates/auto/application-index.html
Normal file
204
resources/templates/auto/application-index.html
Normal file
|
@ -0,0 +1,204 @@
|
|||
{% extends "templates/base.html" %}
|
||||
|
||||
<!-- File application-index.html generated 2018-06-10T21:17:47.127Z by adl.to-selmer-templates.
|
||||
See [Application Description Language](https://github.com/simon-brooke/adl).-->
|
||||
|
||||
{% block content %}
|
||||
<dl class='index'>
|
||||
<dt>
|
||||
<a href='list-electors-Electors'>
|
||||
Elector
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
<p>
|
||||
All electors known to the system; electors are people believed to be entitled to vote in the current campaign.
|
||||
</p>
|
||||
</dd>
|
||||
<dt>
|
||||
<a href='list-genders-Genders'>
|
||||
Gender
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
<p>
|
||||
All genders which may be assigned to electors.
|
||||
</p>
|
||||
</dd>
|
||||
<dt>
|
||||
<a href='list-dwellings-Dwellings'>
|
||||
Dwelling
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
<p>
|
||||
All dwellings within addresses in the system; a dwelling is a house, flat or appartment in which electors live.
|
||||
</p>
|
||||
</dd>
|
||||
<dt>
|
||||
<a href='list-addresses-Addresses'>
|
||||
Address
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
<p>
|
||||
Addresses of all buildings which contain dwellings.
|
||||
</p>
|
||||
</dd>
|
||||
<dt>
|
||||
<a href='list-visits-Visits'>
|
||||
Visit
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
<p>
|
||||
All visits made by canvassers to dwellings in which opinions were recorded.
|
||||
</p>
|
||||
</dd>
|
||||
<dt>
|
||||
<a href='list-authorities-Authorities'>
|
||||
Authority
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
<p>
|
||||
Authorities which may authenticate canvassers to the system.
|
||||
</p>
|
||||
</dd>
|
||||
<dt>
|
||||
<a href='list-issues-Issues'>
|
||||
Issue
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
<p>
|
||||
Issues believed to be of interest to electors, about which they may have questions.
|
||||
</p>
|
||||
</dd>
|
||||
<dt>
|
||||
<a href='list-intentions-Intentions'>
|
||||
Intention
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
<p>
|
||||
Link table.
|
||||
</p>
|
||||
</dd>
|
||||
<dt>
|
||||
<a href='list-canvassers-Canvassers'>
|
||||
Canvasser
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
<p>
|
||||
Primary users of the system: those actually interviewing electors.
|
||||
</p>
|
||||
</dd>
|
||||
<dt>
|
||||
<a href='list-followuprequests-Followuprequests'>
|
||||
Followuprequest
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
<p>
|
||||
Requests for a followup with an issue expert
|
||||
</p>
|
||||
</dd>
|
||||
<dt>
|
||||
<a href=''>
|
||||
Rolemembership
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
<p>
|
||||
Link table
|
||||
</p>
|
||||
</dd>
|
||||
<dt>
|
||||
<a href='list-roles-Roles'>
|
||||
Role
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
<p>
|
||||
A role (essentially, the same as a group, but application layer rather than database layer) of which a user may be a member.
|
||||
</p>
|
||||
</dd>
|
||||
<dt>
|
||||
<a href='list-teams-Teams'>
|
||||
Team
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
</dd>
|
||||
<dt>
|
||||
<a href='list-districts-Districts'>
|
||||
District
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
<p>
|
||||
Electoral districts
|
||||
</p>
|
||||
</dd>
|
||||
<dt>
|
||||
<a href=''>
|
||||
Teamorganisership
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
<p>
|
||||
Link table
|
||||
</p>
|
||||
</dd>
|
||||
<dt>
|
||||
<a href='list-followupactions-Followupactions'>
|
||||
Followupaction
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
<p>
|
||||
Actions taken on followup requests.
|
||||
</p>
|
||||
</dd>
|
||||
<dt>
|
||||
<a href=''>
|
||||
Issueexpertise
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
<p>
|
||||
Link table
|
||||
</p>
|
||||
</dd>
|
||||
<dt>
|
||||
<a href='list-options-Options'>
|
||||
Option
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
<p>
|
||||
Options in the election or referendum being canvassed on
|
||||
</p>
|
||||
</dd>
|
||||
<dt>
|
||||
<a href=''>
|
||||
Teammembership
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
<p>
|
||||
Link table
|
||||
</p>
|
||||
</dd>
|
||||
<dt>
|
||||
<a href='list-followupmethods-Followupmethods'>
|
||||
Followupmethod
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
{% endblock %}
|
232
resources/templates/auto/form-addresses-Address.html
Normal file
232
resources/templates/auto/form-addresses-Address.html
Normal file
|
@ -0,0 +1,232 @@
|
|||
{% extends "templates/base.html" %}
|
||||
|
||||
<!-- File form-addresses-Address.html generated 2018-06-10T21:17:47.120Z by adl.to-selmer-templates.
|
||||
See [Application Description Language](https://github.com/simon-brooke/adl).-->
|
||||
|
||||
{% block content %}
|
||||
<div id='content' class='edit'>
|
||||
<form action='{{servlet-context}}/form-addresses-Address' method='POST'>
|
||||
{% csrf-field %}
|
||||
<input id='id' name='id' type='hidden' value='{{record.id}}'/>
|
||||
<p class='widget'>
|
||||
<label for='id'>
|
||||
id
|
||||
</label>
|
||||
{% ifwritable addresses %}
|
||||
<input id='id' name='id' type='text' value='{{record.id}}'/>
|
||||
{% else %}
|
||||
{% ifreadable addresses %}
|
||||
<span id='id' name='id' class='pseudo-widget disabled'>
|
||||
{{record.id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='address'>
|
||||
address
|
||||
</label>
|
||||
{% ifwritable addresses address %}
|
||||
<input id='address' name='address' type='text' value='{{record.address}}'/>
|
||||
{% else %}
|
||||
{% ifreadable addresses address%}
|
||||
<span id='address' name='address' class='pseudo-widget disabled'>
|
||||
{{record.address}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='postcode'>
|
||||
postcode
|
||||
</label>
|
||||
{% ifwritable addresses postcode %}
|
||||
<input id='postcode' name='postcode' type='text' value='{{record.postcode}}'/>
|
||||
{% else %}
|
||||
{% ifreadable addresses postcode%}
|
||||
<span id='postcode' name='postcode' class='pseudo-widget disabled'>
|
||||
{{record.postcode}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='phone'>
|
||||
phone
|
||||
</label>
|
||||
{% ifwritable addresses phone %}
|
||||
<input id='phone' name='phone' type='text' value='{{record.phone}}'/>
|
||||
{% else %}
|
||||
{% ifreadable addresses phone%}
|
||||
<span id='phone' name='phone' class='pseudo-widget disabled'>
|
||||
{{record.phone}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='district_id'>
|
||||
district_id
|
||||
</label>
|
||||
{% ifwritable addresses district_id %}
|
||||
<div class='select-box' farside='districts' found='true'>
|
||||
<input name='district_id-search-box' onchange='/* javascript to repopulate the select widget */'/>
|
||||
<select id='district_id' name='district_id' comment='JavaScript stuff to fix up aynchronous loading'>
|
||||
{% for record in districts %}<option value='{{record.id}}'>{{record.name}}</option>{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
{% else %}
|
||||
{% ifreadable addresses district_id%}
|
||||
<span id='district_id' name='district_id' class='pseudo-widget disabled'>
|
||||
{{record.district_id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='latitude'>
|
||||
latitude
|
||||
</label>
|
||||
{% ifwritable addresses latitude %}
|
||||
<input id='latitude' name='latitude' type='number' value='{{record.latitude}}'/>
|
||||
{% else %}
|
||||
{% ifreadable addresses latitude%}
|
||||
<span id='latitude' name='latitude' class='pseudo-widget disabled'>
|
||||
{{record.latitude}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='longitude'>
|
||||
longitude
|
||||
</label>
|
||||
{% ifwritable addresses longitude %}
|
||||
<input id='longitude' name='longitude' type='number' value='{{record.longitude}}'/>
|
||||
{% else %}
|
||||
{% ifreadable addresses longitude%}
|
||||
<span id='longitude' name='longitude' class='pseudo-widget disabled'>
|
||||
{{record.longitude}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='id'>
|
||||
id
|
||||
</label>
|
||||
{% ifwritable addresses %}
|
||||
<input id='id' name='id' type='text' value='{{record.id}}'/>
|
||||
{% else %}
|
||||
{% ifreadable addresses %}
|
||||
<span id='id' name='id' class='pseudo-widget disabled'>
|
||||
{{record.id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='address'>
|
||||
address
|
||||
</label>
|
||||
{% ifwritable addresses address %}
|
||||
<input id='address' name='address' type='text' value='{{record.address}}'/>
|
||||
{% else %}
|
||||
{% ifreadable addresses address%}
|
||||
<span id='address' name='address' class='pseudo-widget disabled'>
|
||||
{{record.address}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='postcode'>
|
||||
postcode
|
||||
</label>
|
||||
{% ifwritable addresses postcode %}
|
||||
<input id='postcode' name='postcode' type='text' value='{{record.postcode}}'/>
|
||||
{% else %}
|
||||
{% ifreadable addresses postcode%}
|
||||
<span id='postcode' name='postcode' class='pseudo-widget disabled'>
|
||||
{{record.postcode}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='phone'>
|
||||
phone
|
||||
</label>
|
||||
{% ifwritable addresses phone %}
|
||||
<input id='phone' name='phone' type='text' value='{{record.phone}}'/>
|
||||
{% else %}
|
||||
{% ifreadable addresses phone%}
|
||||
<span id='phone' name='phone' class='pseudo-widget disabled'>
|
||||
{{record.phone}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='district_id'>
|
||||
district_id
|
||||
</label>
|
||||
{% ifwritable addresses district_id %}
|
||||
<div class='select-box' farside='districts' found='true'>
|
||||
<input name='district_id-search-box' onchange='/* javascript to repopulate the select widget */'/>
|
||||
<select id='district_id' name='district_id' comment='JavaScript stuff to fix up aynchronous loading'>
|
||||
{% for record in districts %}<option value='{{record.id}}'>{{record.name}}</option>{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
{% else %}
|
||||
{% ifreadable addresses district_id%}
|
||||
<span id='district_id' name='district_id' class='pseudo-widget disabled'>
|
||||
{{record.district_id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='latitude'>
|
||||
latitude
|
||||
</label>
|
||||
{% ifwritable addresses latitude %}
|
||||
<input id='latitude' name='latitude' type='number' value='{{record.latitude}}'/>
|
||||
{% else %}
|
||||
{% ifreadable addresses latitude%}
|
||||
<span id='latitude' name='latitude' class='pseudo-widget disabled'>
|
||||
{{record.latitude}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='longitude'>
|
||||
longitude
|
||||
</label>
|
||||
{% ifwritable addresses longitude %}
|
||||
<input id='longitude' name='longitude' type='number' value='{{record.longitude}}'/>
|
||||
{% else %}
|
||||
{% ifreadable addresses longitude%}
|
||||
<span id='longitude' name='longitude' class='pseudo-widget disabled'>
|
||||
{{record.longitude}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget action-safe'>
|
||||
<label for='save-button' class='action-safe'>
|
||||
To save this addresses record
|
||||
</label>
|
||||
<input id='save-button' name='save-button' class='action-safe' type=':submit' value='Save!'/>
|
||||
</p>
|
||||
<p class='widget action-dangerous'>
|
||||
<label for='delete-button' class='action-dangerous'>
|
||||
To delete this addresses record
|
||||
</label>
|
||||
<input id='delete-button' name='delete-button' class='action-dangerous' type=':submit' value='Delete!'/>
|
||||
</p>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
{% endblock %}
|
317
resources/templates/auto/form-canvassers-Canvasser.html
Normal file
317
resources/templates/auto/form-canvassers-Canvasser.html
Normal file
|
@ -0,0 +1,317 @@
|
|||
{% extends "templates/base.html" %}
|
||||
|
||||
<!-- File form-canvassers-Canvasser.html generated 2018-06-10T21:17:47.133Z by adl.to-selmer-templates.
|
||||
See [Application Description Language](https://github.com/simon-brooke/adl).-->
|
||||
|
||||
{% block content %}
|
||||
<div id='content' class='edit'>
|
||||
<form action='{{servlet-context}}/form-canvassers-Canvasser' method='POST'>
|
||||
{% csrf-field %}
|
||||
<input id='id' name='id' type='hidden' value='{{record.id}}'/>
|
||||
<p class='widget'>
|
||||
<label for='id'>
|
||||
id
|
||||
</label>
|
||||
{% ifwritable canvassers %}
|
||||
<input id='id' name='id' type='text' value='{{record.id}}'/>
|
||||
{% else %}
|
||||
{% ifreadable canvassers %}
|
||||
<span id='id' name='id' class='pseudo-widget disabled'>
|
||||
{{record.id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='username'>
|
||||
username
|
||||
</label>
|
||||
{% ifwritable canvassers username %}
|
||||
<input id='username' name='username' type='text' value='{{record.username}}'/>
|
||||
{% else %}
|
||||
{% ifreadable canvassers username%}
|
||||
<span id='username' name='username' class='pseudo-widget disabled'>
|
||||
{{record.username}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='fullname'>
|
||||
fullname
|
||||
</label>
|
||||
{% ifwritable canvassers fullname %}
|
||||
<input id='fullname' name='fullname' type='text' value='{{record.fullname}}'/>
|
||||
{% else %}
|
||||
{% ifreadable canvassers fullname%}
|
||||
<span id='fullname' name='fullname' class='pseudo-widget disabled'>
|
||||
{{record.fullname}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='elector_id'>
|
||||
elector_id
|
||||
</label>
|
||||
{% ifwritable canvassers elector_id %}
|
||||
<div class='select-box' farside='electors' found='true'>
|
||||
<input name='elector_id-search-box' onchange='/* javascript to repopulate the select widget */'/>
|
||||
<select id='elector_id' name='elector_id' comment='JavaScript stuff to fix up aynchronous loading'>
|
||||
{% for record in electors %}<option value='{{record.id}}'>{{record.name}} {{record.phone}} {{record.email}}</option>{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
{% else %}
|
||||
{% ifreadable canvassers elector_id%}
|
||||
<span id='elector_id' name='elector_id' class='pseudo-widget disabled'>
|
||||
{{record.elector_id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='address_id'>
|
||||
address_id
|
||||
</label>
|
||||
{% ifwritable canvassers address_id %}
|
||||
<input id='address_id' name='address_id' type='number' value='{{record.address_id}}'/>
|
||||
{% else %}
|
||||
{% ifreadable canvassers address_id%}
|
||||
<span id='address_id' name='address_id' class='pseudo-widget disabled'>
|
||||
{{record.address_id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='phone'>
|
||||
phone
|
||||
</label>
|
||||
{% ifwritable canvassers phone %}
|
||||
<input id='phone' name='phone' type='text' value='{{record.phone}}'/>
|
||||
{% else %}
|
||||
{% ifreadable canvassers phone%}
|
||||
<span id='phone' name='phone' class='pseudo-widget disabled'>
|
||||
{{record.phone}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='email'>
|
||||
email
|
||||
</label>
|
||||
{% ifwritable canvassers email %}
|
||||
<input id='email' name='email' type='text' value='{{record.email}}'/>
|
||||
{% else %}
|
||||
{% ifreadable canvassers email%}
|
||||
<span id='email' name='email' class='pseudo-widget disabled'>
|
||||
{{record.email}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='authority_id'>
|
||||
authority_id
|
||||
</label>
|
||||
{% ifwritable canvassers authority_id %}
|
||||
<div class='select-box' farside='authorities' found='true'>
|
||||
<input name='authority_id-search-box' onchange='/* javascript to repopulate the select widget */'/>
|
||||
<select id='authority_id' name='authority_id' comment='JavaScript stuff to fix up aynchronous loading'>
|
||||
{% for record in authorities %}<option value='{{record.id}}'>{{record.id}}</option>{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
{% else %}
|
||||
{% ifreadable canvassers authority_id%}
|
||||
<span id='authority_id' name='authority_id' class='pseudo-widget disabled'>
|
||||
{{record.authority_id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='authorised'>
|
||||
authorised
|
||||
</label>
|
||||
{% ifwritable canvassers authorised %}
|
||||
<input id='authorised' name='authorised' type='checkbox' value='{{record.authorised}}'/>
|
||||
{% else %}
|
||||
{% ifreadable canvassers authorised%}
|
||||
<span id='authorised' name='authorised' class='pseudo-widget disabled'>
|
||||
{{record.authorised}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='id'>
|
||||
id
|
||||
</label>
|
||||
{% ifwritable canvassers %}
|
||||
<input id='id' name='id' type='text' value='{{record.id}}'/>
|
||||
{% else %}
|
||||
{% ifreadable canvassers %}
|
||||
<span id='id' name='id' class='pseudo-widget disabled'>
|
||||
{{record.id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='username'>
|
||||
username
|
||||
</label>
|
||||
{% ifwritable canvassers username %}
|
||||
<input id='username' name='username' type='text' value='{{record.username}}'/>
|
||||
{% else %}
|
||||
{% ifreadable canvassers username%}
|
||||
<span id='username' name='username' class='pseudo-widget disabled'>
|
||||
{{record.username}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='fullname'>
|
||||
fullname
|
||||
</label>
|
||||
{% ifwritable canvassers fullname %}
|
||||
<input id='fullname' name='fullname' type='text' value='{{record.fullname}}'/>
|
||||
{% else %}
|
||||
{% ifreadable canvassers fullname%}
|
||||
<span id='fullname' name='fullname' class='pseudo-widget disabled'>
|
||||
{{record.fullname}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='elector_id'>
|
||||
elector_id
|
||||
</label>
|
||||
{% ifwritable canvassers elector_id %}
|
||||
<div class='select-box' farside='electors' found='true'>
|
||||
<input name='elector_id-search-box' onchange='/* javascript to repopulate the select widget */'/>
|
||||
<select id='elector_id' name='elector_id' comment='JavaScript stuff to fix up aynchronous loading'>
|
||||
{% for record in electors %}<option value='{{record.id}}'>{{record.name}} {{record.phone}} {{record.email}}</option>{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
{% else %}
|
||||
{% ifreadable canvassers elector_id%}
|
||||
<span id='elector_id' name='elector_id' class='pseudo-widget disabled'>
|
||||
{{record.elector_id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='address_id'>
|
||||
address_id
|
||||
</label>
|
||||
{% ifwritable canvassers address_id %}
|
||||
<input id='address_id' name='address_id' type='number' value='{{record.address_id}}'/>
|
||||
{% else %}
|
||||
{% ifreadable canvassers address_id%}
|
||||
<span id='address_id' name='address_id' class='pseudo-widget disabled'>
|
||||
{{record.address_id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='phone'>
|
||||
phone
|
||||
</label>
|
||||
{% ifwritable canvassers phone %}
|
||||
<input id='phone' name='phone' type='text' value='{{record.phone}}'/>
|
||||
{% else %}
|
||||
{% ifreadable canvassers phone%}
|
||||
<span id='phone' name='phone' class='pseudo-widget disabled'>
|
||||
{{record.phone}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='email'>
|
||||
email
|
||||
</label>
|
||||
{% ifwritable canvassers email %}
|
||||
<input id='email' name='email' type='text' value='{{record.email}}'/>
|
||||
{% else %}
|
||||
{% ifreadable canvassers email%}
|
||||
<span id='email' name='email' class='pseudo-widget disabled'>
|
||||
{{record.email}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='authority_id'>
|
||||
authority_id
|
||||
</label>
|
||||
{% ifwritable canvassers authority_id %}
|
||||
<div class='select-box' farside='authorities' found='true'>
|
||||
<input name='authority_id-search-box' onchange='/* javascript to repopulate the select widget */'/>
|
||||
<select id='authority_id' name='authority_id' comment='JavaScript stuff to fix up aynchronous loading'>
|
||||
{% for record in authorities %}<option value='{{record.id}}'>{{record.id}}</option>{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
{% else %}
|
||||
{% ifreadable canvassers authority_id%}
|
||||
<span id='authority_id' name='authority_id' class='pseudo-widget disabled'>
|
||||
{{record.authority_id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='authorised'>
|
||||
authorised
|
||||
</label>
|
||||
{% ifwritable canvassers authorised %}
|
||||
<input id='authorised' name='authorised' type='checkbox' value='{{record.authorised}}'/>
|
||||
{% else %}
|
||||
{% ifreadable canvassers authorised%}
|
||||
<span id='authorised' name='authorised' class='pseudo-widget disabled'>
|
||||
{{record.authorised}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='roles'>
|
||||
roles
|
||||
</label>
|
||||
{% ifwritable canvassers roles %}
|
||||
<div class='select-box' farside='role' found='false'>
|
||||
<input name='roles-search-box' onchange='/* javascript to repopulate the select widget */'/>
|
||||
<select id='roles' name='roles' multiple='multiple' comment='JavaScript stuff to fix up aynchronous loading'>
|
||||
{% for record in role %}<option value='{{record.role_id}}'></option>{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
{% else %}
|
||||
{% ifreadable canvassers roles%}
|
||||
<span id='roles' name='roles' class='pseudo-widget disabled'>
|
||||
{{record.roles}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget action-safe'>
|
||||
<label for='save-button' class='action-safe'>
|
||||
To save this canvassers record
|
||||
</label>
|
||||
<input id='save-button' name='save-button' class='action-safe' type=':submit' value='Save!'/>
|
||||
</p>
|
||||
<p class='widget action-dangerous'>
|
||||
<label for='delete-button' class='action-dangerous'>
|
||||
To delete this canvassers record
|
||||
</label>
|
||||
<input id='delete-button' name='delete-button' class='action-dangerous' type=':submit' value='Delete!'/>
|
||||
</p>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
{% endblock %}
|
82
resources/templates/auto/form-districts-District.html
Normal file
82
resources/templates/auto/form-districts-District.html
Normal file
|
@ -0,0 +1,82 @@
|
|||
{% extends "templates/base.html" %}
|
||||
|
||||
<!-- File form-districts-District.html generated 2018-06-10T21:17:47.119Z by adl.to-selmer-templates.
|
||||
See [Application Description Language](https://github.com/simon-brooke/adl).-->
|
||||
|
||||
{% block content %}
|
||||
<div id='content' class='edit'>
|
||||
<form action='{{servlet-context}}/form-districts-District' method='POST'>
|
||||
{% csrf-field %}
|
||||
<input id='id' name='id' type='hidden' value='{{record.id}}'/>
|
||||
<p class='widget'>
|
||||
<label for='id'>
|
||||
id
|
||||
</label>
|
||||
{% ifwritable districts %}
|
||||
<input id='id' name='id' type='text' value='{{record.id}}'/>
|
||||
{% else %}
|
||||
{% ifreadable districts %}
|
||||
<span id='id' name='id' class='pseudo-widget disabled'>
|
||||
{{record.id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='name'>
|
||||
name
|
||||
</label>
|
||||
{% ifwritable districts name %}
|
||||
<input id='name' name='name' type='text' value='{{record.name}}'/>
|
||||
{% else %}
|
||||
{% ifreadable districts name%}
|
||||
<span id='name' name='name' class='pseudo-widget disabled'>
|
||||
{{record.name}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='id'>
|
||||
id
|
||||
</label>
|
||||
{% ifwritable districts %}
|
||||
<input id='id' name='id' type='text' value='{{record.id}}'/>
|
||||
{% else %}
|
||||
{% ifreadable districts %}
|
||||
<span id='id' name='id' class='pseudo-widget disabled'>
|
||||
{{record.id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='name'>
|
||||
name
|
||||
</label>
|
||||
{% ifwritable districts name %}
|
||||
<input id='name' name='name' type='text' value='{{record.name}}'/>
|
||||
{% else %}
|
||||
{% ifreadable districts name%}
|
||||
<span id='name' name='name' class='pseudo-widget disabled'>
|
||||
{{record.name}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget action-safe'>
|
||||
<label for='save-button' class='action-safe'>
|
||||
To save this districts record
|
||||
</label>
|
||||
<input id='save-button' name='save-button' class='action-safe' type=':submit' value='Save!'/>
|
||||
</p>
|
||||
<p class='widget action-dangerous'>
|
||||
<label for='delete-button' class='action-dangerous'>
|
||||
To delete this districts record
|
||||
</label>
|
||||
<input id='delete-button' name='delete-button' class='action-dangerous' type=':submit' value='Delete!'/>
|
||||
</p>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
{% endblock %}
|
120
resources/templates/auto/form-dwellings-Dwelling.html
Normal file
120
resources/templates/auto/form-dwellings-Dwelling.html
Normal file
|
@ -0,0 +1,120 @@
|
|||
{% extends "templates/base.html" %}
|
||||
|
||||
<!-- File form-dwellings-Dwelling.html generated 2018-06-10T21:17:47.138Z by adl.to-selmer-templates.
|
||||
See [Application Description Language](https://github.com/simon-brooke/adl).-->
|
||||
|
||||
{% block content %}
|
||||
<div id='content' class='edit'>
|
||||
<form action='{{servlet-context}}/form-dwellings-Dwelling' method='POST'>
|
||||
{% csrf-field %}
|
||||
<input id='id' name='id' type='hidden' value='{{record.id}}'/>
|
||||
<p class='widget'>
|
||||
<label for='id'>
|
||||
id
|
||||
</label>
|
||||
{% ifwritable dwellings %}
|
||||
<input id='id' name='id' type='text' value='{{record.id}}'/>
|
||||
{% else %}
|
||||
{% ifreadable dwellings %}
|
||||
<span id='id' name='id' class='pseudo-widget disabled'>
|
||||
{{record.id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='address_id'>
|
||||
address_id
|
||||
</label>
|
||||
{% ifwritable dwellings address_id %}
|
||||
<div class='select-box' farside='address' found='false'>
|
||||
<input name='address_id-search-box' onchange='/* javascript to repopulate the select widget */'/>
|
||||
<select id='address_id' name='address_id' comment='JavaScript stuff to fix up aynchronous loading'>
|
||||
{% for record in address %}<option value='{{record.id}}'></option>{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
{% else %}
|
||||
{% ifreadable dwellings address_id%}
|
||||
<span id='address_id' name='address_id' class='pseudo-widget disabled'>
|
||||
{{record.address_id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='sub-address'>
|
||||
sub-address
|
||||
</label>
|
||||
{% ifwritable dwellings sub-address %}
|
||||
<input id='sub-address' name='sub-address' type='text' value='{{record.sub-address}}'/>
|
||||
{% else %}
|
||||
{% ifreadable dwellings sub-address%}
|
||||
<span id='sub-address' name='sub-address' class='pseudo-widget disabled'>
|
||||
{{record.sub-address}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='id'>
|
||||
id
|
||||
</label>
|
||||
{% ifwritable dwellings %}
|
||||
<input id='id' name='id' type='text' value='{{record.id}}'/>
|
||||
{% else %}
|
||||
{% ifreadable dwellings %}
|
||||
<span id='id' name='id' class='pseudo-widget disabled'>
|
||||
{{record.id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='address_id'>
|
||||
address_id
|
||||
</label>
|
||||
{% ifwritable dwellings address_id %}
|
||||
<div class='select-box' farside='address' found='false'>
|
||||
<input name='address_id-search-box' onchange='/* javascript to repopulate the select widget */'/>
|
||||
<select id='address_id' name='address_id' comment='JavaScript stuff to fix up aynchronous loading'>
|
||||
{% for record in address %}<option value='{{record.id}}'></option>{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
{% else %}
|
||||
{% ifreadable dwellings address_id%}
|
||||
<span id='address_id' name='address_id' class='pseudo-widget disabled'>
|
||||
{{record.address_id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='sub-address'>
|
||||
sub-address
|
||||
</label>
|
||||
{% ifwritable dwellings sub-address %}
|
||||
<input id='sub-address' name='sub-address' type='text' value='{{record.sub-address}}'/>
|
||||
{% else %}
|
||||
{% ifreadable dwellings sub-address%}
|
||||
<span id='sub-address' name='sub-address' class='pseudo-widget disabled'>
|
||||
{{record.sub-address}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget action-safe'>
|
||||
<label for='save-button' class='action-safe'>
|
||||
To save this dwellings record
|
||||
</label>
|
||||
<input id='save-button' name='save-button' class='action-safe' type=':submit' value='Save!'/>
|
||||
</p>
|
||||
<p class='widget action-dangerous'>
|
||||
<label for='delete-button' class='action-dangerous'>
|
||||
To delete this dwellings record
|
||||
</label>
|
||||
<input id='delete-button' name='delete-button' class='action-dangerous' type=':submit' value='Delete!'/>
|
||||
</p>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
{% endblock %}
|
212
resources/templates/auto/form-electors-Elector.html
Normal file
212
resources/templates/auto/form-electors-Elector.html
Normal file
|
@ -0,0 +1,212 @@
|
|||
{% extends "templates/base.html" %}
|
||||
|
||||
<!-- File form-electors-Elector.html generated 2018-06-10T21:17:47.130Z by adl.to-selmer-templates.
|
||||
See [Application Description Language](https://github.com/simon-brooke/adl).-->
|
||||
|
||||
{% block content %}
|
||||
<div id='content' class='edit'>
|
||||
<form action='{{servlet-context}}/form-electors-Elector' method='POST'>
|
||||
{% csrf-field %}
|
||||
<input id='id' name='id' type='hidden' value='{{record.id}}'/>
|
||||
<p class='widget'>
|
||||
<label for='id'>
|
||||
id
|
||||
</label>
|
||||
{% ifwritable electors %}
|
||||
<input id='id' name='id' type='text' value='{{record.id}}'/>
|
||||
{% else %}
|
||||
{% ifreadable electors %}
|
||||
<span id='id' name='id' class='pseudo-widget disabled'>
|
||||
{{record.id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='name'>
|
||||
name
|
||||
</label>
|
||||
{% ifwritable electors name %}
|
||||
<input id='name' name='name' type='text' value='{{record.name}}'/>
|
||||
{% else %}
|
||||
{% ifreadable electors name%}
|
||||
<span id='name' name='name' class='pseudo-widget disabled'>
|
||||
{{record.name}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='dwelling_id'>
|
||||
dwelling_id
|
||||
</label>
|
||||
{% ifwritable electors dwelling_id %}
|
||||
<div class='select-box' farside='dwellings' found='true'>
|
||||
<input name='dwelling_id-search-box' onchange='/* javascript to repopulate the select widget */'/>
|
||||
<select id='dwelling_id' name='dwelling_id' comment='JavaScript stuff to fix up aynchronous loading'>
|
||||
{% for record in dwellings %}<option value='{{record.id}}'></option>{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
{% else %}
|
||||
{% ifreadable electors dwelling_id%}
|
||||
<span id='dwelling_id' name='dwelling_id' class='pseudo-widget disabled'>
|
||||
{{record.dwelling_id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='phone'>
|
||||
phone
|
||||
</label>
|
||||
{% ifwritable electors phone %}
|
||||
<input id='phone' name='phone' type='text' value='{{record.phone}}'/>
|
||||
{% else %}
|
||||
{% ifreadable electors phone%}
|
||||
<span id='phone' name='phone' class='pseudo-widget disabled'>
|
||||
{{record.phone}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='email'>
|
||||
email
|
||||
</label>
|
||||
{% ifwritable electors email %}
|
||||
<input id='email' name='email' type='text' value='{{record.email}}'/>
|
||||
{% else %}
|
||||
{% ifreadable electors email%}
|
||||
<span id='email' name='email' class='pseudo-widget disabled'>
|
||||
{{record.email}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='gender'>
|
||||
gender
|
||||
</label>
|
||||
{% ifwritable electors gender %}
|
||||
<div class='select-box' farside='genders' found='true'>
|
||||
<select id='gender' name='gender'>
|
||||
{% for record in genders %}<option value='{{record.id}}'>{{record.id}}</option>{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
{% else %}
|
||||
{% ifreadable electors gender%}
|
||||
<span id='gender' name='gender' class='pseudo-widget disabled'>
|
||||
{{record.gender}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='id'>
|
||||
id
|
||||
</label>
|
||||
{% ifwritable electors %}
|
||||
<input id='id' name='id' type='text' value='{{record.id}}'/>
|
||||
{% else %}
|
||||
{% ifreadable electors %}
|
||||
<span id='id' name='id' class='pseudo-widget disabled'>
|
||||
{{record.id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='name'>
|
||||
name
|
||||
</label>
|
||||
{% ifwritable electors name %}
|
||||
<input id='name' name='name' type='text' value='{{record.name}}'/>
|
||||
{% else %}
|
||||
{% ifreadable electors name%}
|
||||
<span id='name' name='name' class='pseudo-widget disabled'>
|
||||
{{record.name}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='dwelling_id'>
|
||||
dwelling_id
|
||||
</label>
|
||||
{% ifwritable electors dwelling_id %}
|
||||
<div class='select-box' farside='dwellings' found='true'>
|
||||
<input name='dwelling_id-search-box' onchange='/* javascript to repopulate the select widget */'/>
|
||||
<select id='dwelling_id' name='dwelling_id' comment='JavaScript stuff to fix up aynchronous loading'>
|
||||
{% for record in dwellings %}<option value='{{record.id}}'></option>{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
{% else %}
|
||||
{% ifreadable electors dwelling_id%}
|
||||
<span id='dwelling_id' name='dwelling_id' class='pseudo-widget disabled'>
|
||||
{{record.dwelling_id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='phone'>
|
||||
phone
|
||||
</label>
|
||||
{% ifwritable electors phone %}
|
||||
<input id='phone' name='phone' type='text' value='{{record.phone}}'/>
|
||||
{% else %}
|
||||
{% ifreadable electors phone%}
|
||||
<span id='phone' name='phone' class='pseudo-widget disabled'>
|
||||
{{record.phone}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='email'>
|
||||
email
|
||||
</label>
|
||||
{% ifwritable electors email %}
|
||||
<input id='email' name='email' type='text' value='{{record.email}}'/>
|
||||
{% else %}
|
||||
{% ifreadable electors email%}
|
||||
<span id='email' name='email' class='pseudo-widget disabled'>
|
||||
{{record.email}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='gender'>
|
||||
gender
|
||||
</label>
|
||||
{% ifwritable electors gender %}
|
||||
<div class='select-box' farside='genders' found='true'>
|
||||
<select id='gender' name='gender'>
|
||||
{% for record in genders %}<option value='{{record.id}}'>{{record.id}}</option>{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
{% else %}
|
||||
{% ifreadable electors gender%}
|
||||
<span id='gender' name='gender' class='pseudo-widget disabled'>
|
||||
{{record.gender}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget action-safe'>
|
||||
<label for='save-button' class='action-safe'>
|
||||
To save this electors record
|
||||
</label>
|
||||
<input id='save-button' name='save-button' class='action-safe' type=':submit' value='Save!'/>
|
||||
</p>
|
||||
<p class='widget action-dangerous'>
|
||||
<label for='delete-button' class='action-dangerous'>
|
||||
To delete this electors record
|
||||
</label>
|
||||
<input id='delete-button' name='delete-button' class='action-dangerous' type=':submit' value='Delete!'/>
|
||||
</p>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
{% endblock %}
|
|
@ -0,0 +1,204 @@
|
|||
{% extends "templates/base.html" %}
|
||||
|
||||
<!-- File form-followupactions-Followupaction.html generated 2018-06-10T21:17:47.139Z by adl.to-selmer-templates.
|
||||
See [Application Description Language](https://github.com/simon-brooke/adl).-->
|
||||
|
||||
{% block content %}
|
||||
<div id='content' class='edit'>
|
||||
<form action='{{servlet-context}}/form-followupactions-Followupaction' method='POST'>
|
||||
{% csrf-field %}
|
||||
<input id='id' name='id' type='hidden' value='{{record.id}}'/>
|
||||
<p class='widget'>
|
||||
<label for='id'>
|
||||
id
|
||||
</label>
|
||||
{% ifwritable followupactions %}
|
||||
<input id='id' name='id' type='text' value='{{record.id}}'/>
|
||||
{% else %}
|
||||
{% ifreadable followupactions %}
|
||||
<span id='id' name='id' class='pseudo-widget disabled'>
|
||||
{{record.id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='request_id'>
|
||||
request_id
|
||||
</label>
|
||||
{% ifwritable followupactions request_id %}
|
||||
<div class='select-box' farside='followuprequests' found='true'>
|
||||
<input name='request_id-search-box' onchange='/* javascript to repopulate the select widget */'/>
|
||||
<select id='request_id' name='request_id' comment='JavaScript stuff to fix up aynchronous loading'>
|
||||
{% for record in followuprequests %}<option value='{{record.id}}'></option>{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
{% else %}
|
||||
{% ifreadable followupactions request_id%}
|
||||
<span id='request_id' name='request_id' class='pseudo-widget disabled'>
|
||||
{{record.request_id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='actor'>
|
||||
actor
|
||||
</label>
|
||||
{% ifwritable followupactions actor %}
|
||||
<input id='actor' name='actor' type='number' value='{{record.actor}}'/>
|
||||
{% else %}
|
||||
{% ifreadable followupactions actor%}
|
||||
<span id='actor' name='actor' class='pseudo-widget disabled'>
|
||||
{{record.actor}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='date'>
|
||||
date
|
||||
</label>
|
||||
{% ifwritable followupactions date %}
|
||||
<input id='date' name='date' type='text' value='{{record.date}}'/>
|
||||
{% else %}
|
||||
{% ifreadable followupactions date%}
|
||||
<span id='date' name='date' class='pseudo-widget disabled'>
|
||||
{{record.date}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='notes'>
|
||||
notes
|
||||
</label>
|
||||
{% ifwritable followupactions notes %}
|
||||
<input id='notes' name='notes' type='text' value='{{record.notes}}'/>
|
||||
{% else %}
|
||||
{% ifreadable followupactions notes%}
|
||||
<span id='notes' name='notes' class='pseudo-widget disabled'>
|
||||
{{record.notes}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='closed'>
|
||||
closed
|
||||
</label>
|
||||
{% ifwritable followupactions closed %}
|
||||
<input id='closed' name='closed' type='checkbox' value='{{record.closed}}'/>
|
||||
{% else %}
|
||||
{% ifreadable followupactions closed%}
|
||||
<span id='closed' name='closed' class='pseudo-widget disabled'>
|
||||
{{record.closed}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='id'>
|
||||
id
|
||||
</label>
|
||||
{% ifwritable followupactions %}
|
||||
<input id='id' name='id' type='text' value='{{record.id}}'/>
|
||||
{% else %}
|
||||
{% ifreadable followupactions %}
|
||||
<span id='id' name='id' class='pseudo-widget disabled'>
|
||||
{{record.id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='request_id'>
|
||||
request_id
|
||||
</label>
|
||||
{% ifwritable followupactions request_id %}
|
||||
<div class='select-box' farside='followuprequests' found='true'>
|
||||
<input name='request_id-search-box' onchange='/* javascript to repopulate the select widget */'/>
|
||||
<select id='request_id' name='request_id' comment='JavaScript stuff to fix up aynchronous loading'>
|
||||
{% for record in followuprequests %}<option value='{{record.id}}'></option>{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
{% else %}
|
||||
{% ifreadable followupactions request_id%}
|
||||
<span id='request_id' name='request_id' class='pseudo-widget disabled'>
|
||||
{{record.request_id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='actor'>
|
||||
actor
|
||||
</label>
|
||||
{% ifwritable followupactions actor %}
|
||||
<input id='actor' name='actor' type='number' value='{{record.actor}}'/>
|
||||
{% else %}
|
||||
{% ifreadable followupactions actor%}
|
||||
<span id='actor' name='actor' class='pseudo-widget disabled'>
|
||||
{{record.actor}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='date'>
|
||||
date
|
||||
</label>
|
||||
{% ifwritable followupactions date %}
|
||||
<input id='date' name='date' type='text' value='{{record.date}}'/>
|
||||
{% else %}
|
||||
{% ifreadable followupactions date%}
|
||||
<span id='date' name='date' class='pseudo-widget disabled'>
|
||||
{{record.date}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='notes'>
|
||||
notes
|
||||
</label>
|
||||
{% ifwritable followupactions notes %}
|
||||
<input id='notes' name='notes' type='text' value='{{record.notes}}'/>
|
||||
{% else %}
|
||||
{% ifreadable followupactions notes%}
|
||||
<span id='notes' name='notes' class='pseudo-widget disabled'>
|
||||
{{record.notes}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='closed'>
|
||||
closed
|
||||
</label>
|
||||
{% ifwritable followupactions closed %}
|
||||
<input id='closed' name='closed' type='checkbox' value='{{record.closed}}'/>
|
||||
{% else %}
|
||||
{% ifreadable followupactions closed%}
|
||||
<span id='closed' name='closed' class='pseudo-widget disabled'>
|
||||
{{record.closed}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget action-safe'>
|
||||
<label for='save-button' class='action-safe'>
|
||||
To save this followupactions record
|
||||
</label>
|
||||
<input id='save-button' name='save-button' class='action-safe' type=':submit' value='Save!'/>
|
||||
</p>
|
||||
<p class='widget action-dangerous'>
|
||||
<label for='delete-button' class='action-dangerous'>
|
||||
To delete this followupactions record
|
||||
</label>
|
||||
<input id='delete-button' name='delete-button' class='action-dangerous' type=':submit' value='Delete!'/>
|
||||
</p>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
{% endblock %}
|
123
resources/templates/auto/form-issues-Issue.html
Normal file
123
resources/templates/auto/form-issues-Issue.html
Normal file
|
@ -0,0 +1,123 @@
|
|||
{% extends "templates/base.html" %}
|
||||
|
||||
<!-- File form-issues-Issue.html generated 2018-06-10T21:17:47.123Z by adl.to-selmer-templates.
|
||||
See [Application Description Language](https://github.com/simon-brooke/adl).-->
|
||||
|
||||
{% block content %}
|
||||
<div id='content' class='edit'>
|
||||
<form action='{{servlet-context}}/form-issues-Issue' method='POST'>
|
||||
{% csrf-field %}
|
||||
<p class='widget'>
|
||||
<label for='id'>
|
||||
id
|
||||
</label>
|
||||
{% ifwritable issues id %}
|
||||
<input id='id' name='id' type='text' value='{{record.id}}'/>
|
||||
{% else %}
|
||||
{% ifreadable issues id%}
|
||||
<span id='id' name='id' class='pseudo-widget disabled'>
|
||||
{{record.id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='id'>
|
||||
id
|
||||
</label>
|
||||
{% ifwritable issues %}
|
||||
<input id='id' name='id' type='text' value='{{record.id}}'/>
|
||||
{% else %}
|
||||
{% ifreadable issues %}
|
||||
<span id='id' name='id' class='pseudo-widget disabled'>
|
||||
{{record.id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='url'>
|
||||
url
|
||||
</label>
|
||||
{% ifwritable issues url %}
|
||||
<input id='url' name='url' type='text' value='{{record.url}}'/>
|
||||
{% else %}
|
||||
{% ifreadable issues url%}
|
||||
<span id='url' name='url' class='pseudo-widget disabled'>
|
||||
{{record.url}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='current'>
|
||||
current
|
||||
</label>
|
||||
{% ifwritable issues current %}
|
||||
<input id='current' name='current' type='checkbox' value='{{record.current}}'/>
|
||||
{% else %}
|
||||
{% ifreadable issues current%}
|
||||
<span id='current' name='current' class='pseudo-widget disabled'>
|
||||
{{record.current}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='id'>
|
||||
id
|
||||
</label>
|
||||
{% ifwritable issues %}
|
||||
<input id='id' name='id' type='text' value='{{record.id}}'/>
|
||||
{% else %}
|
||||
{% ifreadable issues %}
|
||||
<span id='id' name='id' class='pseudo-widget disabled'>
|
||||
{{record.id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='url'>
|
||||
url
|
||||
</label>
|
||||
{% ifwritable issues url %}
|
||||
<input id='url' name='url' type='text' value='{{record.url}}'/>
|
||||
{% else %}
|
||||
{% ifreadable issues url%}
|
||||
<span id='url' name='url' class='pseudo-widget disabled'>
|
||||
{{record.url}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='current'>
|
||||
current
|
||||
</label>
|
||||
{% ifwritable issues current %}
|
||||
<input id='current' name='current' type='checkbox' value='{{record.current}}'/>
|
||||
{% else %}
|
||||
{% ifreadable issues current%}
|
||||
<span id='current' name='current' class='pseudo-widget disabled'>
|
||||
{{record.current}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget action-safe'>
|
||||
<label for='save-button' class='action-safe'>
|
||||
To save this issues record
|
||||
</label>
|
||||
<input id='save-button' name='save-button' class='action-safe' type=':submit' value='Save!'/>
|
||||
</p>
|
||||
<p class='widget action-dangerous'>
|
||||
<label for='delete-button' class='action-dangerous'>
|
||||
To delete this issues record
|
||||
</label>
|
||||
<input id='delete-button' name='delete-button' class='action-dangerous' type=':submit' value='Delete!'/>
|
||||
</p>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
{% endblock %}
|
82
resources/templates/auto/form-roles-Role.html
Normal file
82
resources/templates/auto/form-roles-Role.html
Normal file
|
@ -0,0 +1,82 @@
|
|||
{% extends "templates/base.html" %}
|
||||
|
||||
<!-- File form-roles-Role.html generated 2018-06-10T21:17:47.125Z by adl.to-selmer-templates.
|
||||
See [Application Description Language](https://github.com/simon-brooke/adl).-->
|
||||
|
||||
{% block content %}
|
||||
<div id='content' class='edit'>
|
||||
<form action='{{servlet-context}}/form-roles-Role' method='POST'>
|
||||
{% csrf-field %}
|
||||
<input id='id' name='id' type='hidden' value='{{record.id}}'/>
|
||||
<p class='widget'>
|
||||
<label for='id'>
|
||||
id
|
||||
</label>
|
||||
{% ifwritable roles %}
|
||||
<input id='id' name='id' type='text' value='{{record.id}}'/>
|
||||
{% else %}
|
||||
{% ifreadable roles %}
|
||||
<span id='id' name='id' class='pseudo-widget disabled'>
|
||||
{{record.id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='name'>
|
||||
name
|
||||
</label>
|
||||
{% ifwritable roles name %}
|
||||
<input id='name' name='name' type='text' value='{{record.name}}'/>
|
||||
{% else %}
|
||||
{% ifreadable roles name%}
|
||||
<span id='name' name='name' class='pseudo-widget disabled'>
|
||||
{{record.name}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='id'>
|
||||
id
|
||||
</label>
|
||||
{% ifwritable roles %}
|
||||
<input id='id' name='id' type='text' value='{{record.id}}'/>
|
||||
{% else %}
|
||||
{% ifreadable roles %}
|
||||
<span id='id' name='id' class='pseudo-widget disabled'>
|
||||
{{record.id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='name'>
|
||||
name
|
||||
</label>
|
||||
{% ifwritable roles name %}
|
||||
<input id='name' name='name' type='text' value='{{record.name}}'/>
|
||||
{% else %}
|
||||
{% ifreadable roles name%}
|
||||
<span id='name' name='name' class='pseudo-widget disabled'>
|
||||
{{record.name}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget action-safe'>
|
||||
<label for='save-button' class='action-safe'>
|
||||
To save this roles record
|
||||
</label>
|
||||
<input id='save-button' name='save-button' class='action-safe' type=':submit' value='Save!'/>
|
||||
</p>
|
||||
<p class='widget action-dangerous'>
|
||||
<label for='delete-button' class='action-dangerous'>
|
||||
To delete this roles record
|
||||
</label>
|
||||
<input id='delete-button' name='delete-button' class='action-dangerous' type=':submit' value='Delete!'/>
|
||||
</p>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
{% endblock %}
|
195
resources/templates/auto/form-teams-Team.html
Normal file
195
resources/templates/auto/form-teams-Team.html
Normal file
|
@ -0,0 +1,195 @@
|
|||
{% extends "templates/base.html" %}
|
||||
|
||||
<!-- File form-teams-Team.html generated 2018-06-10T21:17:47.128Z by adl.to-selmer-templates.
|
||||
See [Application Description Language](https://github.com/simon-brooke/adl).-->
|
||||
|
||||
{% block content %}
|
||||
<div id='content' class='edit'>
|
||||
<form action='{{servlet-context}}/form-teams-Team' method='POST'>
|
||||
{% csrf-field %}
|
||||
<input id='id' name='id' type='hidden' value='{{record.id}}'/>
|
||||
<p class='widget'>
|
||||
<label for='id'>
|
||||
id
|
||||
</label>
|
||||
{% ifwritable teams %}
|
||||
<input id='id' name='id' type='text' value='{{record.id}}'/>
|
||||
{% else %}
|
||||
{% ifreadable teams %}
|
||||
<span id='id' name='id' class='pseudo-widget disabled'>
|
||||
{{record.id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='name'>
|
||||
name
|
||||
</label>
|
||||
{% ifwritable teams name %}
|
||||
<input id='name' name='name' type='text' value='{{record.name}}'/>
|
||||
{% else %}
|
||||
{% ifreadable teams name%}
|
||||
<span id='name' name='name' class='pseudo-widget disabled'>
|
||||
{{record.name}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='district_id'>
|
||||
district_id
|
||||
</label>
|
||||
{% ifwritable teams district_id %}
|
||||
<div class='select-box' farside='districts' found='true'>
|
||||
<input name='district_id-search-box' onchange='/* javascript to repopulate the select widget */'/>
|
||||
<select id='district_id' name='district_id' comment='JavaScript stuff to fix up aynchronous loading'>
|
||||
{% for record in districts %}<option value='{{record.id}}'>{{record.name}}</option>{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
{% else %}
|
||||
{% ifreadable teams district_id%}
|
||||
<span id='district_id' name='district_id' class='pseudo-widget disabled'>
|
||||
{{record.district_id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='latitude'>
|
||||
latitude
|
||||
</label>
|
||||
{% ifwritable teams latitude %}
|
||||
<input id='latitude' name='latitude' type='number' value='{{record.latitude}}'/>
|
||||
{% else %}
|
||||
{% ifreadable teams latitude%}
|
||||
<span id='latitude' name='latitude' class='pseudo-widget disabled'>
|
||||
{{record.latitude}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='longitude'>
|
||||
longitude
|
||||
</label>
|
||||
{% ifwritable teams longitude %}
|
||||
<input id='longitude' name='longitude' type='number' value='{{record.longitude}}'/>
|
||||
{% else %}
|
||||
{% ifreadable teams longitude%}
|
||||
<span id='longitude' name='longitude' class='pseudo-widget disabled'>
|
||||
{{record.longitude}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='id'>
|
||||
id
|
||||
</label>
|
||||
{% ifwritable teams %}
|
||||
<input id='id' name='id' type='text' value='{{record.id}}'/>
|
||||
{% else %}
|
||||
{% ifreadable teams %}
|
||||
<span id='id' name='id' class='pseudo-widget disabled'>
|
||||
{{record.id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='name'>
|
||||
name
|
||||
</label>
|
||||
{% ifwritable teams name %}
|
||||
<input id='name' name='name' type='text' value='{{record.name}}'/>
|
||||
{% else %}
|
||||
{% ifreadable teams name%}
|
||||
<span id='name' name='name' class='pseudo-widget disabled'>
|
||||
{{record.name}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='district_id'>
|
||||
district_id
|
||||
</label>
|
||||
{% ifwritable teams district_id %}
|
||||
<div class='select-box' farside='districts' found='true'>
|
||||
<input name='district_id-search-box' onchange='/* javascript to repopulate the select widget */'/>
|
||||
<select id='district_id' name='district_id' comment='JavaScript stuff to fix up aynchronous loading'>
|
||||
{% for record in districts %}<option value='{{record.id}}'>{{record.name}}</option>{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
{% else %}
|
||||
{% ifreadable teams district_id%}
|
||||
<span id='district_id' name='district_id' class='pseudo-widget disabled'>
|
||||
{{record.district_id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='latitude'>
|
||||
latitude
|
||||
</label>
|
||||
{% ifwritable teams latitude %}
|
||||
<input id='latitude' name='latitude' type='number' value='{{record.latitude}}'/>
|
||||
{% else %}
|
||||
{% ifreadable teams latitude%}
|
||||
<span id='latitude' name='latitude' class='pseudo-widget disabled'>
|
||||
{{record.latitude}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='members'>
|
||||
members
|
||||
</label>
|
||||
{% ifwritable teams members %}
|
||||
<div class='select-box' farside='canvassers' found='true'>
|
||||
<input name='members-search-box' onchange='/* javascript to repopulate the select widget */'/>
|
||||
<select id='members' name='members' multiple='multiple' comment='JavaScript stuff to fix up aynchronous loading'>
|
||||
{% for record in canvassers %}<option value='{{record.id}}'>{{record.username}} {{record.fullname}} {{record.email}}</option>{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
{% else %}
|
||||
{% ifreadable teams members%}
|
||||
<span id='members' name='members' class='pseudo-widget disabled'>
|
||||
{{record.members}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='longitude'>
|
||||
longitude
|
||||
</label>
|
||||
{% ifwritable teams longitude %}
|
||||
<input id='longitude' name='longitude' type='number' value='{{record.longitude}}'/>
|
||||
{% else %}
|
||||
{% ifreadable teams longitude%}
|
||||
<span id='longitude' name='longitude' class='pseudo-widget disabled'>
|
||||
{{record.longitude}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget action-safe'>
|
||||
<label for='save-button' class='action-safe'>
|
||||
To save this teams record
|
||||
</label>
|
||||
<input id='save-button' name='save-button' class='action-safe' type=':submit' value='Save!'/>
|
||||
</p>
|
||||
<p class='widget action-dangerous'>
|
||||
<label for='delete-button' class='action-dangerous'>
|
||||
To delete this teams record
|
||||
</label>
|
||||
<input id='delete-button' name='delete-button' class='action-dangerous' type=':submit' value='Delete!'/>
|
||||
</p>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
{% endblock %}
|
148
resources/templates/auto/form-visits-Visit.html
Normal file
148
resources/templates/auto/form-visits-Visit.html
Normal file
|
@ -0,0 +1,148 @@
|
|||
{% extends "templates/base.html" %}
|
||||
|
||||
<!-- File form-visits-Visit.html generated 2018-06-10T21:17:47.126Z by adl.to-selmer-templates.
|
||||
See [Application Description Language](https://github.com/simon-brooke/adl).-->
|
||||
|
||||
{% block content %}
|
||||
<div id='content' class='edit'>
|
||||
<form action='{{servlet-context}}/form-visits-Visit' method='POST'>
|
||||
{% csrf-field %}
|
||||
<input id='id' name='id' type='hidden' value='{{record.id}}'/>
|
||||
<p class='widget'>
|
||||
<label for='id'>
|
||||
id
|
||||
</label>
|
||||
{% ifwritable visits %}
|
||||
<input id='id' name='id' type='text' value='{{record.id}}'/>
|
||||
{% else %}
|
||||
{% ifreadable visits %}
|
||||
<span id='id' name='id' class='pseudo-widget disabled'>
|
||||
{{record.id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='address_id'>
|
||||
address_id
|
||||
</label>
|
||||
{% ifwritable visits address_id %}
|
||||
<input id='address_id' name='address_id' type='number' value='{{record.address_id}}'/>
|
||||
{% else %}
|
||||
{% ifreadable visits address_id%}
|
||||
<span id='address_id' name='address_id' class='pseudo-widget disabled'>
|
||||
{{record.address_id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='canvasser_id'>
|
||||
canvasser_id
|
||||
</label>
|
||||
{% ifwritable visits canvasser_id %}
|
||||
<div class='select-box' farside='canvassers' found='true'>
|
||||
<input name='canvasser_id-search-box' onchange='/* javascript to repopulate the select widget */'/>
|
||||
<select id='canvasser_id' name='canvasser_id' comment='JavaScript stuff to fix up aynchronous loading'>
|
||||
{% for record in canvassers %}<option value='{{record.id}}'>{{record.username}} {{record.fullname}} {{record.email}}</option>{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
{% else %}
|
||||
{% ifreadable visits canvasser_id%}
|
||||
<span id='canvasser_id' name='canvasser_id' class='pseudo-widget disabled'>
|
||||
{{record.canvasser_id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='date'>
|
||||
date
|
||||
</label>
|
||||
{% ifwritable visits date %}
|
||||
<input id='date' name='date' type='text' value='{{record.date}}'/>
|
||||
{% else %}
|
||||
{% ifreadable visits date%}
|
||||
<span id='date' name='date' class='pseudo-widget disabled'>
|
||||
{{record.date}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='id'>
|
||||
id
|
||||
</label>
|
||||
{% ifwritable visits %}
|
||||
<input id='id' name='id' type='text' value='{{record.id}}'/>
|
||||
{% else %}
|
||||
{% ifreadable visits %}
|
||||
<span id='id' name='id' class='pseudo-widget disabled'>
|
||||
{{record.id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='address_id'>
|
||||
address_id
|
||||
</label>
|
||||
{% ifwritable visits address_id %}
|
||||
<input id='address_id' name='address_id' type='number' value='{{record.address_id}}'/>
|
||||
{% else %}
|
||||
{% ifreadable visits address_id%}
|
||||
<span id='address_id' name='address_id' class='pseudo-widget disabled'>
|
||||
{{record.address_id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='canvasser_id'>
|
||||
canvasser_id
|
||||
</label>
|
||||
{% ifwritable visits canvasser_id %}
|
||||
<div class='select-box' farside='canvassers' found='true'>
|
||||
<input name='canvasser_id-search-box' onchange='/* javascript to repopulate the select widget */'/>
|
||||
<select id='canvasser_id' name='canvasser_id' comment='JavaScript stuff to fix up aynchronous loading'>
|
||||
{% for record in canvassers %}<option value='{{record.id}}'>{{record.username}} {{record.fullname}} {{record.email}}</option>{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
{% else %}
|
||||
{% ifreadable visits canvasser_id%}
|
||||
<span id='canvasser_id' name='canvasser_id' class='pseudo-widget disabled'>
|
||||
{{record.canvasser_id}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget'>
|
||||
<label for='date'>
|
||||
date
|
||||
</label>
|
||||
{% ifwritable visits date %}
|
||||
<input id='date' name='date' type='text' value='{{record.date}}'/>
|
||||
{% else %}
|
||||
{% ifreadable visits date%}
|
||||
<span id='date' name='date' class='pseudo-widget disabled'>
|
||||
{{record.date}}
|
||||
</span>
|
||||
{% endifreadable %}
|
||||
{% endifwritable %}
|
||||
</p>
|
||||
<p class='widget action-safe'>
|
||||
<label for='save-button' class='action-safe'>
|
||||
To save this visits record
|
||||
</label>
|
||||
<input id='save-button' name='save-button' class='action-safe' type=':submit' value='Save!'/>
|
||||
</p>
|
||||
<p class='widget action-dangerous'>
|
||||
<label for='delete-button' class='action-dangerous'>
|
||||
To delete this visits record
|
||||
</label>
|
||||
<input id='delete-button' name='delete-button' class='action-dangerous' type=':submit' value='Delete!'/>
|
||||
</p>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
{% endblock %}
|
115
resources/templates/auto/list-addresses-Addresses.html
Normal file
115
resources/templates/auto/list-addresses-Addresses.html
Normal file
|
@ -0,0 +1,115 @@
|
|||
{% extends "templates/base.html" %}
|
||||
|
||||
<!-- File list-addresses-Addresses.html generated 2018-06-10T21:17:47.133Z by adl.to-selmer-templates.
|
||||
See [Application Description Language](https://github.com/simon-brooke/adl).-->
|
||||
|
||||
{% block content %}
|
||||
<form id='content' class='list'>
|
||||
<div class='big-link-container'>
|
||||
<a href='form-addresses-Address'>
|
||||
Add a new Address
|
||||
</a>
|
||||
</div>
|
||||
<table caption='addresses'>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>
|
||||
id
|
||||
</th>
|
||||
<th>
|
||||
address
|
||||
</th>
|
||||
<th>
|
||||
postcode
|
||||
</th>
|
||||
<th>
|
||||
phone
|
||||
</th>
|
||||
<th>
|
||||
district_id
|
||||
</th>
|
||||
<th>
|
||||
latitude
|
||||
</th>
|
||||
<th>
|
||||
longitude
|
||||
</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>
|
||||
<input id='id' name='id' value='{{ params.id }}'/>
|
||||
</th>
|
||||
<th>
|
||||
<input id='address' name='address' value='{{ params.address }}'/>
|
||||
</th>
|
||||
<th>
|
||||
<input id='postcode' name='postcode' value='{{ params.postcode }}'/>
|
||||
</th>
|
||||
<th>
|
||||
<input id='phone' name='phone' value='{{ params.phone }}'/>
|
||||
</th>
|
||||
<th>
|
||||
<input id='district_id' name='district_id' value='{{ params.district_id }}'/>
|
||||
</th>
|
||||
<th>
|
||||
<input id='latitude' name='latitude' value='{{ params.latitude }}'/>
|
||||
</th>
|
||||
<th>
|
||||
<input id='longitude' name='longitude' value='{{ params.longitude }}'/>
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{% for record in %records% %}
|
||||
<tr>
|
||||
<td>
|
||||
{{ record.id }}
|
||||
</td>
|
||||
<td>
|
||||
{{ record.address }}
|
||||
</td>
|
||||
<td>
|
||||
{{ record.postcode }}
|
||||
</td>
|
||||
<td>
|
||||
{{ record.phone }}
|
||||
</td>
|
||||
<td>
|
||||
{{ record.district_id }}
|
||||
</td>
|
||||
<td>
|
||||
{{ record.latitude }}
|
||||
</td>
|
||||
<td>
|
||||
{{ record.longitude }}
|
||||
</td>
|
||||
<td>
|
||||
<a href='form-addresses-Address?id={{ record.id}}'>
|
||||
View
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
<tfoot/>
|
||||
</table>
|
||||
{% if offset > 0 %}
|
||||
<div class='back-link-container'>
|
||||
<a href='FIXME'>
|
||||
Previous
|
||||
</a>
|
||||
</div>
|
||||
{% endif %}
|
||||
<div class='big-link-container'>
|
||||
<a href='FIXME'>
|
||||
Next
|
||||
</a>
|
||||
</div>
|
||||
<div class='big-link-container'>
|
||||
<a href='form-addresses-Address'>
|
||||
Add a new Address
|
||||
</a>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
{% endblock %}
|
133
resources/templates/auto/list-canvassers-Canvassers.html
Normal file
133
resources/templates/auto/list-canvassers-Canvassers.html
Normal file
|
@ -0,0 +1,133 @@
|
|||
{% extends "templates/base.html" %}
|
||||
|
||||
<!-- File list-canvassers-Canvassers.html generated 2018-06-10T21:17:47.138Z by adl.to-selmer-templates.
|
||||
See [Application Description Language](https://github.com/simon-brooke/adl).-->
|
||||
|
||||
{% block content %}
|
||||
<form id='content' class='list'>
|
||||
<div class='big-link-container'>
|
||||
<a href='form-canvassers-Canvasser'>
|
||||
Add a new Canvasser
|
||||
</a>
|
||||
</div>
|
||||
<table caption='canvassers'>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>
|
||||
id
|
||||
</th>
|
||||
<th>
|
||||
username
|
||||
</th>
|
||||
<th>
|
||||
fullname
|
||||
</th>
|
||||
<th>
|
||||
elector_id
|
||||
</th>
|
||||
<th>
|
||||
address_id
|
||||
</th>
|
||||
<th>
|
||||
phone
|
||||
</th>
|
||||
<th>
|
||||
email
|
||||
</th>
|
||||
<th>
|
||||
authority_id
|
||||
</th>
|
||||
<th>
|
||||
authorised
|
||||
</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>
|
||||
<input id='id' name='id' value='{{ params.id }}'/>
|
||||
</th>
|
||||
<th>
|
||||
<input id='username' name='username' value='{{ params.username }}'/>
|
||||
</th>
|
||||
<th>
|
||||
<input id='fullname' name='fullname' value='{{ params.fullname }}'/>
|
||||
</th>
|
||||
<th>
|
||||
<input id='elector_id' name='elector_id' value='{{ params.elector_id }}'/>
|
||||
</th>
|
||||
<th>
|
||||
<input id='address_id' name='address_id' value='{{ params.address_id }}'/>
|
||||
</th>
|
||||
<th>
|
||||
<input id='phone' name='phone' value='{{ params.phone }}'/>
|
||||
</th>
|
||||
<th>
|
||||
<input id='email' name='email' value='{{ params.email }}'/>
|
||||
</th>
|
||||
<th>
|
||||
<input id='authority_id' name='authority_id' value='{{ params.authority_id }}'/>
|
||||
</th>
|
||||
<th>
|
||||
<input id='authorised' name='authorised' value='{{ params.authorised }}'/>
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{% for record in %records% %}
|
||||
<tr>
|
||||
<td>
|
||||
{{ record.id }}
|
||||
</td>
|
||||
<td>
|
||||
{{ record.username }}
|
||||
</td>
|
||||
<td>
|
||||
{{ record.fullname }}
|
||||
</td>
|
||||
<td>
|
||||
{{ record.elector_id }}
|
||||
</td>
|
||||
<td>
|
||||
{{ record.address_id }}
|
||||
</td>
|
||||
<td>
|
||||
{{ record.phone }}
|
||||
</td>
|
||||
<td>
|
||||
{{ record.email }}
|
||||
</td>
|
||||
<td>
|
||||
{{ record.authority_id }}
|
||||
</td>
|
||||
<td>
|
||||
{{ record.authorised }}
|
||||
</td>
|
||||
<td>
|
||||
<a href='form-canvassers-Canvasser?id={{ record.id}}'>
|
||||
View
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
<tfoot/>
|
||||
</table>
|
||||
{% if offset > 0 %}
|
||||
<div class='back-link-container'>
|
||||
<a href='FIXME'>
|
||||
Previous
|
||||
</a>
|
||||
</div>
|
||||
{% endif %}
|
||||
<div class='big-link-container'>
|
||||
<a href='FIXME'>
|
||||
Next
|
||||
</a>
|
||||
</div>
|
||||
<div class='big-link-container'>
|
||||
<a href='form-canvassers-Canvasser'>
|
||||
Add a new Canvasser
|
||||
</a>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
{% endblock %}
|
70
resources/templates/auto/list-districts-Districts.html
Normal file
70
resources/templates/auto/list-districts-Districts.html
Normal file
|
@ -0,0 +1,70 @@
|
|||
{% extends "templates/base.html" %}
|
||||
|
||||
<!-- File list-districts-Districts.html generated 2018-06-10T21:17:47.136Z by adl.to-selmer-templates.
|
||||
See [Application Description Language](https://github.com/simon-brooke/adl).-->
|
||||
|
||||
{% block content %}
|
||||
<form id='content' class='list'>
|
||||
<div class='big-link-container'>
|
||||
<a href='form-districts-District'>
|
||||
Add a new District
|
||||
</a>
|
||||
</div>
|
||||
<table caption='districts'>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>
|
||||
id
|
||||
</th>
|
||||
<th>
|
||||
name
|
||||
</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>
|
||||
<input id='id' name='id' value='{{ params.id }}'/>
|
||||
</th>
|
||||
<th>
|
||||
<input id='name' name='name' value='{{ params.name }}'/>
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{% for record in %records% %}
|
||||
<tr>
|
||||
<td>
|
||||
{{ record.id }}
|
||||
</td>
|
||||
<td>
|
||||
{{ record.name }}
|
||||
</td>
|
||||
<td>
|
||||
<a href='form-districts-District?id={{ record.id}}'>
|
||||
View
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
<tfoot/>
|
||||
</table>
|
||||
{% if offset > 0 %}
|
||||
<div class='back-link-container'>
|
||||
<a href='FIXME'>
|
||||
Previous
|
||||
</a>
|
||||
</div>
|
||||
{% endif %}
|
||||
<div class='big-link-container'>
|
||||
<a href='FIXME'>
|
||||
Next
|
||||
</a>
|
||||
</div>
|
||||
<div class='big-link-container'>
|
||||
<a href='form-districts-District'>
|
||||
Add a new District
|
||||
</a>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
{% endblock %}
|
79
resources/templates/auto/list-dwellings-Dwellings.html
Normal file
79
resources/templates/auto/list-dwellings-Dwellings.html
Normal file
|
@ -0,0 +1,79 @@
|
|||
{% extends "templates/base.html" %}
|
||||
|
||||
<!-- File list-dwellings-Dwellings.html generated 2018-06-10T21:17:47.132Z by adl.to-selmer-templates.
|
||||
See [Application Description Language](https://github.com/simon-brooke/adl).-->
|
||||
|
||||
{% block content %}
|
||||
<form id='content' class='list'>
|
||||
<div class='big-link-container'>
|
||||
<a href='form-dwellings-Dwelling'>
|
||||
Add a new Dwelling
|
||||
</a>
|
||||
</div>
|
||||
<table caption='dwellings'>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>
|
||||
id
|
||||
</th>
|
||||
<th>
|
||||
address_id
|
||||
</th>
|
||||
<th>
|
||||
sub-address
|
||||
</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>
|
||||
<input id='id' name='id' value='{{ params.id }}'/>
|
||||
</th>
|
||||
<th>
|
||||
<input id='address_id' name='address_id' value='{{ params.address_id }}'/>
|
||||
</th>
|
||||
<th>
|
||||
<input id='sub-address' name='sub-address' value='{{ params.sub-address }}'/>
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{% for record in %records% %}
|
||||
<tr>
|
||||
<td>
|
||||
{{ record.id }}
|
||||
</td>
|
||||
<td>
|
||||
{{ record.address_id }}
|
||||
</td>
|
||||
<td>
|
||||
{{ record.sub-address }}
|
||||
</td>
|
||||
<td>
|
||||
<a href='form-dwellings-Dwelling?id={{ record.id}}'>
|
||||
View
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
<tfoot/>
|
||||
</table>
|
||||
{% if offset > 0 %}
|
||||
<div class='back-link-container'>
|
||||
<a href='FIXME'>
|
||||
Previous
|
||||
</a>
|
||||
</div>
|
||||
{% endif %}
|
||||
<div class='big-link-container'>
|
||||
<a href='FIXME'>
|
||||
Next
|
||||
</a>
|
||||
</div>
|
||||
<div class='big-link-container'>
|
||||
<a href='form-dwellings-Dwelling'>
|
||||
Add a new Dwelling
|
||||
</a>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
{% endblock %}
|
106
resources/templates/auto/list-electors-Electors.html
Normal file
106
resources/templates/auto/list-electors-Electors.html
Normal file
|
@ -0,0 +1,106 @@
|
|||
{% extends "templates/base.html" %}
|
||||
|
||||
<!-- File list-electors-Electors.html generated 2018-06-10T21:17:47.123Z by adl.to-selmer-templates.
|
||||
See [Application Description Language](https://github.com/simon-brooke/adl).-->
|
||||
|
||||
{% block content %}
|
||||
<form id='content' class='list'>
|
||||
<div class='big-link-container'>
|
||||
<a href='form-electors-Elector'>
|
||||
Add a new Elector
|
||||
</a>
|
||||
</div>
|
||||
<table caption='electors'>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>
|
||||
id
|
||||
</th>
|
||||
<th>
|
||||
name
|
||||
</th>
|
||||
<th>
|
||||
dwelling_id
|
||||
</th>
|
||||
<th>
|
||||
phone
|
||||
</th>
|
||||
<th>
|
||||
email
|
||||
</th>
|
||||
<th>
|
||||
gender
|
||||
</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>
|
||||
<input id='id' name='id' value='{{ params.id }}'/>
|
||||
</th>
|
||||
<th>
|
||||
<input id='name' name='name' value='{{ params.name }}'/>
|
||||
</th>
|
||||
<th>
|
||||
<input id='dwelling_id' name='dwelling_id' value='{{ params.dwelling_id }}'/>
|
||||
</th>
|
||||
<th>
|
||||
<input id='phone' name='phone' value='{{ params.phone }}'/>
|
||||
</th>
|
||||
<th>
|
||||
<input id='email' name='email' value='{{ params.email }}'/>
|
||||
</th>
|
||||
<th>
|
||||
<input id='gender' name='gender' value='{{ params.gender }}'/>
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{% for record in %records% %}
|
||||
<tr>
|
||||
<td>
|
||||
{{ record.id }}
|
||||
</td>
|
||||
<td>
|
||||
{{ record.name }}
|
||||
</td>
|
||||
<td>
|
||||
{{ record.dwelling_id }}
|
||||
</td>
|
||||
<td>
|
||||
{{ record.phone }}
|
||||
</td>
|
||||
<td>
|
||||
{{ record.email }}
|
||||
</td>
|
||||
<td>
|
||||
{{ record.gender }}
|
||||
</td>
|
||||
<td>
|
||||
<a href='form-electors-Elector?id={{ record.id}}'>
|
||||
View
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
<tfoot/>
|
||||
</table>
|
||||
{% if offset > 0 %}
|
||||
<div class='back-link-container'>
|
||||
<a href='FIXME'>
|
||||
Previous
|
||||
</a>
|
||||
</div>
|
||||
{% endif %}
|
||||
<div class='big-link-container'>
|
||||
<a href='FIXME'>
|
||||
Next
|
||||
</a>
|
||||
</div>
|
||||
<div class='big-link-container'>
|
||||
<a href='form-electors-Elector'>
|
||||
Add a new Elector
|
||||
</a>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
{% endblock %}
|
|
@ -0,0 +1,106 @@
|
|||
{% extends "templates/base.html" %}
|
||||
|
||||
<!-- File list-followupactions-Followupactions.html generated 2018-06-10T21:17:47.137Z by adl.to-selmer-templates.
|
||||
See [Application Description Language](https://github.com/simon-brooke/adl).-->
|
||||
|
||||
{% block content %}
|
||||
<form id='content' class='list'>
|
||||
<div class='big-link-container'>
|
||||
<a href='form-followupactions-Followupaction'>
|
||||
Add a new Followupaction
|
||||
</a>
|
||||
</div>
|
||||
<table caption='followupactions'>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>
|
||||
id
|
||||
</th>
|
||||
<th>
|
||||
request_id
|
||||
</th>
|
||||
<th>
|
||||
actor
|
||||
</th>
|
||||
<th>
|
||||
date
|
||||
</th>
|
||||
<th>
|
||||
notes
|
||||
</th>
|
||||
<th>
|
||||
closed
|
||||
</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>
|
||||
<input id='id' name='id' value='{{ params.id }}'/>
|
||||
</th>
|
||||
<th>
|
||||
<input id='request_id' name='request_id' value='{{ params.request_id }}'/>
|
||||
</th>
|
||||
<th>
|
||||
<input id='actor' name='actor' value='{{ params.actor }}'/>
|
||||
</th>
|
||||
<th>
|
||||
<input id='date' name='date' value='{{ params.date }}'/>
|
||||
</th>
|
||||
<th>
|
||||
<input id='notes' name='notes' value='{{ params.notes }}'/>
|
||||
</th>
|
||||
<th>
|
||||
<input id='closed' name='closed' value='{{ params.closed }}'/>
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{% for record in %records% %}
|
||||
<tr>
|
||||
<td>
|
||||
{{ record.id }}
|
||||
</td>
|
||||
<td>
|
||||
{{ record.request_id }}
|
||||
</td>
|
||||
<td>
|
||||
{{ record.actor }}
|
||||
</td>
|
||||
<td>
|
||||
{{ record.date }}
|
||||
</td>
|
||||
<td>
|
||||
{{ record.notes }}
|
||||
</td>
|
||||
<td>
|
||||
{{ record.closed }}
|
||||
</td>
|
||||
<td>
|
||||
<a href='form-followupactions-Followupaction?id={{ record.id}}'>
|
||||
View
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
<tfoot/>
|
||||
</table>
|
||||
{% if offset > 0 %}
|
||||
<div class='back-link-container'>
|
||||
<a href='FIXME'>
|
||||
Previous
|
||||
</a>
|
||||
</div>
|
||||
{% endif %}
|
||||
<div class='big-link-container'>
|
||||
<a href='FIXME'>
|
||||
Next
|
||||
</a>
|
||||
</div>
|
||||
<div class='big-link-container'>
|
||||
<a href='form-followupactions-Followupaction'>
|
||||
Add a new Followupaction
|
||||
</a>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
{% endblock %}
|
79
resources/templates/auto/list-issues-Issues.html
Normal file
79
resources/templates/auto/list-issues-Issues.html
Normal file
|
@ -0,0 +1,79 @@
|
|||
{% extends "templates/base.html" %}
|
||||
|
||||
<!-- File list-issues-Issues.html generated 2018-06-10T21:17:47.137Z by adl.to-selmer-templates.
|
||||
See [Application Description Language](https://github.com/simon-brooke/adl).-->
|
||||
|
||||
{% block content %}
|
||||
<form id='content' class='list'>
|
||||
<div class='big-link-container'>
|
||||
<a href='form-issues-Issue'>
|
||||
Add a new Issue
|
||||
</a>
|
||||
</div>
|
||||
<table caption='issues'>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>
|
||||
id
|
||||
</th>
|
||||
<th>
|
||||
url
|
||||
</th>
|
||||
<th>
|
||||
current
|
||||
</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>
|
||||
<input id='id' name='id' value='{{ params.id }}'/>
|
||||
</th>
|
||||
<th>
|
||||
<input id='url' name='url' value='{{ params.url }}'/>
|
||||
</th>
|
||||
<th>
|
||||
<input id='current' name='current' value='{{ params.current }}'/>
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{% for record in %records% %}
|
||||
<tr>
|
||||
<td>
|
||||
{{ record.id }}
|
||||
</td>
|
||||
<td>
|
||||
{{ record.url }}
|
||||
</td>
|
||||
<td>
|
||||
{{ record.current }}
|
||||
</td>
|
||||
<td>
|
||||
<a href='form-issues-Issue?id={{ record.id}}'>
|
||||
View
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
<tfoot/>
|
||||
</table>
|
||||
{% if offset > 0 %}
|
||||
<div class='back-link-container'>
|
||||
<a href='FIXME'>
|
||||
Previous
|
||||
</a>
|
||||
</div>
|
||||
{% endif %}
|
||||
<div class='big-link-container'>
|
||||
<a href='FIXME'>
|
||||
Next
|
||||
</a>
|
||||
</div>
|
||||
<div class='big-link-container'>
|
||||
<a href='form-issues-Issue'>
|
||||
Add a new Issue
|
||||
</a>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
{% endblock %}
|
70
resources/templates/auto/list-roles-Roles.html
Normal file
70
resources/templates/auto/list-roles-Roles.html
Normal file
|
@ -0,0 +1,70 @@
|
|||
{% extends "templates/base.html" %}
|
||||
|
||||
<!-- File list-roles-Roles.html generated 2018-06-10T21:17:47.125Z by adl.to-selmer-templates.
|
||||
See [Application Description Language](https://github.com/simon-brooke/adl).-->
|
||||
|
||||
{% block content %}
|
||||
<form id='content' class='list'>
|
||||
<div class='big-link-container'>
|
||||
<a href='form-roles-Role'>
|
||||
Add a new Role
|
||||
</a>
|
||||
</div>
|
||||
<table caption='roles'>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>
|
||||
id
|
||||
</th>
|
||||
<th>
|
||||
name
|
||||
</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>
|
||||
<input id='id' name='id' value='{{ params.id }}'/>
|
||||
</th>
|
||||
<th>
|
||||
<input id='name' name='name' value='{{ params.name }}'/>
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{% for record in %records% %}
|
||||
<tr>
|
||||
<td>
|
||||
{{ record.id }}
|
||||
</td>
|
||||
<td>
|
||||
{{ record.name }}
|
||||
</td>
|
||||
<td>
|
||||
<a href='form-roles-Role?id={{ record.id}}'>
|
||||
View
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
<tfoot/>
|
||||
</table>
|
||||
{% if offset > 0 %}
|
||||
<div class='back-link-container'>
|
||||
<a href='FIXME'>
|
||||
Previous
|
||||
</a>
|
||||
</div>
|
||||
{% endif %}
|
||||
<div class='big-link-container'>
|
||||
<a href='FIXME'>
|
||||
Next
|
||||
</a>
|
||||
</div>
|
||||
<div class='big-link-container'>
|
||||
<a href='form-roles-Role'>
|
||||
Add a new Role
|
||||
</a>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
{% endblock %}
|
97
resources/templates/auto/list-teams-Teams.html
Normal file
97
resources/templates/auto/list-teams-Teams.html
Normal file
|
@ -0,0 +1,97 @@
|
|||
{% extends "templates/base.html" %}
|
||||
|
||||
<!-- File list-teams-Teams.html generated 2018-06-10T21:17:47.118Z by adl.to-selmer-templates.
|
||||
See [Application Description Language](https://github.com/simon-brooke/adl).-->
|
||||
|
||||
{% block content %}
|
||||
<form id='content' class='list'>
|
||||
<div class='big-link-container'>
|
||||
<a href='form-teams-Team'>
|
||||
Add a new Team
|
||||
</a>
|
||||
</div>
|
||||
<table caption='teams'>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>
|
||||
id
|
||||
</th>
|
||||
<th>
|
||||
name
|
||||
</th>
|
||||
<th>
|
||||
district_id
|
||||
</th>
|
||||
<th>
|
||||
latitude
|
||||
</th>
|
||||
<th>
|
||||
longitude
|
||||
</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>
|
||||
<input id='id' name='id' value='{{ params.id }}'/>
|
||||
</th>
|
||||
<th>
|
||||
<input id='name' name='name' value='{{ params.name }}'/>
|
||||
</th>
|
||||
<th>
|
||||
<input id='district_id' name='district_id' value='{{ params.district_id }}'/>
|
||||
</th>
|
||||
<th>
|
||||
<input id='latitude' name='latitude' value='{{ params.latitude }}'/>
|
||||
</th>
|
||||
<th>
|
||||
<input id='longitude' name='longitude' value='{{ params.longitude }}'/>
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{% for record in %records% %}
|
||||
<tr>
|
||||
<td>
|
||||
{{ record.id }}
|
||||
</td>
|
||||
<td>
|
||||
{{ record.name }}
|
||||
</td>
|
||||
<td>
|
||||
{{ record.district_id }}
|
||||
</td>
|
||||
<td>
|
||||
{{ record.latitude }}
|
||||
</td>
|
||||
<td>
|
||||
{{ record.longitude }}
|
||||
</td>
|
||||
<td>
|
||||
<a href='form-teams-Team?id={{ record.id}}'>
|
||||
View
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
<tfoot/>
|
||||
</table>
|
||||
{% if offset > 0 %}
|
||||
<div class='back-link-container'>
|
||||
<a href='FIXME'>
|
||||
Previous
|
||||
</a>
|
||||
</div>
|
||||
{% endif %}
|
||||
<div class='big-link-container'>
|
||||
<a href='FIXME'>
|
||||
Next
|
||||
</a>
|
||||
</div>
|
||||
<div class='big-link-container'>
|
||||
<a href='form-teams-Team'>
|
||||
Add a new Team
|
||||
</a>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
{% endblock %}
|
88
resources/templates/auto/list-visits-Visits.html
Normal file
88
resources/templates/auto/list-visits-Visits.html
Normal file
|
@ -0,0 +1,88 @@
|
|||
{% extends "templates/base.html" %}
|
||||
|
||||
<!-- File list-visits-Visits.html generated 2018-06-10T21:17:47.117Z by adl.to-selmer-templates.
|
||||
See [Application Description Language](https://github.com/simon-brooke/adl).-->
|
||||
|
||||
{% block content %}
|
||||
<form id='content' class='list'>
|
||||
<div class='big-link-container'>
|
||||
<a href='form-visits-Visit'>
|
||||
Add a new Visit
|
||||
</a>
|
||||
</div>
|
||||
<table caption='visits'>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>
|
||||
id
|
||||
</th>
|
||||
<th>
|
||||
address_id
|
||||
</th>
|
||||
<th>
|
||||
canvasser_id
|
||||
</th>
|
||||
<th>
|
||||
date
|
||||
</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>
|
||||
<input id='id' name='id' value='{{ params.id }}'/>
|
||||
</th>
|
||||
<th>
|
||||
<input id='address_id' name='address_id' value='{{ params.address_id }}'/>
|
||||
</th>
|
||||
<th>
|
||||
<input id='canvasser_id' name='canvasser_id' value='{{ params.canvasser_id }}'/>
|
||||
</th>
|
||||
<th>
|
||||
<input id='date' name='date' value='{{ params.date }}'/>
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{% for record in %records% %}
|
||||
<tr>
|
||||
<td>
|
||||
{{ record.id }}
|
||||
</td>
|
||||
<td>
|
||||
{{ record.address_id }}
|
||||
</td>
|
||||
<td>
|
||||
{{ record.canvasser_id }}
|
||||
</td>
|
||||
<td>
|
||||
{{ record.date }}
|
||||
</td>
|
||||
<td>
|
||||
<a href='form-visits-Visit?id={{ record.id}}'>
|
||||
View
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
<tfoot/>
|
||||
</table>
|
||||
{% if offset > 0 %}
|
||||
<div class='back-link-container'>
|
||||
<a href='FIXME'>
|
||||
Previous
|
||||
</a>
|
||||
</div>
|
||||
{% endif %}
|
||||
<div class='big-link-container'>
|
||||
<a href='FIXME'>
|
||||
Next
|
||||
</a>
|
||||
</div>
|
||||
<div class='big-link-container'>
|
||||
<a href='form-visits-Visit'>
|
||||
Add a new Visit
|
||||
</a>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
{% endblock %}
|
4
src/clj/youyesyet/authorisation.clj
Normal file
4
src/clj/youyesyet/authorisation.clj
Normal file
|
@ -0,0 +1,4 @@
|
|||
(ns ^{:doc "Field-level authorisation. Messy."
|
||||
:author "Simon Brooke"}
|
||||
youyesyet.authorisation
|
||||
(:require [youyesyet.env :refer [defaults]]))
|
639
src/clj/youyesyet/routes/auto.clj
Normal file
639
src/clj/youyesyet/routes/auto.clj
Normal file
|
@ -0,0 +1,639 @@
|
|||
(ns
|
||||
youyesyet.routes.auto
|
||||
"JSON routes for Youyesyet auto-generated by [Application Description Language framework](https://github.com/simon-brooke/adl) at 20180610T194402.765Z"
|
||||
(:require
|
||||
[noir.response :as nresponse]
|
||||
[noir.util.route :as route]
|
||||
[compojure.core :refer [defroutes GET POST]]
|
||||
[ring.util.http-response :as response]
|
||||
[clojure.java.io :as io]
|
||||
[hugsql.core :as hugsql]
|
||||
[youyesyet.routes.manual :as m]))
|
||||
|
||||
(defn
|
||||
raw-resolve-template
|
||||
[n]
|
||||
(if
|
||||
(.exists (io/as-file (str "resources/templates/" n)))
|
||||
n
|
||||
(str "auto/n")))
|
||||
|
||||
(def resolve-template (memoise raw-resolve-template))
|
||||
|
||||
(defn
|
||||
list-electors-Electors
|
||||
[r]
|
||||
(layout/render
|
||||
(resolve-template "list-electors-Electors.html")
|
||||
{:title "Elector"}))
|
||||
|
||||
(defn
|
||||
form-electors-Elector
|
||||
[r]
|
||||
(layout/render
|
||||
(resolve-template "form-electors-Elector.html")
|
||||
{:title "Elector"}))
|
||||
|
||||
(defn
|
||||
list-genders-Genders
|
||||
[r]
|
||||
(layout/render
|
||||
(resolve-template "list-genders-Genders.html")
|
||||
{:title "Gender"}))
|
||||
|
||||
(defn
|
||||
form-genders-Gender
|
||||
[r]
|
||||
(layout/render
|
||||
(resolve-template "form-genders-Gender.html")
|
||||
{:title "Gender"}))
|
||||
|
||||
(defn
|
||||
list-dwellings-Dwellings
|
||||
[r]
|
||||
(layout/render
|
||||
(resolve-template "list-dwellings-Dwellings.html")
|
||||
{:title "Dwelling"}))
|
||||
|
||||
(defn
|
||||
form-dwellings-Dwelling
|
||||
[r]
|
||||
(layout/render
|
||||
(resolve-template "form-dwellings-Dwelling.html")
|
||||
{:title "Dwelling"}))
|
||||
|
||||
(defn
|
||||
list-addresses-Addresses
|
||||
[r]
|
||||
(layout/render
|
||||
(resolve-template "list-addresses-Addresses.html")
|
||||
{:title "Address"}))
|
||||
|
||||
(defn
|
||||
form-addresses-Address
|
||||
[r]
|
||||
(layout/render
|
||||
(resolve-template "form-addresses-Address.html")
|
||||
{:title "Address"}))
|
||||
|
||||
(defn
|
||||
list-visits-Visits
|
||||
[r]
|
||||
(layout/render
|
||||
(resolve-template "list-visits-Visits.html")
|
||||
{:title "Visit"}))
|
||||
|
||||
(defn
|
||||
form-visits-Visit
|
||||
[r]
|
||||
(layout/render
|
||||
(resolve-template "form-visits-Visit.html")
|
||||
{:title "Visit"}))
|
||||
|
||||
(defn
|
||||
list-authorities-Authorities
|
||||
[r]
|
||||
(layout/render
|
||||
(resolve-template "list-authorities-Authorities.html")
|
||||
{:title "Authority"}))
|
||||
|
||||
(defn
|
||||
form-authorities-Authority
|
||||
[r]
|
||||
(layout/render
|
||||
(resolve-template "form-authorities-Authority.html")
|
||||
{:title "Authority"}))
|
||||
|
||||
(defn
|
||||
list-issues-Issues
|
||||
[r]
|
||||
(layout/render
|
||||
(resolve-template "list-issues-Issues.html")
|
||||
{:title "Issue"}))
|
||||
|
||||
(defn
|
||||
form-issues-Issue
|
||||
[r]
|
||||
(layout/render
|
||||
(resolve-template "form-issues-Issue.html")
|
||||
{:title "Issue"}))
|
||||
|
||||
(defn
|
||||
list-intentions-Intentions
|
||||
[r]
|
||||
(layout/render
|
||||
(resolve-template "list-intentions-Intentions.html")
|
||||
{:title "Intention"}))
|
||||
|
||||
(defn
|
||||
form-intentions-Intention
|
||||
[r]
|
||||
(layout/render
|
||||
(resolve-template "form-intentions-Intention.html")
|
||||
{:title "Intention"}))
|
||||
|
||||
(defn
|
||||
list-canvassers-Canvassers
|
||||
[r]
|
||||
(layout/render
|
||||
(resolve-template "list-canvassers-Canvassers.html")
|
||||
{:title "Canvasser"}))
|
||||
|
||||
(defn
|
||||
form-canvassers-Canvasser
|
||||
[r]
|
||||
(layout/render
|
||||
(resolve-template "form-canvassers-Canvasser.html")
|
||||
{:title "Canvasser"}))
|
||||
|
||||
(defn
|
||||
list-followuprequests-Followuprequests
|
||||
[r]
|
||||
(layout/render
|
||||
(resolve-template "list-followuprequests-Followuprequests.html")
|
||||
{:title "Followuprequest"}))
|
||||
|
||||
(defn
|
||||
form-followuprequests-Followuprequest
|
||||
[r]
|
||||
(layout/render
|
||||
(resolve-template "form-followuprequests-Followuprequest.html")
|
||||
{:title "Followuprequest"}))
|
||||
|
||||
(defn
|
||||
list-roles-Roles
|
||||
[r]
|
||||
(layout/render
|
||||
(resolve-template "list-roles-Roles.html")
|
||||
{:title "Role"}))
|
||||
|
||||
(defn
|
||||
form-roles-Role
|
||||
[r]
|
||||
(layout/render
|
||||
(resolve-template "form-roles-Role.html")
|
||||
{:title "Role"}))
|
||||
|
||||
(defn
|
||||
list-teams-Teams
|
||||
[r]
|
||||
(layout/render
|
||||
(resolve-template "list-teams-Teams.html")
|
||||
{:title "Team"}))
|
||||
|
||||
(defn
|
||||
form-teams-Team
|
||||
[r]
|
||||
(layout/render
|
||||
(resolve-template "form-teams-Team.html")
|
||||
{:title "Team"}))
|
||||
|
||||
(defn
|
||||
list-districts-Districts
|
||||
[r]
|
||||
(layout/render
|
||||
(resolve-template "list-districts-Districts.html")
|
||||
{:title "District"}))
|
||||
|
||||
(defn
|
||||
form-districts-District
|
||||
[r]
|
||||
(layout/render
|
||||
(resolve-template "form-districts-District.html")
|
||||
{:title "District"}))
|
||||
|
||||
(defn
|
||||
list-followupactions-Followupactions
|
||||
[r]
|
||||
(layout/render
|
||||
(resolve-template "list-followupactions-Followupactions.html")
|
||||
{:title "Followupaction"}))
|
||||
|
||||
(defn
|
||||
form-followupactions-Followupaction
|
||||
[r]
|
||||
(layout/render
|
||||
(resolve-template "form-followupactions-Followupaction.html")
|
||||
{:title "Followupaction"}))
|
||||
|
||||
(defn
|
||||
list-options-Options
|
||||
[r]
|
||||
(layout/render
|
||||
(resolve-template "list-options-Options.html")
|
||||
{:title "Option"}))
|
||||
|
||||
(defn
|
||||
form-options-Option
|
||||
[r]
|
||||
(layout/render
|
||||
(resolve-template "form-options-Option.html")
|
||||
{:title "Option"}))
|
||||
|
||||
(defn
|
||||
list-followupmethods-Followupmethods
|
||||
[r]
|
||||
(layout/render
|
||||
(resolve-template "list-followupmethods-Followupmethods.html")
|
||||
{:title "Followupmethod"}))
|
||||
|
||||
(defn
|
||||
form-followupmethods-Followupmethod
|
||||
[r]
|
||||
(layout/render
|
||||
(resolve-template "form-followupmethods-Followupmethod.html")
|
||||
{:title "Followupmethod"}))
|
||||
|
||||
(defn
|
||||
raw-resolve-handler
|
||||
"Prefer the manually-written version of the handler with name `n`, if it exists, to the automatically generated one"
|
||||
[n]
|
||||
(let
|
||||
[s (symbol (str "m." n))]
|
||||
(if (bound? s) (eval s) (eval (symbol n)))))
|
||||
|
||||
(def resolve-handler (memoize raw-resolve-handler))
|
||||
|
||||
(defroutes
|
||||
auto-selmer-routes
|
||||
(GET
|
||||
"/form-addresses-Address"
|
||||
request
|
||||
(route/restricted
|
||||
(apply (resolve-handler "form-addresses-Address") (list request))))
|
||||
(POST
|
||||
"/form-addresses-Address"
|
||||
request
|
||||
(route/restricted
|
||||
(apply (resolve-handler "form-addresses-Address") (list request))))
|
||||
(GET
|
||||
"/form-authorities-Authority"
|
||||
request
|
||||
(route/restricted
|
||||
(apply
|
||||
(resolve-handler "form-authorities-Authority")
|
||||
(list request))))
|
||||
(POST
|
||||
"/form-authorities-Authority"
|
||||
request
|
||||
(route/restricted
|
||||
(apply
|
||||
(resolve-handler "form-authorities-Authority")
|
||||
(list request))))
|
||||
(GET
|
||||
"/form-canvassers-Canvasser"
|
||||
request
|
||||
(route/restricted
|
||||
(apply
|
||||
(resolve-handler "form-canvassers-Canvasser")
|
||||
(list request))))
|
||||
(POST
|
||||
"/form-canvassers-Canvasser"
|
||||
request
|
||||
(route/restricted
|
||||
(apply
|
||||
(resolve-handler "form-canvassers-Canvasser")
|
||||
(list request))))
|
||||
(GET
|
||||
"/form-districts-District"
|
||||
request
|
||||
(route/restricted
|
||||
(apply (resolve-handler "form-districts-District") (list request))))
|
||||
(POST
|
||||
"/form-districts-District"
|
||||
request
|
||||
(route/restricted
|
||||
(apply (resolve-handler "form-districts-District") (list request))))
|
||||
(GET
|
||||
"/form-dwellings-Dwelling"
|
||||
request
|
||||
(route/restricted
|
||||
(apply (resolve-handler "form-dwellings-Dwelling") (list request))))
|
||||
(POST
|
||||
"/form-dwellings-Dwelling"
|
||||
request
|
||||
(route/restricted
|
||||
(apply (resolve-handler "form-dwellings-Dwelling") (list request))))
|
||||
(GET
|
||||
"/form-electors-Elector"
|
||||
request
|
||||
(route/restricted
|
||||
(apply (resolve-handler "form-electors-Elector") (list request))))
|
||||
(POST
|
||||
"/form-electors-Elector"
|
||||
request
|
||||
(route/restricted
|
||||
(apply (resolve-handler "form-electors-Elector") (list request))))
|
||||
(GET
|
||||
"/form-followupactions-Followupaction"
|
||||
request
|
||||
(route/restricted
|
||||
(apply
|
||||
(resolve-handler "form-followupactions-Followupaction")
|
||||
(list request))))
|
||||
(POST
|
||||
"/form-followupactions-Followupaction"
|
||||
request
|
||||
(route/restricted
|
||||
(apply
|
||||
(resolve-handler "form-followupactions-Followupaction")
|
||||
(list request))))
|
||||
(GET
|
||||
"/form-followupmethods-Followupmethod"
|
||||
request
|
||||
(route/restricted
|
||||
(apply
|
||||
(resolve-handler "form-followupmethods-Followupmethod")
|
||||
(list request))))
|
||||
(POST
|
||||
"/form-followupmethods-Followupmethod"
|
||||
request
|
||||
(route/restricted
|
||||
(apply
|
||||
(resolve-handler "form-followupmethods-Followupmethod")
|
||||
(list request))))
|
||||
(GET
|
||||
"/form-followuprequests-Followuprequest"
|
||||
request
|
||||
(route/restricted
|
||||
(apply
|
||||
(resolve-handler "form-followuprequests-Followuprequest")
|
||||
(list request))))
|
||||
(POST
|
||||
"/form-followuprequests-Followuprequest"
|
||||
request
|
||||
(route/restricted
|
||||
(apply
|
||||
(resolve-handler "form-followuprequests-Followuprequest")
|
||||
(list request))))
|
||||
(GET
|
||||
"/form-genders-Gender"
|
||||
request
|
||||
(route/restricted
|
||||
(apply (resolve-handler "form-genders-Gender") (list request))))
|
||||
(POST
|
||||
"/form-genders-Gender"
|
||||
request
|
||||
(route/restricted
|
||||
(apply (resolve-handler "form-genders-Gender") (list request))))
|
||||
(GET
|
||||
"/form-intentions-Intention"
|
||||
request
|
||||
(route/restricted
|
||||
(apply
|
||||
(resolve-handler "form-intentions-Intention")
|
||||
(list request))))
|
||||
(POST
|
||||
"/form-intentions-Intention"
|
||||
request
|
||||
(route/restricted
|
||||
(apply
|
||||
(resolve-handler "form-intentions-Intention")
|
||||
(list request))))
|
||||
(GET
|
||||
"/form-issues-Issue"
|
||||
request
|
||||
(route/restricted
|
||||
(apply (resolve-handler "form-issues-Issue") (list request))))
|
||||
(POST
|
||||
"/form-issues-Issue"
|
||||
request
|
||||
(route/restricted
|
||||
(apply (resolve-handler "form-issues-Issue") (list request))))
|
||||
(GET
|
||||
"/form-options-Option"
|
||||
request
|
||||
(route/restricted
|
||||
(apply (resolve-handler "form-options-Option") (list request))))
|
||||
(POST
|
||||
"/form-options-Option"
|
||||
request
|
||||
(route/restricted
|
||||
(apply (resolve-handler "form-options-Option") (list request))))
|
||||
(GET
|
||||
"/form-roles-Role"
|
||||
request
|
||||
(route/restricted
|
||||
(apply (resolve-handler "form-roles-Role") (list request))))
|
||||
(POST
|
||||
"/form-roles-Role"
|
||||
request
|
||||
(route/restricted
|
||||
(apply (resolve-handler "form-roles-Role") (list request))))
|
||||
(GET
|
||||
"/form-teams-Team"
|
||||
request
|
||||
(route/restricted
|
||||
(apply (resolve-handler "form-teams-Team") (list request))))
|
||||
(POST
|
||||
"/form-teams-Team"
|
||||
request
|
||||
(route/restricted
|
||||
(apply (resolve-handler "form-teams-Team") (list request))))
|
||||
(GET
|
||||
"/form-visits-Visit"
|
||||
request
|
||||
(route/restricted
|
||||
(apply (resolve-handler "form-visits-Visit") (list request))))
|
||||
(POST
|
||||
"/form-visits-Visit"
|
||||
request
|
||||
(route/restricted
|
||||
(apply (resolve-handler "form-visits-Visit") (list request))))
|
||||
(GET
|
||||
"/list-addresses-Addresses"
|
||||
request
|
||||
(route/restricted
|
||||
(apply
|
||||
(resolve-handler "list-addresses-Addresses")
|
||||
(list request))))
|
||||
(POST
|
||||
"/list-addresses-Addresses"
|
||||
request
|
||||
(route/restricted
|
||||
(apply
|
||||
(resolve-handler "list-addresses-Addresses")
|
||||
(list request))))
|
||||
(GET
|
||||
"/list-authorities-Authorities"
|
||||
request
|
||||
(route/restricted
|
||||
(apply
|
||||
(resolve-handler "list-authorities-Authorities")
|
||||
(list request))))
|
||||
(POST
|
||||
"/list-authorities-Authorities"
|
||||
request
|
||||
(route/restricted
|
||||
(apply
|
||||
(resolve-handler "list-authorities-Authorities")
|
||||
(list request))))
|
||||
(GET
|
||||
"/list-canvassers-Canvassers"
|
||||
request
|
||||
(route/restricted
|
||||
(apply
|
||||
(resolve-handler "list-canvassers-Canvassers")
|
||||
(list request))))
|
||||
(POST
|
||||
"/list-canvassers-Canvassers"
|
||||
request
|
||||
(route/restricted
|
||||
(apply
|
||||
(resolve-handler "list-canvassers-Canvassers")
|
||||
(list request))))
|
||||
(GET
|
||||
"/list-districts-Districts"
|
||||
request
|
||||
(route/restricted
|
||||
(apply
|
||||
(resolve-handler "list-districts-Districts")
|
||||
(list request))))
|
||||
(POST
|
||||
"/list-districts-Districts"
|
||||
request
|
||||
(route/restricted
|
||||
(apply
|
||||
(resolve-handler "list-districts-Districts")
|
||||
(list request))))
|
||||
(GET
|
||||
"/list-dwellings-Dwellings"
|
||||
request
|
||||
(route/restricted
|
||||
(apply
|
||||
(resolve-handler "list-dwellings-Dwellings")
|
||||
(list request))))
|
||||
(POST
|
||||
"/list-dwellings-Dwellings"
|
||||
request
|
||||
(route/restricted
|
||||
(apply
|
||||
(resolve-handler "list-dwellings-Dwellings")
|
||||
(list request))))
|
||||
(GET
|
||||
"/list-electors-Electors"
|
||||
request
|
||||
(route/restricted
|
||||
(apply (resolve-handler "list-electors-Electors") (list request))))
|
||||
(POST
|
||||
"/list-electors-Electors"
|
||||
request
|
||||
(route/restricted
|
||||
(apply (resolve-handler "list-electors-Electors") (list request))))
|
||||
(GET
|
||||
"/list-followupactions-Followupactions"
|
||||
request
|
||||
(route/restricted
|
||||
(apply
|
||||
(resolve-handler "list-followupactions-Followupactions")
|
||||
(list request))))
|
||||
(POST
|
||||
"/list-followupactions-Followupactions"
|
||||
request
|
||||
(route/restricted
|
||||
(apply
|
||||
(resolve-handler "list-followupactions-Followupactions")
|
||||
(list request))))
|
||||
(GET
|
||||
"/list-followupmethods-Followupmethods"
|
||||
request
|
||||
(route/restricted
|
||||
(apply
|
||||
(resolve-handler "list-followupmethods-Followupmethods")
|
||||
(list request))))
|
||||
(POST
|
||||
"/list-followupmethods-Followupmethods"
|
||||
request
|
||||
(route/restricted
|
||||
(apply
|
||||
(resolve-handler "list-followupmethods-Followupmethods")
|
||||
(list request))))
|
||||
(GET
|
||||
"/list-followuprequests-Followuprequests"
|
||||
request
|
||||
(route/restricted
|
||||
(apply
|
||||
(resolve-handler "list-followuprequests-Followuprequests")
|
||||
(list request))))
|
||||
(POST
|
||||
"/list-followuprequests-Followuprequests"
|
||||
request
|
||||
(route/restricted
|
||||
(apply
|
||||
(resolve-handler "list-followuprequests-Followuprequests")
|
||||
(list request))))
|
||||
(GET
|
||||
"/list-genders-Genders"
|
||||
request
|
||||
(route/restricted
|
||||
(apply (resolve-handler "list-genders-Genders") (list request))))
|
||||
(POST
|
||||
"/list-genders-Genders"
|
||||
request
|
||||
(route/restricted
|
||||
(apply (resolve-handler "list-genders-Genders") (list request))))
|
||||
(GET
|
||||
"/list-intentions-Intentions"
|
||||
request
|
||||
(route/restricted
|
||||
(apply
|
||||
(resolve-handler "list-intentions-Intentions")
|
||||
(list request))))
|
||||
(POST
|
||||
"/list-intentions-Intentions"
|
||||
request
|
||||
(route/restricted
|
||||
(apply
|
||||
(resolve-handler "list-intentions-Intentions")
|
||||
(list request))))
|
||||
(GET
|
||||
"/list-issues-Issues"
|
||||
request
|
||||
(route/restricted
|
||||
(apply (resolve-handler "list-issues-Issues") (list request))))
|
||||
(POST
|
||||
"/list-issues-Issues"
|
||||
request
|
||||
(route/restricted
|
||||
(apply (resolve-handler "list-issues-Issues") (list request))))
|
||||
(GET
|
||||
"/list-options-Options"
|
||||
request
|
||||
(route/restricted
|
||||
(apply (resolve-handler "list-options-Options") (list request))))
|
||||
(POST
|
||||
"/list-options-Options"
|
||||
request
|
||||
(route/restricted
|
||||
(apply (resolve-handler "list-options-Options") (list request))))
|
||||
(GET
|
||||
"/list-roles-Roles"
|
||||
request
|
||||
(route/restricted
|
||||
(apply (resolve-handler "list-roles-Roles") (list request))))
|
||||
(POST
|
||||
"/list-roles-Roles"
|
||||
request
|
||||
(route/restricted
|
||||
(apply (resolve-handler "list-roles-Roles") (list request))))
|
||||
(GET
|
||||
"/list-teams-Teams"
|
||||
request
|
||||
(route/restricted
|
||||
(apply (resolve-handler "list-teams-Teams") (list request))))
|
||||
(POST
|
||||
"/list-teams-Teams"
|
||||
request
|
||||
(route/restricted
|
||||
(apply (resolve-handler "list-teams-Teams") (list request))))
|
||||
(GET
|
||||
"/list-visits-Visits"
|
||||
request
|
||||
(route/restricted
|
||||
(apply (resolve-handler "list-visits-Visits") (list request))))
|
||||
(POST
|
||||
"/list-visits-Visits"
|
||||
request
|
||||
(route/restricted
|
||||
(apply (resolve-handler "list-visits-Visits") (list request)))))
|
||||
|
|
@ -56,6 +56,7 @@
|
|||
</group>
|
||||
|
||||
<entity name="electors" magnitude="6">
|
||||
<documentation>All electors known to the system; electors are people believed to be entitled to vote in the current campaign.</documentation>
|
||||
<key>
|
||||
<property required="true" type="integer" name="id" column="id" immutable="true" distinct="system">
|
||||
<prompt prompt="id" locale="en-GB"/>
|
||||
|
@ -64,7 +65,7 @@
|
|||
<property size="64" required="true" type="string" name="name" column="name" distinct="user">
|
||||
<prompt prompt="name" locale="en-GB"/>
|
||||
</property>
|
||||
<property required="true" type="entity" name="dwelling_id" column="dwelling_id" entity="dwelling" farkey="id">
|
||||
<property required="true" type="entity" name="dwelling_id" column="dwelling_id" entity="dwellings" farkey="id">
|
||||
<prompt prompt="Flat" locale="en-GB"/>
|
||||
</property>
|
||||
<property size="16" type="string" name="phone" column="phone" distinct="user">
|
||||
|
@ -81,6 +82,7 @@
|
|||
<form name="Elector" properties="all"/>
|
||||
</entity>
|
||||
<entity name="genders" natural-key="id" magnitude="1">
|
||||
<documentation>All genders which may be assigned to electors.</documentation>
|
||||
<key>
|
||||
<property name="id" type="string" size="32" distinct="all">
|
||||
<prompt prompt="gender" locale="en-GB"/>
|
||||
|
@ -90,6 +92,7 @@
|
|||
<form name="Gender" properties="all"/>
|
||||
</entity>
|
||||
<entity name="dwellings" magnitude="6">
|
||||
<documentation>All dwellings within addresses in the system; a dwelling is a house, flat or appartment in which electors live.</documentation>
|
||||
<key>
|
||||
<property required="true" type="integer" name="id" column="id" immutable="true" distinct="system">
|
||||
<prompt prompt="id" locale="en-GB"/>
|
||||
|
@ -99,8 +102,11 @@
|
|||
<prompt prompt="Building Address" locale="en-GB"/>
|
||||
</property>
|
||||
<property required="false" type="string" size="32" name="sub-address"/>
|
||||
<list name="Dwellings" properties="all"/>
|
||||
<form name="Dwelling" properties="all"/>
|
||||
</entity>
|
||||
<entity name="addresses" magnitude="6">
|
||||
<documentation>Addresses of all buildings which contain dwellings.</documentation>
|
||||
<key>
|
||||
<property required="true" type="integer" name="id" column="id" immutable="true" distinct="system">
|
||||
<prompt prompt="id" locale="en-GB"/>
|
||||
|
@ -131,6 +137,7 @@
|
|||
<form name="Address" properties="all"/>
|
||||
</entity>
|
||||
<entity name="visits" magnitude="7">
|
||||
<documentation>All visits made by canvassers to dwellings in which opinions were recorded.</documentation>
|
||||
<key>
|
||||
<property required="true" type="integer" name="id" column="id" distinct="system">
|
||||
<prompt prompt="id" locale="en-GB"/>
|
||||
|
@ -149,13 +156,18 @@
|
|||
</property>
|
||||
<permission group="public" permission="read"/>
|
||||
<permission group="canvassers" permission="insert"/>
|
||||
<list name="Visits" properties="all"/>
|
||||
<form name="Visit" properties="all"/>
|
||||
</entity>
|
||||
<entity name="authorities" magnitude="2">
|
||||
<documentation>Authorities which may authenticate canvassers to the system.</documentation>
|
||||
<key>
|
||||
<property required="true" type="string" name="id" column="id" size="32" distinct="all">
|
||||
<prompt prompt="id" locale="en-GB"/>
|
||||
</property>
|
||||
</key>
|
||||
<list name="Authorities" properties="all"/>
|
||||
<form name="Authority" properties="all"/>
|
||||
</entity>
|
||||
<entity name="issues" magnitude="1">
|
||||
<documentation>Issues believed to be of interest to electors, about which they may have questions.</documentation>
|
||||
|
@ -187,6 +199,8 @@
|
|||
column="option_id">
|
||||
<prompt prompt="option_id" locale="en-GB"/>
|
||||
</property>
|
||||
<list name="Intentions" properties="all"/>
|
||||
<form name="Intention" properties="all"/>
|
||||
</entity>
|
||||
<entity name="canvassers" magnitude="5">
|
||||
<documentation>Primary users of the system: those actually interviewing electors.</documentation>
|
||||
|
@ -221,6 +235,9 @@
|
|||
<property type="boolean" name="authorised" column="authorised">
|
||||
<prompt prompt="authorised" locale="en-GB"/>
|
||||
</property>
|
||||
<property type="link" name="roles" entity="role" farkey="role_id">
|
||||
<prompt prompt="Roles" locale="en-GB"/>
|
||||
</property>
|
||||
<permission group="canvassers" permission="edit">
|
||||
<documentation>But only their own record</documentation>
|
||||
</permission>
|
||||
|
@ -230,6 +247,8 @@
|
|||
<permission group="admin" permission="all">
|
||||
<documentation>All canvassers</documentation>
|
||||
</permission>
|
||||
<list name="Canvassers" properties="all"/>
|
||||
<form name="Canvasser" properties="all"/>
|
||||
</entity>
|
||||
<entity name="followuprequests" magnitude="7">
|
||||
<documentation>Requests for a followup with an issue expert</documentation>
|
||||
|
@ -254,6 +273,8 @@
|
|||
entity="followupmethods" farkey="id">
|
||||
<prompt prompt="method_id" locale="en-GB"/>
|
||||
</property>
|
||||
<list name="Followuprequests" properties="all"/>
|
||||
<form name="Followuprequest" properties="all"/>
|
||||
</entity>
|
||||
<entity name="rolememberships" magnitude="6">
|
||||
<documentation>Link table</documentation>
|
||||
|
@ -276,6 +297,8 @@
|
|||
<property required="true" type="string" name="name" column="name" size="64" distinct="user" immutable="true">
|
||||
<prompt prompt="name" locale="en-GB"/>
|
||||
</property>
|
||||
<list name="Roles" properties="all"/>
|
||||
<form name="Role" properties="all"/>
|
||||
</entity>
|
||||
<entity name="teams" magnitude="4">
|
||||
<key>
|
||||
|
@ -293,6 +316,9 @@
|
|||
<property type="real" name="latitude" column="latitude">
|
||||
<prompt prompt="latitude" locale="en-GB"/>
|
||||
</property>
|
||||
<property type="link" entity="canvassers" name="members">
|
||||
<prompt prompt="Members" locale="en-GB"/>
|
||||
</property>
|
||||
<property type="real" name="longitude" column="longitude">
|
||||
<prompt prompt="longitude" locale="en-GB"/>
|
||||
</property>
|
||||
|
@ -303,6 +329,8 @@
|
|||
<permission group="admin" permission="all">
|
||||
<documentation>All groups</documentation>
|
||||
</permission>
|
||||
<list name="Teams" properties="all"/>
|
||||
<form name="Team" properties="all"/>
|
||||
</entity>
|
||||
<entity name="districts" magnitude="4">
|
||||
<documentation>Electoral districts</documentation>
|
||||
|
@ -316,6 +344,8 @@
|
|||
</property>
|
||||
<permission group="public" permission="read"></permission>
|
||||
<permission group="admin" permission="all"></permission>
|
||||
<list name="Districts" properties="all"/>
|
||||
<form name="District" properties="all"/>
|
||||
</entity>
|
||||
<entity name="teamorganiserships" magnitude="4">
|
||||
<documentation>Link table</documentation>
|
||||
|
@ -357,6 +387,8 @@
|
|||
<documentation>But only for electors in their immediate vicinity</documentation>
|
||||
</permission>
|
||||
<permission group="analysts" permission="read"/>
|
||||
<list name="Followupactions" properties="all"/>
|
||||
<form name="Followupaction" properties="all"/>
|
||||
</entity>
|
||||
<entity name="issueexpertise" magnitude="5">
|
||||
<documentation>Link table</documentation>
|
||||
|
@ -380,6 +412,8 @@
|
|||
<prompt prompt="id" locale="en-GB"/>
|
||||
</property>
|
||||
</key>
|
||||
<list name="Options" properties="all"/>
|
||||
<form name="Option" properties="all"/>
|
||||
</entity>
|
||||
<entity name="teammemberships" magnitude="5">
|
||||
<documentation>Link table</documentation>
|
||||
|
@ -398,5 +432,7 @@
|
|||
<prompt prompt="id" locale="en-GB"/>
|
||||
</property>
|
||||
</key>
|
||||
<list name="Followupmethods" properties="all"/>
|
||||
<form name="Followupmethod" properties="all"/>
|
||||
</entity>
|
||||
</application>
|
||||
|
|
|
@ -67,6 +67,7 @@
|
|||
entity electors already has a key - not generating one
|
||||
-->
|
||||
<entity table="electors" name="electors" magnitude="6">
|
||||
<documentation>All electors known to the system; electors are people believed to be entitled to vote in the current campaign.</documentation>
|
||||
<key>
|
||||
<property required="true" type="integer" name="id" column="id" immutable="true" distinct="system">
|
||||
<prompt prompt="id" locale="en-GB"/>
|
||||
|
@ -75,7 +76,7 @@
|
|||
<property size="64" required="true" type="string" name="name" column="name" distinct="user">
|
||||
<prompt prompt="name" locale="en-GB"/>
|
||||
</property>
|
||||
<property required="true" type="entity" name="dwelling_id" column="dwelling_id" entity="dwelling" farkey="id">
|
||||
<property required="true" type="entity" name="dwelling_id" column="dwelling_id" entity="dwellings" farkey="id">
|
||||
<prompt prompt="Flat" locale="en-GB"/>
|
||||
</property>
|
||||
<property size="16" type="string" name="phone" column="phone" distinct="user">
|
||||
|
@ -87,10 +88,11 @@
|
|||
<property name="gender" type="entity" column="gender" entity="genders" farkey="id" default="Unknown">
|
||||
<prompt prompt="gender" locale="en-GB"/>
|
||||
</property>
|
||||
<list properties="listed" name="Electors"><field property="id"/><field property="name"/><field property="dwelling_id"/><field property="phone"/><field property="email"/><field property="gender"/></list>
|
||||
<form properties="listed" name="Elector"><field property="id"/><field property="name"/><field property="dwelling_id"/><field property="phone"/><field property="email"/><field property="gender"/></form>
|
||||
<list properties="listed" name="Electors"><field property="id"><prompt prompt="id" locale="en-GB"/></field><field property="name"><prompt prompt="name" locale="en-GB"/></field><field property="dwelling_id"><prompt prompt="Flat" locale="en-GB"/></field><field property="phone"><prompt prompt="phone" locale="en-GB"/></field><field property="email"><prompt prompt="email" locale="en-GB"/></field><field property="gender"><prompt prompt="gender" locale="en-GB"/></field></list>
|
||||
<form properties="listed" name="Elector"><field property="id"><prompt prompt="id" locale="en-GB"/></field><field property="name"><prompt prompt="name" locale="en-GB"/></field><field property="dwelling_id"><prompt prompt="Flat" locale="en-GB"/></field><field property="phone"><prompt prompt="phone" locale="en-GB"/></field><field property="email"><prompt prompt="email" locale="en-GB"/></field><field property="gender"><prompt prompt="gender" locale="en-GB"/></field></form>
|
||||
</entity>
|
||||
<entity table="genders" name="genders" natural-key="id" magnitude="1">
|
||||
<documentation>All genders which may be assigned to electors.</documentation>
|
||||
<key>
|
||||
<property name="id" type="string" size="32" distinct="all">
|
||||
<prompt prompt="gender" locale="en-GB"/>
|
||||
|
@ -104,16 +106,21 @@
|
|||
<permission permission="none" group="issueeditors"/>
|
||||
<permission permission="none" group="admin"/>
|
||||
<list properties="listed" name="Genders">
|
||||
<field property="id"/>
|
||||
<field property="id">
|
||||
<prompt prompt="gender" locale="en-GB"/>
|
||||
</field>
|
||||
</list>
|
||||
<form properties="listed" name="Gender">
|
||||
<field property="id"/>
|
||||
<field property="id">
|
||||
<prompt prompt="gender" locale="en-GB"/>
|
||||
</field>
|
||||
</form>
|
||||
</entity>
|
||||
<!--
|
||||
entity dwellings already has a key - not generating one
|
||||
-->
|
||||
<entity table="dwellings" name="dwellings" magnitude="6">
|
||||
<documentation>All dwellings within addresses in the system; a dwelling is a house, flat or appartment in which electors live.</documentation>
|
||||
<key>
|
||||
<property required="true" type="integer" name="id" column="id" immutable="true" distinct="system">
|
||||
<prompt prompt="id" locale="en-GB"/>
|
||||
|
@ -123,11 +130,14 @@
|
|||
<prompt prompt="Building Address" locale="en-GB"/>
|
||||
</property>
|
||||
<property required="false" type="string" size="32" name="sub-address"/>
|
||||
<list properties="listed" name="Dwellings"><field property="id"><prompt prompt="id" locale="en-GB"/></field><field property="address_id"><prompt prompt="Building Address" locale="en-GB"/></field><field property="sub-address"/></list>
|
||||
<form properties="listed" name="Dwelling"><field property="id"><prompt prompt="id" locale="en-GB"/></field><field property="address_id"><prompt prompt="Building Address" locale="en-GB"/></field><field property="sub-address"/></form>
|
||||
</entity>
|
||||
<!--
|
||||
entity addresses already has a key - not generating one
|
||||
-->
|
||||
<entity table="addresses" name="addresses" magnitude="6">
|
||||
<documentation>Addresses of all buildings which contain dwellings.</documentation>
|
||||
<key>
|
||||
<property required="true" type="integer" name="id" column="id" immutable="true" distinct="system">
|
||||
<prompt prompt="id" locale="en-GB"/>
|
||||
|
@ -154,13 +164,14 @@
|
|||
<permission group="admin" permission="all"/>
|
||||
<permission group="canvassers" permission="read"/>
|
||||
<permission group="analysts" permission="read"/>
|
||||
<list properties="listed" name="Addresses"><field property="id"/><field property="address"/><field property="postcode"/><field property="phone"/><field property="district_id"/><field property="latitude"/><field property="longitude"/></list>
|
||||
<form properties="listed" name="Address"><field property="id"/><field property="address"/><field property="postcode"/><field property="phone"/><field property="district_id"/><field property="latitude"/><field property="longitude"/></form>
|
||||
<list properties="listed" name="Addresses"><field property="id"><prompt prompt="id" locale="en-GB"/></field><field property="address"><prompt prompt="address" locale="en-GB"/></field><field property="postcode"><prompt prompt="postcode" locale="en-GB"/></field><field property="phone"><prompt prompt="phone" locale="en-GB"/></field><field property="district_id"><prompt prompt="district_id" locale="en-GB"/></field><field property="latitude"><prompt prompt="latitude" locale="en-GB"/></field><field property="longitude"><prompt prompt="longitude" locale="en-GB"/></field></list>
|
||||
<form properties="listed" name="Address"><field property="id"><prompt prompt="id" locale="en-GB"/></field><field property="address"><prompt prompt="address" locale="en-GB"/></field><field property="postcode"><prompt prompt="postcode" locale="en-GB"/></field><field property="phone"><prompt prompt="phone" locale="en-GB"/></field><field property="district_id"><prompt prompt="district_id" locale="en-GB"/></field><field property="latitude"><prompt prompt="latitude" locale="en-GB"/></field><field property="longitude"><prompt prompt="longitude" locale="en-GB"/></field></form>
|
||||
</entity>
|
||||
<!--
|
||||
entity visits already has a key - not generating one
|
||||
-->
|
||||
<entity table="visits" name="visits" magnitude="7">
|
||||
<documentation>All visits made by canvassers to dwellings in which opinions were recorded.</documentation>
|
||||
<key>
|
||||
<property required="true" type="integer" name="id" column="id" distinct="system">
|
||||
<prompt prompt="id" locale="en-GB"/>
|
||||
|
@ -177,16 +188,21 @@
|
|||
</property>
|
||||
<permission group="public" permission="read"/>
|
||||
<permission group="canvassers" permission="insert"/>
|
||||
<list properties="listed" name="Visits"><field property="id"><prompt prompt="id" locale="en-GB"/></field><field property="address_id"><prompt prompt="address_id" locale="en-GB"/></field><field property="canvasser_id"><prompt prompt="canvasser_id" locale="en-GB"/></field><field property="date"><prompt prompt="date" locale="en-GB"/></field></list>
|
||||
<form properties="listed" name="Visit"><field property="id"><prompt prompt="id" locale="en-GB"/></field><field property="address_id"><prompt prompt="address_id" locale="en-GB"/></field><field property="canvasser_id"><prompt prompt="canvasser_id" locale="en-GB"/></field><field property="date"><prompt prompt="date" locale="en-GB"/></field></form>
|
||||
</entity>
|
||||
<!--
|
||||
entity authorities already has a key - not generating one
|
||||
-->
|
||||
<entity table="authorities" name="authorities" magnitude="2">
|
||||
<documentation>Authorities which may authenticate canvassers to the system.</documentation>
|
||||
<key>
|
||||
<property required="true" type="string" name="id" column="id" size="32" distinct="all">
|
||||
<prompt prompt="id" locale="en-GB"/>
|
||||
</property>
|
||||
</key>
|
||||
<list properties="listed" name="Authorities"><field property="id"><prompt prompt="id" locale="en-GB"/></field></list>
|
||||
<form properties="listed" name="Authority"><field property="id"><prompt prompt="id" locale="en-GB"/></field></form>
|
||||
</entity>
|
||||
<!--
|
||||
entity issues already has a key - not generating one
|
||||
|
@ -204,13 +220,13 @@
|
|||
<property name="current" type="boolean" default="true">
|
||||
<prompt prompt="Is current?" locale="en-GB"/>
|
||||
</property>
|
||||
<list properties="listed" name="Issues"><field property="id"/><field property="url"/><field property="current"/></list>
|
||||
<form properties="listed" name="Issue"><field property="id"/><field property="url"/><field property="current"/></form>
|
||||
<list properties="listed" name="Issues"><field property="id"><prompt prompt="id" locale="en-GB"/></field><field property="url"><prompt prompt="url" locale="en-GB"/></field><field property="current"><prompt prompt="Is current?" locale="en-GB"/></field></list>
|
||||
<form properties="listed" name="Issue"><field property="id"><prompt prompt="id" locale="en-GB"/></field><field property="url"><prompt prompt="url" locale="en-GB"/></field><field property="current"><prompt prompt="Is current?" locale="en-GB"/></field></form>
|
||||
</entity>
|
||||
<!--
|
||||
entity intentions has no key - generating one
|
||||
-->
|
||||
<entity magnitude="6" table="intentions" name="intentions">
|
||||
<entity table="intentions" name="intentions" magnitude="6">
|
||||
<documentation>Link table.</documentation>
|
||||
<key>
|
||||
<property type="integer" distinct="system" required="true" name="Id">
|
||||
|
@ -236,6 +252,28 @@
|
|||
<permission permission="none" group="analysts"/>
|
||||
<permission permission="none" group="issueeditors"/>
|
||||
<permission permission="none" group="admin"/>
|
||||
<list properties="listed" name="Intentions">
|
||||
<field property="visit_id">
|
||||
<prompt prompt="visit_id" locale="en-GB"/>
|
||||
</field>
|
||||
<field property="elector_id">
|
||||
<prompt prompt="elector_id" locale="en-GB"/>
|
||||
</field>
|
||||
<field property="option_id">
|
||||
<prompt prompt="option_id" locale="en-GB"/>
|
||||
</field>
|
||||
</list>
|
||||
<form properties="listed" name="Intention">
|
||||
<field property="visit_id">
|
||||
<prompt prompt="visit_id" locale="en-GB"/>
|
||||
</field>
|
||||
<field property="elector_id">
|
||||
<prompt prompt="elector_id" locale="en-GB"/>
|
||||
</field>
|
||||
<field property="option_id">
|
||||
<prompt prompt="option_id" locale="en-GB"/>
|
||||
</field>
|
||||
</form>
|
||||
</entity>
|
||||
<!--
|
||||
entity canvassers already has a key - not generating one
|
||||
|
@ -271,6 +309,9 @@
|
|||
<property type="boolean" name="authorised" column="authorised">
|
||||
<prompt prompt="authorised" locale="en-GB"/>
|
||||
</property>
|
||||
<property type="link" name="roles" entity="role" farkey="role_id">
|
||||
<prompt prompt="Roles" locale="en-GB"/>
|
||||
</property>
|
||||
<permission group="canvassers" permission="edit">
|
||||
<documentation>But only their own record</documentation>
|
||||
</permission>
|
||||
|
@ -280,6 +321,8 @@
|
|||
<permission group="admin" permission="all">
|
||||
<documentation>All canvassers</documentation>
|
||||
</permission>
|
||||
<list properties="listed" name="Canvassers"><field property="id"><prompt prompt="id" locale="en-GB"/></field><field property="username"><prompt prompt="username" locale="en-GB"/></field><field property="fullname"><prompt prompt="fullname" locale="en-GB"/></field><field property="elector_id"><prompt prompt="elector_id" locale="en-GB"/></field><field property="address_id"><prompt prompt="address_id" locale="en-GB"/></field><field property="phone"><prompt prompt="phone" locale="en-GB"/></field><field property="email"><prompt prompt="email" locale="en-GB"/></field><field property="authority_id"><prompt prompt="authority_id" locale="en-GB"/></field><field property="authorised"><prompt prompt="authorised" locale="en-GB"/></field></list>
|
||||
<form properties="listed" name="Canvasser"><field property="id"><prompt prompt="id" locale="en-GB"/></field><field property="username"><prompt prompt="username" locale="en-GB"/></field><field property="fullname"><prompt prompt="fullname" locale="en-GB"/></field><field property="elector_id"><prompt prompt="elector_id" locale="en-GB"/></field><field property="address_id"><prompt prompt="address_id" locale="en-GB"/></field><field property="phone"><prompt prompt="phone" locale="en-GB"/></field><field property="email"><prompt prompt="email" locale="en-GB"/></field><field property="authority_id"><prompt prompt="authority_id" locale="en-GB"/></field><field property="authorised"><prompt prompt="authorised" locale="en-GB"/></field><field property="roles"><prompt prompt="Roles" locale="en-GB"/></field></form>
|
||||
</entity>
|
||||
<!--
|
||||
entity followuprequests already has a key - not generating one
|
||||
|
@ -303,6 +346,8 @@
|
|||
<property required="true" type="entity" name="method_id" column="method_id" entity="followupmethods" farkey="id">
|
||||
<prompt prompt="method_id" locale="en-GB"/>
|
||||
</property>
|
||||
<list properties="listed" name="Followuprequests"><field property="id"><prompt prompt="id" locale="en-GB"/></field><field property="elector_id"><prompt prompt="elector_id" locale="en-GB"/></field><field property="visit_id"><prompt prompt="visit_id" locale="en-GB"/></field><field property="issue_id"><prompt prompt="issue_id" locale="en-GB"/></field><field property="method_id"><prompt prompt="method_id" locale="en-GB"/></field></list>
|
||||
<form properties="listed" name="Followuprequest"><field property="id"><prompt prompt="id" locale="en-GB"/></field><field property="elector_id"><prompt prompt="elector_id" locale="en-GB"/></field><field property="visit_id"><prompt prompt="visit_id" locale="en-GB"/></field><field property="issue_id"><prompt prompt="issue_id" locale="en-GB"/></field><field property="method_id"><prompt prompt="method_id" locale="en-GB"/></field></form>
|
||||
</entity>
|
||||
<!--
|
||||
entity rolememberships has no key - generating one
|
||||
|
@ -344,6 +389,8 @@
|
|||
<property required="true" type="string" name="name" column="name" size="64" distinct="user" immutable="true">
|
||||
<prompt prompt="name" locale="en-GB"/>
|
||||
</property>
|
||||
<list properties="listed" name="Roles"><field property="id"><prompt prompt="id" locale="en-GB"/></field><field property="name"><prompt prompt="name" locale="en-GB"/></field></list>
|
||||
<form properties="listed" name="Role"><field property="id"><prompt prompt="id" locale="en-GB"/></field><field property="name"><prompt prompt="name" locale="en-GB"/></field></form>
|
||||
</entity>
|
||||
<!--
|
||||
entity teams already has a key - not generating one
|
||||
|
@ -363,6 +410,9 @@
|
|||
<property type="real" name="latitude" column="latitude">
|
||||
<prompt prompt="latitude" locale="en-GB"/>
|
||||
</property>
|
||||
<property type="link" entity="canvassers" name="members">
|
||||
<prompt prompt="Members" locale="en-GB"/>
|
||||
</property>
|
||||
<property type="real" name="longitude" column="longitude">
|
||||
<prompt prompt="longitude" locale="en-GB"/>
|
||||
</property>
|
||||
|
@ -373,6 +423,8 @@
|
|||
<permission group="admin" permission="all">
|
||||
<documentation>All groups</documentation>
|
||||
</permission>
|
||||
<list properties="listed" name="Teams"><field property="id"><prompt prompt="id" locale="en-GB"/></field><field property="name"><prompt prompt="name" locale="en-GB"/></field><field property="district_id"><prompt prompt="district_id" locale="en-GB"/></field><field property="latitude"><prompt prompt="latitude" locale="en-GB"/></field><field property="longitude"><prompt prompt="longitude" locale="en-GB"/></field></list>
|
||||
<form properties="listed" name="Team"><field property="id"><prompt prompt="id" locale="en-GB"/></field><field property="name"><prompt prompt="name" locale="en-GB"/></field><field property="district_id"><prompt prompt="district_id" locale="en-GB"/></field><field property="latitude"><prompt prompt="latitude" locale="en-GB"/></field><field property="members"><prompt prompt="Members" locale="en-GB"/></field><field property="longitude"><prompt prompt="longitude" locale="en-GB"/></field></form>
|
||||
</entity>
|
||||
<!--
|
||||
entity districts already has a key - not generating one
|
||||
|
@ -389,6 +441,8 @@
|
|||
</property>
|
||||
<permission group="public" permission="read"/>
|
||||
<permission group="admin" permission="all"/>
|
||||
<list properties="listed" name="Districts"><field property="id"><prompt prompt="id" locale="en-GB"/></field><field property="name"><prompt prompt="name" locale="en-GB"/></field></list>
|
||||
<form properties="listed" name="District"><field property="id"><prompt prompt="id" locale="en-GB"/></field><field property="name"><prompt prompt="name" locale="en-GB"/></field></form>
|
||||
</entity>
|
||||
<!--
|
||||
entity teamorganiserships has no key - generating one
|
||||
|
@ -447,11 +501,13 @@
|
|||
<documentation>But only for electors in their immediate vicinity</documentation>
|
||||
</permission>
|
||||
<permission group="analysts" permission="read"/>
|
||||
<list properties="listed" name="Followupactions"><field property="id"><prompt prompt="id" locale="en-GB"/></field><field property="request_id"><prompt prompt="request_id" locale="en-GB"/></field><field property="actor"><prompt prompt="actor" locale="en-GB"/></field><field property="date"><prompt prompt="date" locale="en-GB"/></field><field property="notes"><prompt prompt="notes" locale="en-GB"/></field><field property="closed"><prompt prompt="closed" locale="en-GB"/></field></list>
|
||||
<form properties="listed" name="Followupaction"><field property="id"><prompt prompt="id" locale="en-GB"/></field><field property="request_id"><prompt prompt="request_id" locale="en-GB"/></field><field property="actor"><prompt prompt="actor" locale="en-GB"/></field><field property="date"><prompt prompt="date" locale="en-GB"/></field><field property="notes"><prompt prompt="notes" locale="en-GB"/></field><field property="closed"><prompt prompt="closed" locale="en-GB"/></field></form>
|
||||
</entity>
|
||||
<!--
|
||||
entity issueexpertise has no key - generating one
|
||||
-->
|
||||
<entity magnitude="6" table="issueexpertise" name="issueexpertise">
|
||||
<entity table="issueexpertise" name="issueexpertise" magnitude="5">
|
||||
<documentation>Link table</documentation>
|
||||
<key>
|
||||
<property type="integer" distinct="system" required="true" name="Id">
|
||||
|
@ -488,6 +544,8 @@
|
|||
<prompt prompt="id" locale="en-GB"/>
|
||||
</property>
|
||||
</key>
|
||||
<list properties="listed" name="Options"><field property="id"><prompt prompt="id" locale="en-GB"/></field></list>
|
||||
<form properties="listed" name="Option"><field property="id"><prompt prompt="id" locale="en-GB"/></field></form>
|
||||
</entity>
|
||||
<!--
|
||||
entity teammemberships has no key - generating one
|
||||
|
@ -525,5 +583,7 @@
|
|||
<prompt prompt="id" locale="en-GB"/>
|
||||
</property>
|
||||
</key>
|
||||
<list properties="listed" name="Followupmethods"><field property="id"><prompt prompt="id" locale="en-GB"/></field></list>
|
||||
<form properties="listed" name="Followupmethod"><field property="id"><prompt prompt="id" locale="en-GB"/></field></form>
|
||||
</entity>
|
||||
</application>
|
||||
|
|
Loading…
Reference in a new issue