Fossil SCM
Improvements to the /clusterlist page.
Commit
e3ef536c6979e4a08374fd4d754f1baea1c48ab22aa3c8a0a972de0418b8dc32
Parent
a2ce1f109a21dc6…
1 file changed
+13
-5
+13
-5
| --- src/name.c | ||
| +++ src/name.c | ||
| @@ -2172,15 +2172,18 @@ | ||
| 2172 | 2172 | ** Show information about all cluster artifacts in the database. |
| 2173 | 2173 | ** This page is accessible by administrators only. |
| 2174 | 2174 | */ |
| 2175 | 2175 | void clusterlist_page(void){ |
| 2176 | 2176 | Stmt q; |
| 2177 | + int cnt = 1; | |
| 2178 | + sqlite3_int64 szTotal = 0; | |
| 2177 | 2179 | login_check_credentials(); |
| 2178 | 2180 | if( !g.perm.Admin ){ login_needed(g.anon.Admin); return; } |
| 2179 | 2181 | style_header("All Cluster Artifacts"); |
| 2180 | 2182 | db_prepare(&q, |
| 2181 | 2183 | "SELECT blob.uuid, " |
| 2184 | + " blob.size, " | |
| 2182 | 2185 | " datetime(rcvfrom.mtime)," |
| 2183 | 2186 | " user.login," |
| 2184 | 2187 | " rcvfrom.ipaddr" |
| 2185 | 2188 | " FROM tagxref JOIN blob ON tagxref.rid=blob.rid" |
| 2186 | 2189 | " LEFT JOIN rcvfrom ON blob.rcvid=rcvfrom.rcvid" |
| @@ -2188,22 +2191,26 @@ | ||
| 2188 | 2191 | " WHERE tagxref.tagid=%d" |
| 2189 | 2192 | " ORDER BY rcvfrom.mtime, blob.uuid", |
| 2190 | 2193 | TAG_CLUSTER |
| 2191 | 2194 | ); |
| 2192 | 2195 | @ <table cellpadding="2" cellspacing="0" border="1"> |
| 2193 | - @ <tr><th>Hash<th>Date<th>User<th>IP-Address | |
| 2196 | + @ <tr><th> <th>Hash<th>Received<th>Size<th>User<th>IP-Address | |
| 2194 | 2197 | while( db_step(&q)==SQLITE_ROW ){ |
| 2195 | 2198 | const char *zUuid = db_column_text(&q, 0); |
| 2196 | - const char *zDate = db_column_text(&q, 1); | |
| 2197 | - const char *zUser = db_column_text(&q, 2); | |
| 2198 | - const char *zIp = db_column_text(&q, 3); | |
| 2199 | - @ <tr><td><a href="%R/info/%S(zUuid)">%S(zUuid)</a> | |
| 2199 | + sqlite3_int64 sz = db_column_int64(&q, 1); | |
| 2200 | + const char *zDate = db_column_text(&q, 2); | |
| 2201 | + const char *zUser = db_column_text(&q, 3); | |
| 2202 | + const char *zIp = db_column_text(&q, 4); | |
| 2203 | + szTotal += sz; | |
| 2204 | + @ <tr><td align="right">%d(cnt++) | |
| 2205 | + @ <td><a href="%R/info/%S(zUuid)">%S(zUuid)</a> | |
| 2200 | 2206 | if( zDate ){ |
| 2201 | 2207 | @ <td>%h(zDate) |
| 2202 | 2208 | }else{ |
| 2203 | 2209 | @ <td> |
| 2204 | 2210 | } |
| 2211 | + @ <td align="right">%,lld(sz) | |
| 2205 | 2212 | if( zUser ){ |
| 2206 | 2213 | @ <td>%h(zUser) |
| 2207 | 2214 | }else{ |
| 2208 | 2215 | @ <td> |
| 2209 | 2216 | } |
| @@ -2214,7 +2221,8 @@ | ||
| 2214 | 2221 | } |
| 2215 | 2222 | @ </tr> |
| 2216 | 2223 | } |
| 2217 | 2224 | @ </table> |
| 2218 | 2225 | db_finalize(&q); |
| 2226 | + @ <p>Total size of all clusters: %,lld(szTotal) bytes</p> | |
| 2219 | 2227 | style_finish_page(); |
| 2220 | 2228 | } |
| 2221 | 2229 |
| --- src/name.c | |
| +++ src/name.c | |
| @@ -2172,15 +2172,18 @@ | |
| 2172 | ** Show information about all cluster artifacts in the database. |
| 2173 | ** This page is accessible by administrators only. |
| 2174 | */ |
| 2175 | void clusterlist_page(void){ |
| 2176 | Stmt q; |
| 2177 | login_check_credentials(); |
| 2178 | if( !g.perm.Admin ){ login_needed(g.anon.Admin); return; } |
| 2179 | style_header("All Cluster Artifacts"); |
| 2180 | db_prepare(&q, |
| 2181 | "SELECT blob.uuid, " |
| 2182 | " datetime(rcvfrom.mtime)," |
| 2183 | " user.login," |
| 2184 | " rcvfrom.ipaddr" |
| 2185 | " FROM tagxref JOIN blob ON tagxref.rid=blob.rid" |
| 2186 | " LEFT JOIN rcvfrom ON blob.rcvid=rcvfrom.rcvid" |
| @@ -2188,22 +2191,26 @@ | |
| 2188 | " WHERE tagxref.tagid=%d" |
| 2189 | " ORDER BY rcvfrom.mtime, blob.uuid", |
| 2190 | TAG_CLUSTER |
| 2191 | ); |
| 2192 | @ <table cellpadding="2" cellspacing="0" border="1"> |
| 2193 | @ <tr><th>Hash<th>Date<th>User<th>IP-Address |
| 2194 | while( db_step(&q)==SQLITE_ROW ){ |
| 2195 | const char *zUuid = db_column_text(&q, 0); |
| 2196 | const char *zDate = db_column_text(&q, 1); |
| 2197 | const char *zUser = db_column_text(&q, 2); |
| 2198 | const char *zIp = db_column_text(&q, 3); |
| 2199 | @ <tr><td><a href="%R/info/%S(zUuid)">%S(zUuid)</a> |
| 2200 | if( zDate ){ |
| 2201 | @ <td>%h(zDate) |
| 2202 | }else{ |
| 2203 | @ <td> |
| 2204 | } |
| 2205 | if( zUser ){ |
| 2206 | @ <td>%h(zUser) |
| 2207 | }else{ |
| 2208 | @ <td> |
| 2209 | } |
| @@ -2214,7 +2221,8 @@ | |
| 2214 | } |
| 2215 | @ </tr> |
| 2216 | } |
| 2217 | @ </table> |
| 2218 | db_finalize(&q); |
| 2219 | style_finish_page(); |
| 2220 | } |
| 2221 |
| --- src/name.c | |
| +++ src/name.c | |
| @@ -2172,15 +2172,18 @@ | |
| 2172 | ** Show information about all cluster artifacts in the database. |
| 2173 | ** This page is accessible by administrators only. |
| 2174 | */ |
| 2175 | void clusterlist_page(void){ |
| 2176 | Stmt q; |
| 2177 | int cnt = 1; |
| 2178 | sqlite3_int64 szTotal = 0; |
| 2179 | login_check_credentials(); |
| 2180 | if( !g.perm.Admin ){ login_needed(g.anon.Admin); return; } |
| 2181 | style_header("All Cluster Artifacts"); |
| 2182 | db_prepare(&q, |
| 2183 | "SELECT blob.uuid, " |
| 2184 | " blob.size, " |
| 2185 | " datetime(rcvfrom.mtime)," |
| 2186 | " user.login," |
| 2187 | " rcvfrom.ipaddr" |
| 2188 | " FROM tagxref JOIN blob ON tagxref.rid=blob.rid" |
| 2189 | " LEFT JOIN rcvfrom ON blob.rcvid=rcvfrom.rcvid" |
| @@ -2188,22 +2191,26 @@ | |
| 2191 | " WHERE tagxref.tagid=%d" |
| 2192 | " ORDER BY rcvfrom.mtime, blob.uuid", |
| 2193 | TAG_CLUSTER |
| 2194 | ); |
| 2195 | @ <table cellpadding="2" cellspacing="0" border="1"> |
| 2196 | @ <tr><th> <th>Hash<th>Received<th>Size<th>User<th>IP-Address |
| 2197 | while( db_step(&q)==SQLITE_ROW ){ |
| 2198 | const char *zUuid = db_column_text(&q, 0); |
| 2199 | sqlite3_int64 sz = db_column_int64(&q, 1); |
| 2200 | const char *zDate = db_column_text(&q, 2); |
| 2201 | const char *zUser = db_column_text(&q, 3); |
| 2202 | const char *zIp = db_column_text(&q, 4); |
| 2203 | szTotal += sz; |
| 2204 | @ <tr><td align="right">%d(cnt++) |
| 2205 | @ <td><a href="%R/info/%S(zUuid)">%S(zUuid)</a> |
| 2206 | if( zDate ){ |
| 2207 | @ <td>%h(zDate) |
| 2208 | }else{ |
| 2209 | @ <td> |
| 2210 | } |
| 2211 | @ <td align="right">%,lld(sz) |
| 2212 | if( zUser ){ |
| 2213 | @ <td>%h(zUser) |
| 2214 | }else{ |
| 2215 | @ <td> |
| 2216 | } |
| @@ -2214,7 +2221,8 @@ | |
| 2221 | } |
| 2222 | @ </tr> |
| 2223 | } |
| 2224 | @ </table> |
| 2225 | db_finalize(&q); |
| 2226 | @ <p>Total size of all clusters: %,lld(szTotal) bytes</p> |
| 2227 | style_finish_page(); |
| 2228 | } |
| 2229 |