horizon/openstack_dashboard/static/app/redirect.controller.js

51 lines
1.5 KiB
JavaScript

/*
* Licensed under the Apache License, Version 2.0 (the 'License');
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an 'AS IS' BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
(function () {
'use strict';
angular
.module('horizon.app')
.controller('RedirectController', RedirectController);
RedirectController.$inject = [
'$window',
'$location',
'horizon.framework.util.i18n.gettext',
'horizon.framework.widgets.modal-wait-spinner.service'
];
/**
* @ngdoc controller
* @name RedirectController
*
* @description
* Controller to redirect to current location.
* It forces a reload from the server when the clicked link doesn't match
* an current Angular route configured in the $routeProvider Service.
*
* This controller is used in the 'otherwise' of the $routeProvider Service.
* It gives the Django code a chance to try and find a matching template for the requested URL.
*/
function RedirectController(
$window,
$location,
gettext,
waitSpinnerService
) {
waitSpinnerService.showModalSpinner(gettext('Loading'));
$window.location.href = $location.absUrl();
}
}());