batchuploader: import fix

* Fixes invalid import statement.  (addresses #1779)

Reported-by: Petr Broz <petr.broz@gmail.com>
Signed-off-by: Jiri Kuncar <jiri.kuncar@cern.ch>
global: fix legacy static files includes

* Addresses issue with broken style and javascript on several legacy
  pages.  (addresses #1777)

Reported-by: Petr Broz <petr.broz@gmail.com>
Signed-off-by: Jiri Kuncar <jiri.kuncar@cern.ch>
base: PEP8 and PEP257 clean-up in factory

Signed-off-by: Jiri Kuncar <jiri.kuncar@cern.ch>
base: fix for wsgi PATH_INFO handling

* Addresses issue with url encoded arguments in Flask routes. E.g. for
  route `/collection/<name>` the view argument `name` was not unescaped
  when accessed by `/collection/Books%20%26%20Reports` on Apache and
  this led to error during lookup in database.  (closes #1823)

Reported-by: Petr Broz <petr.broz@gmail.com>
Signed-off-by: Jiri Kuncar <jiri.kuncar@cern.ch>
search: fix browse pagination links

* Addresses issue with browsing results using next/prev links without
  field name.  (closes #1824)

Co-authored-by: Petr Broz <petr.broz@gmail.com>
Signed-off-by: Jiri Kuncar <jiri.kuncar@cern.ch>
installation: mercurial addition

* Adds mercurial to the list of dependencies for installation
  in INSTALL guide after 787b62e8.

Signed-off-by: Jan Aage Lavik <jan.age.lavik@cern.ch>
deposit: assets import clean-up

* Changes js and css import to use url_for.  (closes #1817)

Signed-off-by: Kamil Neczaj <kamil.neczaj@cern.ch>
Co-authored-by: Jiri Kuncar <jiri.kuncar@cern.ch>
Reviewed-by: Javier Martin Montull <javier.martin.montull@cern.ch>
assets: Flask-Assets update to 0.10.dev

Signed-off-by: Yoan Blanc <yoan.blanc@cern.ch>
assets: requirejs and uglifyjs

* Enables two more filters.

* Enables modular JavaScript applications with AMD structuring.

Signed-off-by: Yoan Blanc <yoan.blanc@cern.ch>
jsonalchemy: hotfix for optional fields

* Fixes an unexpected behaviour which happen when a field in the
  conversion sheet is not present in the marcxml (e.g. email).  When
  marcxml is transformed to dict everything is fine, but when it is
  converted back to marcxml, it will get into an infinite loop because
  the field is not present in the dict. Hence it will try to eval the
  field and it will end in an infinite import loop.

Signed-off-by: Guillaume Lastecoueres <guillaume.lastecoueres@cern.ch>
Reviewed-by: Jiri Kuncar <jiri.kuncar@cern.ch>
jsonalchemy: unit tests for module import fix

* Adds a field to fields.cfg, which is a name of module.

* Adds a test that will try to convert a marcxml to json
  and then from json to marcxml. In this test email is
  a field which is not present in the marcxml, and then
  bibfield will try to import it like a module.

Signed-off-by: Guillaume Lastecoueres <guillaume.lastecoueres@cern.ch>
Reviewed-by: Jiri Kuncar <jiri.kuncar@cern.ch>
base: requirejs bundle ordering fix

Signed-off-by: Yoan Blanc <yoan.blanc@cern.ch>
Multimedia intro
yolo