[ticket/11305] Check for $cache being null before using it in db drivers.

There is no reason why db drivers must have a cache to work.
They query the database, that part works without caches.

PHPBB3-11305
[ticket/11305] Mock container for cache driver in functional create_user()

create_user has calls to fetch the cache driver from the container. This
PR mocks the container and returns a null cache driver in that case.

PHPBB3-11305
Merge remote-tracking branch 'p/ticket/11305' into develop

* p/ticket/11305:
  [ticket/11305] Mock container for cache driver in functional create_user()
  [ticket/11305] Check for $cache being null before using it in db drivers.
  [ticket/11305] Define hook finder as a service on the container.
  [ticket/11305] Adjust comment.
  [ticket/11305] Use phpbb_create_default_container.
  [ticket/11305] Create a normal container during final installation step.
  [ticket/11305] Retrieve cache driver from container rather than cache service.
  [ticket/11305] Extract hook finder from cache service.
[ticket/11302] Correctly select first timezone or selected timezone

While registering, we should default to a given timezone. By selecting the
first timezone by default, this is fulfilled. This doesn't happen
currently, as only the "Select a timezone" selection appears.
If a user selects a timezone during the registration process we should
also make sure that the selected element is still selected; even if we
have to return to the registration page, i.e. if there was an error while
submitting the form. This is currently not the case.
With this patch the javascript code will behave correctly.
Additionally, a duplicate inclusion of timezone.js has been removed as it
was not needed.

PHPBB3-11302
Merge PR #1176 branch 'marc1706/ticket/11302' into develop

# By Marc Alexander
# Via Marc Alexander
* marc1706/ticket/11302:
  [ticket/11302] Correctly select first timezone or selected timezone
Merge PR #1153 branch 'marc1706/ticket/10805' into develop

# By Marc Alexander
# Via Marc Alexander
* marc1706/ticket/10805:
  [ticket/10805] Compare phpbbAlertTimer against null
  [ticket/10805] Clear loading alert timeout after ajax request finished
Merge remote-tracking branch 'erikfrerejean/ticket/11283' into develop

* erikfrerejean/ticket/11283:
  [ticket/11283] Extension manager follow symlinks.
[feature/avatars] Inform user of no available local avatars

Rather than showing the user an empty drop-down list for the local avatar
categories, inform him/her that there are currently no (local) avatars
available.

PHPBB3-10018
Merge branch 'develop' of https://github.com/phpbb/phpbb3 into feature/avatars

Conflicts:
	phpBB/includes/ucp/ucp_groups.php
[feature/avatars] Add phpbb prefix to new functions

Although get_user_avatar() is not new, the phpbb prefix was prepended. This
is due to the fact that it was entirely rewritten and is therefore more or
less a completely new function.

PHPBB3-10018
[feature/avatars] Improve handling of incorrect input for avatars

The upload avatar driver will now inform the user if insufficient data has
been entered for both remote and local avatar uploads.
The local avatar driver (gallery avatar) will also inform the user if he
didn't select a category and/or file before submitting.

PHPBB3-10018
[feature/avatars] Change avatar javascript to conform to new coding guidelines

PHPBB3-10018
Merge remote-tracking branch 'callumacrae/ticket/10949' into ticket/10949

Conflicts:
	phpBB/assets/javascript/core.js
[ticket/10949] Converted missing code to new JS coding guidelines

A few missing semi-colons were also added where needed.

PHPBB3-10949
[ticket/11309] phpbb_extension_interface::disable_step correct docblock.

The `@return` documentation of the `phpbb_extension_interface::disable_step`
method states incorrect that the method returns null, as it returns
false or a state.

PHPBB3-11309
Merge PR #1177 branch 'erikfrerejean/ticket/11309' into develop

# By Erik Frèrejean
# Via Erik Frèrejean
* erikfrerejean/ticket/11309:
  [ticket/11309] phpbb_extension_interface::disable_step correct docblock.
[ticket/10949] Remove not needed comma

This comma might actually cause issues in browser. Therefore remove it.

PHPBB3-10949
[ticket/11311] Include asset core.js in subsilver2 overall_footer.html

Without the inclusion of core.js the timezone functions will not properly
work. They refer to phpbb which is defined in core.js.

PHPBB3-11311
[feature/avatars] Add missing docblocks to avatar manager

PHPBB3-10018
Merge remote-tracking branch 'marc1706/ticket/11311' into develop

* marc1706/ticket/11311:
  [ticket/11311] Include asset core.js in subsilver2 overall_footer.html