Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/discoverygarden/embargo
Embargo content indefinitely or till specified date, limiting access to specific users and/or IP addresses.
https://github.com/discoverygarden/embargo
access-control drupal drupal-module embargo
Last synced: about 10 hours ago
JSON representation
Embargo content indefinitely or till specified date, limiting access to specific users and/or IP addresses.
- Host: GitHub
- URL: https://github.com/discoverygarden/embargo
- Owner: discoverygarden
- License: gpl-2.0
- Created: 2022-07-16T17:49:30.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-08-05T15:26:43.000Z (6 months ago)
- Last Synced: 2024-12-14T18:43:41.554Z (2 months ago)
- Topics: access-control, drupal, drupal-module, embargo
- Language: PHP
- Homepage:
- Size: 314 KB
- Stars: 0
- Watchers: 6
- Forks: 5
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# Embargo
Embargo content indefinitely or till specified date, limiting access to specific users and/or IP addresses.
> This module is intended to be a successor to
## Installation
Install as
[usual](https://www.drupal.org/docs/extending-drupal/installing-modules).### Migrating from `embargoes`
Migrations exist in the `migrate_embargoes_to_embargo` module for migrating from `embargoes`'s entities onto `embargo`'s.
See [the module's docs for more info](modules/migrate_embargoes_to_embargo/README.md).## Configuration
Configuration options can be set at `admin/config/content/embargo`,
including a contact email and notification message.Embargoes can be managed at `admin/content/embargo`.
To add an IP range for use on embargoes, navigate to
`admin/content/embargo/range` and click 'Add IP range'. Ranges
created via this method can then be used as IP address whitelists when creating
embargoes. This [CIDR to IPv4 Conversion utility](https://www.ipaddressguide.com/cidr)
can be helpful in creating valid CIDR IP ranges.### `search_api` processor(s)
We have multiple `search_api` processors which attempt to constrain search
results based on the effects of embargoes on the entities represented by search
results, including:- `embargo_processor` ("Embargo access (deprecated)")
- Adds additional properties to the indexed rows, requiring additional index
maintenance on mutation of the entities under consideration, but should
theoretically work with any `search_api` backend
- `embargo_join_process` ("Embargo access, join-wise")
- Requires Solr/Solarium-compatible index, and indexing of embargo entities in
the same index as the node/media/files to be search, tracking necessary info
and performing
[Solr joins](https://solr.apache.org/guide/solr/latest/query-guide/join-query-parser.html)
to constrain resultsTypically, only one should be used in any particular index.
## Usage
### Applying an embargo
An embargo can be applied to an existing node by clicking the
"Embargoes" tab on a node, or navigating to
`embargoes/node/{node_id}`. From here, an embargo can be applied if it doesn't
already exist, and existing embargoes can be modified or removed.## Known Issues/FAQ
- Embargoed items show up in search results
- Enable one of our `search_api` processors to handle applying embargo restrictions.
- "Embargo access, join-wise" does not show up as an available processor
- Ensure embargo entities are being indexed in the given index.
- Ensure that eligible node/media/files entities are being indexed in the
given index.## Troubleshooting/Issues
Having problems or solved a problem? Contact
[discoverygarden](http://www.discoverygarden.ca/).## Maintainers/Sponsors
* [discoverygarden](http://www.discoverygarden.ca/)
## Attribution
This module is heavily based on and includes contributions from [discoverygarden/embargoes](https://github.com/discoverygarden/embargoes) which was forked from [fsulib](https://github.com/fsulib/embargoes) authored by [Bryan J. Brown](https://github.com/bryjbrown).## License
[GPLv2](http://www.gnu.org/licenses/gpl-2.0.txt)