sorter: multiple tag sorting fixes

* Fixes issue in sorting according to multiple MARC tags.

* Fixes issue with ordering of sorted records as well as handling of
  unsorted records.

* Fixes record slicing issue using 1-indexed value instead of
  0-indexed value.

* Adds generic method to decide whether to rank or sort records and
  changes facets to use this method.

* Adds two configuration variables to control default sort field and
  order.

Signed-off-by: Lars Holm Nielsen <lars.holm.nielsen@cern.ch>
communities: featured community UI problems fixup

* Fixes the `Curate` button link and the translated string
  for the empty collection.

Reviewed-by: Jiri Kuncar <jiri.kuncar@cern.ch>
Signed-off-by: Adrian Pawel Baran <adrian.pawel.baran@cern.ch>
alerts: PEP8/257 improvements in models

Signed-off-by: Jiri Kuncar <jiri.kuncar@cern.ch>
search: UserQuery relationship addition

Signed-off-by: Jiri Kuncar <jiri.kuncar@cern.ch>
authors: initial release

* Initial module structure.

* Introduces SQLAlchemy models for Publication, Author, Signature and
  Citation.

* Introduces claiming operations on signatures.

* Adds citation association table.

* Tests for models.

Signed-off-by: Artem Tsikiridis <artem.tsikiridis@cern.ch>
Co-authored-by: Gilles Louppe <gilles.louppe@cern.ch>
Co-authored-by: Mateusz Susik <mateusz.susik@cern.ch>
Co-authored-by: Evangelos Tzemis <evangelos.tzemis@cern.ch>
installation: Flask-Admin>=1.0.9

* Uses official released version of Flask-Admin>=1.0.9.  (closes #1797)

Signed-off-by: Jiri Kuncar <jiri.kuncar@cern.ch>
utils: orcid validation enhancement

* Adds support for identifying ORCIDs in URLs.

* Adds support for normalizing ORCIDs.

* Fixes issue in generating URLs for ORCIDs.

Signed-off-by: Lars Holm Nielsen <lars.holm.nielsen@cern.ch>
oairepository: date overflow fix

* Fixes issue with max date overflow when in e.g. US timezones.

Signed-off-by: Lars Holm Nielsen <lars.holm.nielsen@cern.ch>
previewer: markdown rendering

* Adds support for previewing Markdown files.

Signed-off-by: Lars Holm Nielsen <lars.holm.nielsen@cern.ch>
formatter: mimetype fix

* Fixes use of uppercase in mimetype.

Signed-off-by: Lars Holm Nielsen <lars.holm.nielsen@cern.ch>
upgrader: bibsched precheck removal

* Removes broken bibsched upgrader pre-check which is also
  unnecessarily slow.

Signed-off-by: Lars Holm Nielsen <lars.holm.nielsen@cern.ch>
oauth2server: form field order

* Changes ordering of fields in client form.

* Adds extra documentation for public vs confidential clients.

Signed-off-by: Lars Holm Nielsen <lars.holm.nielsen@cern.ch>
oauth2server: upgrade recipe fix

* Fixes issue with upgrade recipe not encrypting access tokens when
  a refresh token was not issued.

Signed-off-by: Lars Holm Nielsen <lars.holm.nielsen@cern.ch>
oauth2server: url decoding fix

* Relax URL decoding. Oauthlib enforces very strict URL decoding,
  which causes troubles for end-users, thus Flask's URL decoding
  is used to properly reencode the request URL for oauthlib.

Signed-off-by: Lars Holm Nielsen <lars.holm.nielsen@cern.ch>
accounts: upgrade fix

* Fixes robustness issue in upgrade recipe.

Signed-off-by: Lars Holm Nielsen <lars.holm.nielsen@cern.ch>
deposit: pid processor normalization enhancement

* Adds support in pid normalization post-processor for specifying
  and/or detecting the scheme.

Signed-off-by: Lars Holm Nielsen <lars.holm.nielsen@cern.ch>
deposit: edit robustness

* Disables edit button when deposition state does not allow for
  editing, as well as flashes a message if a user still tries to
  access the URL.

Signed-off-by: Lars Holm Nielsen <lars.holm.nielsen@cern.ch>
deposit: object creation fix

* Fixes issue with created database objects not having the type
  defined.

Signed-off-by: Lars Holm Nielsen <lars.holm.nielsen@cern.ch>
deposit: snapshot object fix

* Fixes issue with snapshots of workflow objects being accessible via
  the deposit interface.

Signed-off-by: Lars Holm Nielsen <lars.holm.nielsen@cern.ch>
bibdocfile: pdfjs previewer fix

* Fixes issues with files being loaded over http instead of https.

Signed-off-by: Lars Holm Nielsen <lars.holm.nielsen@cern.ch>