Compare commits

..

42 Commits
0.3.0 ... 1.6.2

Author SHA1 Message Date
d8fd12a7b9 v1.6.2 2020-02-24 16:27:18 +00:00
88b5ce3d2e Merge branch 'master' of github.com:hoegrammer/opencase 2020-02-24 13:01:15 +00:00
ae3976c7b8 Improved new activity date & time field, also...
* Removed dependency of opencase_search on opencase so opencase_search doesn't get uninstalled when refreshing opencase for UI changes
* Changed no-results wording on case views (both displays: all cases & cases for a person)
2020-02-24 12:54:39 +00:00
c63cae6b71 Added callback to default to current date
But it isn't displaying, possibly because of having the wrong kind of widget
2020-02-23 17:36:48 +00:00
a7a96ab03c v1.6 Added activity date time field 2020-02-22 15:31:10 +00:00
a6db6615df No longer trimming activity text in views 2020-01-23 10:04:50 +00:00
1c3370a784 different header text for case view 2019-11-27 10:04:10 +00:00
59f4987371 Uninstall code for some config items that were being left in 2019-11-11 11:14:57 +00:00
c1e24593fa limiting involved parties facet to non-clients. 2019-07-15 20:34:32 +01:00
c98f028045 Removed ajax from views
Although it is beautiful, it stops the export from being filtered.
2019-07-15 19:51:57 +01:00
873f751795 Added config files for reporting on cases
And moved indexes to optional config so as not to have to keep
rebuilding them
2019-07-15 18:36:53 +01:00
6b9ff3a5e7 typo 2019-06-09 15:26:29 +01:00
b24ba377d2 removed dependency no longer required 2019-06-09 14:27:59 +01:00
33168ecb62 Added new module, Opencase Default Reporting 2019-06-09 14:00:23 +01:00
3eacbc952f Moved some configs from here into new module, Opencase Default Reporting 2019-06-09 13:58:39 +01:00
47ea8493ce added a permission to delete people 2019-04-29 16:44:34 +01:00
eb6cfb89dd removed old commented-out permissions
that had been superseded by the dynamic permissions
2018-12-19 09:13:20 +00:00
94e2635ee1 Hopefully fixed OSIC level reporting bug. Config to delete:
- Volunteer reporting index.

Not sure how, I fixed it, just re-created everything
2018-12-18 15:32:53 +00:00
fa7516b03a Menus other than "support" not available when logged out. 2018-12-15 14:21:38 +00:00
bfa4f27cf7 Items per pages on views. Manual changes needed
- delete volunteer report view
2018-12-15 14:07:15 +00:00
36aff5564e menu link text, Just needs a cache clear 2018-12-15 14:02:53 +00:00
e0260256fa Actor -> Person. Need to update entities 2018-12-15 14:00:26 +00:00
fd47bee26a Added "sex" field. Optionally change config:
- Add to form and view display for client (optional)
2018-12-15 13:53:35 +00:00
150cc6cfd1 Data export. Config changed (some from previous commits):
- view - cases
- view - reporting_clients
- view - reporting_volunteers
- block - nationalities
2018-12-15 13:41:13 +00:00
44c948d22a Added instructions for adding new case to cases view 2018-12-15 13:25:22 +00:00
99733415c8 Facet block config 2018-12-15 13:16:37 +00:00
5e127358b2 Added some css and a list of nationalities for the dropdown 2018-12-15 11:34:59 +00:00
9a937e2d46 Changed minimum count to 0 on all facets
which means the checkboxes don't disappear when there are none of that kind in the search results.
Also changed how name is displayed in reporting view
2018-12-14 19:02:20 +00:00
e45cbb6a76 Changed permission for admin menu
because on demo, site-admin can configure entities but not manage users
2018-12-14 18:52:35 +00:00
ca04c3e259 Replaced text-box "nationality" field with drop-down "nationalities" 2018-12-14 18:51:45 +00:00
658ba667b1 updated readme for 0.4.2 2018-11-11 20:19:17 +00:00
309a31e012 tidied up menu code, made parent not open on click 2018-11-11 19:58:32 +00:00
8ccd0313a7 Added missing config file 2018-11-09 16:44:08 +00:00
ab2662195b Replaced config removed by mistake 2018-11-09 16:39:52 +00:00
b81d6b5f31 Removed config for disused menus 2018-11-09 16:38:00 +00:00
ad6811b5e9 Changed "Actor" to "Person" in a few places 2018-11-09 16:14:48 +00:00
da0c0ff1b5 More on menu 2018-11-09 15:56:03 +00:00
3e6011a359 menu order 2018-11-09 15:03:34 +00:00
7e28f88b86 Shiny new menu at top of screen! 2018-11-09 14:59:25 +00:00
0efab1af06 Moved search bar to top, and styled
Also add opencase_search as dependency to opencase because the css for it is in opencase/css (hopefully all this css can go into an opencase theme one day)
2018-11-09 13:16:47 +00:00
4b14537dc4 Renamed config file in line with id 2018-11-08 18:58:44 +00:00
52eb5898e3 Removed duplicate configs, and added dependency 2018-11-08 18:47:24 +00:00
85 changed files with 2150 additions and 850 deletions

View File

@ -1,33 +1,36 @@
# OpenCase
A simple, case-management-focused CRM for small altruistic organisations.
## Current Status
**24 July 2018** A demo site, with basic functionality is available at demo.opencase.org.uk. If you are interested, raise an issue and I will get the login to you somehow.
A simple case-management system for small altruistic organisations.
## The Plan
OpenCase will be available as:
* A Drupal module, on drupal.org
* A Drupal install profile / distribution
* A hosted service
### Features
#### Existing
* Completely configurable person types, case types and activity types
* Search
* Basic Reporting
* Basic user roles (caseworker, volunteer co-ordinator, site admin etc) with access control
#### Coming soon
* Better reporting (currently only reports on defaults fields and not user-added ones)
* Allocation of tasks, overview of tasks and their stage of completion
* Appointments and notifications
## Current Status
**11 Nov 2018**
### User Base
OpenCase is being used by a couple of organisations, early adopters on the hosted platform.
### Availability as Free Software
If you want to install OpenCase for yourself, please get in touch via Issues. It is changing rapidly and the install process is currently undocumented but I am more than happy to guide you through.
### Try it out
A demo site, with basic functionality is available at demo.opencase.org.uk. If you are interested, raise an issue and I will get the login to you somehow.
## Find out more
* More details, including user stories for future development, can be found in the [OpenCase Gitbook](https://hoegrammer.gitbooks.io/zen-crm/content/)
* Raise an issue to contact the developer.
## Differences between current version (v0.2.6, July 2018) and previous version ##
**Access control**: Previously everyone could see all cases. Now, users can see cases that they are involved in. By creating case you automatically become involve in it (although you can later be removed or remove yourself). Caseworkers can see all clients and volunteer co-ordinators can see all volunteers. Site admins and overseers can see everything.
**Editing types**: As a site admin you can now add, remove and configure types of actor, types of case and types of activity and you can configure fields on these and add your own fields.s
**Relations between types**: For each type of case, you can specify what types of actors (people) can be involved in it, e.g. for a volunteer recruitment case it would be volunteers and/or staff; for a legal advice case maybe clients, volunteers and solicitors. You can also specify what activities belong on what kinds of cases.
## Not done yet ##
* Reporting
* Donations
* Anything to do with emails/bounces
* Any specific guidelines or features relating to the GDPR

View File

@ -2,22 +2,68 @@ langcode: en
status: true
dependencies:
config:
- system.menu.opencase-admin
- system.menu.opencase
module:
- system
- superfish
theme:
- bartik
id: opencase
theme: bartik
region: sidebar_first
weight: -8
region: primary_menu
weight: 0
provider: null
plugin: 'system_menu_block:opencase-admin'
plugin: 'superfish:opencase'
settings:
id: 'system_menu_block:opencase-admin'
label: 'OpenCase Admin'
provider: system
label_display: visible
level: 1
depth: 0
id: 'superfish:opencase'
label: OpenCase
provider: superfish
label_display: '0'
level: '1'
depth: '0'
menu_type: horizontal
style: none
arrow: 0
shadow: 1
speed: fast
delay: '800'
slide: vertical
supposition: 1
hoverintent: 1
touch: '1'
touchbh: '1'
touchbp: '768'
touchua: '0'
touchual: ''
touchuam: '0'
small: '2'
smallbp: '768'
smallua: '0'
smallual: ''
smalluam: '0'
smallact: '1'
smallset: ''
smallasa: 0
smallcmc: 0
smallecm: ''
smallchc: 0
smallech: ''
smallicm: ''
smallich: ''
smallamt: ''
smallabt: '1'
supersubs: 1
minwidth: '12'
maxwidth: '27'
multicolumn: 0
multicolumn_depth: '1'
multicolumn_levels: '1'
pathlevels: '1'
expanded: 0
clone_parent: 0
hide_linkdescription: 0
add_linkdescription: 0
link_depth_class: 1
custom_list_class: ''
custom_item_class: ''
custom_link_class: ''
visibility: { }

View File

@ -1,31 +0,0 @@
langcode: en
status: true
dependencies:
config:
- system.menu.opencase-add-actors
module:
- system
- user
theme:
- bartik
id: opencaseaddactors
theme: bartik
region: sidebar_first
weight: -8
provider: null
plugin: 'system_menu_block:opencase-add-actors'
settings:
id: 'system_menu_block:opencase-add-actors'
label: 'Add Actors'
provider: system
label_display: visible
level: 1
depth: 0
visibility:
user_role:
id: user_role
roles:
authenticated: authenticated
negate: false
context_mapping:
user: '@user.current_user_context:current_user'

View File

@ -1,31 +0,0 @@
langcode: en
status: true
dependencies:
config:
- system.menu.openc
module:
- system
- user
theme:
- bartik
id: opencaseglobal
theme: bartik
region: sidebar_first
weight: -7
provider: null
plugin: 'system_menu_block:openc'
settings:
id: 'system_menu_block:openc'
label: 'OpenCase Global'
provider: system
label_display: '0'
level: 1
depth: 0
visibility:
user_role:
id: user_role
roles:
authenticated: authenticated
negate: false
context_mapping:
user: '@user.current_user_context:current_user'

View File

@ -1,7 +0,0 @@
langcode: en
status: true
dependencies: { }
id: openc
label: 'OpenCase Global'
description: ''
locked: false

View File

@ -1,7 +0,0 @@
langcode: en
status: true
dependencies: { }
id: opencase-add-actors
label: 'OpenCase Add Actors'
description: ''
locked: false

View File

@ -1,7 +0,0 @@
langcode: en
status: true
dependencies: { }
id: opencase-admin
label: 'OpenCase Admin'
description: 'Administer OpenCase '
locked: false

View File

@ -0,0 +1,7 @@
langcode: en
status: true
dependencies: { }
id: opencase
label: OpenCase
description: 'Main navigation menu for OpenCase'
locked: false

View File

@ -4,6 +4,7 @@ dependencies:
config:
- user.role.authenticated
module:
- datetime
- opencase_entities
- user
id: activities
@ -13,7 +14,6 @@ description: ''
tag: ''
base_table: oc_activity_field_data
base_field: id
core: 8.x
display:
default:
display_plugin: default
@ -50,7 +50,7 @@ display:
pager:
type: mini
options:
items_per_page: 10
items_per_page: 50
offset: 0
id: 0
total_pages: null
@ -70,6 +70,72 @@ display:
row:
type: fields
fields:
activity_date_time:
id: activity_date_time
table: oc_activity_field_data
field: activity_date_time
relationship: none
group_type: group
admin_label: ''
label: 'Date and time'
exclude: false
alter:
alter_text: false
text: ''
make_link: false
path: ''
absolute: false
external: false
replace_spaces: false
path_case: none
trim_whitespace: false
alt: ''
rel: ''
link_class: ''
prefix: ''
suffix: ''
target: ''
nl2br: false
max_length: 0
word_boundary: true
ellipsis: true
more_link: false
more_link_text: ''
more_link_path: ''
strip_tags: false
trim: false
preserve_tags: ''
html: false
element_type: ''
element_class: ''
element_label_type: ''
element_label_class: ''
element_label_colon: true
element_wrapper_type: ''
element_wrapper_class: ''
element_default_classes: true
empty: ''
hide_empty: false
empty_zero: false
hide_alter_empty: true
click_sort_column: value
type: datetime_custom
settings:
timezone_override: ''
date_format: 'd/m/Y - H:i'
group_column: value
group_columns: { }
group_rows: true
delta_limit: 0
delta_offset: 0
delta_reversed: false
delta_first_last: false
multi_type: separator
separator: ', '
field_api_classes: false
entity_type: oc_activity
entity_field: activity_date_time
plugin_id: field
name:
id: name
table: oc_activity_field_data
@ -233,7 +299,7 @@ display:
more_link_text: ''
more_link_path: ''
strip_tags: false
trim: true
trim: false
preserve_tags: ''
html: false
element_type: ''
@ -264,73 +330,6 @@ display:
entity_type: oc_activity
entity_field: description
plugin_id: field
created:
id: created
table: oc_activity_field_data
field: created
relationship: none
group_type: group
admin_label: ''
label: Created
exclude: false
alter:
alter_text: false
text: ''
make_link: false
path: ''
absolute: false
external: false
replace_spaces: false
path_case: none
trim_whitespace: false
alt: ''
rel: ''
link_class: ''
prefix: ''
suffix: ''
target: ''
nl2br: false
max_length: 0
word_boundary: true
ellipsis: true
more_link: false
more_link_text: ''
more_link_path: ''
strip_tags: false
trim: false
preserve_tags: ''
html: false
element_type: ''
element_class: ''
element_label_type: ''
element_label_class: ''
element_label_colon: true
element_wrapper_type: ''
element_wrapper_class: ''
element_default_classes: true
empty: ''
hide_empty: false
empty_zero: false
hide_alter_empty: true
click_sort_column: value
type: timestamp
settings:
date_format: short
custom_date_format: ''
timezone: ''
group_column: value
group_columns: { }
group_rows: true
delta_limit: 0
delta_offset: 0
delta_reversed: false
delta_first_last: false
multi_type: separator
separator: ', '
field_api_classes: false
entity_type: oc_activity
entity_field: created
plugin_id: field
view_oc_activity:
id: view_oc_activity
table: oc_activity

View File

@ -50,7 +50,7 @@ display:
pager:
type: mini
options:
items_per_page: 20
items_per_page: 50
offset: 0
id: 0
total_pages: null
@ -447,7 +447,7 @@ display:
empty_zero: false
hide_alter_empty: false
plugin_id: custom
filters:
filters: null
sorts:
created:
id: created
@ -477,7 +477,7 @@ display:
admin_label: ''
empty: true
tokenize: false
content: "<p>Either there are no cases involving this person, or you do not have access to them.</p>\n"
content: "<p>Either there are no cases involving this person, or you do not have access to them.</p> <p>To create a case, use the sidebar menu to the right</p>"
plugin_id: text_custom
relationships: { }
arguments:
@ -569,7 +569,7 @@ display:
filter_groups: false
empty: false
path: opencase/all-cases
filters:
filters: null
filter_groups:
operator: AND
groups:
@ -584,14 +584,13 @@ display:
admin_label: ''
empty: true
tokenize: false
content: "<h1>No cases found</h1>\n<p>You do not have access to any existing cases.</p>\n<p>To <b>add a new case</b>, first search for the person you want to add a case to. If they are not on the system yet you can add them using the <b>Add actors</b> menu in the left sidebar.</p>\n"
content: "<h1>No cases found</h1>\n<p>You do not have access to any existing cases.</p>\n<p>To <b>add a new case</b>, first search for the person you want to create a case for, using the search bar at the top right of the screen. If they are not on the system yet, add them using the <b>Add People</b> tab.</p>\n"
plugin_id: text_custom
cache_metadata:
max-age: -1
contexts:
- 'languages:language_content'
- 'languages:language_interface'
- url
- url.query_args
- user.roles
tags: { }

View File

@ -16,3 +16,33 @@ body {
.js-form-item.form-item.js-form-type-checkbox.form-type-checkbox.js-form-item-new-revision.form-item-new-revision {
display: none;
}
/* Style the search box in header bar. */
#block-exposedformactor-searchpage-1 {
top: -20px;
}
#block-exposedformactor-searchpage-1 #edit-actions {
padding-top: 0;
}
#block-exposedformactor-searchpage-1 .form-text {
width: 200px;
}
/* Make drop-down nav menu opaque */
.block-superfish .menu ul {
background: white;
color: darkgray;
}
.block-superfish .menu ul li {
border-bottom: 1px dotted darkgray;
}
.block-superfish .menu ul li a:hover {
color: black;
}
/* In views, display label at top of field. Ths is because full descriptions are displayed in the activity view so having the label in the middle means it disappears down the page. */
td.views-field {
vertical-align: top;
}

