From c2dba560b9b3bb0cd09eaecd742d80fce8e1d834 Mon Sep 17 00:00:00 2001 From: alexhudson Date: Wed, 9 May 2007 13:15:10 +0000 Subject: [PATCH] Alex Hixon's work on Hawkeye. \o/ --- src/www/Bongo.rules | 28 ++++- src/www/bongo/hawkeye/AgentsView.py | 19 ---- src/www/bongo/hawkeye/BackupView.py | 2 + src/www/bongo/hawkeye/HawkeyePath.py | 4 + src/www/bongo/hawkeye/RootView.py | 28 +++++ src/www/bongo/hawkeye/ServerView.py | 3 + src/www/bongo/hawkeye/SummaryView.py | 33 ++++++ src/www/css/admin.css | 106 +++++++++--------- src/www/css/hawkeye.css | 158 +++++++++++++++++++++++++++ src/www/hawkeye/footer.tpl | 2 +- src/www/hawkeye/header.tpl | 35 +++--- src/www/hawkeye/root/index.tpl | 36 +++++- src/www/hawkeye/root/login.tpl | 33 +++--- src/www/hawkeye/server/index.tpl | 4 +- src/www/img/Bongo-logo.png | Bin 0 -> 5439 bytes src/www/img/bg.png | Bin 0 -> 684 bytes src/www/img/cbg.png | Bin 0 -> 411 bytes src/www/img/dialog-warning.png | Bin 0 -> 603 bytes src/www/img/help-browser.png | Bin 0 -> 2231 bytes src/www/img/locked.png | Bin 0 -> 612 bytes src/www/img/login-pane.png | Bin 0 -> 53394 bytes src/www/img/network-server.png | Bin 0 -> 847 bytes src/www/img/sel.png | Bin 0 -> 610 bytes src/www/img/system-installer.png | Bin 0 -> 1589 bytes src/www/img/system-users.png | Bin 0 -> 1901 bytes src/www/img/user-desktop.png | Bin 0 -> 910 bytes src/www/img/user.png | Bin 0 -> 762 bytes src/www/img/welcome-box.png | Bin 0 -> 7758 bytes 28 files changed, 374 insertions(+), 117 deletions(-) delete mode 100644 src/www/bongo/hawkeye/AgentsView.py create mode 100644 src/www/css/hawkeye.css create mode 100755 src/www/img/Bongo-logo.png create mode 100755 src/www/img/bg.png create mode 100755 src/www/img/cbg.png create mode 100644 src/www/img/dialog-warning.png create mode 100644 src/www/img/help-browser.png create mode 100644 src/www/img/locked.png create mode 100644 src/www/img/login-pane.png create mode 100644 src/www/img/network-server.png create mode 100755 src/www/img/sel.png create mode 100644 src/www/img/system-installer.png create mode 100644 src/www/img/system-users.png create mode 100644 src/www/img/user-desktop.png create mode 100644 src/www/img/user.png create mode 100644 src/www/img/welcome-box.png diff --git a/src/www/Bongo.rules b/src/www/Bongo.rules index 79e7875..37ab14a 100644 --- a/src/www/Bongo.rules +++ b/src/www/Bongo.rules @@ -16,6 +16,7 @@ dist_css_DATA := \ src/www/css/composer.css \ src/www/css/contacts.css \ src/www/css/conversation.css \ + src/www/css/hawkeye.css \ src/www/css/interpreter.css \ src/www/css/layout.css \ src/www/css/login.css \ @@ -180,7 +181,21 @@ dist_img_DATA := \ src/www/img/toolbar/16/format-text-italic.png \ src/www/img/toolbar/16/format-text-strikethrough.png \ src/www/img/toolbar/16/format-text-underline.png \ - src/www/img/toolbar/16/mail-attachment.png + src/www/img/toolbar/16/mail-attachment.png \ + src/www/img/bg.png \ + src/www/img/Bongo-logo.png \ + src/www/img/cbg.png \ + src/www/img/dialog-warning.png \ + src/www/img/help-browser.png \ + src/www/img/locked.png \ + src/www/img/login-pane.png \ + src/www/img/network-server.png \ + src/www/img/sel.png \ + src/www/img/system-installer.png \ + src/www/img/system-users.png \ + src/www/img/user.png \ + src/www/img/user-desktop.png \ + src/www/img/welcome-box.png jsdir = $(htdocsdir)/js @@ -286,11 +301,12 @@ pkgpythonhawkeyedir = $(pkgpythondir)/hawkeye pkgpythonhawkeye_PYTHON := \ src/www/bongo/hawkeye/__init__.py \ - src/www/bongo/hawkeye/AgentsView.py \ + src/www/bongo/hawkeye/AgentView.py \ src/www/bongo/hawkeye/Auth.py \ src/www/bongo/hawkeye/BackupView.py \ src/www/bongo/hawkeye/HawkeyeHandler.py \ src/www/bongo/hawkeye/HawkeyePath.py \ + src/www/bongo/hawkeye/SystemView.py \ src/www/bongo/hawkeye/RootView.py \ src/www/bongo/hawkeye/Server.py \ src/www/bongo/hawkeye/ServerView.py \ @@ -311,6 +327,14 @@ dist_hawkeyetplbackup_DATA := \ hawkeyetplserverdir = $(htdocsdir)/hawkeye/server dist_hawkeyetplserver_DATA := \ src/www/hawkeye/server/index.tpl + +hawkeyetplsystemdir = $(htdocsdir)/hawkeye/system +dist_hawkeyetplsystem_DATA := \ + src/www/hawkeye/system/index.tpl + +hawkeyetplagentsdir = $(htdocsdir)/hawkeye/agents +dist_hawkeyetplagents_DATA := \ + src/www/hawkeye/agents/index.tpl hawkeyetpldir = $(htdocsdir)/hawkeye dist_hawkeyetpl_DATA := \ diff --git a/src/www/bongo/hawkeye/AgentsView.py b/src/www/bongo/hawkeye/AgentsView.py deleted file mode 100644 index 8be0502..0000000 --- a/src/www/bongo/hawkeye/AgentsView.py +++ /dev/null @@ -1,19 +0,0 @@ -import bongo.dragonfly -import Hawkeye -from HawkeyeHandler import HawkeyeHandler - -class AgentsHandler(HawkeyeHandler): - def ParsePath(self, rp): - rp.pathInfo = Hawkeye.SplitQueryArgs(rp.path) - - def index_GET(self, req, rp): - vars = {"mdb" : self.GetMdb(req)} - return self.SendTemplate(req, rp, "index.psp", vars) - - def edit_GET(self, req, rp): - vars = {"mdb" : self.GetMdb(req)} - return self.SendTemplate(req, rp, "edit.psp", vars) - - def edit_POST(self, req, rp): - vars = {"mdb" : self.GetMdb(req)} - return self.SendTemplate(req, rp, "edit.psp", vars) diff --git a/src/www/bongo/hawkeye/BackupView.py b/src/www/bongo/hawkeye/BackupView.py index cfc38b0..cb0efa7 100644 --- a/src/www/bongo/hawkeye/BackupView.py +++ b/src/www/bongo/hawkeye/BackupView.py @@ -13,6 +13,8 @@ class BackupHandler(HawkeyeHandler): def index_GET(self, req, rp): today = datetime.date.today() self.SetVariable("set", today.strftime("%y%m%d")) + self.SetVariable("breadcrumb", "System » Backup and Restore"); + self.SetVariable("systab", "selecteditem"); return self.SendTemplate(req, rp, "index.tpl") def download_GET(self, req, rp): diff --git a/src/www/bongo/hawkeye/HawkeyePath.py b/src/www/bongo/hawkeye/HawkeyePath.py index cbcaa84..438f610 100644 --- a/src/www/bongo/hawkeye/HawkeyePath.py +++ b/src/www/bongo/hawkeye/HawkeyePath.py @@ -6,12 +6,16 @@ from bongo.dragonfly.BongoSession import BongoSession from bongo.dragonfly.HttpError import HttpError import RootView +import AgentView import BackupView import ServerView +import SystemView views = { "root" : RootView.RootHandler(), + "agents" : AgentView.AgentHandler(), "backup" : BackupView.BackupHandler(), + "system" : SystemView.SystemHandler(), "server" : ServerView.ServerHandler() } diff --git a/src/www/bongo/hawkeye/RootView.py b/src/www/bongo/hawkeye/RootView.py index 788fff9..b21f97d 100644 --- a/src/www/bongo/hawkeye/RootView.py +++ b/src/www/bongo/hawkeye/RootView.py @@ -1,4 +1,5 @@ import bongo.dragonfly +import os import bongo.dragonfly.BongoUtil from HawkeyeHandler import HawkeyeHandler import bongo.hawkeye.Auth as Auth @@ -10,7 +11,34 @@ class RootHandler(HawkeyeHandler): else: return True + def memory(self, VmKey): + '''Return process memory usage in bytes. + ''' + _scale = {'kB': 1024.0, 'mB': 1024.0*1024.0, + 'KB': 1024.0, 'MB': 1024.0*1024.0} + + try: # get the /proc//status pseudo file + t = open('/proc/meminfo') + v = [v for v in t.readlines() if v.startswith(VmKey)] + t.close() + + # convert Vm value to bytes + if len(v) == 1: + t = v[0].split() # e.g. 'VmRSS: 9999 kB' + if len(t) == 3: ## and t[0] == VmKey: + return float(t[1]) * _scale.get(t[2], 0.0) + except: + pass + return 0.0 + def index_GET(self, req, rp): + cm = self.memory("MemTotal:") + used = cm - self.memory("MemFree:") + used = used / 1024 / 1024 + cm = cm / 1024 / 1024 + self.SetVariable("mem", str(round(used, 2)) + "MB / " + str(round(cm, 2)) + "MB") + self.SetVariable("breadcrumb", "Desktop") + self.SetVariable("dsktab", "selecteditem") return self.SendTemplate(req, rp, "index.tpl") def test_GET(self, req, rp): diff --git a/src/www/bongo/hawkeye/ServerView.py b/src/www/bongo/hawkeye/ServerView.py index fe4b26f..9bc9b0c 100644 --- a/src/www/bongo/hawkeye/ServerView.py +++ b/src/www/bongo/hawkeye/ServerView.py @@ -22,6 +22,9 @@ class ServerHandler(HawkeyeHandler): else: self.SetVariable("success", 0) + self.SetVariable("breadcrumb", "Agents » Enable/Disable Agents"); + self.SetVariable("agntab", "selecteditem"); + return self.SendTemplate(req, rp, "index.tpl") def index_POST(self, req, rp): diff --git a/src/www/bongo/hawkeye/SummaryView.py b/src/www/bongo/hawkeye/SummaryView.py index b6e6f7c..3bee11a 100644 --- a/src/www/bongo/hawkeye/SummaryView.py +++ b/src/www/bongo/hawkeye/SummaryView.py @@ -1,6 +1,39 @@ +import os import bongo.dragonfly from HawkeyeHandler import HawkeyeHandler class SummaryHandler(HawkeyeHandler): + _proc_status = '/proc/%d/status' % os.getpid() # Linux only? + _scale = {'kB': 1024.0, 'mB': 1024.0*1024.0, + 'KB': 1024.0, 'MB': 1024.0*1024.0} + + def _VmB(VmKey): + global _scale + try: # get the /proc//status pseudo file + t = open(_proc_status) + v = [v for v in t.readlines() if v.startswith(VmKey)] + t.close() + # convert Vm value to bytes + if len(v) == 1: + t = v[0].split() # e.g. 'VmRSS: 9999 kB' + if len(t) == 3: ## and t[0] == VmKey: + return float(t[1]) * _scale.get(t[2], 0.0) + except: + pass + return 0.0 + + def memory(since=0.0): + '''Return process memory usage in bytes. + ''' + return _VmB('VmSize:') - since + + def stacksize(since=0.0): + '''Return process stack size in bytes. + ''' + return _VmB('VmStk:') - since + def index_GET(self, req, rp): + self.SetVariable("mem", memory()) + self.SetVariable("breadcrumb", "Desktop") + self.SetVariable("dsktab", "selecteditem") return self.SendTemplate(req, rp, "index.tpl", vars) diff --git a/src/www/css/admin.css b/src/www/css/admin.css index 23797c9..5094be6 100644 --- a/src/www/css/admin.css +++ b/src/www/css/admin.css @@ -1,74 +1,66 @@ -* { - font-family: sans-serif; -} - -html, body { - overflow: auto; - margin: 0; - padding: 0; - border: 0; -} +/* + Bongo web administration interface (aka Hawkeye) stylesheet + (c) 2007 Alexander Hixon - see COPYING for details + Last modified: Sunday May 6, 2007 +*/ body { - border-top: 2px solid #d4dceb; - background-color: #627aa3; /* #b4c5e1; */ + background-color: #eeeeec; + font-size: 12px; + font-family: Verdana, Arial, Helvetica, SunSans-Regular, Sans-Serif; + color:#2e3436; + padding:0px; + margin:0px; + + height: 100%; /* Blasted IE! */ } -img#logo { - position: absolute; - top: 40px; - left: 40px; - width: 339px; - height: 59px; +#login { + position:absolute; + height:200px; + width:400px; + margin:-100px 0px 0px -200px; + top: 50%; + left: 50%; + + text-align: center; + padding: 0px; + background-image: url('../img/login-pane.png'); + background-repeat: no-repeat; /* Make sure this doesn't actually happen. */ + overflow: none; } -ul.navigation { - position: absolute; - top: 110px; - left: 40px; - width: 150px; - background-color: white; - padding: 10px; - border: 1px solid #555; - margin: 0; +form { + padding: 16px; + padding-top: 6.5em; } -ul.navigation li { - list-style: none; - margin: 0; - text-align: left; +.inputbox { + margin-bottom: 2px; } -ul.navigation li a { - display: block; - text-decoration: none; - padding: .25em; - color: black; - border-bottom: 1px solid #555; +.submit { + padding-top: 2em; + padding-bottom: 0px; + margin-bottom: 0px; } -ul.navigation li a:hover { - background-color: #ddd; +input { + color: #555753; + border: 1px solid #2e3436; } -div#content { - position: absolute; - top: 110px; - right: 20px; - left: 220px; - border: 1px solid #555; - background-color: white; - padding: 10px; +.username { + background-image: url('../img/user.png'); } -div#login { - position: absolute; - top: 200px; - left: 220px; - width: 500px; - height: 250px; - background-color: white; - padding: 20px; - text-align: right; - border: 1px solid #555; +.password { + background-image: url('../img/locked.png'); +} + +.password, .username { + padding-left: 22px; + min-height: 18px; + background-color: #eeeeec; + background-repeat: no-repeat; } diff --git a/src/www/css/hawkeye.css b/src/www/css/hawkeye.css new file mode 100644 index 0000000..bf800ca --- /dev/null +++ b/src/www/css/hawkeye.css @@ -0,0 +1,158 @@ + /* body and font definitions */ +body { + background: url('/img/bg.png'); + background-repeat: repeat-x; + background-color: #fff; + margin-top: 25px; + margin-left: 60px; + margin-right: 60px; + +} + +html>body { + font-family: luxi sans, trebuchet ms, bitstream vera sans, sans-serif; +} + +#userinfo { +padding-top: 20px; +font-size: 80%; +float: right; +} +#logo { +margin-bottom: 60px; +} +p { +/*padding-left: 12px; +padding-right: 12px;*/ +font-size: 90%; +color: #2e3436; /* Tango DARK-GREY */ +} + +#page { + background: url('/img/cbg.png'); + background-repeat: repeat-x; + background-color: #eeeeec; /* Tango GREY */ +/* float: left;*/ +/* width: 100% - 175px;*/ +/* margin: 0px;*/ + + margin-left: 165px; /* Push across width of sidebar, minus 10px, for bg behind round corner */ + padding-left: 10px; /* Prints BG for 10px, now flush with sidebar */ + + padding-top: 6px; + +/* z-index: -1;*/ + +/* padding-right: 8px; */ +/* padding-left: 16px;*/ +/* margin-left: 280px;*/ +min-height: 500px; +} +#content { + padding-left: 12px; + padding-right: 12px; +} + +#sidebar { +color: #eeeeec; /* Tango WHITE */ +/* background: url('/img/sbg.png'); + background-repeat: repeat-x;*/ + background-color: #2e3436; /* Tango DARK-GREY */ +float: left; +height: 500px; +width: 175px; + +text-align: right; +margin-right: 0px; +padding-right: 0px; +-moz-border-radius: 15px; +} +.helpitem { +/* FIXME! */ +} +.selecteditem { +background-image: url('/img/sel.png'); +width: 175px; +background-repeat: repeat-none; +color: #2e3436; +} + + +ul.nav, +.nav ul{ +/*Remove all spacings from the list items*/ +/*float: right;*/ +/*display: block; */ +margin-right: 0px; +padding-left: 4px; +margin-left: 6px; +/*padding-left: 0px; /* Use this instead of margin? */ +padding-right: 0px; +/* cursor: default;*/ + list-style-type: none; +} +a.nav, +.nav a{ +color: #eeeeec; +text-decoration:none; +} + +a.selecteditem, +.selecteditem a, +.selecteditem a:link, +.selecteditem a:visited { +color: #2e3436; +text-decoration:none; +} + +li.nav, +.nav li{ + display: block; + font-size: 115%; /* Bold maybe? */ + min-height: 35px; +/* color: #eeeeec;*/ + text-align: left; + + padding-left: 15%; + + padding-right: 15px; + margin-bottom: 15px; +text-decoration:none; + margin-top: 5px; + width: 95%; +} + +img.icon { + margin-right: 6px; + vertical-align:middle; +} + +.breadcrumb { + font-size: 75%; +} +ul.nav{ + width: 100%; +} +.htable { +border: 2px solid #2e3436; +font-size: 110%; +} + +.hrow { +background-color: #2e3436; +color: #eeeeec; +padding-left: 4px; +} +.tlist { +padding-bottom: 3px; +padding-top: 3px; +font-size: 80%; +padding-left: 16px; +} + +.floaty { +float: right; +padding-left: 16px; +padding-right: 16px; +display: block; +} diff --git a/src/www/hawkeye/footer.tpl b/src/www/hawkeye/footer.tpl index de32b55..19d0481 100644 --- a/src/www/hawkeye/footer.tpl +++ b/src/www/hawkeye/footer.tpl @@ -1,5 +1,5 @@ - + diff --git a/src/www/hawkeye/header.tpl b/src/www/hawkeye/header.tpl index 41a6e97..b635599 100644 --- a/src/www/hawkeye/header.tpl +++ b/src/www/hawkeye/header.tpl @@ -1,22 +1,29 @@ - + + - Bongo Web Administration - + + Bongo Web Administration - %(breadcrumb)s + - - - - - +
Logged in as: admin [logout]
+ + +
+ + diff --git a/src/www/hawkeye/root/index.tpl b/src/www/hawkeye/root/index.tpl index 3562cea..bd7de04 100644 --- a/src/www/hawkeye/root/index.tpl +++ b/src/www/hawkeye/root/index.tpl @@ -1,7 +1,39 @@ %(include|header.tpl)s +Welcome to Bongo +

Welcome

+

Thank you for choosing Bongo as your calendaring and mail solution.

+

This screen enables you to briefly overview your system status, and to access commonly and recently used tasks.

+

Help can be accessed by clicking on the help menu at any time.
To get started, either click on one of the menus to the left, or click on one of the common tasks listed below.

-

This is the admin tool. Under construction, obviously :)

+ + + + + + + + + + + + + + + + + + + + + + + + + + +
System StatusSpace time continuum stable.
Agent StatusOperation normal.
Bongo UpdatesCritical security update available.Warning
Memory Usage%(mem)s
LoadUnknown
-%(include|footer.tpl)s + +%(include|footer.tpl)s \ No newline at end of file diff --git a/src/www/hawkeye/root/login.tpl b/src/www/hawkeye/root/login.tpl index e2743e4..de4eba3 100644 --- a/src/www/hawkeye/root/login.tpl +++ b/src/www/hawkeye/root/login.tpl @@ -1,28 +1,21 @@ - + + - Bongo Web Administration - + Bongo Web Administration › Login - + - - - - +
- -

Login Required

- -
-

User name:

-

Password:

- -
- +
+ + +
+
- - + \ No newline at end of file diff --git a/src/www/hawkeye/server/index.tpl b/src/www/hawkeye/server/index.tpl index 21e40b0..f749990 100644 --- a/src/www/hawkeye/server/index.tpl +++ b/src/www/hawkeye/server/index.tpl @@ -1,6 +1,6 @@ %(include|header.tpl)s -

Server Settings

+

Enable/Disable Agents

No message.

@@ -12,7 +12,7 @@
- +
diff --git a/src/www/img/Bongo-logo.png b/src/www/img/Bongo-logo.png new file mode 100755 index 0000000000000000000000000000000000000000..a752adc3986cb85a0812119b500a1eb7a70ccad5 GIT binary patch literal 5439 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 literal 0 HcmV?d00001 diff --git a/src/www/img/bg.png b/src/www/img/bg.png new file mode 100755 index 0000000000000000000000000000000000000000..086e87735f6127ed47dca696ce22f967d5ad4203 GIT binary patch literal 684 zcmeAS@N?(olHy`uVBq!ia0vp^jzFx=!2~4lTWksiQk(@Ik;M!Q+`=Ht$S`Y;1W=H@ z#M9T6{W>cnr#wqp=zJ}pkZg%-M2T~LZf7srr@!*8dZ&WkqWaXHWN@4vq8rc4HNzsoP1mbk=L2QQe-Fe&ly^l2Jr zo2PvJ_N_VJj_rQE3=jL^|5Dox+Z+=PcrdtdH0LmAsvimAoIOW-gR10;kgoZEF*Ib58ARyDf2OlTNNlWa^v<)A`)Zi5WgK9-ie~_I8e4c(7i#lCHoTvwk08 zjvTiWliqLqbSp{W?)&d^S7>|A`}byR%(p4Q_P*^c&nD}y)e768Dj@oGWAVz+(D=?< z6S+E{FXDOq`0@26sn=B3THai}_)T7vQRw%`7(dxvn%nlQW!`$OrEvA(wb5U7cKW{g zTVbPjZ+^w*9KH0LHTU`i9{Ch+_nYO@61!(@y5H4T9eO5Lccf3>cO^<_{r&m#m;Ug+ zwr$z}kSFKQzEZlp?VINA_`o%5UtAG=w`c9)7w4}}FTcI~>876(uAkl2{;YO}Yzg!f?_9jIX&<8zB}i?H~Zm(1qPt_#7gb&-QT|@kw37@dI2z5 OF?hQAxvX%9N7a7Ndk7(fAuH`| zRfWqWgcuvb@cnrS5CFozX$y?CAQ513EP!JJO`iw%0D}p4Q<4EP0A)uJTSTW}hsJ53 zU9C0TEQ>(~{$u>ENC^Jjnw$GoZnLYkwqV^!5}iI05Mcx=5ubL*jH=M zKvr=5L!c&*Zq=XhC3(Xf=utVxz_D( zyJ`@}tKfEY%R8Y6j5GCZ_P`g~5p_fzQAgAfbwvGV`vD_~obX$bPvZap002ovPDHLk FV1jcGr9%J! literal 0 HcmV?d00001 diff --git a/src/www/img/dialog-warning.png b/src/www/img/dialog-warning.png new file mode 100644 index 0000000000000000000000000000000000000000..a9e4ff3991cb0ad2a99cc25e2d13c35e52c680c8 GIT binary patch literal 603 zcmV-h0;K(kP)J2V5SdEtMnl9PhCxc2Fa&}~V}o=Tx)35=bmuS|@d;cT zbY;Loz(q+`1+A}82tI&NTm%Y*7F^UoNilyn))L6H_Q1W1%i%j`bA(=?F!-5EVN!MFB_9*XAp~_l%n771CUH65fQk#;c9J-59jBDOQ<*CorDm33|CLV znm<0~VYP}<3Z)daS`C19yN!q-BK$Z#V4_~XOaDE<2tY)*Zne1F+TuNYlS3Fj19`yz=_l|J pl>P}02k>Sh;xD3f4Z|KZe*u@?eFz-1;S&G=002ovPDHLkV1mMw_G175 literal 0 HcmV?d00001 diff --git a/src/www/img/help-browser.png b/src/www/img/help-browser.png new file mode 100644 index 0000000000000000000000000000000000000000..d60425f7ec65f748d6e5d2a61d5a3cf6da8d6ee3 GIT binary patch literal 2231 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 OQL{gN;S|xvC;ESyiWmC; literal 0 HcmV?d00001 diff --git a/src/www/img/network-server.png b/src/www/img/network-server.png new file mode 100644 index 0000000000000000000000000000000000000000..1d38e4f9c807e24f3c6ec1d169464bc4c77b5d01 GIT binary patch literal 847 zcmV-V1F-ywP)?uTqbzX*P&AH z*4EaZ`M#eU96)Q$=;$cx>+8N!>TMq1&Q$~|l?qo^S7cdcLMMtM%H^^V*T?|C{{Frx z6@Xf;_Ou270QlW@ZM@^NhGk8J}N&E|`K>o!26(Ri68$t&O+rPT9}^98_;qNqoHOc72`Pk-BLwcal+E&Xa)Rw^Q? zZQFl3j`O?YIQzDUsDp!pqUU*85CmE&rIRF4TI*t(rta3()}7GM!2zbGrqt2V(fIuQ zyzRPfQY;p`p68Ke*%#N>*MY5+l3K0S5s@rOl7fghmSx#WDa*1fH8L^+fQa-&+wC@I zXJ>tbx~|K_!~_5*Cnut{zS`K>P$E(g5gSO0#o~3LP>5`R-QC>}z=wy#!Z7>+;PmvA z^Ye2ml?tU&3E%e_8ymaF?{qq(Y1;cfK0bc$d0uUAZ|{$X^o_gV^74||*;!hx)`Nlj zVR?D^&7gH-1LNc4v|2677sqjo zgFec@9Yh4BRIe!8?KV*qk!4wLUMWSXR5H>tK8QpF5uwxRpp?2dYOS#>%jnkh*#>}t z<3C&W$qd|~+wEdm*1&NX3~fMb-P`hh<5L>AcL8{Wfv<*g^a;KW!!Y+T(hp%63h)x> z+oO4HSOBQk>z|W^!+-}+-rea--~}+sfGql;3)})1z=Qt*69aq<{+!_pwhKhS4bZnQ Z{{n0Bt;F1FCQ$$Y002ovPDHLkV1l6;naKbE literal 0 HcmV?d00001 diff --git a/src/www/img/sel.png b/src/www/img/sel.png new file mode 100755 index 0000000000000000000000000000000000000000..ee4defdc92da19af0a441f46990f4a70cd342243 GIT binary patch literal 610 zcmV-o0-gPdP)WFU8GbZ8({Xk{QrNlj4iWF>9@00G8HL_t(|+U?viP9s4S zgyAYgykl;}HCPED5=RIE_87a;YBwVS5s)Fcfp1m>o^H?JY~}?Z{a;`qhn9+Z{oG?~ z^!EOGu^G;`!{*2NFbvuZ8v$7ERFa;aAAj4vmm^Ek_zGaTlYjsJUO2gzBt=U51Hig) zN!s>2xwRI}1yqFVJa*5M6`}bIWEC`fN)ffwbl5qLKpTFB8UBLQq-QL{2METR- w2~#0ZH5TgX^7@ygpNe+YH$HUnUjbjp2ibmno%f)J@Bjb+07*qoM6N<$f(bDL0ssI2 literal 0 HcmV?d00001 diff --git a/src/www/img/system-installer.png b/src/www/img/system-installer.png new file mode 100644 index 0000000000000000000000000000000000000000..c26576ee8fcaab7c49014d9fa4b4d4c8f6a84b34 GIT binary patch literal 1589 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 literal 0 HcmV?d00001 diff --git a/src/www/img/user-desktop.png b/src/www/img/user-desktop.png new file mode 100644 index 0000000000000000000000000000000000000000..57fb1775767c9e8bfedf66ff391268718d79a6d0 GIT binary patch literal 910 zcmV;919AL`P)cXgT>&749T4UU}&_s;}4T%at7n-Q8Pc-p`#z%3a1=^WTXU=soQ>ZXtMRxW}PUfC- z=brPObMHMD$Rdj@{&#RzMz6QMv8Z@KFxTZ88;y)ZRueB@1aGd()M>*i{~njic`m7G z2_>%B!P%}o5B2P{`d6?rimtpvt2b`N*AY2C`nVqsCO5UUwXsYIB-8|ioC4IWZMJL9 zg$Uie*a9QjX+A6~u)ZZA%%ml%H284R6t9ZEt)Y)r=G zEB6r{(-DuW+Lw=?HoSRr=V3+_h)6%(D=JH{_gE*0H2jdh89}B9QEE&uxR9wEf`c3+MX!E92a^!631` zqD&xSyZwH@I3oeOUD&r~O`~gcG-8>_^l|1SMNvSZJD+4(?o5wqOAYFLn@>j~+KC4b zUvqVJiy?{vh-gBL6Q9yq+ILb?x8nDCV@*7sz`($es3>Ar(Zb5I;qcq*fZ2#vt_;{k zr##ZywafYR(Gw)4cR1MH3ZBPbUpuRLB8Hxx7w}ZngItRc>b)d0jg=1$-j;X((Dff% zY8vY8!!f|)T?JhzKyU9e%X0te)LU&uF!%`t?nSVbRD*Zq!Ch9FL!=%C%tpiswv(mh z%Y^T-2xLV=VP!oY_1}QcR|<|}&~+Wjq&AsVDodE{mvpoHrCPJu70vlj@H3is?8k^~ zJO#zeYlWYm-yH#P#_WWw`uVFt@HvL6$O!RZ_S*b={$zNd_**^0vrc`10(WG zRDcnk9eNr%HFaTMUtjxt5b)NtT@BssU65{L9IgV0rN4$8fII+B01l+xka>azfB?t< k#sR4F>_3YvvX~ow0U^>P|7`Tzg` literal 0 HcmV?d00001 diff --git a/src/www/img/user.png b/src/www/img/user.png new file mode 100644 index 0000000000000000000000000000000000000000..ed35fe05f0989b07c80499b7230c1805268aad7f GIT binary patch literal 762 zcmVFVJ3sGUp-WR{}55kb?8`~ z_bh(l_MRA$S7RoFxv3}Mzb5*Bb z@qn;wMq-mn?hluWd(K_7y1dy;f+oWH;u5pNn0(Qbf4q&+_G;h+Rzzts;^Zh>xtnJh zo!t$no{5ZM2P^oE@4K}H__dOtrW&hmUY#H47r(~+^fOYi zhB+4pws7;ErN;x3D79TVuh|)5WOI(1Y&>zRGx&LPzSQq-?GB{wrdpok9S>eQx@LdI zwU^r8_kSvIGQ(PVJ_{HacFE!ktGePEwJQz=Z)!Q^S1@#;${&5sImwECNic-{M(6*Z6BEtmZT7qGAT3r`kHKGxtMN&o-=07*qoM6N<$f<01LBLDyZ literal 0 HcmV?d00001 diff --git a/src/www/img/welcome-box.png b/src/www/img/welcome-box.png new file mode 100644 index 0000000000000000000000000000000000000000..04abdc5feab61d192c1c0420e666eff6d9ecbd0d GIT binary patch literal 7758 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 literal 0 HcmV?d00001
Enabled? Agent Name