Fossil SCM

On the Unknown Artifacts section of the /artifact_stats page, provide links to the RCVFROM table entry for each unknown artifact.

drh 2017-12-10 00:56 trunk
Commit 9f9ed245f963572a21d1469d7d5f5d16432ac9f9d3ae42ac377b8d4c4bae5875
1 file changed +4 -4
+4 -4
--- src/stat.c
+++ src/stat.c
@@ -697,11 +697,11 @@
697697
698698
if( db_exists("SELECT 1 FROM artstat WHERE atype='unknown'") ){
699699
@ <h2>Unknown Artifacts</h2>
700700
db_prepare(&q,
701701
"SELECT artstat.id, blob.uuid, user.login,"
702
- " datetime(rcvfrom.mtime), rcvfrom.ipaddr"
702
+ " datetime(rcvfrom.mtime), rcvfrom.rcvid"
703703
" FROM artstat JOIN blob ON artstat.id=blob.rid"
704704
" LEFT JOIN rcvfrom USING(rcvid)"
705705
" LEFT JOIN user USING(uid)"
706706
" WHERE atype='unknown'"
707707
);
@@ -710,25 +710,25 @@
710710
@ <thead><tr>
711711
@ <th>RecordID</th>
712712
@ <th>Hash</th>
713713
@ <th>User</th>
714714
@ <th>Date</th>
715
- @ <th>IP-Addr</th>
715
+ @ <th>RcvID</th>
716716
@ </tr></thead><tbody>
717717
while( db_step(&q)==SQLITE_ROW ){
718718
int rid = db_column_int(&q, 0);
719719
const char *zHash = db_column_text(&q, 1);
720720
const char *zUser = db_column_text(&q, 2);
721721
const char *zDate = db_column_text(&q, 3);
722
- const char *zIpAddr = db_column_text(&q, 4);
722
+ int iRcvid = db_column_int(&q, 4);
723723
@ <tr><td>%d(rid)</td>
724724
@ <td>%z(href("%R/info/%!S",zHash))%S(zHash)</a></td>
725725
@ <td>%h(zUser)</td>
726726
@ <td>%h(zDate)</td>
727
- @ <td>%h(zIpAddr)</td></tr>
727
+ @ <td>%z(href("%R/rcvfrom?rcvid=%d",iRcvid))%d(iRcvid)</a></td></tr>
728728
}
729729
@ </tbody></table></div>
730730
db_finalize(&q);
731731
}
732732
style_table_sorter();
733733
style_footer();
734734
}
735735
--- src/stat.c
+++ src/stat.c
@@ -697,11 +697,11 @@
697
698 if( db_exists("SELECT 1 FROM artstat WHERE atype='unknown'") ){
699 @ <h2>Unknown Artifacts</h2>
700 db_prepare(&q,
701 "SELECT artstat.id, blob.uuid, user.login,"
702 " datetime(rcvfrom.mtime), rcvfrom.ipaddr"
703 " FROM artstat JOIN blob ON artstat.id=blob.rid"
704 " LEFT JOIN rcvfrom USING(rcvid)"
705 " LEFT JOIN user USING(uid)"
706 " WHERE atype='unknown'"
707 );
@@ -710,25 +710,25 @@
710 @ <thead><tr>
711 @ <th>RecordID</th>
712 @ <th>Hash</th>
713 @ <th>User</th>
714 @ <th>Date</th>
715 @ <th>IP-Addr</th>
716 @ </tr></thead><tbody>
717 while( db_step(&q)==SQLITE_ROW ){
718 int rid = db_column_int(&q, 0);
719 const char *zHash = db_column_text(&q, 1);
720 const char *zUser = db_column_text(&q, 2);
721 const char *zDate = db_column_text(&q, 3);
722 const char *zIpAddr = db_column_text(&q, 4);
723 @ <tr><td>%d(rid)</td>
724 @ <td>%z(href("%R/info/%!S",zHash))%S(zHash)</a></td>
725 @ <td>%h(zUser)</td>
726 @ <td>%h(zDate)</td>
727 @ <td>%h(zIpAddr)</td></tr>
728 }
729 @ </tbody></table></div>
730 db_finalize(&q);
731 }
732 style_table_sorter();
733 style_footer();
734 }
735
--- src/stat.c
+++ src/stat.c
@@ -697,11 +697,11 @@
697
698 if( db_exists("SELECT 1 FROM artstat WHERE atype='unknown'") ){
699 @ <h2>Unknown Artifacts</h2>
700 db_prepare(&q,
701 "SELECT artstat.id, blob.uuid, user.login,"
702 " datetime(rcvfrom.mtime), rcvfrom.rcvid"
703 " FROM artstat JOIN blob ON artstat.id=blob.rid"
704 " LEFT JOIN rcvfrom USING(rcvid)"
705 " LEFT JOIN user USING(uid)"
706 " WHERE atype='unknown'"
707 );
@@ -710,25 +710,25 @@
710 @ <thead><tr>
711 @ <th>RecordID</th>
712 @ <th>Hash</th>
713 @ <th>User</th>
714 @ <th>Date</th>
715 @ <th>RcvID</th>
716 @ </tr></thead><tbody>
717 while( db_step(&q)==SQLITE_ROW ){
718 int rid = db_column_int(&q, 0);
719 const char *zHash = db_column_text(&q, 1);
720 const char *zUser = db_column_text(&q, 2);
721 const char *zDate = db_column_text(&q, 3);
722 int iRcvid = db_column_int(&q, 4);
723 @ <tr><td>%d(rid)</td>
724 @ <td>%z(href("%R/info/%!S",zHash))%S(zHash)</a></td>
725 @ <td>%h(zUser)</td>
726 @ <td>%h(zDate)</td>
727 @ <td>%z(href("%R/rcvfrom?rcvid=%d",iRcvid))%d(iRcvid)</a></td></tr>
728 }
729 @ </tbody></table></div>
730 db_finalize(&q);
731 }
732 style_table_sorter();
733 style_footer();
734 }
735

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button