Extend OC_Util::needUpgrade to also catch app upgrades
Throw an exception when we try to load an app that needs to be upgraded
handle service not available exceptions in index, remote and public.php
extract upgrade parts to their own methods
Allow loading app without checking the upgrade
Send feedback from upgrading apps to the upgrade ui
Also set the app version when updating from app store
Set maintaince mode when updating an app from the app store
only set core version at the end
Check return of fopen() before using it

Fix #9968
better check whether string resembles a DN, fixes #9887
Remove doubled slash between folder and path
Do not filemtime() on "." directory. Use empty string instead

Fix #9928
Trigger events when app-settings visibility changes
Use global apps slide toggle logic

Remove local app settings slide logic and make it use the global one
triggered by the "data-apps-slide-toggle" attribute.
Fix default quota settings field

The default quota settings field is initially hidden which makes it
impossible for singleSelect() to make its width measurements.

This fix uses the app navigation slide "show" event to defer the
singleSelect() initialization on the default quota field.

Refactored setQuota() into UserList._updateQuota().
Refactored duplicate event handler code into UserList.onQuotaSelect().
Replaced spaces with tabs in apps.js
adjust login test to code changes
make singleselect check for gravity wish, and make it south for default quota
it does not affect gravity on planet earth, but only for tipsy