View File

@ -0,0 +1,28 @@
langcode: en
status: true
dependencies:
config:
- facets.facet.involved_parties
module:
- facets
- system
theme:
- bartik
id: involvedparties
theme: bartik
region: sidebar_second
weight: 0
provider: null
plugin: 'facet_block:involved_parties'
settings:
id: 'facet_block:involved_parties'
label: 'Involved Parties'
provider: facets
label_display: visible
block_id: involvedparties
visibility:
request_path:
id: request_path
pages: /opencase/reporting/cases
negate: false
context_mapping: { }

View File

@ -2,27 +2,27 @@ langcode: en
status: true
dependencies:
config:
- facets.facet.nationality
- facets.facet.nationalities
module:
- facets
- system
theme:
- bartik
id: facet_nationality
id: nationalities
theme: bartik
region: sidebar_second
weight: 0
provider: null
plugin: 'facet_block:nationality'
plugin: 'facet_block:nationalities'
settings:
id: 'facet_block:nationality'
label: 'Nationality'
id: 'facet_block:nationalities'
label: Nationalities
provider: facets
label_display: visible
block_id: facet_nationality
block_id: nationalities
visibility:
request_path:
id: request_path
pages: '/opencase/reporting/clients'
pages: /opencase/reporting/clients
negate: false
context_mapping: { }

View File

@ -23,6 +23,6 @@ settings:
visibility:
request_path:
id: request_path
pages: '/opencase/reporting/*'
pages: /opencase/reporting/volunteers
negate: false
context_mapping: { }

View File

@ -0,0 +1,29 @@
langcode: en
status: true
dependencies:
config:
- facets.facet.outcome
module:
- facets
- system
theme:
- bartik
id: outcome
theme: bartik
region: sidebar_second
weight: 0
provider: null
plugin: 'facet_block:outcome'
settings:
id: 'facet_block:outcome'
label: Outcome
provider: facets
label_display: visible
block_id: outcome
visibility:
request_path:
id: request_path
pages: /opencase/reporting/cases
negate: false
context_mapping: { }

View File

@ -10,7 +10,7 @@ id: asylum_status
name: 'Asylum status'
url_alias: asylum_status
weight: 0
min_count: 1
min_count: 0
show_only_one_result: false
field_identifier: field_asylum_status
facet_source_id: 'search_api:views_page__reporting_clients__page_1'

View File

@ -10,7 +10,7 @@ id: asylum_status_export
name: 'Asylum status'
url_alias: asylum_status
weight: 0
min_count: 1
min_count: 0
show_only_one_result: false
field_identifier: field_asylum_status
facet_source_id: 'search_api:views_data_export__reporting_clients__data_export_1'

View File

@ -10,7 +10,7 @@ id: created
name: Created
url_alias: created
weight: 0
min_count: 1
min_count: 0
show_only_one_result: false
field_identifier: created
facet_source_id: 'search_api:views_page__reporting_clients__page_1'

View File

@ -9,7 +9,7 @@ id: created_export
name: 'Created - Export'
url_alias: created
weight: 0
min_count: 1
min_count: 0
show_only_one_result: false
field_identifier: created
facet_source_id: 'search_api:views_data_export__reporting_clients__data_export_1'

View File

@ -10,7 +10,7 @@ id: disability
name: 'Disability'
url_alias: disability
weight: 0
min_count: 1
min_count: 0
show_only_one_result: false
field_identifier: field_disability
facet_source_id: 'search_api:views_page__reporting_clients__page_1'

View File

@ -10,7 +10,7 @@ id: disability_export
name: 'Disability'
url_alias: disability
weight: 0
min_count: 1
min_count: 0
show_only_one_result: false
field_identifier: field_disability
facet_source_id: 'search_api:views_data_export__reporting_clients__data_export_1'

View File

@ -10,7 +10,7 @@ id: gender_identified_with
name: 'Gender Identity'
url_alias: gender_identified_with
weight: 0
min_count: 1
min_count: 0
show_only_one_result: false
field_identifier: field_gender_identified_with
facet_source_id: 'search_api:views_page__reporting_clients__page_1'

View File

@ -10,7 +10,7 @@ id: gender_identified_with_export
name: 'Gender Identity'
url_alias: gender_identified_with
weight: 0
min_count: 1
min_count: 0
show_only_one_result: false
field_identifier: field_gender_identified_with
facet_source_id: 'search_api:views_data_export__reporting_clients__data_export_1'

View File

@ -0,0 +1,62 @@
langcode: en
status: true
dependencies:
config:
- search_api.index.opencase_reporting_cases
- views.view.reporting_cases
module:
- search_api
id: involved_parties
name: 'Involved Parties'
url_alias: involved_parties
weight: 0
min_count: 0
show_only_one_result: false
field_identifier: actors_involved
facet_source_id: 'search_api:views_page__reporting_cases__page_1'
widget:
type: checkbox
config:
show_numbers: false
soft_limit: 0
soft_limit_settings:
show_less_label: 'Show less'
show_more_label: 'Show more'
show_reset_link: false
reset_text: 'Show all'
hide_reset_when_no_selection: false
query_operator: or
use_hierarchy: false
expand_hierarchy: false
enable_parent_when_child_gets_disabled: true
hard_limit: 0
exclude: false
only_visible_when_facet_source_is_visible: true
processor_configs:
display_value_widget_order:
processor_id: display_value_widget_order
weights:
sort: 40
settings:
sort: ASC
exclude_specified_items:
processor_id: exclude_specified_items
weights:
build: 50
settings:
exclude: client
regex: true
translate_entity:
processor_id: translate_entity
weights:
build: 5
settings: { }
url_processor_handler:
processor_id: url_processor_handler
weights:
pre_query: 50
build: 15
settings: { }
empty_behavior:
behavior: none
show_title: false

View File

@ -0,0 +1,55 @@
langcode: en
status: true
dependencies:
config:
- search_api.index.opencase_reporting_cases
- views.view.reporting_cases
module:
- search_api
id: involved_parties_export
name: 'Involved Parties (Export)'
url_alias: involved_parties
weight: 0
min_count: 0
show_only_one_result: false
field_identifier: actors_involved
facet_source_id: 'search_api:views_data_export__reporting_cases__data_export_1'
widget:
type: checkbox
config:
show_numbers: false
soft_limit: 0
soft_limit_settings:
show_less_label: 'Show less'
show_more_label: 'Show more'
show_reset_link: false
reset_text: 'Show all'
hide_reset_when_no_selection: false
query_operator: or
use_hierarchy: false
expand_hierarchy: false
enable_parent_when_child_gets_disabled: true
hard_limit: 0
exclude: false
only_visible_when_facet_source_is_visible: true
processor_configs:
display_value_widget_order:
processor_id: display_value_widget_order
weights:
sort: 40
settings:
sort: ASC
translate_entity:
processor_id: translate_entity
weights:
build: 5
settings: { }
url_processor_handler:
processor_id: url_processor_handler
weights:
pre_query: 50
build: 15
settings: { }
empty_behavior:
behavior: none
show_title: false

