Skip to content

Commit

Permalink
Merge branch 'develop' into feature/remove_shell_true
Browse files Browse the repository at this point in the history
  • Loading branch information
BernhardKoschicek committed Nov 6, 2023
2 parents 8eb82c5 + 046cc7b commit dac5479
Show file tree
Hide file tree
Showing 34 changed files with 1,850 additions and 1,499 deletions.
2 changes: 1 addition & 1 deletion config/default.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@

from config.database_versions import DATABASE_VERSIONS

VERSION = '7.17.0'
VERSION = '7.18.0'
DATABASE_VERSION = DATABASE_VERSIONS[0]
DEMO_MODE = False # If activated some options are disabled, login is prefilled
DEBUG = False
Expand Down
4 changes: 2 additions & 2 deletions install.md
Original file line number Diff line number Diff line change
Expand Up @@ -130,7 +130,7 @@ high-quality, attributed digital objects online at scale. Be aware that:

* IIIF is **optional** for an OpenAtlas installation
* Although already working and in use we still consider it **experimental**
* Enabling it can expose used files to the public (without login)
* Enabling IIIF can expose files to the public (without login)

### Installation

Expand Down Expand Up @@ -185,7 +185,7 @@ To run OpenAtlas as a Docker container clone the repository
git clone https://github.com/craws/OpenAtlas.git

Open an CLI in the directory where you cloned OpenAtlas and run

docker compose up --detach

After the containers are build an OpenAtlas instance is available under
Expand Down
17 changes: 15 additions & 2 deletions install/upgrade/upgrade.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,8 @@ then run the database upgrade script, then restart Apache:
#### Configuration
The configuration was refactored, especially path parameters. You should
compare your **instance/production.py** with **config/default.py** in case you
made adaptions to these. The same goes for **instance/tests.py** in case you
are also using tests.
made adaptions there. The same goes for **instance/tests.py** in case you are
running tests.

#### NPM - additional packages

Expand All @@ -37,6 +37,19 @@ are also using tests.
#### IIIF
If you want to use IIIF, please refer to the relevant section at **install.md**

#### Deprecation warnings
Because of the new API version 0.4.0 following functionality is now deprecated.
It will be removed with the next OpenAtlas major version **8.0.0**, probably
around New Year 2024.

**API version 0.4 breaking changes**
* **API:** Remove of /content endpoint
* **API:** Rename name to label in first layer of /type_by_view_class/ and
/type_overview/
* **API:** Incorporate /classes into /backend_details
* **Backend:** Deprecation of the content section in the admin area which was
used by former presentation sites

### 7.15.0 to 7.16.0
7.16.0.sql is needed but will be taken care of by the database upgrade script.

Expand Down
2 changes: 1 addition & 1 deletion openatlas/api/endpoints/special.py
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ def get(format_: str) -> Union[tuple[Resource, int], Response]:
if format_ == 'xml':
return export_database_xml(tables, filename)
return Response(
json.dumps({key: value for key, value in tables.items()}),
json.dumps(tables),
mimetype='application/json',
headers={
'Content-Disposition': f'attachment;filename={filename}.json'})
Expand Down
24 changes: 13 additions & 11 deletions openatlas/api/formats/loud.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@


def get_loud_entities(data: dict[str, Any], loud: dict[str, str]) -> Any:
properties_set = defaultdict(list)

