Fossil SCM
Show the number of chat messages and the amount of storage space used by chat on the /stat page.
Commit
4da6a4cce0b62a1262b4e233e2e4c622f09e3290b24b08600f82c4dd45db8551
Parent
6f4fdfcd6ffdbcf…
1 file changed
+11
+11
| --- src/stat.c | ||
| +++ src/stat.c | ||
| @@ -217,10 +217,21 @@ | ||
| 217 | 217 | @ <tr><th>Number Of Wiki Pages:</th><td> |
| 218 | 218 | n = db_int(0, "SELECT count(*) FROM tag /*scan*/" |
| 219 | 219 | " WHERE +tagname GLOB 'wiki-*'"); |
| 220 | 220 | @ %,d(n) |
| 221 | 221 | @ </td></tr> |
| 222 | + if( db_table_exists("repository","chat") ){ | |
| 223 | + sqlite3_int64 sz = 0; | |
| 224 | + char zSz[100]; | |
| 225 | + n = db_int(0, "SELECT max(msgid) FROM chat"); | |
| 226 | + m = db_int(0, "SELECT count(*) FROM chat WHERE mdel IS NOT TRUE"); | |
| 227 | + sz = db_int64(0, "SELECT sum(coalesce(length(xmsg),0)+" | |
| 228 | + "coalesce(length(file),0)) FROM chat"); | |
| 229 | + approxSizeName(sizeof(zSz), zSz, sz); | |
| 230 | + @ <tr><th>Number Of Chat Messages:</th> | |
| 231 | + @ <td>%,d(n) (%,d(m) still alive, %s(zSz) in size)</td></tr> | |
| 232 | + } | |
| 222 | 233 | n = db_int(0, "SELECT count(*) FROM tag /*scan*/" |
| 223 | 234 | " WHERE +tagname GLOB 'tkt-*'"); |
| 224 | 235 | if( n>0 ){ |
| 225 | 236 | @ <tr><th>Number Of Tickets:</th><td>%,d(n)</td></tr> |
| 226 | 237 | } |
| 227 | 238 |
| --- src/stat.c | |
| +++ src/stat.c | |
| @@ -217,10 +217,21 @@ | |
| 217 | @ <tr><th>Number Of Wiki Pages:</th><td> |
| 218 | n = db_int(0, "SELECT count(*) FROM tag /*scan*/" |
| 219 | " WHERE +tagname GLOB 'wiki-*'"); |
| 220 | @ %,d(n) |
| 221 | @ </td></tr> |
| 222 | n = db_int(0, "SELECT count(*) FROM tag /*scan*/" |
| 223 | " WHERE +tagname GLOB 'tkt-*'"); |
| 224 | if( n>0 ){ |
| 225 | @ <tr><th>Number Of Tickets:</th><td>%,d(n)</td></tr> |
| 226 | } |
| 227 |
| --- src/stat.c | |
| +++ src/stat.c | |
| @@ -217,10 +217,21 @@ | |
| 217 | @ <tr><th>Number Of Wiki Pages:</th><td> |
| 218 | n = db_int(0, "SELECT count(*) FROM tag /*scan*/" |
| 219 | " WHERE +tagname GLOB 'wiki-*'"); |
| 220 | @ %,d(n) |
| 221 | @ </td></tr> |
| 222 | if( db_table_exists("repository","chat") ){ |
| 223 | sqlite3_int64 sz = 0; |
| 224 | char zSz[100]; |
| 225 | n = db_int(0, "SELECT max(msgid) FROM chat"); |
| 226 | m = db_int(0, "SELECT count(*) FROM chat WHERE mdel IS NOT TRUE"); |
| 227 | sz = db_int64(0, "SELECT sum(coalesce(length(xmsg),0)+" |
| 228 | "coalesce(length(file),0)) FROM chat"); |
| 229 | approxSizeName(sizeof(zSz), zSz, sz); |
| 230 | @ <tr><th>Number Of Chat Messages:</th> |
| 231 | @ <td>%,d(n) (%,d(m) still alive, %s(zSz) in size)</td></tr> |
| 232 | } |
| 233 | n = db_int(0, "SELECT count(*) FROM tag /*scan*/" |
| 234 | " WHERE +tagname GLOB 'tkt-*'"); |
| 235 | if( n>0 ){ |
| 236 | @ <tr><th>Number Of Tickets:</th><td>%,d(n)</td></tr> |
| 237 | } |
| 238 |