View File

@ -10,7 +10,7 @@ id: languages
name: 'Languages'
url_alias: languages
weight: 0
min_count: 1
min_count: 0
show_only_one_result: false
field_identifier: field_languages_spoken
facet_source_id: 'search_api:views_page__reporting_clients__page_1'

View File

@ -10,7 +10,7 @@ id: languages_export
name: 'Languages'
url_alias: languages
weight: 0
min_count: 1
min_count: 0
show_only_one_result: false
field_identifier: field_languages_spoken
facet_source_id: 'search_api:views_data_export__reporting_clients__data_export_1'

View File

@ -6,13 +6,13 @@ dependencies:
- views.view.reporting_clients
module:
- search_api
id: nationality
name: 'Nationality'
url_alias: nationality
id: nationalities
name: Nationalities
url_alias: nationalities
weight: 0
min_count: 1
min_count: 0
show_only_one_result: false
field_identifier: field_nationality
field_identifier: field_nationalities
facet_source_id: 'search_api:views_page__reporting_clients__page_1'
widget:
type: checkbox

View File

@ -3,19 +3,18 @@ status: true
dependencies:
config:
- search_api.index.opencase_reporting_clients
- views.view.reporting_clients
module:
- search_api
id: nationality_export
name: 'Nationality'
url_alias: nationality
- views_data_export
id: nationalities_export
name: Nationalities-export
url_alias: nationalities_export
weight: 0
min_count: 1
min_count: 0
show_only_one_result: false
field_identifier: field_nationality
field_identifier: field_nationalities
facet_source_id: 'search_api:views_data_export__reporting_clients__data_export_1'
widget:
type: checkbox
type: links
config:
show_numbers: false
soft_limit: 0
@ -30,6 +29,18 @@ hard_limit: 0
exclude: false
only_visible_when_facet_source_is_visible: true
processor_configs:
active_widget_order:
processor_id: active_widget_order
weights:
sort: 20
settings:
sort: DESC
count_widget_order:
processor_id: count_widget_order
weights:
sort: 30
settings:
sort: DESC
display_value_widget_order:
processor_id: display_value_widget_order
weights:

View File

@ -10,7 +10,7 @@ id: osic_level
name: 'OSIC level'
url_alias: osic_level
weight: 0
min_count: 1
min_count: 0
show_only_one_result: false
field_identifier: field_osic_level
facet_source_id: 'search_api:views_page__reporting_volunteers__page_1'

View File

@ -3,11 +3,10 @@ status: true
dependencies:
config:
- search_api.index.opencase_reporting_volunteers
- views.view.reporting_volunteers
module:
- search_api
- views_data_export
id: osic_level_export
name: 'OSIC level (Export)'
name: 'OSIC level Export'
url_alias: osic_level
weight: 0
min_count: 1
@ -15,7 +14,7 @@ show_only_one_result: false
field_identifier: field_osic_level
facet_source_id: 'search_api:views_data_export__reporting_volunteers__data_export_1'
widget:
type: checkbox
type: links
config:
show_numbers: false
soft_limit: 0
@ -30,6 +29,18 @@ hard_limit: 0
exclude: false
only_visible_when_facet_source_is_visible: true
processor_configs:
active_widget_order:
processor_id: active_widget_order
weights:
sort: 20
settings:
sort: DESC
count_widget_order:
processor_id: count_widget_order
weights:
sort: 30
settings:
sort: DESC
display_value_widget_order:
processor_id: display_value_widget_order
weights:

View File

@ -0,0 +1,52 @@
langcode: en
status: true
dependencies:
config:
- search_api.index.opencase_reporting_cases
- views.view.reporting_cases
module:
- search_api
id: outcome
name: Outcome
url_alias: outcome
weight: 0
min_count: 0
show_only_one_result: false
field_identifier: field_outcome
facet_source_id: 'search_api:views_page__reporting_cases__page_1'
widget:
type: checkbox
config:
show_numbers: true
soft_limit: 0
soft_limit_settings:
show_less_label: 'Show less'
show_more_label: 'Show more'
show_reset_link: false
reset_text: 'Show all'
hide_reset_when_no_selection: false
query_operator: or
use_hierarchy: false
expand_hierarchy: false
enable_parent_when_child_gets_disabled: true
hard_limit: 0
exclude: false
only_visible_when_facet_source_is_visible: false
processor_configs:
display_value_widget_order:
processor_id: display_value_widget_order
weights:
sort: 40
settings:
sort: ASC
url_processor_handler:
processor_id: url_processor_handler
weights:
pre_query: 50
build: 15
settings: { }
empty_behavior:
behavior: text
text_format: plain_text
text: ''
show_title: false

View File

@ -0,0 +1,52 @@
langcode: en
status: true
dependencies:
config:
- search_api.index.opencase_reporting_cases
- views.view.reporting_cases
module:
- search_api
id: outcome_export
name: Outcome (Export)
url_alias: outcome
weight: 0
min_count: 0
show_only_one_result: false
field_identifier: field_outcome
facet_source_id: 'search_api:views_data_export__reporting_cases__data_export_1'
widget:
type: checkbox
config:
show_numbers: true
soft_limit: 0
soft_limit_settings:
show_less_label: 'Show less'
show_more_label: 'Show more'
show_reset_link: false
reset_text: 'Show all'
hide_reset_when_no_selection: false
query_operator: or
use_hierarchy: false
expand_hierarchy: false
enable_parent_when_child_gets_disabled: true
hard_limit: 0
exclude: false
only_visible_when_facet_source_is_visible: false
processor_configs:
display_value_widget_order:
processor_id: display_value_widget_order
weights:
sort: 40
settings:
sort: ASC
url_processor_handler:
processor_id: url_processor_handler
weights:
pre_query: 50
build: 15
settings: { }
empty_behavior:
behavior: text
text_format: plain_text
text: ''
show_title: false

View File

@ -6,7 +6,7 @@ dependencies:
- field.storage.oc_actor.field_disability
- field.storage.oc_actor.field_gender_identified_with
- field.storage.oc_actor.field_languages_spoken
- field.storage.oc_actor.field_nationality
- field.storage.oc_actor.field_nationalities
- search_api.server.opencase_reporting_server
module:
- opencase_entities
@ -56,14 +56,38 @@ field_settings:
dependencies:
config:
- field.storage.oc_actor.field_languages_spoken
field_nationality:
field_nationalities:
label: Nationality
datasource_id: 'entity:oc_actor'
property_path: field_nationality
property_path: field_nationalities
type: string
dependencies:
config:
- field.storage.oc_actor.field_nationality
- field.storage.oc_actor.field_nationalities
first_name:
label: 'First Name'
datasource_id: 'entity:oc_actor'
property_path: first_name
type: string
dependencies:
module:
- opencase_entities
last_name:
label: 'Last Name'
datasource_id: 'entity:oc_actor'
property_path: last_name
type: string
dependencies:
module:
- opencase_entities
post_code:
label: 'Post Code'
datasource_id: 'entity:oc_actor'
property_path: post_code
type: string
dependencies:
module:
- opencase_entities
datasource_settings:
'entity:oc_actor':
bundles:

View File

@ -1,25 +1,26 @@
langcode: en
status: true
dependencies:
config:
- field.storage.oc_actor.field_languages_spoken
- field.storage.oc_actor.field_osic_level
- search_api.server.opencase_reporting_server
module:
- opencase_entities
- search_api
config:
- field.storage.oc_actor.field_osic_level
- search_api.server.opencase_reporting_server
id: opencase_reporting_volunteers
name: 'OpenCase Reporting: Volunteers'
description: ''
read_only: false
field_settings:
created:
label: Created
field_languages_spoken:
label: 'Languages spoken'
datasource_id: 'entity:oc_actor'
property_path: created
type: date
property_path: field_languages_spoken
type: string
dependencies:
module:
- opencase_entities
config:
- field.storage.oc_actor.field_languages_spoken
field_osic_level:
label: 'OSIC level'
datasource_id: 'entity:oc_actor'
@ -28,6 +29,14 @@ field_settings:
dependencies:
config:
- field.storage.oc_actor.field_osic_level
name:
label: Name
datasource_id: 'entity:oc_actor'
property_path: name
type: string
dependencies:
module:
- opencase_entities
datasource_settings:
'entity:oc_actor':
bundles:

View File

