Fossil SCM
For initial non-empty check-ins (without parent but with F-cards), add "Changes" section to "ci" page, except for the "patch" button (which is the only thing that doesn't work anyway)
Commit
79c90ac4a4a098da88e8ab8fdf681ab04ce79e0d
Parent
b93b3e8f98b850f…
1 file changed
+66
-65
+66
-65
| --- src/info.c | ||
| +++ src/info.c | ||
| @@ -665,76 +665,77 @@ | ||
| 665 | 665 | style_header("Check-in Information"); |
| 666 | 666 | login_anonymous_available(); |
| 667 | 667 | } |
| 668 | 668 | db_finalize(&q1); |
| 669 | 669 | showTags(rid, ""); |
| 670 | - if( zParent ){ | |
| 671 | - const char *zW; /* URL param for ignoring whitespace */ | |
| 672 | - const char *zPage = "vinfo"; /* Page that shows diffs */ | |
| 673 | - const char *zPageHide = "ci"; /* Page that hides diffs */ | |
| 674 | - @ <div class="section">Changes</div> | |
| 675 | - @ <div class="sectionmenu"> | |
| 676 | - verboseFlag = g.zPath[0]!='c'; | |
| 677 | - if( db_get_boolean("show-version-diffs", 0)==0 ){ | |
| 678 | - verboseFlag = !verboseFlag; | |
| 679 | - zPage = "ci"; | |
| 680 | - zPageHide = "vinfo"; | |
| 681 | - } | |
| 682 | - diffFlags = construct_diff_flags(verboseFlag, sideBySide); | |
| 683 | - zW = (diffFlags&DIFF_IGNORE_ALLWS)?"&w":""; | |
| 684 | - if( verboseFlag ){ | |
| 685 | - @ %z(xhref("class='button'","%R/%s/%T",zPageHide,zName)) | |
| 686 | - @ Hide Diffs</a> | |
| 687 | - if( sideBySide ){ | |
| 688 | - @ %z(xhref("class='button'","%R/%s/%T?sbs=0%s",zPage,zName,zW)) | |
| 689 | - @ Unified Diffs</a> | |
| 690 | - }else{ | |
| 691 | - @ %z(xhref("class='button'","%R/%s/%T?sbs=1%s",zPage,zName,zW)) | |
| 692 | - @ Side-by-Side Diffs</a> | |
| 693 | - } | |
| 694 | - if( *zW ){ | |
| 695 | - @ %z(xhref("class='button'","%R/%s/%T?sbs=%d",zPage,zName,sideBySide)) | |
| 696 | - @ Show Whitespace Changes</a> | |
| 697 | - }else{ | |
| 698 | - @ %z(xhref("class='button'","%R/%s/%T?sbs=%d&w",zPage,zName,sideBySide)) | |
| 699 | - @ Ignore Whitespace</a> | |
| 700 | - } | |
| 701 | - }else{ | |
| 702 | - @ %z(xhref("class='button'","%R/%s/%T?sbs=0",zPage,zName)) | |
| 703 | - @ Show Unified Diffs</a> | |
| 704 | - @ %z(xhref("class='button'","%R/%s/%T?sbs=1",zPage,zName)) | |
| 705 | - @ Show Side-by-Side Diffs</a> | |
| 706 | - } | |
| 670 | + const char *zW; /* URL param for ignoring whitespace */ | |
| 671 | + const char *zPage = "vinfo"; /* Page that shows diffs */ | |
| 672 | + const char *zPageHide = "ci"; /* Page that hides diffs */ | |
| 673 | + @ <div class="section">Changes</div> | |
| 674 | + @ <div class="sectionmenu"> | |
| 675 | + verboseFlag = g.zPath[0]!='c'; | |
| 676 | + if( db_get_boolean("show-version-diffs", 0)==0 ){ | |
| 677 | + verboseFlag = !verboseFlag; | |
| 678 | + zPage = "ci"; | |
| 679 | + zPageHide = "vinfo"; | |
| 680 | + } | |
| 681 | + diffFlags = construct_diff_flags(verboseFlag, sideBySide); | |
| 682 | + zW = (diffFlags&DIFF_IGNORE_ALLWS)?"&w":""; | |
| 683 | + if( verboseFlag ){ | |
| 684 | + @ %z(xhref("class='button'","%R/%s/%T",zPageHide,zName)) | |
| 685 | + @ Hide Diffs</a> | |
| 686 | + if( sideBySide ){ | |
| 687 | + @ %z(xhref("class='button'","%R/%s/%T?sbs=0%s",zPage,zName,zW)) | |
| 688 | + @ Unified Diffs</a> | |
| 689 | + }else{ | |
| 690 | + @ %z(xhref("class='button'","%R/%s/%T?sbs=1%s",zPage,zName,zW)) | |
| 691 | + @ Side-by-Side Diffs</a> | |
| 692 | + } | |
| 693 | + if( *zW ){ | |
| 694 | + @ %z(xhref("class='button'","%R/%s/%T?sbs=%d",zPage,zName,sideBySide)) | |
| 695 | + @ Show Whitespace Changes</a> | |
| 696 | + }else{ | |
| 697 | + @ %z(xhref("class='button'","%R/%s/%T?sbs=%d&w",zPage,zName,sideBySide)) | |
| 698 | + @ Ignore Whitespace</a> | |
| 699 | + } | |
| 700 | + }else{ | |
| 701 | + @ %z(xhref("class='button'","%R/%s/%T?sbs=0",zPage,zName)) | |
| 702 | + @ Show Unified Diffs</a> | |
| 703 | + @ %z(xhref("class='button'","%R/%s/%T?sbs=1",zPage,zName)) | |
| 704 | + @ Show Side-by-Side Diffs</a> | |
| 705 | + } | |
| 706 | + if( zParent ){ | |
| 707 | 707 | @ %z(xhref("class='button'","%R/vpatch?from=%S&to=%S",zParent,zUuid)) |
| 708 | - @ Patch</a></div> | |
| 709 | - if( pRe ){ | |
| 710 | - @ <p><b>Only differences that match regular expression "%h(zRe)" | |
| 711 | - @ are shown.</b></p> | |
| 712 | - } | |
| 713 | - db_prepare(&q3, | |
| 714 | - "SELECT name," | |
| 715 | - " mperm," | |
| 716 | - " (SELECT uuid FROM blob WHERE rid=mlink.pid)," | |
| 717 | - " (SELECT uuid FROM blob WHERE rid=mlink.fid)," | |
| 718 | - " (SELECT name FROM filename WHERE filename.fnid=mlink.pfnid)" | |
| 719 | - " FROM mlink JOIN filename ON filename.fnid=mlink.fnid" | |
| 720 | - " WHERE mlink.mid=%d" | |
| 721 | - " AND (mlink.fid>0" | |
| 722 | - " OR mlink.fnid NOT IN (SELECT pfnid FROM mlink WHERE mid=%d))" | |
| 723 | - " ORDER BY name /*sort*/", | |
| 724 | - rid, rid | |
| 725 | - ); | |
| 726 | - while( db_step(&q3)==SQLITE_ROW ){ | |
| 727 | - const char *zName = db_column_text(&q3,0); | |
| 728 | - int mperm = db_column_int(&q3, 1); | |
| 729 | - const char *zOld = db_column_text(&q3,2); | |
| 730 | - const char *zNew = db_column_text(&q3,3); | |
| 731 | - const char *zOldName = db_column_text(&q3, 4); | |
| 732 | - append_file_change_line(zName, zOld, zNew, zOldName, diffFlags,pRe,mperm); | |
| 733 | - } | |
| 734 | - db_finalize(&q3); | |
| 735 | - } | |
| 708 | + @ Patch</a> | |
| 709 | + } | |
| 710 | + @</div> | |
| 711 | + if( pRe ){ | |
| 712 | + @ <p><b>Only differences that match regular expression "%h(zRe)" | |
| 713 | + @ are shown.</b></p> | |
| 714 | + } | |
| 715 | + db_prepare(&q3, | |
| 716 | + "SELECT name," | |
| 717 | + " mperm," | |
| 718 | + " (SELECT uuid FROM blob WHERE rid=mlink.pid)," | |
| 719 | + " (SELECT uuid FROM blob WHERE rid=mlink.fid)," | |
| 720 | + " (SELECT name FROM filename WHERE filename.fnid=mlink.pfnid)" | |
| 721 | + " FROM mlink JOIN filename ON filename.fnid=mlink.fnid" | |
| 722 | + " WHERE mlink.mid=%d" | |
| 723 | + " AND (mlink.fid>0" | |
| 724 | + " OR mlink.fnid NOT IN (SELECT pfnid FROM mlink WHERE mid=%d))" | |
| 725 | + " ORDER BY name /*sort*/", | |
| 726 | + rid, rid | |
| 727 | + ); | |
| 728 | + while( db_step(&q3)==SQLITE_ROW ){ | |
| 729 | + const char *zName = db_column_text(&q3,0); | |
| 730 | + int mperm = db_column_int(&q3, 1); | |
| 731 | + const char *zOld = db_column_text(&q3,2); | |
| 732 | + const char *zNew = db_column_text(&q3,3); | |
| 733 | + const char *zOldName = db_column_text(&q3, 4); | |
| 734 | + append_file_change_line(zName, zOld, zNew, zOldName, diffFlags,pRe,mperm); | |
| 735 | + } | |
| 736 | + db_finalize(&q3); | |
| 736 | 737 | append_diff_javascript(sideBySide); |
| 737 | 738 | style_footer(); |
| 738 | 739 | } |
| 739 | 740 | |
| 740 | 741 | /* |
| 741 | 742 |
| --- src/info.c | |
| +++ src/info.c | |
| @@ -665,76 +665,77 @@ | |
| 665 | style_header("Check-in Information"); |
| 666 | login_anonymous_available(); |
| 667 | } |
| 668 | db_finalize(&q1); |
| 669 | showTags(rid, ""); |
| 670 | if( zParent ){ |
| 671 | const char *zW; /* URL param for ignoring whitespace */ |
| 672 | const char *zPage = "vinfo"; /* Page that shows diffs */ |
| 673 | const char *zPageHide = "ci"; /* Page that hides diffs */ |
| 674 | @ <div class="section">Changes</div> |
| 675 | @ <div class="sectionmenu"> |
| 676 | verboseFlag = g.zPath[0]!='c'; |
| 677 | if( db_get_boolean("show-version-diffs", 0)==0 ){ |
| 678 | verboseFlag = !verboseFlag; |
| 679 | zPage = "ci"; |
| 680 | zPageHide = "vinfo"; |
| 681 | } |
| 682 | diffFlags = construct_diff_flags(verboseFlag, sideBySide); |
| 683 | zW = (diffFlags&DIFF_IGNORE_ALLWS)?"&w":""; |
| 684 | if( verboseFlag ){ |
| 685 | @ %z(xhref("class='button'","%R/%s/%T",zPageHide,zName)) |
| 686 | @ Hide Diffs</a> |
| 687 | if( sideBySide ){ |
| 688 | @ %z(xhref("class='button'","%R/%s/%T?sbs=0%s",zPage,zName,zW)) |
| 689 | @ Unified Diffs</a> |
| 690 | }else{ |
| 691 | @ %z(xhref("class='button'","%R/%s/%T?sbs=1%s",zPage,zName,zW)) |
| 692 | @ Side-by-Side Diffs</a> |
| 693 | } |
| 694 | if( *zW ){ |
| 695 | @ %z(xhref("class='button'","%R/%s/%T?sbs=%d",zPage,zName,sideBySide)) |
| 696 | @ Show Whitespace Changes</a> |
| 697 | }else{ |
| 698 | @ %z(xhref("class='button'","%R/%s/%T?sbs=%d&w",zPage,zName,sideBySide)) |
| 699 | @ Ignore Whitespace</a> |
| 700 | } |
| 701 | }else{ |
| 702 | @ %z(xhref("class='button'","%R/%s/%T?sbs=0",zPage,zName)) |
| 703 | @ Show Unified Diffs</a> |
| 704 | @ %z(xhref("class='button'","%R/%s/%T?sbs=1",zPage,zName)) |
| 705 | @ Show Side-by-Side Diffs</a> |
| 706 | } |
| 707 | @ %z(xhref("class='button'","%R/vpatch?from=%S&to=%S",zParent,zUuid)) |
| 708 | @ Patch</a></div> |
| 709 | if( pRe ){ |
| 710 | @ <p><b>Only differences that match regular expression "%h(zRe)" |
| 711 | @ are shown.</b></p> |
| 712 | } |
| 713 | db_prepare(&q3, |
| 714 | "SELECT name," |
| 715 | " mperm," |
| 716 | " (SELECT uuid FROM blob WHERE rid=mlink.pid)," |
| 717 | " (SELECT uuid FROM blob WHERE rid=mlink.fid)," |
| 718 | " (SELECT name FROM filename WHERE filename.fnid=mlink.pfnid)" |
| 719 | " FROM mlink JOIN filename ON filename.fnid=mlink.fnid" |
| 720 | " WHERE mlink.mid=%d" |
| 721 | " AND (mlink.fid>0" |
| 722 | " OR mlink.fnid NOT IN (SELECT pfnid FROM mlink WHERE mid=%d))" |
| 723 | " ORDER BY name /*sort*/", |
| 724 | rid, rid |
| 725 | ); |
| 726 | while( db_step(&q3)==SQLITE_ROW ){ |
| 727 | const char *zName = db_column_text(&q3,0); |
| 728 | int mperm = db_column_int(&q3, 1); |
| 729 | const char *zOld = db_column_text(&q3,2); |
| 730 | const char *zNew = db_column_text(&q3,3); |
| 731 | const char *zOldName = db_column_text(&q3, 4); |
| 732 | append_file_change_line(zName, zOld, zNew, zOldName, diffFlags,pRe,mperm); |
| 733 | } |
| 734 | db_finalize(&q3); |
| 735 | } |
| 736 | append_diff_javascript(sideBySide); |
| 737 | style_footer(); |
| 738 | } |
| 739 | |
| 740 | /* |
| 741 |
| --- src/info.c | |
| +++ src/info.c | |
| @@ -665,76 +665,77 @@ | |
| 665 | style_header("Check-in Information"); |
| 666 | login_anonymous_available(); |
| 667 | } |
| 668 | db_finalize(&q1); |
| 669 | showTags(rid, ""); |
| 670 | const char *zW; /* URL param for ignoring whitespace */ |
| 671 | const char *zPage = "vinfo"; /* Page that shows diffs */ |
| 672 | const char *zPageHide = "ci"; /* Page that hides diffs */ |
| 673 | @ <div class="section">Changes</div> |
| 674 | @ <div class="sectionmenu"> |
| 675 | verboseFlag = g.zPath[0]!='c'; |
| 676 | if( db_get_boolean("show-version-diffs", 0)==0 ){ |
| 677 | verboseFlag = !verboseFlag; |
| 678 | zPage = "ci"; |
| 679 | zPageHide = "vinfo"; |
| 680 | } |
| 681 | diffFlags = construct_diff_flags(verboseFlag, sideBySide); |
| 682 | zW = (diffFlags&DIFF_IGNORE_ALLWS)?"&w":""; |
| 683 | if( verboseFlag ){ |
| 684 | @ %z(xhref("class='button'","%R/%s/%T",zPageHide,zName)) |
| 685 | @ Hide Diffs</a> |
| 686 | if( sideBySide ){ |
| 687 | @ %z(xhref("class='button'","%R/%s/%T?sbs=0%s",zPage,zName,zW)) |
| 688 | @ Unified Diffs</a> |
| 689 | }else{ |
| 690 | @ %z(xhref("class='button'","%R/%s/%T?sbs=1%s",zPage,zName,zW)) |
| 691 | @ Side-by-Side Diffs</a> |
| 692 | } |
| 693 | if( *zW ){ |
| 694 | @ %z(xhref("class='button'","%R/%s/%T?sbs=%d",zPage,zName,sideBySide)) |
| 695 | @ Show Whitespace Changes</a> |
| 696 | }else{ |
| 697 | @ %z(xhref("class='button'","%R/%s/%T?sbs=%d&w",zPage,zName,sideBySide)) |
| 698 | @ Ignore Whitespace</a> |
| 699 | } |
| 700 | }else{ |
| 701 | @ %z(xhref("class='button'","%R/%s/%T?sbs=0",zPage,zName)) |
| 702 | @ Show Unified Diffs</a> |
| 703 | @ %z(xhref("class='button'","%R/%s/%T?sbs=1",zPage,zName)) |
| 704 | @ Show Side-by-Side Diffs</a> |
| 705 | } |
| 706 | if( zParent ){ |
| 707 | @ %z(xhref("class='button'","%R/vpatch?from=%S&to=%S",zParent,zUuid)) |
| 708 | @ Patch</a> |
| 709 | } |
| 710 | @</div> |
| 711 | if( pRe ){ |
| 712 | @ <p><b>Only differences that match regular expression "%h(zRe)" |
| 713 | @ are shown.</b></p> |
| 714 | } |
| 715 | db_prepare(&q3, |
| 716 | "SELECT name," |
| 717 | " mperm," |
| 718 | " (SELECT uuid FROM blob WHERE rid=mlink.pid)," |
| 719 | " (SELECT uuid FROM blob WHERE rid=mlink.fid)," |
| 720 | " (SELECT name FROM filename WHERE filename.fnid=mlink.pfnid)" |
| 721 | " FROM mlink JOIN filename ON filename.fnid=mlink.fnid" |
| 722 | " WHERE mlink.mid=%d" |
| 723 | " AND (mlink.fid>0" |
| 724 | " OR mlink.fnid NOT IN (SELECT pfnid FROM mlink WHERE mid=%d))" |
| 725 | " ORDER BY name /*sort*/", |
| 726 | rid, rid |
| 727 | ); |
| 728 | while( db_step(&q3)==SQLITE_ROW ){ |
| 729 | const char *zName = db_column_text(&q3,0); |
| 730 | int mperm = db_column_int(&q3, 1); |
| 731 | const char *zOld = db_column_text(&q3,2); |
| 732 | const char *zNew = db_column_text(&q3,3); |
| 733 | const char *zOldName = db_column_text(&q3, 4); |
| 734 | append_file_change_line(zName, zOld, zNew, zOldName, diffFlags,pRe,mperm); |
| 735 | } |
| 736 | db_finalize(&q3); |
| 737 | append_diff_javascript(sideBySide); |
| 738 | style_footer(); |
| 739 | } |
| 740 | |
| 741 | /* |
| 742 |