mirror of
https://salsa.debian.org/freeipa-team/freeipa.git
synced 2025-02-25 18:55:28 -06:00
webui: load page
Load page is a simple facet which is displayed up to 'runtime' phase. On application start it tells the user that there is ongoing activity. https://fedorahosted.org/freeipa/ticket/3903 Reviewed-By: Adam Misnyovszki <amisnyov@redhat.com>
This commit is contained in:
@@ -238,7 +238,8 @@
|
|||||||
"aci",
|
"aci",
|
||||||
"otptoken",
|
"otptoken",
|
||||||
"radiusproxy",
|
"radiusproxy",
|
||||||
"user"
|
"user",
|
||||||
|
"plugins.load"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -30,3 +30,21 @@
|
|||||||
padding: 2px 0;
|
padding: 2px 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
body {
|
||||||
|
background-color: #1D2226;
|
||||||
|
background-image: url("../images/login-screen-background.jpg");
|
||||||
|
background-position: top left;
|
||||||
|
background-size: auto;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (min-width: 1280px) {
|
||||||
|
body {
|
||||||
|
background-size: 100% auto;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#container {
|
||||||
|
background-color: white;
|
||||||
|
}
|
||||||
1
install/ui/less/plugins/load_page.less
Normal file
1
install/ui/less/plugins/load_page.less
Normal file
@@ -0,0 +1 @@
|
|||||||
|
|
||||||
@@ -31,12 +31,13 @@ define([
|
|||||||
'./widgets/App',
|
'./widgets/App',
|
||||||
'./widgets/FacetContainer',
|
'./widgets/FacetContainer',
|
||||||
'./ipa',
|
'./ipa',
|
||||||
|
'./reg',
|
||||||
'./navigation/Menu',
|
'./navigation/Menu',
|
||||||
'./navigation/Router',
|
'./navigation/Router',
|
||||||
'./navigation/menu_spec'
|
'./navigation/menu_spec'
|
||||||
],
|
],
|
||||||
function(declare, lang, array, Deferred, on, topic, query, dom_class,
|
function(declare, lang, array, Deferred, on, topic, query, dom_class,
|
||||||
JSON, App_widget, FacetContainer, IPA, Menu, Router, menu_spec) {
|
JSON, App_widget, FacetContainer, IPA, reg, Menu, Router, menu_spec) {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Application controller
|
* Application controller
|
||||||
@@ -113,6 +114,8 @@ define([
|
|||||||
this.app_widget.hide();
|
this.app_widget.hide();
|
||||||
simple_container.render();
|
simple_container.render();
|
||||||
simple_container.hide();
|
simple_container.hide();
|
||||||
|
var load_facet = reg.facet.get('load');
|
||||||
|
this.show_facet(load_facet);
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -154,8 +157,12 @@ define([
|
|||||||
start_runtime: function() {
|
start_runtime: function() {
|
||||||
this.run_time = new Deferred();
|
this.run_time = new Deferred();
|
||||||
|
|
||||||
|
// hide load or login facets
|
||||||
|
this.hide_facet();
|
||||||
|
|
||||||
IPA.update_password_expiration();
|
IPA.update_password_expiration();
|
||||||
|
|
||||||
|
|
||||||
// now we are ready for displaying a facet,
|
// now we are ready for displaying a facet,
|
||||||
// it can match a facet if hash is set
|
// it can match a facet if hash is set
|
||||||
this.router.startup();
|
this.router.startup();
|
||||||
@@ -282,7 +289,10 @@ define([
|
|||||||
},
|
},
|
||||||
|
|
||||||
on_facet_show: function(event) {
|
on_facet_show: function(event) {
|
||||||
var facet = event.facet;
|
this.show_facet(event.facet);
|
||||||
|
},
|
||||||
|
|
||||||
|
show_facet: function(facet) {
|
||||||
|
|
||||||
// choose container
|
// choose container
|
||||||
var container = this.containers[facet.preferred_container];
|
var container = this.containers[facet.preferred_container];
|
||||||
@@ -307,11 +317,18 @@ define([
|
|||||||
facet.container_node = container.widget.content_node;
|
facet.container_node = container.widget.content_node;
|
||||||
on(facet, 'facet-state-change', lang.hitch(this, this.on_facet_state_changed));
|
on(facet, 'facet-state-change', lang.hitch(this, this.on_facet_state_changed));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
this.hide_facet();
|
||||||
|
this.current_facet = facet;
|
||||||
|
facet.show();
|
||||||
|
},
|
||||||
|
|
||||||
|
hide_facet: function() {
|
||||||
|
|
||||||
if (this.current_facet) {
|
if (this.current_facet) {
|
||||||
this.current_facet.hide();
|
this.current_facet.hide();
|
||||||
}
|
}
|
||||||
this.current_facet = facet;
|
this.current_facet = null;
|
||||||
facet.show();
|
|
||||||
},
|
},
|
||||||
|
|
||||||
_find_menu_item: function(facet) {
|
_find_menu_item: function(facet) {
|
||||||
|
|||||||
@@ -19,9 +19,10 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
define([
|
define([
|
||||||
//core
|
// core
|
||||||
'./app_container',
|
'./app_container',
|
||||||
//entities
|
'./plugins/load_page',
|
||||||
|
// entities
|
||||||
'./aci',
|
'./aci',
|
||||||
'./automember',
|
'./automember',
|
||||||
'./automount',
|
'./automount',
|
||||||
|
|||||||
65
install/ui/src/freeipa/plugins/load_page.js
Normal file
65
install/ui/src/freeipa/plugins/load_page.js
Normal file
@@ -0,0 +1,65 @@
|
|||||||
|
/* Authors:
|
||||||
|
* Petr Vobornik <pvoborni@redhat.com>
|
||||||
|
*
|
||||||
|
* Copyright (C) 2013 Red Hat
|
||||||
|
* see file 'COPYING' for use and warranty information
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
define([
|
||||||
|
'dojo/_base/declare',
|
||||||
|
'dojo/_base/lang',
|
||||||
|
'dojo/on',
|
||||||
|
'../facets/Facet',
|
||||||
|
'../phases',
|
||||||
|
'../reg'
|
||||||
|
|
||||||
|
],
|
||||||
|
function(declare, lang, on, Facet, phases, reg) {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Load Facet plugin
|
||||||
|
*
|
||||||
|
* @class plugins.load
|
||||||
|
* @singleton
|
||||||
|
*/
|
||||||
|
var load = {};
|
||||||
|
|
||||||
|
load.facet_spec = {
|
||||||
|
name: 'load',
|
||||||
|
preferred_container: 'simple',
|
||||||
|
widgets: [
|
||||||
|
{
|
||||||
|
$type: 'activity',
|
||||||
|
name: 'activity',
|
||||||
|
text: 'Loading',
|
||||||
|
visible: true
|
||||||
|
}
|
||||||
|
]
|
||||||
|
};
|
||||||
|
|
||||||
|
phases.on('registration', function() {
|
||||||
|
|
||||||
|
var fa = reg.facet;
|
||||||
|
|
||||||
|
fa.register({
|
||||||
|
type: 'load',
|
||||||
|
factory: Facet,
|
||||||
|
spec: load.facet_spec
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
return load;
|
||||||
|
});
|
||||||
Reference in New Issue
Block a user