@ -2,11 +2,8 @@ langcode: en
status: true
dependencies:
config:
- field.storage.oc_actor.field_languages_spoken
- field.storage.oc_actor.field_osic_level
- search_api.index.opencase_reporting_volunteers
content:
- 'block_content:basic:944ff38d-5931-4439-91d5-f53b5ad7aac7'
- field.storage.oc_case.field_outcome
- search_api.index.opencase_reporting_cases
module:
- csv_serialization
- options
@ -15,12 +12,12 @@ dependencies:
- serialization
- user
- views_data_export
id: reporting_volunteers
label: 'Reporting: Volunteers'
id: reporting_cases
label: 'Reporting: Cases'
module: views
description: ''
tag: ''
base_table: search_api_index_opencase_reporting_volunteers
base_table: search_api_index_opencase_reporting_cases
base_field: search_api_id
core: 8.x
display:
@ -35,13 +32,14 @@ display:
options:
perm: 'use opencase'
cache:
type: tag
type: none
options: { }
query:
type: views_query
options:
bypass_access: false
skip_access: false
preserve_facet_query_args: false
exposed_form:
type: basic
options:
@ -55,7 +53,7 @@ display:
pager:
type: mini
options:
items_per_page: 10
items_per_page: 20
offset: 0
id: 0
total_pages: null
@ -72,17 +70,58 @@ display:
next:
style:
type: table
options:
grouping: { }
row_class: ''
default_row_class: true
override: true
sticky: false
caption: ''
summary: ''
description: ''
columns:
name: name
type: type
actors_involved: actors_involved
field_outcome: field_outcome
info:
name:
align: ''
separator: ''
empty_column: false
responsive: ''
type:
align: ''
separator: ''
empty_column: false
responsive: ''
actors_involved:
sortable: false
default_sort_order: asc
align: ''
separator: ''
empty_column: false
responsive: ''
field_outcome:
sortable: false
default_sort_order: asc
align: ''
separator: ''
empty_column: false
responsive: ''
default: '-1'
empty_table: false
row:
type: fields
fields:
first_name:
id: first_name
table: search_api_datasource_opencase_reporting_volunteers_entity_oc_actor
field: first_name
name:
id: name
table: search_api_datasource_opencase_reporting_cases_entity_oc_case
field: name
relationship: none
group_type: group
admin_label: ''
label: 'First Name'
label: ''
exclude: false
alter:
alter_text: false
@ -126,7 +165,7 @@ display:
click_sort_column: value
type: string
settings:
link_to_entity: false
link_to_entity: true
group_column: value
group_columns: { }
group_rows: true
@ -144,87 +183,16 @@ display:
use_highlighting: false
multi_type: separator
multi_separator: ', '
entity_type: oc_actor
entity_type: oc_case
plugin_id: search_api_field
last_name:
id: last_name
table: search_api_datasource_opencase_reporting_volunteers_entity_oc_actor
field: last_name
type:
id: type
table: search_api_datasource_opencase_reporting_cases_entity_oc_case
field: type
relationship: none
group_type: group
admin_label: ''
label: 'Last Name'
exclude: false
alter:
alter_text: false
text: ''
make_link: false
path: ''
absolute: false
external: false
replace_spaces: false
path_case: none
trim_whitespace: false
alt: ''
rel: ''
link_class: ''
prefix: ''
suffix: ''
target: ''
nl2br: false
max_length: 0
word_boundary: true
ellipsis: true
more_link: false
more_link_text: ''
more_link_path: ''
strip_tags: false
trim: false
preserve_tags: ''
html: false
element_type: ''
element_class: ''
element_label_type: ''
element_label_class: ''
element_label_colon: true
element_wrapper_type: ''
element_wrapper_class: ''
element_default_classes: true
empty: ''
hide_empty: false
empty_zero: false
hide_alter_empty: true
click_sort_column: value
type: string
settings:
link_to_entity: false
group_column: value
group_columns: { }
group_rows: true
delta_limit: 0
delta_offset: 0
delta_reversed: false
delta_first_last: false
multi_type: separator
separator: ', '
field_api_classes: false
field_rendering: true
fallback_handler: search_api
fallback_options:
link_to_item: false
use_highlighting: false
multi_type: separator
multi_separator: ', '
entity_type: oc_actor
plugin_id: search_api_field
created:
id: created
table: search_api_datasource_opencase_reporting_volunteers_entity_oc_actor
field: created
relationship: none
group_type: group
admin_label: ''
label: 'Created Date'
label: ''
exclude: false
alter:
alter_text: false
@ -265,13 +233,11 @@ display:
hide_empty: false
empty_zero: false
hide_alter_empty: true
click_sort_column: value
type: timestamp
click_sort_column: target_id
type: entity_reference_label
settings:
date_format: medium
custom_date_format: ''
timezone: ''
group_column: value
link: false
group_column: target_id
group_columns: { }
group_rows: true
delta_limit: 0
@ -282,96 +248,28 @@ display:
separator: ', '
field_api_classes: false
field_rendering: true
fallback_handler: search_api_date
fallback_handler: search_api_entity
fallback_options:
date_format: fallback
custom_date_format: ''
timezone: ''
link_to_item: false
use_highlighting: false
multi_type: separator
multi_separator: ', '
entity_type: oc_actor
display_methods:
oc_case_type:
display_method: label
entity_type: oc_case
plugin_id: search_api_field
field_osic_level:
id: field_osic_level
table: search_api_index_opencase_reporting_volunteers
field: field_osic_level
relationship: none
group_type: group
admin_label: ''
label: 'OSIC Level'
exclude: false
alter:
alter_text: false
text: ''
make_link: false
path: ''
absolute: false
external: false
replace_spaces: false
path_case: none
trim_whitespace: false
alt: ''
rel: ''
link_class: ''
prefix: ''
suffix: ''
target: ''
nl2br: false
max_length: 0
word_boundary: true
ellipsis: true
more_link: false
more_link_text: ''
more_link_path: ''
strip_tags: false
trim: false
preserve_tags: ''
html: false
element_type: ''
element_class: ''
element_label_type: ''
element_label_class: ''
element_label_colon: true
element_wrapper_type: ''
element_wrapper_class: ''
element_default_classes: true
empty: ''
hide_empty: false
empty_zero: false
hide_alter_empty: true
click_sort_column: value
type: list_default
settings: { }
group_column: value
group_columns: { }
group_rows: true
delta_limit: 0
delta_offset: 0
delta_reversed: false
delta_first_last: false
multi_type: separator
separator: ', '
field_api_classes: false
field_rendering: true
fallback_handler: search_api
fallback_options:
link_to_item: false
use_highlighting: false
multi_type: separator
multi_separator: ', '
actors_involved:
table: search_api_index_opencase_reporting_cases
field: actors_involved
id: actors_involved
entity_type: null
entity_field: null
plugin_id: search_api_field
field_languages_spoken:
id: field_languages_spoken
table: search_api_datasource_opencase_reporting_volunteers_entity_oc_actor
field: field_languages_spoken
relationship: none
group_type: group
admin_label: ''
label: Languages
label: ''
exclude: false
alter:
alter_text: false
@ -412,6 +310,75 @@ display:
hide_empty: false
empty_zero: false
hide_alter_empty: true
click_sort_column: target_id
type: entity_reference_label
settings: { }
group_column: target_id
group_columns: { }
group_rows: true
delta_limit: 0
delta_offset: 0
delta_reversed: false
delta_first_last: false
multi_type: separator
separator: ', '
field_api_classes: false
field_rendering: true
fallback_handler: search_api_entity
fallback_options:
link_to_item: false
use_highlighting: false
multi_type: separator
multi_separator: ', '
display_methods: { }
field_outcome:
id: field_outcome
table: search_api_index_opencase_reporting_cases
field: field_outcome
relationship: none
group_type: group
admin_label: ''
label: ''
exclude: false
alter:
alter_text: false
text: ''
make_link: false
path: ''
absolute: false
external: false
replace_spaces: false
path_case: none
trim_whitespace: false
alt: ''
rel: ''
link_class: ''
prefix: ''
suffix: ''
target: ''
nl2br: false
max_length: 0
word_boundary: true
ellipsis: true
more_link: false
more_link_text: ''
more_link_path: ''
strip_tags: false
trim: false
preserve_tags: ''
html: false
element_type: ''
element_class: ''
element_label_type: ''
element_label_class: ''
element_label_colon: false
element_wrapper_type: ''
element_wrapper_class: ''
element_default_classes: true
empty: ''
hide_empty: false
empty_zero: false
hide_alter_empty: true
click_sort_column: value
type: list_default
settings: { }
@ -432,31 +399,16 @@ display:
use_highlighting: false
multi_type: separator
multi_separator: ', '
entity_type: oc_actor
plugin_id: search_api_field
filters: { }
sorts: { }
title: 'Volunteer Report'
header:
entity_block_content:
id: entity_block_content
table: views
field: entity_block_content
relationship: none
group_type: group
admin_label: ''
empty: false
tokenize: true
target: 944ff38d-5931-4439-91d5-f53b5ad7aac7
view_mode: default
bypass_access: false
plugin_id: entity
title: 'Reporting: Cases'
header: { }
footer: { }
empty: { }
relationships: { }
arguments: { }
display_extenders: { }
use_ajax: true
cache_metadata:
max-age: -1
contexts:
@ -465,8 +417,7 @@ display:
- url.query_args
- user.permissions
tags:
- 'config:field.storage.oc_actor.field_languages_spoken'
- 'config:field.storage.oc_actor.field_osic_level'
- 'config:field.storage.oc_case.field_outcome'
data_export_1:
display_plugin: data_export
id: data_export_1
@ -474,8 +425,11 @@ display:
position: 2
display_options:
display_extenders: { }
path: opencase/reporting/volunteers
path: opencase/reporting/cases
filename: '[view:title].csv'
displays:
page_1: page_1
default: '0'
style:
type: data_export
options:
@ -508,8 +462,7 @@ display:
- request_format
- user.permissions
tags:
- 'config:field.storage.oc_actor.field_languages_spoken'
- 'config:field.storage.oc_actor.field_osic_level'
- 'config:field.storage.oc_case.field_outcome'
page_1:
display_plugin: page
id: page_1
@ -517,7 +470,7 @@ display:
position: 1
display_options:
display_extenders: { }
path: opencase/reporting/volunteers
path: opencase/reporting/cases
cache_metadata:
max-age: -1
contexts:
@ -526,5 +479,4 @@ display:
- url.query_args
- user.permissions
tags:
- 'config:field.storage.oc_actor.field_languages_spoken'
- 'config:field.storage.oc_actor.field_osic_level'
- 'config:field.storage.oc_case.field_outcome'

View File

@ -6,11 +6,10 @@ dependencies:
- field.storage.oc_actor.field_disability
- field.storage.oc_actor.field_gender_identified_with
- field.storage.oc_actor.field_languages_spoken
- field.storage.oc_actor.field_nationality
- field.storage.oc_actor.field_nationalities
- search_api.index.opencase_reporting_clients
content:
- 'block_content:basic:944ff38d-5931-4439-91d5-f53b5ad7aac7'
module:
- csv_serialization
- options
- rest
- search_api
@ -57,10 +56,13 @@ display:
pager:
type: mini
options:
items_per_page: 10
items_per_page: 50
offset: 0
id: 0
total_pages: null
tags:
previous:
next:
expose:
items_per_page: false
items_per_page_label: 'Items per page'
@ -69,22 +71,19 @@ display:
items_per_page_options_all_label: '- All -'
offset: false
offset_label: Offset
tags:
previous:
next:
style:
type: table
row:
type: fields
fields:
first_name:
id: first_name
name:
id: name
table: search_api_datasource_opencase_reporting_clients_entity_oc_actor
field: first_name
field: name
relationship: none
group_type: group
admin_label: ''
label: 'First Name'
label: Name
exclude: false
alter:
alter_text: false
@ -128,78 +127,7 @@ display:
click_sort_column: value
type: string
settings:
link_to_entity: false
group_column: value
group_columns: { }
group_rows: true
delta_limit: 0
delta_offset: 0
delta_reversed: false
delta_first_last: false
multi_type: separator
separator: ', '
field_api_classes: false
field_rendering: true
fallback_handler: search_api
fallback_options:
link_to_item: false
use_highlighting: false
multi_type: separator
multi_separator: ', '
entity_type: oc_actor
plugin_id: search_api_field
last_name:
id: last_name
table: search_api_datasource_opencase_reporting_clients_entity_oc_actor
field: last_name
relationship: none
group_type: group
admin_label: ''
label: 'Last Name'
exclude: false
alter:
alter_text: false
text: ''
make_link: false
path: ''
absolute: false
external: false
replace_spaces: false
path_case: none
trim_whitespace: false
alt: ''
rel: ''
link_class: ''
prefix: ''
suffix: ''
target: ''
nl2br: false
max_length: 0
word_boundary: true
ellipsis: true
more_link: false
more_link_text: ''
more_link_path: ''
strip_tags: false
trim: false
preserve_tags: ''
html: false
element_type: ''
element_class: ''
element_label_type: ''
element_label_class: ''
element_label_colon: true
element_wrapper_type: ''
element_wrapper_class: ''
element_default_classes: true
empty: ''
hide_empty: false
empty_zero: false
hide_alter_empty: true
click_sort_column: value
type: string
settings:
link_to_entity: false
link_to_entity: true
group_column: value
group_columns: { }
group_rows: true
@ -429,14 +357,14 @@ display:
multi_type: separator
multi_separator: ', '
plugin_id: search_api_field
field_languages_spoken:
id: field_languages_spoken
table: search_api_index_opencase_reporting_clients
field: field_languages_spoken
field_nationalities:
id: field_nationalities
table: search_api_datasource_opencase_reporting_clients_entity_oc_actor
field: field_nationalities
relationship: none
group_type: group
admin_label: ''
label: Languages
label: Nationality
exclude: false
alter:
alter_text: false
@ -497,15 +425,16 @@ display:
use_highlighting: false
multi_type: separator
multi_separator: ', '
entity_type: oc_actor
plugin_id: search_api_field
field_nationality:
id: field_nationality
field_languages_spoken:
id: field_languages_spoken
table: search_api_index_opencase_reporting_clients
field: field_nationality
field: field_languages_spoken
relationship: none
group_type: group
admin_label: ''
label: Nationality
label: Languages
exclude: false
alter:
alter_text: false
@ -547,9 +476,8 @@ display:
empty_zero: false
hide_alter_empty: true
click_sort_column: value
type: string
settings:
link_to_entity: false
type: list_default
settings: { }
group_column: value
group_columns: { }
group_rows: true
@ -661,7 +589,6 @@ display:
relationships: { }
arguments: { }
display_extenders: { }
use_ajax: true
cache_metadata:
max-age: -1
contexts:
@ -674,7 +601,7 @@ display:
- 'config:field.storage.oc_actor.field_disability'
- 'config:field.storage.oc_actor.field_gender_identified_with'
- 'config:field.storage.oc_actor.field_languages_spoken'
- 'config:field.storage.oc_actor.field_nationality'
- 'config:field.storage.oc_actor.field_nationalities'
data_export_1:
display_plugin: data_export
id: data_export_1
@ -684,6 +611,37 @@ display:
display_extenders: { }
path: opencase/reporting/clients
filename: '[view:title].csv'
cache:
type: none
defaults:
cache: false
displays:
page_1: page_1
default: '0'
style:
type: data_export
options:
formats:
csv: csv
csv_settings:
delimiter: ','
enclosure: '"'
escape_char: \
strip_tags: true
trim: true
encoding: utf8
xls_settings:
xls_format: Excel2007
metadata:
creator: ''
last_modified_by: ''
title: ''
description: ''
subject: ''
keywords: ''
category: ''
manager: ''
company: ''
cache_metadata:
max-age: -1
contexts:
@ -696,7 +654,7 @@ display:
- 'config:field.storage.oc_actor.field_disability'
- 'config:field.storage.oc_actor.field_gender_identified_with'
- 'config:field.storage.oc_actor.field_languages_spoken'
- 'config:field.storage.oc_actor.field_nationality'
- 'config:field.storage.oc_actor.field_nationalities'
page_1:
display_plugin: page
id: page_1
@ -721,4 +679,4 @@ display:
- 'config:field.storage.oc_actor.field_disability'
- 'config:field.storage.oc_actor.field_gender_identified_with'
- 'config:field.storage.oc_actor.field_languages_spoken'
- 'config:field.storage.oc_actor.field_nationality'
- 'config:field.storage.oc_actor.field_nationalities'

