legacy: indexer recjson value fix

* Prevents BibIndex to crash when indexing `recjson` values.
  (closes #2285)

* Fixes problem with unicode strings.

Signed-off-by: Esteban J. G. Gabancho <esteban.gabancho@gmail.com>
workflows: object navigation

* Adds buttons for going to previous/next object from the main table
  in the Holding Pen detailed display. The previous/next functionality
  is based from the state of the main table order.

Co-authored-by: Jan Aage Lavik <jan.age.lavik@cern.ch>
Signed-off-by: Georgios Papoutsakis <georgios.papoutsakis@cern.ch>
workflows: static function usage

* Uses static function to create `BibWorkflowObject` instead of
  instantiating directly in `start_workflows()` function.

Signed-off-by: Jan Aage Lavik <jan.age.lavik@cern.ch>
Reviewed-by: Jiri Kuncar <jiri.kuncar@cern.ch>
workflows: update of MARC views

* Updates the HTML, RAW and MARC views in the details page.

Signed-off-by: Georgios Papoutsakis <georgios.papoutsakis@cern.ch>
workflows: detailed workflow task list

* Calculates the path of tasks that workflow has
  followed and represents it on Holding Pen detailed record display
  with different colors for completed, current and remaining tasks.

* Task names to display are chosen from the description attributes
  of the task, if not present from the first line of the docstring,
  if still not present, the function name is finally used.

* Adds a decorator to pass the attributes (docstring, name) of a
  function to its closure.

Tested-by: Jan Aage Lavik <jan.age.lavik@cern.ch>
Signed-off-by: Georgios Papoutsakis <georgios.papoutsakis@cern.ch>
workflows: PEP8 fixes

Signed-off-by: Georgios Papoutsakis <georgios.papoutsakis@cern.ch>
workflows: signals addition

* Adds signals to workflows for when a workflow is started, halted
  and finished.

Reviewed-by: Jan Aage Lavik <jan.age.lavik@cern.ch>
Signed-off-by: Georgios Papoutsakis <georgios.papoutsakis@cern.ch>
workflows: classifier task result addition

* Adds task result template for classifier/BibClassify to show
  extracted keywords etc. in Holding Pen.

Signed-off-by: Georgios Papoutsakis <georgios.papoutsakis@cern.ch>
workflows: task history fix

* Fixes a problem with an exception happening when loading the
  task history when workflow no longer exists.

Signed-off-by: Jan Aage Lavik <jan.age.lavik@cern.ch>
workflows: formatted data from model

* Moves the logic of properly formatting and escaping the data
  from the BibWorkflowObject in Holding Pen from the blueprint
  to the model.

Reported-by: Jiri Kuncar <jiri.kuncar@cern.ch>
Signed-off-by: Jan Aage Lavik <jan.age.lavik@cern.ch>
workflows: classifier result update

* Simplifies and updates the task result template of classifier
  to follow template guidelines.

* Updates the full_doc_process workflow to run classifier task.

* Fixes the look-up of system numbers in quick_match_record task
  to the correct one.

Signed-off-by: Jan Aage Lavik <jan.age.lavik@cern.ch>
OAIHarvest: workflows in admin

* Adds the workflows colomn in the legacy admin interface.

Signed-off-by: Jan Aage Lavik <jan.age.lavik@cern.ch>
oaiharvester: initial upgrade

* Adds initial upgrade script from Invenio v1.x for oaiharvester module.

* Updates the workflows column with default and `NOT NULL`.

Signed-off-by: Jan Aage Lavik <jan.age.lavik@cern.ch>
oaiharvester: workflows integration

* NOTE Adds default workflows and tasks for OAI harvesting which
  is now required to run OAI harvest. A working Celery worker is
  necessary to run harvests.

* NOTE Moves harvesting specific tasks, tests and workflows from
  workflows module to oaiharvester module. If you have used any of
  these tasks or workflows in your workflow configuration you need
  to amend your imports.

* Adds warnings and help messages on OAI Admin display.

Signed-off-by: Jan Aage Lavik <jan.age.lavik@cern.ch>

Conflicts:
	invenio/modules/workflows/definitions.py
workflows: field name change

* Updates the tasks to use the correct field name
  "system_control_number".

Signed-off-by: Jan Aage Lavik <jan.age.lavik@cern.ch>
oaiharvester: workflows integration

* NOTE Adds default workflows and tasks for OAI harvesting which
  is now required to run OAI harvest. A working Celery worker is
  also necessary to run harvests.

* NOTE Moves harvesting specific tasks, tests and workflows from
  workflows module to oaiharvester module. If you have used any of
  these tasks or workflows in your workflow configuration you need
  to amend your imports.

* Adds warnings and help messages on OAI Admin display.

Signed-off-by: Jan Aage Lavik <jan.age.lavik@cern.ch>

Conflicts:
	invenio/modules/oaiharvester/tasks/harvesting.py
	invenio/modules/oaiharvester/tasks/postprocess.py
	invenio/modules/workflows/tasks/marcxml_tasks.py
BibRecord: tmp commit from Jiri to fix xml tools