Skip to content

Commit

Permalink
Updated readme.
Browse files Browse the repository at this point in the history
  • Loading branch information
Daniel-KM committed Jul 6, 2020
1 parent db3421b commit 6b014de
Showing 1 changed file with 55 additions and 20 deletions.
75 changes: 55 additions & 20 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,17 +32,9 @@ The search is provided by the module [Iiif Search] for common xml formats.
Installation
------------

PHP should be installed with the extension `exif` in order to get the size of
images. This is the case for all major distributions and providers. At least one
of the php extensions [`GD`] or [`Imagick`] are recommended. They are installed
by default in most servers. If not, the image server will use the command line
[ImageMagick] tool `convert`.
### Module

An image server is required to display the images. It can be the module [Image Server],
or any other IIIF compliant image server.

Note: To keep old options from [Universal Viewer], upgrade it to version 3.4.3
before enabling of IiifServer. Else, simply set them in the config form.
Installation can be done:

* From the zip

Expand All @@ -53,20 +45,63 @@ directory, and rename the module folder `IiifServer`.
* From the source and for development:

If the module was installed from the source, check if the name of the folder of
the module is `IiifServer`, go to the root of the module, and run either:
the module is `IiifServer`, go to the root of the module, and run:

```
composer install
```sh
composer install --no-dev
```

Then install it like any other Omeka module.

Note: To keep old options from [Universal Viewer], upgrade it to version 3.4.3
before enabling of IiifServer. Else, simply set them in the config form.

### Image server

An image server is required to display the images. It can be the module [Image Server],
or any other IIIF compliant image server. The image server is used to display
audio and video files too.

### PHP

PHP should be installed with the extension `exif` in order to get the size of
images. This is the case for all major distributions and providers. At least one
of the php extensions [`GD`] or [`Imagick`] are recommended. They are installed
by default in most servers. If not, the image server will use the command line
[ImageMagick] tool `convert` automatically.

### Web server and identifiers containing `/`

This point is related to Apache. If you are using nginx, you can skip it.

If you are using Ark as identifier for items and IIIF manifests (through the
modules [Clean Url] and optionally [Ark]), or any other identifier that contains
a forward slash `/`, you must modify the Apache system configuration, because by
default, [it doesn't allow the url encoded `/`] (`%2F`) inside urls for an old
security issue.

Indeed, an Ark identifier contains at least two forward slashes `/` (`ark:/12345/bNw3sx`)
and the IIIF specification requires to use [url encoded slashes], except for the
colon `:` (`ark:%2F12345%2FbNw3sx`). More precisely, this iiif requirement is
specified in the Image Api, not in the presentation Api, but the identifiers are
used in the same way.

```Apache
AllowEncodedSlashes NoDecode
```

If you cannot access to config of the server, two settings can fix it in the
config of the module :
- disable the advanced option "Use the identifiers from Clean Url";
- set the "Prefix to use for identifier".


Notes
-----

The module allows to manage collections (item set level/item list), manifests
(item level), and info.json (media level).
The module allows to manage collections (item set level/item list), and
manifests (item level). The info.json (media level) are managed by the image
server.

### Using externally supplied IIIF manifest

Expand Down Expand Up @@ -107,8 +142,8 @@ All the combinations are possible: external manifest for items, iiif image for
external medias, a local standard media file with module Image Server.


IIIF Server
-----------
Routes and urls
---------------

All routes of the IIIF server are defined in `config/module.config.php`.
They follow the recommandations of the [IIIF specifications].
Expand Down Expand Up @@ -136,6 +171,7 @@ named number like in a library or a museum, isbn for books, or random id like
with ark, noid, doi, etc. They can be displayed in the public url with the
modules [Ark] and/or [Clean Url].


3D models
---------

Expand Down Expand Up @@ -191,9 +227,6 @@ TODO / Bugs
- Implements ArrayObject to all classes to simplify events.
- When a item set contains non image items, the left panel with the index is
displayed only when the first item contains an image (UV).
- Fetch image data from the third party image server and use them to build the
manifest in real time (if not too many attached media), or save it as a iiif
media.
- Use the option "no storage" for url of a media for external server.
- Job to update data of [IIIF Image].

Expand Down Expand Up @@ -270,6 +303,8 @@ First version of this plugin was built for the [Bibliothèque patrimoniale] of
[`Imagick`]: https://php.net/manual/en/book.imagick.php
[ImageMagick]: https://www.imagemagick.org/
[`IiifServer.zip`]: https://github.com/Daniel-KM/Omeka-S-module-IiifServer/releases
[it doesn't allow the url encoded `/`]: https://stackoverflow.com/questions/13834007/url-with-encoded-slashes-goes-to-404/13839424#13839424
[url encoded slashes]: https://iiif.io/api/image/3.0/#9-uri-encoding-and-decoding
[official list]: https://github.com/IIIF/awesome-iiif/#image-servers
[internal image server]: #image-server
[Universal Viewer]: https://github.com/Daniel-KM/Omeka-S-module-UniversalViewer
Expand Down

0 comments on commit 6b014de

Please sign in to comment.