Fossil SCM

added a gui diff form to enter the UUIDs, branches, .. and add a link to info page

wolfgang 2010-10-09 13:33 wolfgangHelpCmd
Commit cee3e0812cf451e799e6efa97395d0ef7c232724
1 file changed +30 -4
+30 -4
--- src/info.c
+++ src/info.c
@@ -423,10 +423,12 @@
423423
}
424424
@ | <a href="%s(g.zTop)/artifact/%S(zUuid)">manifest</a>
425425
if( g.okWrite ){
426426
@ | <a href="%s(g.zTop)/ci_edit?r=%S(zUuid)">edit</a>
427427
}
428
+ @ | <a href="%s(g.zTop)/vdiff?from=%S(zUuid)">
429
+ @ diff against another version</a>
428430
@ </td>
429431
@ </tr>
430432
}
431433
@ </table>
432434
}else{
@@ -624,21 +626,45 @@
624626
**
625627
** Show all differences between two checkins.
626628
*/
627629
void vdiff_page(void){
628630
int ridFrom, ridTo;
629
- int showDetail = 0;
631
+ int showDetail = atoi(PD("detail","0"));
632
+ const char *zFrom = P("from");
633
+ const char *zTo = P("to");
630634
int iFrom, iTo;
631635
Manifest mFrom, mTo;
632636
633637
login_check_credentials();
634638
if( !g.okRead ){ login_needed(); return; }
635639
login_anonymous_available();
636640
637
- if( vdiff_parse_manifest("from", &ridFrom, &mFrom) ) return;
638
- if( vdiff_parse_manifest("to", &ridTo, &mTo) ) return;
639
- showDetail = atoi(PD("detail","0"));
641
+ if( !zFrom || !zFrom[0] || !zTo || !zTo[0] ){
642
+ /* if from or to or both are bissing, show a form to enter
643
+ ** the query parameters by hand
644
+ */
645
+ style_header("Check-in Differences");
646
+ @ <p><br/>
647
+ @ Enter below the UUIDs, branch- or tag-names, you wish to diff:
648
+ @ <br/></p>
649
+ @ <form action="%s(g.zBaseURL)/vdiff" method="post"><div>
650
+ @ <table><tr><td>from:</td><td><input type="text" size="40"
651
+ @ name="from" value="%s(zFrom?zFrom:"")" /></td><td></td></tr>
652
+ @ <tr><td>to:</td><td><input type="text" size="40"
653
+ @ name="to" value="%s(zTo?zTo:"")" /></td><td></td></tr>
654
+ @ <tr><td>details:</td><td><input type="checkbox" name="detail"
655
+ @ checked="checked" value="1" /></td></tr>
656
+ @ <tr><td></td><td></td><td>
657
+ @ <input type="submit" name="diff" value="diff" /></td></tr></table>
658
+ @ </div></form>
659
+ style_footer();
660
+ return;
661
+ }else if( vdiff_parse_manifest("from", &ridFrom, &mFrom)
662
+ || vdiff_parse_manifest("to", &ridTo, &mTo)
663
+ ){
664
+ return;
665
+ }
640666
style_header("Check-in Differences");
641667
@ <h2>Difference From:</h2><blockquote>
642668
checkin_description(ridFrom);
643669
@ </blockquote><h2>To:</h2><blockquote>
644670
checkin_description(ridTo);
645671
--- src/info.c
+++ src/info.c
@@ -423,10 +423,12 @@
423 }
424 @ | <a href="%s(g.zTop)/artifact/%S(zUuid)">manifest</a>
425 if( g.okWrite ){
426 @ | <a href="%s(g.zTop)/ci_edit?r=%S(zUuid)">edit</a>
427 }
 
 
428 @ </td>
429 @ </tr>
430 }
431 @ </table>
432 }else{
@@ -624,21 +626,45 @@
624 **
625 ** Show all differences between two checkins.
626 */
627 void vdiff_page(void){
628 int ridFrom, ridTo;
629 int showDetail = 0;
 
 
630 int iFrom, iTo;
631 Manifest mFrom, mTo;
632
633 login_check_credentials();
634 if( !g.okRead ){ login_needed(); return; }
635 login_anonymous_available();
636
637 if( vdiff_parse_manifest("from", &ridFrom, &mFrom) ) return;
638 if( vdiff_parse_manifest("to", &ridTo, &mTo) ) return;
639 showDetail = atoi(PD("detail","0"));
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
640 style_header("Check-in Differences");
641 @ <h2>Difference From:</h2><blockquote>
642 checkin_description(ridFrom);
643 @ </blockquote><h2>To:</h2><blockquote>
644 checkin_description(ridTo);
645
--- src/info.c
+++ src/info.c
@@ -423,10 +423,12 @@
423 }
424 @ | <a href="%s(g.zTop)/artifact/%S(zUuid)">manifest</a>
425 if( g.okWrite ){
426 @ | <a href="%s(g.zTop)/ci_edit?r=%S(zUuid)">edit</a>
427 }
428 @ | <a href="%s(g.zTop)/vdiff?from=%S(zUuid)">
429 @ diff against another version</a>
430 @ </td>
431 @ </tr>
432 }
433 @ </table>
434 }else{
@@ -624,21 +626,45 @@
626 **
627 ** Show all differences between two checkins.
628 */
629 void vdiff_page(void){
630 int ridFrom, ridTo;
631 int showDetail = atoi(PD("detail","0"));
632 const char *zFrom = P("from");
633 const char *zTo = P("to");
634 int iFrom, iTo;
635 Manifest mFrom, mTo;
636
637 login_check_credentials();
638 if( !g.okRead ){ login_needed(); return; }
639 login_anonymous_available();
640
641 if( !zFrom || !zFrom[0] || !zTo || !zTo[0] ){
642 /* if from or to or both are bissing, show a form to enter
643 ** the query parameters by hand
644 */
645 style_header("Check-in Differences");
646 @ <p><br/>
647 @ Enter below the UUIDs, branch- or tag-names, you wish to diff:
648 @ <br/></p>
649 @ <form action="%s(g.zBaseURL)/vdiff" method="post"><div>
650 @ <table><tr><td>from:</td><td><input type="text" size="40"
651 @ name="from" value="%s(zFrom?zFrom:"")" /></td><td></td></tr>
652 @ <tr><td>to:</td><td><input type="text" size="40"
653 @ name="to" value="%s(zTo?zTo:"")" /></td><td></td></tr>
654 @ <tr><td>details:</td><td><input type="checkbox" name="detail"
655 @ checked="checked" value="1" /></td></tr>
656 @ <tr><td></td><td></td><td>
657 @ <input type="submit" name="diff" value="diff" /></td></tr></table>
658 @ </div></form>
659 style_footer();
660 return;
661 }else if( vdiff_parse_manifest("from", &ridFrom, &mFrom)
662 || vdiff_parse_manifest("to", &ridTo, &mTo)
663 ){
664 return;
665 }
666 style_header("Check-in Differences");
667 @ <h2>Difference From:</h2><blockquote>
668 checkin_description(ridFrom);
669 @ </blockquote><h2>To:</h2><blockquote>
670 checkin_description(ridTo);
671

Keyboard Shortcuts

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