diff --git a/ucs-4.0-1/base/univention-system-setup/conffiles/var/www/ucs-overview/welcome.json b/ucs-4.0-1/base/univention-system-setup/conffiles/var/www/ucs-overview/welcome.json new file mode 100644 index 0000000..ba5f161 --- /dev/null +++ b/ucs-4.0-1/base/univention-system-setup/conffiles/var/www/ucs-overview/welcome.json @@ -0,0 +1,23 @@ +@!@ +import json +import univention.management.console.modules.setup.network +data = {} +for key in ('server/role', 'hostname', 'domainname'): + data[key] = configRegistry.get(key) + +for key, value in configRegistry.items(): + if key.startswith('umc/web/appliance/'): + data[key] = value + +all_ip4s = set() +all_ip6s = set() +interfaces = univention.management.console.modules.setup.network.Interfaces() +for interface in interfaces.values(): + all_ip4s.update(a[0] for a in interface.ip4) + all_ip6s.update(a[0] for a in interface.ip6) + +data['ip_addresses'] = list(all_ip4s) +data['ip6_addresses'] = list(all_ip6s) + +print json.dumps(data, indent=2) +@!@ diff --git a/ucs-4.0-1/base/univention-system-setup/debian/control b/ucs-4.0-1/base/univention-system-setup/debian/control index cb52572..dca6378 100644 --- a/ucs-4.0-1/base/univention-system-setup/debian/control +++ b/ucs-4.0-1/base/univention-system-setup/debian/control @@ -128,3 +128,19 @@ Description: UMC module for Univention System Setup integrated, directory driven solution for managing corporate environments. For more information about UCS, refer to: http://www.univention.de/ + +Package: univention-system-setup-greeter +Architecture: all +Depends: ${misc:Depends}, ${python:Depends}, + passwd, + univention-management-console-module-setup (= ${source:Version}), + shell-univention-lib (>= 3.0.1-1), + python-univention-lib (>= 4.0.5-2), +Recommends: firefox-en | firefox-de | firefox | iceweasel, +Description: UCS System Setup greeter + This package provides FIXME + . + It is part of Univention Corporate Server (UCS), an + integrated, directory driven solution for managing + corporate environments. For more information about UCS, + refer to: http://www.univention.de/ diff --git a/ucs-4.0-1/base/univention-system-setup/debian/univention-system-setup-greeter.install b/ucs-4.0-1/base/univention-system-setup/debian/univention-system-setup-greeter.install new file mode 100644 index 0000000..365a71b --- /dev/null +++ b/ucs-4.0-1/base/univention-system-setup/debian/univention-system-setup-greeter.install @@ -0,0 +1 @@ +greeter/ucs-overview var/www/ diff --git a/ucs-4.0-1/base/univention-system-setup/debian/univention-system-setup-greeter.univention-config-registry b/ucs-4.0-1/base/univention-system-setup/debian/univention-system-setup-greeter.univention-config-registry new file mode 100644 index 0000000..431eece --- /dev/null +++ b/ucs-4.0-1/base/univention-system-setup/debian/univention-system-setup-greeter.univention-config-registry @@ -0,0 +1,7 @@ +Type: file +File: var/www/ucs-overview/welcome.json +Variables: interfaces/.* +Variables: server/role +Variables: hostname +Variables: domainname +Variables: umc/web/appliance/.* diff --git a/ucs-4.0-1/base/univention-system-setup/greeter/ucs-overview/css/welcome.css b/ucs-4.0-1/base/univention-system-setup/greeter/ucs-overview/css/welcome.css new file mode 100644 index 0000000..cbdd851 --- /dev/null +++ b/ucs-4.0-1/base/univention-system-setup/greeter/ucs-overview/css/welcome.css @@ -0,0 +1,65 @@ +.welcome-image { + position: relative; + margin: 0 auto; + background-image: url("../welcome/welcome.png"); + background-repeat: no-repeat; + width: 652px; + height: 200px; +} + +.welcome-url { + position: absolute; + top: 88px; + left: 250px; + width: 163px; + height: 22px; + line-height: 22px; +} + +.welcome-url-alternative { + position: absolute; + top: 120px; + left: 250px; +} + +.welcome-url-alternative span { + display: block; +} + +.welcome-url-alternative span:first-child { + margin-left: -20px; +} + +.welcome-text { + display: block; + margin: 0 auto; + font-size: 1.1em; + width: 652px; + padding: 15px 10px; +} + +.welcome-command { + background-image: url("../welcome/command.svg"); +} +.welcome-desktop { + background-image: url("../welcome/desktop.svg"); +} +.welcome-command, .welcome-desktop { + background-repeat: no-repeat; + background-size: 30px; + padding: 5px 30px 0; + line-height: 20px; + display: block; +} + +#welcome-appliance-logo { + margin: 10px; + height: 67px; + width: 155px; + position: absolute; + left: 230px; + top: 0; + background-position: center; + background-size: contain; + background-repeat: no-repeat; +} diff --git a/ucs-4.0-1/base/univention-system-setup/greeter/ucs-overview/js/welcome/de.po b/ucs-4.0-1/base/univention-system-setup/greeter/ucs-overview/js/welcome/de.po new file mode 100644 index 0000000..9488853 diff --git a/ucs-4.0-1/base/univention-system-setup/greeter/ucs-overview/js/welcome/ucs.js b/ucs-4.0-1/base/univention-system-setup/greeter/ucs-overview/js/welcome/ucs.js new file mode 100644 index 0000000..a18002c --- /dev/null +++ b/ucs-4.0-1/base/univention-system-setup/greeter/ucs-overview/js/welcome/ucs.js @@ -0,0 +1,9 @@ +var _callback = dojoConfig.callback; +dojoConfig.callback = function() { + try { + _callback(); + } catch(err) {}; + require(["welcome/welcome", "dojo/domReady!"], function(welcome) { + welcome.start(); + }); +} diff --git a/ucs-4.0-1/base/univention-system-setup/greeter/ucs-overview/js/welcome/welcome.js b/ucs-4.0-1/base/univention-system-setup/greeter/ucs-overview/js/welcome/welcome.js new file mode 100644 index 0000000..5379dc0 --- /dev/null +++ b/ucs-4.0-1/base/univention-system-setup/greeter/ucs-overview/js/welcome/welcome.js @@ -0,0 +1,95 @@ +/* + * Copyright 2015 Univention GmbH + * + * http://www.univention.de/ + * + * All rights reserved. + * + * The source code of this program is made available + * under the terms of the GNU Affero General Public License version 3 + * (GNU AGPL V3) as published by the Free Software Foundation. + * + * Binary versions of this program provided by Univention to you as + * well as other copyrighted, protected or trademarked materials like + * Logos, graphics, fonts, specific documentations and configurations, + * cryptographic keys etc. are subject to a license agreement between + * you and Univention and not subject to the GNU AGPL V3. + * + * In the case you use this program under the terms of the GNU AGPL V3, + * the program is provided 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 Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public + * License with the Debian GNU/Linux or Univention distribution in file + * /usr/share/common-licenses/AGPL-3; if not, see + * . + */ +/*global define require console window */ + +define([ + "dojo/_base/lang", + "dojo/_base/kernel", + "dojo/_base/array", + "dojo/io-query", + "dojo/query", + "dojo/dom", + "dojo/dom-construct", + "dojo/dom-attr", + "dojo/dom-style", + "dojo/dom-class", + "dojo/dom-geometry", + "../ucs/text!/ucs-overview/welcome.json", + "../ucs/i18n!welcome,ucs" +], function(lang, kernel, array, ioQuery, query, dom, domConstruct, domAttr, domStyle, domClass, domGeometry, data, _) { + return { + start: function() { + this.replaceTitle(); + this.addApplianceLogo(); + this.insertLinks(); + + }, + + replaceTitle: function() { + if (data['umc/web/appliance/name']) { + var title = _('Welcome to the {0} appliance with Univention Corporate Server', [data['umc/web/appliance/name']]); + var titleNode = query('h1', 'title')[0]; + domAttr.set(titleNode, 'data-i18n', title); + titleNode.innerHTML = title; + query('title')[0].innerHTML = title; + } + }, + + addApplianceLogo: function() { + if (data['umc/web/appliance/logo']) { + var path = data['umc/web/appliance/logo']; + if (path[0] !== '/') { + path = '/univention-management-console/js/dijit/themes/umc/' + path; + } + domStyle.set('welcome-appliance-logo', 'background-image', lang.replace('url({0})', [path])); + } + }, + + insertLinks: function() { + var alternatives = dom.byId('welcome-url-alternative'); + array.forEach(data['ip_addresses'].concat([data['hostname'] + '.' + data['domainname']]).concat(data['ip6_addresses']), function(address, i, arr) { + address = this.formatUrl(address, data['ip6_addresses'].indexOf(address) !== -1); + if (i == 0) { + dom.byId('welcome-url').innerHTML = address; + } else { + domClass.toggle(alternatives, 'dijitHidden', false); + domConstruct.create('span', {innerHTML: address}, alternatives); + } + }, this); + + }, + + formatUrl: function(url, ip6) { + if (ip6) { + url = '[' + url + ']'; + } + return 'https://' + url + '/'; + } + }; +}); diff --git a/ucs-4.0-1/base/univention-system-setup/greeter/ucs-overview/welcome.html b/ucs-4.0-1/base/univention-system-setup/greeter/ucs-overview/welcome.html new file mode 100644 index 0000000..216d97a --- /dev/null +++ b/ucs-4.0-1/base/univention-system-setup/greeter/ucs-overview/welcome.html @@ -0,0 +1,73 @@ + + + + + + + Welcome to Univention Corporate Server + + + + + + + + + + + +
+ +
+
+

