Fossil SCM
Use the describe_artifacts utility on the administrative "received-from" log web pages.
Commit
4bd49a210881483fde0687dede8b77c12a464964
Parent
87a04576f2de9c1…
1 file changed
+15
-4
+15
-4
| --- src/shun.c | ||
| +++ src/shun.c | ||
| @@ -370,17 +370,19 @@ | ||
| 370 | 370 | style_header("Content Source %d", rcvid); |
| 371 | 371 | if( db_exists( |
| 372 | 372 | "SELECT 1 FROM blob WHERE rcvid=%d AND" |
| 373 | 373 | " NOT EXISTS (SELECT 1 FROM shun WHERE shun.uuid=blob.uuid)", rcvid) |
| 374 | 374 | ){ |
| 375 | - style_submenu_element("Shun All", "Shun All", "shun?shun&rcvid=%d#addshun", rcvid); | |
| 375 | + style_submenu_element("Shun All", "Shun All", | |
| 376 | + "shun?shun&rcvid=%d#addshun", rcvid); | |
| 376 | 377 | } |
| 377 | 378 | if( db_exists( |
| 378 | 379 | "SELECT 1 FROM blob WHERE rcvid=%d AND" |
| 379 | 380 | " EXISTS (SELECT 1 FROM shun WHERE shun.uuid=blob.uuid)", rcvid) |
| 380 | 381 | ){ |
| 381 | - style_submenu_element("Unshun All", "Unshun All", "shun?accept&rcvid=%d#delshun", rcvid); | |
| 382 | + style_submenu_element("Unshun All", "Unshun All", | |
| 383 | + "shun?accept&rcvid=%d#delshun", rcvid); | |
| 382 | 384 | } |
| 383 | 385 | db_prepare(&q, |
| 384 | 386 | "SELECT login, datetime(rcvfrom.mtime), rcvfrom.ipaddr" |
| 385 | 387 | " FROM rcvfrom LEFT JOIN user USING(uid)" |
| 386 | 388 | " WHERE rcvid=%d", |
| @@ -399,22 +401,31 @@ | ||
| 399 | 401 | @ <td valign="top">%s(zDate)</td></tr> |
| 400 | 402 | @ <tr><th valign="top" align="right">IP Address:</th> |
| 401 | 403 | @ <td valign="top">%s(zIpAddr)</td></tr> |
| 402 | 404 | } |
| 403 | 405 | db_finalize(&q); |
| 406 | + db_multi_exec( | |
| 407 | + "CREATE TEMP TABLE toshow(rid INTEGER PRIMARY KEY);" | |
| 408 | + "INSERT INTO toshow SELECT rid FROM blob WHERE rcvid=%d", rcvid | |
| 409 | + ); | |
| 410 | + describe_artifacts("IN toshow"); | |
| 404 | 411 | db_prepare(&q, |
| 405 | - "SELECT rid, uuid, size FROM blob WHERE rcvid=%d", rcvid | |
| 412 | + "SELECT blob.rid, blob.uuid, blob.size, description.summary\n" | |
| 413 | + " FROM blob LEFT JOIN description ON (blob.rid=description.rid)" | |
| 414 | + " WHERE blob.rcvid=%d", rcvid | |
| 406 | 415 | ); |
| 407 | 416 | @ <tr><th valign="top" align="right">Artifacts:</th> |
| 408 | 417 | @ <td valign="top"> |
| 409 | 418 | while( db_step(&q)==SQLITE_ROW ){ |
| 410 | 419 | int rid = db_column_int(&q, 0); |
| 411 | 420 | const char *zUuid = db_column_text(&q, 1); |
| 412 | 421 | int size = db_column_int(&q, 2); |
| 422 | + const char *zDesc = db_column_text(&q, 3); | |
| 423 | + if( zDesc==0 ) zDesc = ""; | |
| 413 | 424 | @ <a href="%s(g.zTop)/info/%s(zUuid)">%s(zUuid)</a> |
| 414 | - @ (rid: %d(rid), size: %d(size))<br /> | |
| 425 | + @ %h(zDesc) (size: %d(size))<br /> | |
| 415 | 426 | } |
| 416 | 427 | @ </td></tr> |
| 417 | 428 | @ </table> |
| 418 | 429 | db_finalize(&q); |
| 419 | 430 | style_footer(); |
| 420 | 431 | } |
| 421 | 432 |
| --- src/shun.c | |
| +++ src/shun.c | |
| @@ -370,17 +370,19 @@ | |
| 370 | style_header("Content Source %d", rcvid); |
| 371 | if( db_exists( |
| 372 | "SELECT 1 FROM blob WHERE rcvid=%d AND" |
| 373 | " NOT EXISTS (SELECT 1 FROM shun WHERE shun.uuid=blob.uuid)", rcvid) |
| 374 | ){ |
| 375 | style_submenu_element("Shun All", "Shun All", "shun?shun&rcvid=%d#addshun", rcvid); |
| 376 | } |
| 377 | if( db_exists( |
| 378 | "SELECT 1 FROM blob WHERE rcvid=%d AND" |
| 379 | " EXISTS (SELECT 1 FROM shun WHERE shun.uuid=blob.uuid)", rcvid) |
| 380 | ){ |
| 381 | style_submenu_element("Unshun All", "Unshun All", "shun?accept&rcvid=%d#delshun", rcvid); |
| 382 | } |
| 383 | db_prepare(&q, |
| 384 | "SELECT login, datetime(rcvfrom.mtime), rcvfrom.ipaddr" |
| 385 | " FROM rcvfrom LEFT JOIN user USING(uid)" |
| 386 | " WHERE rcvid=%d", |
| @@ -399,22 +401,31 @@ | |
| 399 | @ <td valign="top">%s(zDate)</td></tr> |
| 400 | @ <tr><th valign="top" align="right">IP Address:</th> |
| 401 | @ <td valign="top">%s(zIpAddr)</td></tr> |
| 402 | } |
| 403 | db_finalize(&q); |
| 404 | db_prepare(&q, |
| 405 | "SELECT rid, uuid, size FROM blob WHERE rcvid=%d", rcvid |
| 406 | ); |
| 407 | @ <tr><th valign="top" align="right">Artifacts:</th> |
| 408 | @ <td valign="top"> |
| 409 | while( db_step(&q)==SQLITE_ROW ){ |
| 410 | int rid = db_column_int(&q, 0); |
| 411 | const char *zUuid = db_column_text(&q, 1); |
| 412 | int size = db_column_int(&q, 2); |
| 413 | @ <a href="%s(g.zTop)/info/%s(zUuid)">%s(zUuid)</a> |
| 414 | @ (rid: %d(rid), size: %d(size))<br /> |
| 415 | } |
| 416 | @ </td></tr> |
| 417 | @ </table> |
| 418 | db_finalize(&q); |
| 419 | style_footer(); |
| 420 | } |
| 421 |
| --- src/shun.c | |
| +++ src/shun.c | |
| @@ -370,17 +370,19 @@ | |
| 370 | style_header("Content Source %d", rcvid); |
| 371 | if( db_exists( |
| 372 | "SELECT 1 FROM blob WHERE rcvid=%d AND" |
| 373 | " NOT EXISTS (SELECT 1 FROM shun WHERE shun.uuid=blob.uuid)", rcvid) |
| 374 | ){ |
| 375 | style_submenu_element("Shun All", "Shun All", |
| 376 | "shun?shun&rcvid=%d#addshun", rcvid); |
| 377 | } |
| 378 | if( db_exists( |
| 379 | "SELECT 1 FROM blob WHERE rcvid=%d AND" |
| 380 | " EXISTS (SELECT 1 FROM shun WHERE shun.uuid=blob.uuid)", rcvid) |
| 381 | ){ |
| 382 | style_submenu_element("Unshun All", "Unshun All", |
| 383 | "shun?accept&rcvid=%d#delshun", rcvid); |
| 384 | } |
| 385 | db_prepare(&q, |
| 386 | "SELECT login, datetime(rcvfrom.mtime), rcvfrom.ipaddr" |
| 387 | " FROM rcvfrom LEFT JOIN user USING(uid)" |
| 388 | " WHERE rcvid=%d", |
| @@ -399,22 +401,31 @@ | |
| 401 | @ <td valign="top">%s(zDate)</td></tr> |
| 402 | @ <tr><th valign="top" align="right">IP Address:</th> |
| 403 | @ <td valign="top">%s(zIpAddr)</td></tr> |
| 404 | } |
| 405 | db_finalize(&q); |
| 406 | db_multi_exec( |
| 407 | "CREATE TEMP TABLE toshow(rid INTEGER PRIMARY KEY);" |
| 408 | "INSERT INTO toshow SELECT rid FROM blob WHERE rcvid=%d", rcvid |
| 409 | ); |
| 410 | describe_artifacts("IN toshow"); |
| 411 | db_prepare(&q, |
| 412 | "SELECT blob.rid, blob.uuid, blob.size, description.summary\n" |
| 413 | " FROM blob LEFT JOIN description ON (blob.rid=description.rid)" |
| 414 | " WHERE blob.rcvid=%d", rcvid |
| 415 | ); |
| 416 | @ <tr><th valign="top" align="right">Artifacts:</th> |
| 417 | @ <td valign="top"> |
| 418 | while( db_step(&q)==SQLITE_ROW ){ |
| 419 | int rid = db_column_int(&q, 0); |
| 420 | const char *zUuid = db_column_text(&q, 1); |
| 421 | int size = db_column_int(&q, 2); |
| 422 | const char *zDesc = db_column_text(&q, 3); |
| 423 | if( zDesc==0 ) zDesc = ""; |
| 424 | @ <a href="%s(g.zTop)/info/%s(zUuid)">%s(zUuid)</a> |
| 425 | @ %h(zDesc) (size: %d(size))<br /> |
| 426 | } |
| 427 | @ </td></tr> |
| 428 | @ </table> |
| 429 | db_finalize(&q); |
| 430 | style_footer(); |
| 431 | } |
| 432 |