View File

@ -0,0 +1,395 @@
langcode: en
status: true
dependencies:
config:
- field.storage.oc_actor.field_languages_spoken
- field.storage.oc_actor.field_osic_level
- search_api.index.opencase_reporting_volunteers
module:
- csv_serialization
- options
- rest
- search_api
- serialization
- user
- views_data_export
id: reporting_volunteers
label: 'Reporting: Volunteers'
module: views
description: ''
tag: ''
base_table: search_api_index_opencase_reporting_volunteers
base_field: search_api_id
core: 8.x
display:
default:
display_plugin: default
id: default
display_title: Master
position: 0
display_options:
access:
type: perm
options:
perm: 'use opencase'
cache:
type: tag
options: { }
query:
type: views_query
options:
bypass_access: false
skip_access: false
exposed_form:
type: basic
options:
submit_button: Apply
reset_button: false
reset_button_label: Reset
exposed_sorts_label: 'Sort by'
expose_sort_order: true
sort_asc_label: Asc
sort_desc_label: Desc
pager:
type: mini
options:
items_per_page: 50
offset: 0
id: 0
total_pages: null
expose:
items_per_page: false
items_per_page_label: 'Items per page'
items_per_page_options: '5, 10, 25, 50'
items_per_page_options_all: false
items_per_page_options_all_label: '- All -'
offset: false
offset_label: Offset
tags:
previous:
next:
style:
type: table
options:
grouping: { }
row_class: ''
default_row_class: true
override: true
sticky: false
caption: ''
summary: ''
description: ''
columns:
field_languages_spoken: field_languages_spoken
info:
field_languages_spoken:
sortable: false
default_sort_order: asc
align: ''
separator: ''
empty_column: false
responsive: ''
default: '-1'
empty_table: false
row:
type: fields
fields:
name:
id: name
table: search_api_index_opencase_reporting_volunteers
field: name
relationship: none
group_type: group
admin_label: ''
label: Name
exclude: false
alter:
alter_text: false
text: ''
make_link: false
path: ''
absolute: false
external: false
replace_spaces: false
path_case: none
trim_whitespace: false
alt: ''
rel: ''
link_class: ''
prefix: ''
suffix: ''
target: ''
nl2br: false
max_length: 0
word_boundary: true
ellipsis: true
more_link: false
more_link_text: ''
more_link_path: ''
strip_tags: false
trim: false
preserve_tags: ''
html: false
element_type: ''
element_class: ''
element_label_type: ''
element_label_class: ''
element_label_colon: true
element_wrapper_type: ''
element_wrapper_class: ''
element_default_classes: true
empty: ''
hide_empty: false
empty_zero: false
hide_alter_empty: true
click_sort_column: value
type: string
settings:
link_to_entity: true
group_column: value
group_columns: { }
group_rows: true
delta_limit: 0
delta_offset: 0
delta_reversed: false
delta_first_last: false
multi_type: separator
separator: ', '
field_api_classes: false
field_rendering: true
fallback_handler: search_api
fallback_options:
link_to_item: false
use_highlighting: false
multi_type: separator
multi_separator: ', '
plugin_id: search_api_field
field_languages_spoken_1:
id: field_languages_spoken_1
table: search_api_index_opencase_reporting_volunteers
field: field_languages_spoken
relationship: none
group_type: group
admin_label: ''
label: 'Languages spoken'
exclude: false
alter:
alter_text: false
text: ''
make_link: false
path: ''
absolute: false
external: false
replace_spaces: false
path_case: none
trim_whitespace: false
alt: ''
rel: ''
link_class: ''
prefix: ''
suffix: ''
target: ''
nl2br: false
max_length: 0
word_boundary: true
ellipsis: true
more_link: false
more_link_text: ''
more_link_path: ''
strip_tags: false
trim: false
preserve_tags: ''
html: false
element_type: ''
element_class: ''
element_label_type: ''
element_label_class: ''
element_label_colon: true
element_wrapper_type: ''
element_wrapper_class: ''
element_default_classes: true
empty: ''
hide_empty: false
empty_zero: false
hide_alter_empty: true
click_sort_column: value
type: list_default
settings: { }
group_column: value
group_columns: { }
group_rows: true
delta_limit: 0
delta_offset: 0
delta_reversed: false
delta_first_last: false
multi_type: separator
separator: ', '
field_api_classes: false
field_rendering: true
fallback_handler: search_api
fallback_options:
link_to_item: false
use_highlighting: false
multi_type: separator
multi_separator: ', '
plugin_id: search_api_field
field_osic_level:
id: field_osic_level
table: search_api_index_opencase_reporting_volunteers
field: field_osic_level
relationship: none
group_type: group
admin_label: ''
label: 'OSIC level'
exclude: false
alter:
alter_text: false
text: ''
make_link: false
path: ''
absolute: false
external: false
replace_spaces: false
path_case: none
trim_whitespace: false
alt: ''
rel: ''
link_class: ''
prefix: ''
suffix: ''
target: ''
nl2br: false
max_length: 0
word_boundary: true
ellipsis: true
more_link: false
more_link_text: ''
more_link_path: ''
strip_tags: false
trim: false
preserve_tags: ''
html: false
element_type: ''
element_class: ''
element_label_type: ''
element_label_class: ''
element_label_colon: true
element_wrapper_type: ''
element_wrapper_class: ''
element_default_classes: true
empty: ''
hide_empty: false
empty_zero: false
hide_alter_empty: true
click_sort_column: value
type: list_default
settings: { }
group_column: value
group_columns: { }
group_rows: true
delta_limit: 0
delta_offset: 0
delta_reversed: false
delta_first_last: false
multi_type: separator
separator: ', '
field_api_classes: false
field_rendering: true
fallback_handler: search_api
fallback_options:
link_to_item: false
use_highlighting: false
multi_type: separator
multi_separator: ', '
plugin_id: search_api_field
filters: { }
sorts: { }
title: 'Volunteer Report'
header: { }
footer: { }
empty: { }
relationships: { }
arguments: { }
display_extenders: { }
cache_metadata:
max-age: -1
contexts:
- 'languages:language_content'
- 'languages:language_interface'
- url.query_args
- user.permissions
tags:
- 'config:field.storage.oc_actor.field_languages_spoken'
- 'config:field.storage.oc_actor.field_osic_level'
data_export_1:
display_plugin: data_export
id: data_export_1
display_title: 'Data export'
position: 2
display_options:
display_extenders: { }
path: opencase/reporting/volunteers
filename: '[view:title].csv'
cache:
type: none
defaults:
cache: false
displays:
page_1: page_1
default: '0'
style:
type: data_export
options:
formats:
csv: csv
csv_settings:
delimiter: ','
enclosure: '"'
escape_char: \
strip_tags: true
trim: true
encoding: utf8
xls_settings:
xls_format: Excel2007
metadata:
creator: ''
last_modified_by: ''
title: ''
description: ''
subject: ''
keywords: ''
category: ''
manager: ''
company: ''
cache_metadata:
max-age: -1
contexts:
- 'languages:language_content'
- 'languages:language_interface'
- request_format
- user.permissions
tags:
- 'config:field.storage.oc_actor.field_languages_spoken'
- 'config:field.storage.oc_actor.field_osic_level'
page_1:
display_plugin: page
id: page_1
display_title: Page
position: 1
display_options:
display_extenders: { }
path: opencase/reporting/volunteers
cache:
type: none
defaults:
cache: false
cache_metadata:
max-age: -1
contexts:
- 'languages:language_content'
- 'languages:language_interface'
- url.query_args
- user.permissions
tags:
- 'config:field.storage.oc_actor.field_languages_spoken'
- 'config:field.storage.oc_actor.field_osic_level'

View File

@ -0,0 +1,8 @@
name: 'Opencase example reporting'
type: module
description: 'Reporting on the types of people, cases etc that the Opencase Defaults module provides'
core: 8.x
package: 'OpenCase'
dependencies:
- opencase_defaults
- opencase_reporting

View File

@ -0,0 +1,42 @@
<?php
function opencase_default_reporting_uninstall() {
$configs = [
'search_api.index.opencase_reporting_cases',
'search_api.index.opencase_reporting_clients',
'search_api.index.opencase_reporting_volunteers',
'block.block.facet_asylum_status',
'block.block.facet_created',
'block.block.facet_disability',
'block.block.facet_gender_identified_with',
'block.block.facet_languages',
'block.block.nationalities',
'block.block.osiclevel',
'block.block.outcome',
'block.block.involvedparties',
'views.view.reporting_clients',
'views.view.reporting_volunteers',
'views.view.reporting_cases',
'facets.facet.asylum_status_export',
'facets.facet.disability',
'facets.facet.nationalities_export',
'facets.facet.asylum_status',
'facets.facet.gender_identified_with_export',
'facets.facet.nationalities',
'facets.facet.created_export',
'facets.facet.gender_identified_with',
'facets.facet.osic_level_export',
'facets.facet.created',
'facets.facet.languages_export',
'facets.facet.osic_level',
'facets.facet.disability_export',
'facets.facet.languages',
'facets.facet.outcome',
'facets.facet.outcome_export',
'facets.facet.involved_parties',
'facets.facet.involved_parties_export',
];
foreach($configs as $config) {
Drupal::configFactory()->getEditable($config)->delete();
}
}

View File

@ -1,31 +0,0 @@
langcode: en
status: true
dependencies:
config:
- system.menu.opencase-add-actors
module:
- system
- user
theme:
- bartik
id: opencaseaddactors
theme: bartik
region: sidebar_first
weight: -8
provider: null
plugin: 'system_menu_block:opencase-add-actors'
settings:
id: 'system_menu_block:opencase-add-actors'
label: 'Add Records'
provider: system
label_display: visible
level: 1
depth: 0
visibility:
user_role:
id: user_role
roles:
authenticated: authenticated
negate: false
context_mapping:
user: '@user.current_user_context:current_user'

View File

