BibSched: removes forgotten raise Exception
BibCatalog: improve RT search error handling

* Improves the error handling of the BibCatalogSystemRT plugin
  for BibCatalog.

* Now also prints the original stacktrace when BibCatalog deamon
  fails.
DocExtract: extract page-end from references

* RefExtract preserves page-end, also added
  extract_journal_reference() function to get reference data
  from single strings.

Reviewed-by: Alessio Deiana <alessio.deiana@cern.ch>
Tested-by: Jan Aage Lavik <jan.age.lavik@cern.ch>
BibClassify: always use invenio code

* We remove duplicate code and at the same time make sure that any future
  improvement to encode_for_xml and make_user_agent_string
  won't be silently ignored.
BibRank: fixes ranking of the records without citations
BibAuthorID: fix 'create new person' ticketing issue

* Administrators with an associated profiles can now properly
  create new persons

* Fix in ticket display
WebSearch: add more info on verbose output
BibDocFile: preferred extension

* When guessing the extension of a file though the
  usage of the magic library and the mimetypes module,
  allow to specify the preferred extension for a
  given guessed mimetype in order to avoid picking up
  a random one from the multiple extensions proposed
  by the mimetype library.
  (closes #1619)

* Introduces CFG_BIBDOCFILE_PREFERRED_MIMETYPES_MAPPING
  new configuration parameter in order to tune the
  above mentioned functionality.

Signed-off-by: Samuele Kaplun <samuele.kaplun@cern.ch>
Reported-by: Tibor Simko <tibor.simko@cern.ch>
BibIndex: special journal page handling

* Improves the standard Journal tokenizer to keep page-end
  when indexing, as well as adding new journal,volume pairs.

* Amends the search_engine to specially handle searches in
  the journal field with page ranges to make use of the new
  tokenized strings. This fixes issues seen in BibRank and
  other search engine clients that passes a valid full page
  range and obtains no result (because it was not indexed!).

Co-authored-by: Alessio Deiana <alessio.deiana@cern.ch>
WebSearch: special journal search fallback

* For certain journal search queries with INSPIRE style page
  ranges the user is now presented with an alternative
  result without the page-end part of the query, should the
  original query return no results.

Co-authored-by: Alessio Deiana <alessio.deiana@cern.ch>
BibRank: adds a new option to disable bibsort

* Adds CFG_BIBSORT_ENABLE which allows us to disable bibsort in the search
  engine while keeping the ability to run the bibsort daemon.
  (closes #1617)

Conflicts:
	modules/websearch/lib/search_engine.py
BibSched: subdirs for bibsched logs

* Splits bibsched logs in subdirs so that do not hit the max number
  of file in the filesystem. Each 10k tasks a new directory is created.
  e.g. for task id 12040 the log will be stored in
       var/log/bibsched/1/bibsched_task_12040.{log,err}
  This happens a lot on AFS were the limit is around 20k.
BibCheck: improvements in DOI checks

* Sends only start page to crossref, not the range
BibMatch: New result_mode 'fuzzy' added