def base_entity_dict() -> dict[str, Any]:
return {
Expand Down Expand Up @@ -42,6 +41,7 @@ def get_domain_links() -> dict[str, Any]:
property_['classified_as'] = get_type_property(standard_type)
return property_

properties_set = defaultdict(list)
for link_ in data['links']:
if link_.property.code in ['OA7', 'OA8', 'OA9']:
continue
Expand Down Expand Up @@ -80,24 +80,26 @@ def get_domain_links() -> dict[str, Any]:

if image_links:
profile_image = Entity.get_profile_image_id(data['entity'])
representation = {"type": "VisualItem", "digitally_shown_by": []}
representation: dict[str, Any] = {
'type': 'VisualItem',
'digitally_shown_by': []}
for link_ in image_links:
id_ = link_.domain.id
suffix = g.files[id_].suffix.replace('.', '')
if not app.config['IMAGE_FORMATS'].get(suffix):
continue # pragma: no cover
image = {
"id": url_for('api.entity', id_=id_, _external=True),
"_label": link_.domain.name,
"type": "DigitalObject",
"format": app.config['IMAGE_FORMATS'][suffix],
"access_point": [{
"id": url_for(
'id': url_for('api.entity', id_=id_, _external=True),
'_label': link_.domain.name,
'type': 'DigitalObject',
'format': app.config['IMAGE_FORMATS'][suffix],
'access_point': [{
'id': url_for(
'api.display',
filename=get_file_path(id_).stem,
filename=get_file_path(id_).stem, # type: ignore
_external=True),
"type": "DigitalObject",
"_label": "ProfileImage" if id_ == profile_image else ''}]}
'type': 'DigitalObject',
'_label': 'ProfileImage' if id_ == profile_image else ''}]}
if type_ := get_standard_type_loud(link_.domain.types):
image['classified_as'] = get_type_property(type_)
representation['digitally_shown_by'].append(image)
Expand Down
15 changes: 10 additions & 5 deletions openatlas/forms/setting.py
Original file line number Diff line number Diff line change
Expand Up @@ -61,13 +61,18 @@ class MailForm(FlaskForm):


class IiifForm(FlaskForm):
iiif = BooleanField('IIIF')
iiif_url = StringField(_('URL'))
iiif_version = SelectField(_('version'), choices=((2, 2),), coerce=int)
iiif = BooleanField('IIIF', description=_('tooltip IIIF enabled'))
iiif_url = StringField(_('URL'), description=_('tooltip IIIF URL'))
iiif_version = SelectField(
_('version'),
choices=((2, 2),),
coerce=int,
description=_('tooltip IIIF version'))
iiif_conversion = SelectField(
_('conversion'),
choices=(('', 'none'), ('deflate', 'deflate'), ('jpeg', 'jpeg')))
iiif_path = StringField(_('path'))
choices=(('', 'none'), ('deflate', 'deflate'), ('jpeg', 'jpeg')),
description=_('tooltip IIIF conversion'))
iiif_path = StringField(_('path'), description=_('tooltip IIIF path'))
save = SubmitField(_('apply'))


