WebSearch: CERN-specific collection sorting

* Sorts 'CERN Courier Issues/Articles' and 'CERN Bulletin
  Issues/Articles' collections by 773__y field in WebColl.
  (closes #2017)

Signed-off-by: Sebastian Witowski <sebastian.witowski@cern.ch>
Reviewed-by: Tibor Simko <tibor.simko@cern.ch>
Websearch: include 'cc' in RSS <channel>'s <link>

* If the 'cc' collection is defined when producing the RSS feed then
  it's included in the <link> tag under the <channel> tag.
  (closes #2013) (closes #2014)

Signed-off-by: Nikolaos Kasioumis <nikolaos.kasioumis@cern.ch>
Reviewed-by: Tibor Simko <tibor.simko@cern.ch>
template: @template_args decorator addition

* Adds new decorator to allow overwritting template context functions by
  endpoint.  (closes #2009)

Signed-off-by: Jiri Kuncar <jiri.kuncar@cern.ch>
general: defaultdict fix

* Replaces defaultdict with collections.defaultdict.  (addresses #2030)

Signed-off-by: Eirini Psallida <eirini.psallida@cern.ch>
Reviewed-by: Jiri Kuncar <jiri.kuncar@cern.ch>
messages: require.js messages

* Refactors the messages/add template to use require.js.

* Loads jQuery UI modules individually.

* Fixes the jquery timepicker add-on shim.

* Moves bootstrap.js back into jquery bundle.

Signed-off-by: Yoan Blanc <yoan.blanc@cern.ch>
base: bundles documentation

Signed-off-by: Yoan Blanc <yoan.blanc@cern.ch>
accounts: require.js refactoring

Signed-off-by: Yoan Blanc <yoan.blanc@cern.ch>
search: require.js refactoring

Signed-off-by: Yoan Blanc <yoan.blanc@cern.ch>
search: affix width fix

* Fixes issue with affix loosing its width once removed from the DOM.
  This caused long facet names to extend into the search results.

Signed-off-by: Lars Holm Nielsen <lars.holm.nielsen@cern.ch>
Reviewed-by: Jiri Kuncar <jiri.kuncar@cern.ch>
installation: relax version number constraints

* Relaxes all the hard constraints on version numbers.

* Comments that Cerberus 0.7.1 will fail.

* Comments Flask-OAuth>=0.5 to be known to fail.

* Comments pyparsing 2.0.2 to be known to fail.

* Comments SQLAlchemy-Utils >0.24 to be depending on SQLAlchemy>=0.9.3.

Signed-off-by: Yoan Blanc <yoan.blanc@cern.ch>
installation: Flask-OAuthlib 0.6 upgrade

* Upgrades Flask-OAuthlib to v0.6.

* Adds '/' to the endpoints that need it in the test_provider.

* Uses the url_for in some functions in helpers testsuite in order to
  not hardcode the url.

* Fixes some PEP257 issues.

* NOTE require_api_auth no longer passes oauth request as view
  arguments. Instead user request.oauth to access oauth request.

Signed-off-by: Konstantinos Kostis <konstantinos.kostis@cern.ch>
Reviewed-by: Lars Holm Nielsen <lars.holm.nielsen@cern.ch>
deposit: Flask-OAuthlib upgrade fix

* Fixes API changes related to Flask-OAuthlib upgrade.

* Some PEP257 love.

Co-authored-by: Lars Holm Nielsen <lars.holm.nielsen@cern.ch>
Signed-off-by: Konstantinos Kostis <konstantinos.kostis@cern.ch>
Reviewed-by: Lars Holm Nielsen <lars.holm.nielsen@cern.ch>
documents: Flask-OAuthlib upgrade fix

* Fixes API changes related to Flask-OAuthlib upgrade.

* Some PEP257 love.

Co-authored-by: Lars Holm Nielsen <lars.holm.nielsen@cern.ch>
Signed-off-by: Konstantinos Kostis <konstantinos.kostis@cern.ch>
Reviewed-by: Lars Holm Nielsen <lars.holm.nielsen@cern.ch>
webhooks: Flask-OAuthlib upgrade fix

* Fixes API changes related to Flask-OAuthlib upgrade.

* Some PEP257 love.

Signed-off-by: Konstantinos Kostis <konstantinos.kostis@cern.ch>
Reviewed-by: Lars Holm Nielsen <lars.holm.nielsen@cern.ch>
tags: Flask-OAuthlib upgrade fix

* Fixes API changes related to Flask-OAuthlib upgrade.

Signed-off-by: Konstantinos Kostis <konstantinos.kostis@cern.ch>
Reviewed-by: Lars Holm Nielsen <lars.holm.nielsen@cern.ch>
base: user 'Login' and 'Register' button  addition

* Shows the 'Register' button if the value of
  'CFG_ACCESS_CONTROL_LEVEL_ACCOUNTS' is 0 or 1. (addresses #1943)

Signed-off-by: Eirini Psallida <eirini.psallida@cern.ch>
base: global tooltip activation

Signed-off-by: Yoan Blanc <yoan.blanc@cern.ch>
docs: missing subversion dependency

Signed-off-by: Charalampos Tzovanakis <drjova@cern.ch>
Reviewed-by: Lars Holm Nielsen <lars.holm.nielsen@cern.ch>
utils: removal of duplicate `SmartDict` definition

* Removes duplicate `SmartDict` class definition. (closes #2031)

Signed-off-by: Esteban J. G. Gabancho <esteban.gabancho@gmail.com>
Acked-by: Jiri Kuncar <jiri.kuncar@cern.ch>
records: fix for document default name generator

* Adds catching exceptions around `os.makedirs`.

Signed-off-by: Esteban J. G. Gabancho <esteban.gabancho@gmail.com>
Reviewed-by: Jiri Kuncar <jiri.kuncar@cern.ch>