@ -13,8 +13,9 @@ dependencies:
- field.field.oc_actor.client.field_income
- field.field.oc_actor.client.field_languages_spoken
- field.field.oc_actor.client.field_marital_
- field.field.oc_actor.client.field_nationality
- field.field.oc_actor.client.field_nationalities
- field.field.oc_actor.client.field_referred_by
- field.field.oc_actor.client.field_sex
- opencase_entities.oc_actor_type.client
module:
- datetime
@ -25,7 +26,7 @@ bundle: client
mode: default
content:
field_asylum_status:
weight: 6
weight: 4
settings: { }
third_party_settings: { }
type: options_select
@ -39,27 +40,19 @@ content:
type: string_textfield
region: content
field_confidentiality_form:
weight: 15
weight: 13
settings:
progress_indicator: throbber
third_party_settings: { }
type: file_generic
region: content
field_date_of_birth:
weight: 3
weight: 0
settings: { }
third_party_settings: { }
type: datetime_default
region: content
field_dependants:
weight: 12
settings:
size: 60
placeholder: ''
third_party_settings: { }
type: string_textfield
region: content
field_disability:
weight: 10
settings:
size: 60
@ -67,45 +60,7 @@ content:
third_party_settings: { }
type: string_textfield
region: content
field_ethnic_o:
weight: 7
settings:
size: 60
placeholder: ''
third_party_settings: { }
type: string_textfield
region: content
field_gender_identified_with:
weight: 4
settings: { }
third_party_settings: { }
type: options_select
region: content
field_how_heard:
weight: 13
settings: { }
third_party_settings: { }
type: options_select
region: content
field_income:
weight: 11
settings: { }
third_party_settings: { }
type: options_select
region: content
field_languages_spoken:
weight: 9
settings: { }
third_party_settings: { }
type: options_select
region: content
field_marital_:
weight: 5
settings: { }
third_party_settings: { }
type: options_select
region: content
field_nationality:
field_disability:
weight: 8
settings:
size: 60
@ -113,14 +68,64 @@ content:
third_party_settings: { }
type: string_textfield
region: content
field_referred_by:
weight: 14
field_ethnic_o:
weight: 5
settings:
size: 60
placeholder: ''
third_party_settings: { }
type: string_textfield
region: content
field_gender_identified_with:
weight: 1
settings: { }
third_party_settings: { }
type: options_select
region: content
field_how_heard:
weight: 11
settings: { }
third_party_settings: { }
type: options_select
region: content
field_income:
weight: 9
settings: { }
third_party_settings: { }
type: options_select
region: content
field_languages_spoken:
weight: 7
settings: { }
third_party_settings: { }
type: options_select
region: content
field_marital_:
weight: 3
settings: { }
third_party_settings: { }
type: options_select
region: content
field_nationalities:
type: options_select
weight: 6
region: content
settings: { }
third_party_settings: { }
field_referred_by:
weight: 12
settings:
size: 60
placeholder: ''
third_party_settings: { }
type: string_textfield
region: content
field_sex:
weight: 2
settings: { }
third_party_settings: { }
type: options_select
region: content
name:
type: string_textfield
weight: -4
@ -129,30 +134,6 @@ content:
size: 60
placeholder: ''
third_party_settings: { }
phone:
type: string_textfield
weight: 0
region: content
settings:
size: 60
placeholder: ''
third_party_settings: { }
phone2:
type: string_textfield
weight: 1
region: content
settings:
size: 60
placeholder: ''
third_party_settings: { }
postal_address:
type: string_textarea
weight: 2
region: content
settings:
rows: 5
placeholder: ''
third_party_settings: { }
user_id:
type: entity_reference_autocomplete
weight: 5

View File

@ -3,7 +3,7 @@ status: true
dependencies:
config:
- field.field.oc_actor.volunteer.field_languages_spoken
- field.field.oc_actor.volunteer.field_nationality
- field.field.oc_actor.volunteer.field_nationalities
- field.field.oc_actor.volunteer.field_osic_level
- field.field.oc_actor.volunteer.field_skills
- opencase_entities.oc_actor_type.volunteer
@ -18,7 +18,7 @@ content:
third_party_settings: { }
type: options_select
region: content
field_nationality:
field_nationalities:
weight: 0
settings:
size: 60

View File

@ -13,7 +13,7 @@ dependencies:
- field.field.oc_actor.client.field_income
- field.field.oc_actor.client.field_languages_spoken
- field.field.oc_actor.client.field_marital_
- field.field.oc_actor.client.field_nationality
- field.field.oc_actor.client.field_nationalities
- field.field.oc_actor.client.field_referred_by
- opencase_entities.oc_actor_type.client
module:
@ -117,7 +117,7 @@ content:
third_party_settings: { }
type: list_default
region: content
field_nationality:
field_nationalities:
weight: 8
label: above
settings:

View File

@ -3,7 +3,7 @@ status: true
dependencies:
config:
- field.field.oc_actor.volunteer.field_languages_spoken
- field.field.oc_actor.volunteer.field_nationality
- field.field.oc_actor.volunteer.field_nationalities
- field.field.oc_actor.volunteer.field_osic_level
- field.field.oc_actor.volunteer.field_skills
- opencase_entities.oc_actor_type.volunteer
@ -22,7 +22,7 @@ content:
third_party_settings: { }
type: list_default
region: content
field_nationality:
field_nationalities:
weight: 3
label: above
settings:

View File

@ -0,0 +1,20 @@
langcode: en
status: true
dependencies:
config:
- field.storage.oc_actor.field_nationalities
- opencase_entities.oc_actor_type.client
module:
- options
id: oc_actor.client.field_nationalities
field_name: field_nationalities
entity_type: oc_actor
bundle: client
label: Nationality
description: 'To select multiple nationalities, hold down <b>Ctrl</b> (or the Mac equivalent) while clicking.'
required: false
translatable: false
default_value: { }
default_value_callback: ''
settings: { }
field_type: list_string

View File

@ -2,17 +2,19 @@ langcode: en
status: true
dependencies:
config:
- field.storage.oc_actor.field_nationality
- field.storage.oc_actor.field_sex
- opencase_entities.oc_actor_type.client
id: oc_actor.client.field_nationality
field_name: field_nationality
module:
- options
id: oc_actor.client.field_sex
field_name: field_sex
entity_type: oc_actor
bundle: client
label: Nationality
label: Sex
description: ''
required: false
translatable: false
default_value: { }
default_value_callback: ''
settings: { }
field_type: string
field_type: list_string

View File

@ -0,0 +1,20 @@
langcode: en
status: true
dependencies:
config:
- field.storage.oc_actor.field_nationalities
- opencase_entities.oc_actor_type.volunteer
module:
- options
id: oc_actor.volunteer.field_nationalities
field_name: field_nationalities
entity_type: oc_actor
bundle: volunteer
label: Nationality
description: 'To select multiple nationalities, hold down <b>Ctrl</b> (or the Mac equivalent) while clicking.'
required: false
translatable: true
default_value: { }
default_value_callback: ''
settings: { }
field_type: list_string

View File

@ -1,18 +0,0 @@
langcode: en
status: true
dependencies:
config:
- field.storage.oc_actor.field_nationality
- opencase_entities.oc_actor_type.volunteer
id: oc_actor.volunteer.field_nationality
field_name: field_nationality
entity_type: oc_actor
bundle: volunteer
label: Nationality
description: ''
required: false
translatable: true
default_value: { }
default_value_callback: ''
settings: { }
field_type: string

View File