Expand Down
Binary file modified openatlas/static/images/model/openatlas_schema.odg
Binary file not shown.
Binary file modified openatlas/static/images/model/openatlas_schema.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified openatlas/static/images/model/openatlas_schema2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified openatlas/static/manual/.doctrees/admin/iiif.doctree
Binary file not shown.
Binary file modified openatlas/static/manual/.doctrees/environment.pickle
Binary file not shown.
Binary file modified openatlas/static/manual/.doctrees/features.doctree
Binary file not shown.
Binary file modified openatlas/static/manual/_images/openatlas_schema.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified openatlas/static/manual/_images/openatlas_schema2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
13 changes: 11 additions & 2 deletions openatlas/static/manual/admin/iiif.html
Original file line number Diff line number Diff line change
Expand Up @@ -201,9 +201,16 @@ <h1>IIIF<a class="headerlink" href="#iiif" title="Permalink to this headline">¶
high-quality, attributed digital objects online at scale. Once installed
(see installations notes) it can be configured in the admin area at the
<strong>IIIF</strong> tab.</p>
<p><strong>Be aware that</strong></p>
<ul class="simple">
<li><p>IIIF is <strong>optional</strong> for an OpenAtlas installation</p></li>
<li><p>Although already working and in use we still consider it <strong>experimental</strong></p></li>
<li><p>Enabling it can <strong>expose</strong> used files to the public (without login)</p></li>
</ul>
<p><strong>Configuration</strong></p>
<ul class="simple">
<li><p><strong>IIIF</strong> - Select this checkbox to enable IIIF</p></li>
<li><p><strong>URL</strong> - Complete URL to the Image API Server, e.g.
<li><p><strong>URL</strong> - Set the complete URL to the Image API Server, e.g.
<strong>https://yourserver.eu/iiif/</strong></p></li>
<li><p><strong>Version</strong> - The manifest version provided by OpenAtlas. Currently only
version 2 is available.</p></li>
Expand All @@ -219,14 +226,16 @@ <h1>IIIF<a class="headerlink" href="#iiif" title="Permalink to this headline">¶
</ul>
</li>
</ul>
<p>In case you are running multiple OpenAtlas instances you should create a sub
directory for every instance at <strong>/var/www/iipsrv/</strong> and also add these to
<strong>URL</strong> and <strong>Path</strong> accordingly.</p>
<p>These formats have been successfully tested with OpenAtlas:</p>
<ul class="simple">
<li><p>.bmp</p></li>
<li><p>.gif</p></li>
<li><p>.ico</p></li>
<li><p>.jpeg</p></li>
<li><p>.jpg</p></li>
<li><p>.pdf</p></li>
<li><p>.png</p></li>
<li><p>.svg</p></li>
<li><p>.tif</p></li>
Expand Down
24 changes: 18 additions & 6 deletions openatlas/static/manual/features.html
Original file line number Diff line number Diff line change
Expand Up @@ -93,9 +93,10 @@
<ul class="current">
<li class="toctree-l1 current"><a class="current reference internal" href="#">Features</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#model">Model</a></li>
<li class="toctree-l2"><a class="reference internal" href="#user-interface">User interface</a></li>
<li class="toctree-l2"><a class="reference internal" href="#data-exchange">Data exchange</a></li>
<li class="toctree-l2"><a class="reference internal" href="#user-management">User management</a></li>
<li class="toctree-l2"><a class="reference internal" href="#user-interface">User Interface</a></li>
<li class="toctree-l2"><a class="reference internal" href="#iiif-integration">IIIF Integration</a></li>
<li class="toctree-l2"><a class="reference internal" href="#data-exchange">Data Exchange</a></li>
<li class="toctree-l2"><a class="reference internal" href="#user-management">User Management</a></li>
<li class="toctree-l2"><a class="reference internal" href="#anthropological-analyses">Anthropological Analyses</a></li>
<li class="toctree-l2"><a class="reference internal" href="#radiocarbon-dating">Radiocarbon Dating</a></li>
</ul>
Expand Down Expand Up @@ -211,7 +212,7 @@ <h2>Model<a class="headerlink" href="#model" title="Permalink to this headline">
</ul>
</div>
<div class="section" id="user-interface">
<h2>User interface<a class="headerlink" href="#user-interface" title="Permalink to this headline"></a></h2>
<h2>User Interface<a class="headerlink" href="#user-interface" title="Permalink to this headline"></a></h2>
<p>The user interface allows for easy and quick entry of information into the
database, while the data is mapped in the background according to the
specifications of the data model (see above).
Expand Down Expand Up @@ -242,8 +243,19 @@ <h2>User interface<a class="headerlink" href="#user-interface" title="Permalink
</ul>
<img alt="_images/ui.png" src="_images/ui.png" />
</div>
<div class="section" id="iiif-integration">
<h2>IIIF Integration<a class="headerlink" href="#iiif-integration" title="Permalink to this headline"></a></h2>
<p><a class="reference external" href="https://iiif.io/">IIIF</a> is a set of open standards for delivering
high-quality, attributed digital objects online at scale. Included
services are:</p>
<ul class="simple">
<li><p>IIIF Image API</p></li>
<li><p>IIIF Presentation API (manifest server)</p></li>
<li><p>IIIF viewer integration (<a class="reference external" href="https://projectmirador.org/">Mirador</a>)</p></li>
</ul>
</div>
<div class="section" id="data-exchange">
<h2>Data exchange<a class="headerlink" href="#data-exchange" title="Permalink to this headline"></a></h2>
<h2>Data Exchange<a class="headerlink" href="#data-exchange" title="Permalink to this headline"></a></h2>
<p>OpenAtlas offers various possibilities to exchange data with other systems or
to import data into the database system.</p>
<ul class="simple">
Expand All @@ -253,7 +265,7 @@ <h2>Data exchange<a class="headerlink" href="#data-exchange" title="Permalink to
</ul>
</div>
<div class="section" id="user-management">
<h2>User management<a class="headerlink" href="#user-management" title="Permalink to this headline"></a></h2>
<h2>User Management<a class="headerlink" href="#user-management" title="Permalink to this headline"></a></h2>
<p>The User Management Features allows the activation of users for the own
OpenAtlas instance. These can also be divided into different user groups with
different permissions. In addition, the user interface can be adapted to the
Expand Down
7 changes: 4 additions & 3 deletions openatlas/static/manual/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -186,9 +186,10 @@ <h1>OpenAtlas manual<a class="headerlink" href="#openatlas-manual" title="Permal
<ul>
<li class="toctree-l1"><a class="reference internal" href="features.html">Features</a><ul>
<li class="toctree-l2"><a class="reference internal" href="features.html#model">Model</a></li>
<li class="toctree-l2"><a class="reference internal" href="features.html#user-interface">User interface</a></li>
<li class="toctree-l2"><a class="reference internal" href="features.html#data-exchange">Data exchange</a></li>
<li class="toctree-l2"><a class="reference internal" href="features.html#user-management">User management</a></li>
<li class="toctree-l2"><a class="reference internal" href="features.html#user-interface">User Interface</a></li>
<li class="toctree-l2"><a class="reference internal" href="features.html#iiif-integration">IIIF Integration</a></li>
<li class="toctree-l2"><a class="reference internal" href="features.html#data-exchange">Data Exchange</a></li>
<li class="toctree-l2"><a class="reference internal" href="features.html#user-management">User Management</a></li>
<li class="toctree-l2"><a class="reference internal" href="features.html#anthropological-analyses">Anthropological Analyses</a></li>
<li class="toctree-l2"><a class="reference internal" href="features.html#radiocarbon-dating">Radiocarbon Dating</a></li>
</ul>
Expand Down
2 changes: 1 addition & 1 deletion openatlas/static/manual/searchindex.js

Large diffs are not rendered by default.

Loading

0 comments on commit dac5479

Please sign in to comment.