+

+
+
+ +
+ +
+
+ +
+
+ + + + + +
+
+
+ + + diff --git a/ucs-4.0-1/base/univention-system-setup/greeter/ucs-overview/welcome/command.svg b/ucs-4.0-1/base/univention-system-setup/greeter/ucs-overview/welcome/command.svg new file mode 100644 index 0000000..2341d86 --- /dev/null +++ b/ucs-4.0-1/base/univention-system-setup/greeter/ucs-overview/welcome/command.svg @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + diff --git a/ucs-4.0-1/base/univention-system-setup/greeter/ucs-overview/welcome/desktop.svg b/ucs-4.0-1/base/univention-system-setup/greeter/ucs-overview/welcome/desktop.svg new file mode 100644 index 0000000..4826b2a --- /dev/null +++ b/ucs-4.0-1/base/univention-system-setup/greeter/ucs-overview/welcome/desktop.svg @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/ucs-4.0-1/base/univention-system-setup/greeter/ucs-overview/welcome/welcome.png b/ucs-4.0-1/base/univention-system-setup/greeter/ucs-overview/welcome/welcome.png new file mode 100644 index 0000000..eea0549 Binary files /dev/null and b/ucs-4.0-1/base/univention-system-setup/greeter/ucs-overview/welcome/welcome.png differ diff --git a/ucs-4.0-1/base/univention-system-setup/greeter/ucs-overview/welcome/welcome.xcf b/ucs-4.0-1/base/univention-system-setup/greeter/ucs-overview/welcome/welcome.xcf new file mode 100644 index 0000000..02f1b6e Binary files /dev/null and b/ucs-4.0-1/base/univention-system-setup/greeter/ucs-overview/welcome/welcome.xcf differ diff --git a/ucs-4.0-1/base/univention-system-setup/greeter/ucs-overview/welcome/welcome2.xcf b/ucs-4.0-1/base/univention-system-setup/greeter/ucs-overview/welcome/welcome2.xcf new file mode 100644 index 0000000..ce9bb1c Binary files /dev/null and b/ucs-4.0-1/base/univention-system-setup/greeter/ucs-overview/welcome/welcome2.xcf differ diff --git a/ucs-4.0-1/base/univention-system-setup/greeter/ucs-overview/welcome/welcome3.png b/ucs-4.0-1/base/univention-system-setup/greeter/ucs-overview/welcome/welcome3.png new file mode 100644 index 0000000..da57520 Binary files /dev/null and b/ucs-4.0-1/base/univention-system-setup/greeter/ucs-overview/welcome/welcome3.png differ