@ -0,0 +1,611 @@
langcode: en
status: true
dependencies:
module:
- opencase_entities
- options
id: oc_actor.field_nationalities
field_name: field_nationalities
entity_type: oc_actor
type: list_string
settings:
allowed_values:
-
value: Afghan
label: Afghan
-
value: Albanian
label: Albanian
-
value: Algerian
label: Algerian
-
value: American
label: American
-
value: Andorran
label: Andorran
-
value: Angolan
label: Angolan
-
value: Antiguans
label: Antiguans
-
value: Argentinean
label: Argentinean
-
value: Armenian
label: Armenian
-
value: Australian
label: Australian
-
value: Austrian
label: Austrian
-
value: Azerbaijani
label: Azerbaijani
-
value: Bahamian
label: Bahamian
-
value: Bahraini
label: Bahraini
-
value: Bangladeshi
label: Bangladeshi
-
value: Barbadian
label: Barbadian
-
value: Barbudans
label: Barbudans
-
value: Batswana
label: Batswana
-
value: Belarusian
label: Belarusian
-
value: Belgian
label: Belgian
-
value: Belizean
label: Belizean
-
value: Beninese
label: Beninese
-
value: Bhutanese
label: Bhutanese
-
value: Bolivian
label: Bolivian
-
value: Bosnian
label: Bosnian
-
value: Brazilian
label: Brazilian
-
value: British
label: British
-
value: Bruneian
label: Bruneian
-
value: Bulgarian
label: Bulgarian
-
value: Burkinabe
label: Burkinabe
-
value: Burmese
label: Burmese
-
value: Burundian
label: Burundian
-
value: Cambodian
label: Cambodian
-
value: Cameroonian
label: Cameroonian
-
value: Canadian
label: Canadian
-
value: 'Cape Verdean'
label: 'Cape Verdean'
-
value: 'Central African'
label: 'Central African'
-
value: Chadian
label: Chadian
-
value: Chilean
label: Chilean
-
value: Chinese
label: Chinese
-
value: Colombian
label: Colombian
-
value: Comoran
label: Comoran
-
value: Congolese
label: Congolese
-
value: 'Costa Rican'
label: 'Costa Rican'
-
value: Croatian
label: Croatian
-
value: Cuban
label: Cuban
-
value: Cypriot
label: Cypriot
-
value: Czech
label: Czech
-
value: Danish
label: Danish
-
value: Djibouti
label: Djibouti
-
value: Dominican
label: Dominican
-
value: Dutch
label: Dutch
-
value: Dutchman
label: Dutchman
-
value: Dutchwoman
label: Dutchwoman
-
value: 'East Timorese'
label: 'East Timorese'
-
value: Ecuadorean
label: Ecuadorean
-
value: Egyptian
label: Egyptian
-
value: Emirian
label: Emirian
-
value: 'Equatorial Guinean'
label: 'Equatorial Guinean'
-
value: Eritrean
label: Eritrean
-
value: Estonian
label: Estonian
-
value: Ethiopian
label: Ethiopian
-
value: Fijian
label: Fijian
-
value: Filipino
label: Filipino
-
value: Finnish
label: Finnish
-
value: French
label: French
-
value: Gabonese
label: Gabonese
-
value: Gambian
label: Gambian
-
value: Georgian
label: Georgian
-
value: German
label: German
-
value: Ghanaian
label: Ghanaian
-
value: Greek
label: Greek
-
value: Grenadian
label: Grenadian
-
value: Guatemalan
label: Guatemalan
-
value: Guinea-Bissauan
label: Guinea-Bissauan
-
value: Guinean
label: Guinean
-
value: Guyanese
label: Guyanese
-
value: Haitian
label: Haitian
-
value: Herzegovinian
label: Herzegovinian
-
value: Honduran
label: Honduran
-
value: Hungarian
label: Hungarian
-
value: I-Kiribati
label: I-Kiribati
-
value: Icelander
label: Icelander
-
value: Indian
label: Indian
-
value: Indonesian
label: Indonesian
-
value: Iranian
label: Iranian
-
value: Iraqi
label: Iraqi
-
value: Irish
label: Irish
-
value: Israeli
label: Israeli
-
value: Italian
label: Italian
-
value: Ivorian
label: Ivorian
-
value: Jamaican
label: Jamaican
-
value: Japanese
label: Japanese
-
value: Jordanian
label: Jordanian
-
value: Kazakhstani
label: Kazakhstani
-
value: Kenyan
label: Kenyan
-
value: 'Kittian and Nevisian'
label: 'Kittian and Nevisian'
-
value: Kuwaiti
label: Kuwaiti
-
value: Kyrgyz
label: Kyrgyz
-
value: Laotian
label: Laotian
-
value: Latvian
label: Latvian
-
value: Lebanese
label: Lebanese
-
value: Liberian
label: Liberian
-
value: Libyan
label: Libyan
-
value: Liechtensteiner
label: Liechtensteiner
-
value: Lithuanian
label: Lithuanian
-
value: Luxembourger
label: Luxembourger
-
value: Macedonian
label: Macedonian
-
value: Malagasy
label: Malagasy
-
value: Malawian
label: Malawian
-
value: Malaysian
label: Malaysian
-
value: Maldivan
label: Maldivan
-
value: Malian
label: Malian
-
value: Maltese
label: Maltese
-
value: Marshallese
label: Marshallese
-
value: Mauritanian
label: Mauritanian
-
value: Mauritian
label: Mauritian
-
value: Mexican
label: Mexican
-
value: Micronesian
label: Micronesian
-
value: Moldovan
label: Moldovan
-
value: Monacan
label: Monacan
-
value: Mongolian
label: Mongolian
-
value: Moroccan
label: Moroccan
-
value: Mosotho
label: Mosotho
-
value: Motswana
label: Motswana
-
value: Mozambican
label: Mozambican
-
value: Namibian
label: Namibian
-
value: Nauruan
label: Nauruan
-
value: Nepalese
label: Nepalese
-
value: Netherlander
label: Netherlander
-
value: 'New Zealander'
label: 'New Zealander'
-
value: Ni-Vanuatu
label: Ni-Vanuatu
-
value: Nicaraguan
label: Nicaraguan
-
value: Nigerian
label: Nigerian
-
value: Nigerien
label: Nigerien
-
value: 'North Korean'
label: 'North Korean'
-
value: 'Northern Irish'
label: 'Northern Irish'
-
value: Norwegian
label: Norwegian
-
value: Omani
label: Omani
-
value: Pakistani
label: Pakistani
-
value: Palauan
label: Palauan
-
value: Panamanian
label: Panamanian
-
value: 'Papua New Guinean'
label: 'Papua New Guinean'
-
value: Paraguayan
label: Paraguayan
-
value: Peruvian
label: Peruvian
-
value: Polish
label: Polish
-
value: Portuguese
label: Portuguese
-
value: Qatari
label: Qatari
-
value: Romanian
label: Romanian
-
value: Russian
label: Russian
-
value: Rwandan
label: Rwandan
-
value: 'Saint Lucian'
label: 'Saint Lucian'
-
value: Salvadoran
label: Salvadoran
-
value: Samoan
label: Samoan
-
value: 'San Marinese'
label: 'San Marinese'
-
value: 'Sao Tomean'
label: 'Sao Tomean'
-
value: Saudi
label: Saudi
-
value: Scottish
label: Scottish
-
value: Senegalese
label: Senegalese
-
value: Serbian
label: Serbian
-
value: Seychellois
label: Seychellois
-
value: 'Sierra Leonean'
label: 'Sierra Leonean'
-
value: Singaporean
label: Singaporean
-
value: Slovakian
label: Slovakian
-
value: Slovenian
label: Slovenian
-
value: 'Solomon Islander'
label: 'Solomon Islander'
-
value: Somali
label: Somali
-
value: 'South African'
label: 'South African'
-
value: 'South Korean'
label: 'South Korean'
-
value: Spanish
label: Spanish
-
value: 'Sri Lankan'
label: 'Sri Lankan'
-
value: Sudanese
label: Sudanese
-
value: Surinamer
label: Surinamer
-
value: Swazi
label: Swazi
-
value: Swedish
label: Swedish
-
value: Swiss
label: Swiss
-
value: Syrian
label: Syrian
-
value: Taiwanese
label: Taiwanese
-
value: Tajik
label: Tajik
-
value: Tanzanian
label: Tanzanian
-
value: Thai
label: Thai
-
value: Togolese
label: Togolese
-
value: Tongan
label: Tongan
-
value: 'Trinidadian or Tobagonian'
label: 'Trinidadian or Tobagonian'
-
value: Tunisian
label: Tunisian
-
value: Turkish
label: Turkish
-
value: Tuvaluan
label: Tuvaluan
-
value: Ugandan
label: Ugandan
-
value: Ukrainian
label: Ukrainian
-
value: Uruguayan
label: Uruguayan
-
value: Uzbekistani
label: Uzbekistani
-
value: Venezuelan
label: Venezuelan
-
value: Vietnamese
label: Vietnamese
-
value: Welsh
label: Welsh
-
value: Yemenite
label: Yemenite
-
value: Zambian
label: Zambian
-
value: Zimbabwean
label: Zimbabwean
allowed_values_function: ''
module: options
locked: false
cardinality: -1
translatable: true
indexes: { }
persist_with_no_fields: false
custom_storage: false

View File

@ -1,20 +0,0 @@
langcode: en
status: true
dependencies:
module:
- opencase_entities
id: oc_actor.field_nationality
field_name: field_nationality
entity_type: oc_actor
type: string
settings:
max_length: 255
is_ascii: false
case_sensitive: false
module: core
locked: false
cardinality: 1
translatable: true
indexes: { }
persist_with_no_fields: false
custom_storage: false

View File

@ -0,0 +1,26 @@
langcode: en
status: true
dependencies:
module:
- opencase_entities
- options
id: oc_actor.field_sex
field_name: field_sex
entity_type: oc_actor
type: list_string
settings:
allowed_values:
-
value: Male
label: Male
-
value: Female
label: Female
allowed_values_function: ''
module: options
locked: false
cardinality: 1
translatable: true
indexes: { }
persist_with_no_fields: false
custom_storage: false

View File

@ -1,7 +0,0 @@
langcode: en
status: true
dependencies: { }
id: opencase-add-actors
label: 'OpenCase Add Actors'
description: ''
locked: false

View File

@ -1,6 +1,6 @@
name: 'Opencase Example Configuration'
type: module
description: 'Actor types, case types, activity types and user roles suited to an asylum advice group'
description: 'Person types, case types, activity types and user roles suited to an asylum advice group'
core: 8.x
package: 'OpenCase'
dependencies:

View File

@ -1,12 +1,12 @@
opencase_reporting.clients:
opencase_defaults.report_on_clients:
title: 'Clients'
description: 'Report on clients'
menu_name: opencase_reporting
parent: opencase_reporting.reporting_menu
url: internal:/opencase/reporting/clients
weight: 0
opencase_reporting.volunteers:
opencase_defaults.report_on_volunteers:
title: 'Volunteers'
description: 'Report on volunteers'
menu_name: opencase_reporting
parent: opencase_reporting.reporting_menu
url: internal:/opencase/reporting/volunteers
weight: 1

View File

@ -9,24 +9,6 @@ use Drupal\Core\Routing\RouteMatchInterface;
use Drupal\user\Entity\Role;
use Drupal\user\RoleInterface;
/**
* When a new actor type is created, this gives the CRM Admin and Overseer roles permission
* to view, edit and delete them.
*/
#function opencase_defaults_entity_insert(Drupal\Core\Entity\EntityInterface $entity) {
# if (get_class($entity) == 'Drupal\opencase_entities\Entity\OCActorType') {
# $type = $entity->id();
# $roles = Role::loadMultiple(['opencase_admin', 'overseer']);
# foreach ($roles as $role) {
# $role->grantPermission("view published $type entities");
# $role->grantPermission("edit $type entities");
# $role->grantPermission("delete $type entities");
# $role->grantPermission("add new $type entities");
# }
# \Drupal::logger('foo')->notice("<pre>".print_r(user_role_permissions(['overseer']), true) . "</pre>");
# }
#}
/**
* Implements hook_help().
*/
@ -53,3 +35,4 @@ function opencase_defaults_theme() {
],
];
}

View File

@ -0,0 +1,38 @@
<?php
function opencase_entities_update_8013() {
$update_manager = \Drupal::entityDefinitionUpdateManager();
$definition = $update_manager->getFieldStorageDefinition('activity_date_time', 'oc_activity');
// $definition->setDescription('');
// $definition->setRequired('');
//->setDefaultValueCallback('Drupal\opencase_entities\Entity\OCActivity::currentDateTime')
$update_manager->updateFieldStorageDefinition($definition);
}
/**
* Add 'activity_date_time' field to 'oc_activity' entities.
*/
function opencase_entities_update_8003() {
$storage_definition = \Drupal\Core\Field\BaseFieldDefinition::create('datetime')
->setLabel(t('Date and time'))
->setDescription(t('When the activity started.'))
->setRevisionable(TRUE)
->setDefaultValueCallback('Drupal\opencase_entities\Entity\OCActivity::currentDateTime')
->setDisplayOptions('view', [
'type' => 'datetime_default',
'settings' => [
'format_type' => 'medium',
],
'label' => 'above',
'weight' => -3,
])
->setDisplayOptions('form', [
'type' => 'datetime_default',
'weight' => -3,
]);
\Drupal::entityDefinitionUpdateManager()
->installFieldStorageDefinition('activity_date_time', 'oc_activity', 'oc_activity', $storage_definition);
}

View File

@ -1,11 +1,11 @@
entity.oc_actor.add_form:
route_name: entity.oc_actor.add_page
title: 'Add Actor'
title: 'Add Person'
appears_on:
- entity.oc_actor.collection
entity.oc_actor_type.add_form:
route_name: entity.oc_actor_type.add_form
title: 'Add Actor type'
title: 'Add Person type'
appears_on:
- entity.oc_actor_type.collection

View File

@ -1,6 +1,9 @@
permission_callbacks:
- Drupal\opencase_entities\OpenCaseEntityPermissions::permissions
view edit delete all actor entities:
title: 'View/Edit/Delete all types of people'
description: ''
administer opencase entity bundles:
title: 'Administer OpenCase Actor/Case/Activity Types'
@ -11,58 +14,6 @@ administer actor entities:
description: 'Allow to access the administration form to configure Actor entities.'
restrict access: true
#add client entities:
# title: 'Create new Client entities'
#
#delete client entities:
# title: 'Delete Client entities'
#
#edit client entities:
# title: 'Edit Client entities'
#
#view published client entities:
# title: 'View published Client entities'
#
#view unpublished client entities:
# title: 'View unpublished Client entities'
#
#view all client revisions:
# title: 'View all Client revisions'
#
#revert all client revisions:
# title: 'Revert all Client revisions'
# description: 'Role requires permission <em>view Client revisions</em> and <em>edit rights</em> for client entities in question or <em>administer client entities</em>.'
#
#delete all client revisions:
# title: 'Delete all Client revisions'
# description: 'Role requires permission to <em>view Client revisions</em> and <em>delete rights</em> for client entities in question or <em>administer client entities</em>.'
#
#add volunteer entities:
# title: 'Create new Volunteer entities'
#
#delete volunteer entities:
# title: 'Delete Volunteer entities'
#
#edit volunteer entities:
# title: 'Edit Volunteer entities'
#
#view published volunteer entities:
# title: 'View published Volunteer entities'
#
#view unpublished volunteer entities:
# title: 'View unpublished Volunteer entities'
#
#view all volunteer revisions:
# title: 'View all Volunteer revisions'
#
#revert all volunteer revisions:
# title: 'Revert all Volunteer revisions'
# description: 'Role requires permission <em>view Volunteer revisions</em> and <em>edit rights</em> for volunteer entities in question or <em>administer volunteer entities</em>.'
#
#delete all volunteer revisions:
# title: 'Delete all Volunteer revisions'
# description: 'Role requires permission to <em>view Volunteer revisions</em> and <em>delete rights</em> for volunteer entities in question or <em>administer volunteer entities</em>.'
add case entities:
title: 'Create new Case entities'

