From 2f09b03bcc7ea01e0991d1bbf20befb7b865db73 Mon Sep 17 00:00:00 2001
From: Brian Warner <warner@allmydata.com>
Date: Tue, 5 Feb 2008 20:29:39 -0700
Subject: [PATCH] webish: add storage-consumed estimate on welcome page

---
 src/allmydata/web/welcome.xhtml |  5 +++++
 src/allmydata/webish.py         | 10 +++++++++-
 2 files changed, 14 insertions(+), 1 deletion(-)

diff --git a/src/allmydata/web/welcome.xhtml b/src/allmydata/web/welcome.xhtml
index 8bafa39f..9967fc6c 100644
--- a/src/allmydata/web/welcome.xhtml
+++ b/src/allmydata/web/welcome.xhtml
@@ -19,6 +19,9 @@ tool</a> may also be useful.</div>
 <div>My nodeid: <span n:render="string" n:data="my_nodeid" /></div>
 <div>My versions: <span n:render="string" n:data="version" /></div>
 <div>Tahoe code imported from: <span n:render="string" n:data="import_path" /></div>
+<div>My Storage Server: <span n:render="string" n:data="storage" /></div>
+
+<br />
 
 <div>Introducer: <span n:render="string" n:data="introducer_furl" /></div>
 <div>Connected to introducer?: <span n:render="string" n:data="connected_to_introducer" /></div>
@@ -26,6 +29,8 @@ tool</a> may also be useful.</div>
 <div>Helper: <span n:render="string" n:data="helper_furl" /></div>
 <div>Connected to helper?: <span n:render="string" n:data="connected_to_helper" /></div>
 
+<br />
+
 <div>Known Storage Servers: <span n:render="string" n:data="known_storage_servers" /></div>
 <div>Connected Storage Servers: <span n:render="string" n:data="connected_storage_servers" /></div>
 
diff --git a/src/allmydata/webish.py b/src/allmydata/webish.py
index d5de20cc..bdfe2d61 100644
--- a/src/allmydata/webish.py
+++ b/src/allmydata/webish.py
@@ -1314,9 +1314,17 @@ class Root(rend.Page):
         return get_package_versions_string()
     def data_import_path(self, ctx, data):
         return str(allmydata)
-
     def data_my_nodeid(self, ctx, data):
         return idlib.nodeid_b2a(IClient(ctx).nodeid)
+    def data_storage(self, ctx, data):
+        client = IClient(ctx)
+        try:
+            ss = client.getServiceNamed("storage")
+        except KeyError:
+            return "Not running"
+        allocated = ss.allocated_size()
+        return "about %d bytes allocated" % allocated
+
     def data_introducer_furl(self, ctx, data):
         return IClient(ctx).introducer_furl
     def data_connected_to_introducer(self, ctx, data):
-- 
2.45.2