View File

@ -9,6 +9,8 @@ use Drupal\Core\Entity\RevisionableInterface;
use Drupal\Core\Entity\EntityChangedTrait;
use Drupal\Core\Entity\EntityTypeInterface;
use Drupal\user\UserInterface;
use Drupal\datetime\Plugin\Field\FieldType\DateTimeItem;
use Drupal\Core\Datetime\DrupalDateTime;
/**
* Defines the Activity entity.
@ -81,6 +83,11 @@ class OCActivity extends RevisionableContentEntityBase implements OCActivityInte
return array(\Drupal::request()->query->get('case_id'));
}
public static function currentDateTime() {
$current_time = DrupalDateTime::createFromTimestamp(time());
$formatted = $current_time->format(DateTimeItem::DATETIME_STORAGE_FORMAT);
return $formatted;
}
/**
* {@inheritdoc}
*/
@ -210,6 +217,25 @@ class OCActivity extends RevisionableContentEntityBase implements OCActivityInte
public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
$fields = parent::baseFieldDefinitions($entity_type);
$fields['activity_date_time'] = BaseFieldDefinition::create('datetime')
->setLabel(t('Date and time'))
->setDescription('')
->setRevisionable(TRUE)
->setRequired(TRUE)
->setDefaultValueCallback('Drupal\opencase_entities\Entity\OCActivity::currentDateTime')
->setDisplayOptions('view', [
'label' => 'above',
'type' => 'datetime_default',
'settings' => [
'format_type' => 'medium',
],
'weight' => -3,
])
->setDisplayOptions('form', [
'type' => 'datetime_default',
'weight' => -3,
]);
// not currently in use. Will set view and form settings when ready
$fields['status'] = BaseFieldDefinition::create('boolean')
->setLabel(t('Publishing status'))

View File

@ -17,8 +17,8 @@ use Drupal\user\UserInterface;
*
* @ContentEntityType(
* id = "oc_actor",
* label = @Translation("Actor"),
* bundle_label = @Translation("Actor type"),
* label = @Translation("Person"),
* bundle_label = @Translation("Person type"),
* handlers = {
* "storage" = "Drupal\opencase_entities\OCActorStorage",
* "view_builder" = "Drupal\Core\Entity\EntityViewBuilder",

View File

@ -9,7 +9,7 @@ use Drupal\Core\Config\Entity\ConfigEntityBundleBase;
*
* @ConfigEntityType(
* id = "oc_actor_type",
* label = @Translation("Actor type"),
* label = @Translation("Person type"),
* handlers = {
* "access" = "Drupal\opencase_entities\OCActorTypeAccessControlHandler",
* "view_builder" = "Drupal\Core\Entity\EntityViewBuilder",

View File

@ -55,13 +55,13 @@ class OCActorForm extends ContentEntityForm {
switch ($status) {
case SAVED_NEW:
drupal_set_message($this->t('Created the %label Actor.', [
drupal_set_message($this->t('Created %label.', [
'%label' => $entity->label(),
]));
break;
default:
drupal_set_message($this->t('Saved the %label Actor.', [
drupal_set_message($this->t('Saved %label.', [
'%label' => $entity->label(),
]));
}

View File

@ -22,7 +22,7 @@ class OCActorTypeForm extends EntityForm {
'#title' => $this->t('Label'),
'#maxlength' => 255,
'#default_value' => $oc_actor_type->label(),
'#description' => $this->t("Label for the Actor type."),
'#description' => $this->t("Label for the Person type."),
'#required' => TRUE,
];
@ -49,13 +49,13 @@ class OCActorTypeForm extends EntityForm {
switch ($status) {
case SAVED_NEW:
drupal_set_message($this->t('Created the %label Actor type.', [
drupal_set_message($this->t('Created the %label Person type.', [
'%label' => $oc_actor_type->label(),
]));
break;
default:
drupal_set_message($this->t('Saved the %label Actor type.', [
drupal_set_message($this->t('Saved the %label Person type.', [
'%label' => $oc_actor_type->label(),
]));
}

View File

@ -14,7 +14,7 @@ class OCActorTypeListBuilder extends ConfigEntityListBuilder {
* {@inheritdoc}
*/
public function buildHeader() {
$header['label'] = $this->t('Actor type');
$header['label'] = $this->t('Person type');
$header['id'] = $this->t('Machine name');
return $header + parent::buildHeader();
}

View File

@ -1,23 +0,0 @@
langcode: en
status: true
dependencies:
config:
- system.menu.opencase_reporting
module:
- system
theme:
- bartik
id: opencase_reporting_menu
theme: bartik
region: sidebar_first
weight: -8
provider: null
plugin: 'system_menu_block:opencase_reporting'
settings:
id: 'system_menu_block:opencase_reporting'
label: 'Reporting'
provider: system
label_display: visible
level: 1
depth: 0
visibility: { }

View File

@ -1,7 +0,0 @@
langcode: en
status: true
dependencies: { }
id: opencase_reporting
label: 'OpenCase Reporting'
description: ''
locked: false

View File

@ -52,7 +52,7 @@ display:
pager:
type: mini
options:
items_per_page: 10
items_per_page: 50
offset: 0
id: 0
total_pages: null

View File

@ -0,0 +1,6 @@
opencase_reporting.reporting_menu:
title: 'Reporting'
description: 'Report on clients'
menu_name: opencase
route_name: opencase_reporting.reporting_menu
weight: 10

View File

@ -0,0 +1,4 @@
opencase_reporting.reporting_menu:
path: '/'
requirements:
_permission: 'use opencase'

View File

@ -9,7 +9,7 @@ dependencies:
- bartik
id: exposedformactor_searchpage_1
theme: bartik
region: sidebar_first
region: header
weight: -9
provider: null
plugin: 'views_exposed_filter_block:actor_search-page_1'

View File

@ -8,7 +8,7 @@ dependencies:
- search_api
- user
id: actor_search
label: 'Actor Search'
label: 'Person Search'
module: views
description: ''
tag: ''
@ -50,7 +50,7 @@ display:
pager:
type: mini
options:
items_per_page: 20
items_per_page: 50
offset: 0
id: 0
total_pages: null
@ -554,7 +554,7 @@ display:
expose:
operator_id: search_api_fulltext_op
label: 'Search by Name'
description: 'Type at least 3 letters of a first or last name and press enter.'
description: 'Type at least 3 letters and press enter.'
use_operator: false
operator: search_api_fulltext_op
identifier: search_api_fulltext

View File

@ -6,4 +6,3 @@ package: 'OpenCase'
dependencies:
- search_api
- search_api_db
- opencase

View File

@ -2,8 +2,10 @@ name: 'OpenCase'
type: module
description: 'Simple Case Management'
core: 8.x
version: 8.x-1.6.1
package: 'OpenCase'
dependencies:
- opencase_entities
- opencase_search
libraries:
- opencase/opencase-lib

View File

@ -1,40 +1,82 @@
opencase.cases:
title: 'Cases'
description: 'View cases'
menu_name: opencase
route_name: opencase.opencase_cases_menu
weight: 0
opencase.opencase_all_cases:
title: 'All Cases'
description: 'All cases I have access to'
menu_name: opencase
parent: opencase.cases
url: internal:/opencase/all-cases
weight: 1
opencase.opencase_add_people_menu:
title: 'Add people'
description: 'Add new people'
menu_name: opencase
route_name: opencase.opencase_people_menu
weight: 1
opencase.add_people_links:
class: Drupal\opencase\Plugin\Menu\AddActorsMenuLink
deriver: Drupal\opencase\Plugin\Derivative\AddActorsMenuLink
menu_name: opencase
parent: opencase.opencase_add_people_menu
opencase.opencase_admin_menu:
title: 'Administration'
description: 'Management and Configuration'
route_name: opencase.opencase_admin_menu
menu_name: opencase
weight: 100
opencase.manage_user_logins:
title: 'Manage user logins'
description: 'Manage who can access the system'
menu_name: opencase-admin
menu_name: opencase
parent: opencase.opencase_admin_menu
url: internal:/admin/people
weight: 0
opencase.manage_actor_types:
title: 'Manage actor types'
description: 'Configure types of actors and their fields'
menu_name: opencase-admin
opencase.manage_person_types:
title: 'Manage person types'
description: 'Configure types of people and their fields'
menu_name: opencase
parent: opencase.opencase_admin_menu
url: internal:/admin/opencase/oc_actor_type
weight: 1
opencase.manage_case_types:
title: 'Manage case types'
description: 'Configure types of cases and their fields'
menu_name: opencase-admin
menu_name: opencase
parent: opencase.opencase_admin_menu
url: internal:/admin/opencase/oc_case_type
weight: 2
opencase.manage_activity_types:
title: 'Manage activity types'
description: 'Configure types of activities and their fields'
menu_name: opencase-admin
menu_name: opencase
parent: opencase.opencase_admin_menu
url: internal:/admin/opencase/oc_activity_type
weight: 3
opencase.opencase_support_menu:
title: 'Support'
description: 'Get help and advice'
menu_name: opencase
url: internal:#
weight: 101
opencase.view_documentation:
title: 'Read documentation'
description: 'Find out about OpenCase and how it works'
menu_name: openc
menu_name: opencase
parent: opencase.opencase_support_menu
url: https://hoegrammer.gitbooks.io/opencase/content/
weight: 0
opencase.send_feedback:
title: 'Send feedback'
description: 'Contact the OpenCase developers'
menu_name: openc
opencase.contact_developers:
title: 'Ask the developers'
description: 'Ask us (erm, me actually) anything!'
menu_name: opencase
parent: opencase.opencase_support_menu
url: internal:/contact
weight: 1
opencase.add_actors_links:
class: Drupal\opencase\Plugin\Menu\AddActorsMenuLink
deriver: Drupal\opencase\Plugin\Derivative\AddActorsMenuLink
menu_name: opencase-add-actors

View File

@ -30,8 +30,6 @@ function opencase_block_access(\Drupal\block\Entity\Block $block, $operation, \D
'entity.oc_activity.canonical',
'entity.oc_activity.edit_form',
'entity.oc_activity.add_form',
'system.menu.opencase-add-actors',
'block.block.opencaseaddactors',
];
return AccessResult::forbiddenIf(!in_array($route_name, $routes_where_it_should_be_shown))->addCacheableDependency($block);
}
@ -141,12 +139,8 @@ function opencase_uninstall() {
$configs = [
'block.block.opencasecontextualmenu',
'block.block.opencase',
'block.block.opencaseaddactors',
'system.menu.opencase-add-actors',
'system.menu.openc',
'system.menu.opencase',
'views.view.cases',
'block.block.opencaseglobal',
'system.menu.opencase-admin',
'views.view.activities'
];
foreach($configs as $config) {

12
opencase.routing.yml Normal file
View File

@ -0,0 +1,12 @@
opencase.opencase_admin_menu:
path: '/'
requirements:
_permission: 'administer opencase entity bundles'
opencase.opencase_cases_menu:
path: '/'
requirements:
_permission: 'use opencase'
opencase.opencase_people_menu:
path: '/'
requirements:
_permission: 'use opencase'

View File

@ -20,7 +20,7 @@ class EntityTypeRelationsWidget {
$options[$machine_name] = $info['label'];
}
$form['allowed_actor_types'] = array(
'#title' => t('Actor types'),
'#title' => t('Allowed involved parties'),
'#description' => t('Types of people that can be involved in this kind of case.'),
'#type' => 'checkboxes',
'#options' => $options

View File

@ -21,7 +21,7 @@ class ActorTypeHelp extends BlockBase {
public function build() {
return array(
'#markup' => "
<h3>All actor types have contact details fields by default. Other fields can be added and managed here.</h3>
<h3>All person types have contact details fields by default. Other fields can be added and managed here.</h3>
"
);