Fossil

Check-in [1186f65e]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:New <span> element with the timelineExtraLinks class for the hyperlinks at the end of each entry on the /finfo page.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | timeline-improvements
Files: files | file ages | folders
SHA3-256: 1186f65ec5aa940238a6f1468eb1c0e6d17f19103f167b179f4d6ae3e2108ce5
User & Date: drh 2017-11-24 16:25:18
Context
2017-11-24
20:04
Add the "Comment Format" selector for to the /setup_timeline page. This allows the admin to configure the timeline comment display in various ways, so that nearly all preferences are satisfied. Closed-Leaf check-in: 4cb350ec user: drh tags: timeline-improvements
16:25
New <span> element with the timelineExtraLinks class for the hyperlinks at the end of each entry on the /finfo page. check-in: 1186f65e user: drh tags: timeline-improvements
16:06
Restore this display of "Leaf" and "Closed-Leaf" but now put it after the check-in comment. check-in: 2df238e5 user: drh tags: timeline-improvements
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to src/finfo.c.

521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
...
550
551
552
553
554
555
556

557
558
559
560
561
562
563
564

565
566
567
568
569
570
571
...
573
574
575
576
577
578
579

580
581
582
583
584
585
586
    hyperlink_to_uuid(zCkin);
    if( fShowId ){
      @ (%d(fmid))
    }
    @ user:
    hyperlink_to_user(zUser, zDate, ",");
    @ branch: %z(href("%R/timeline?t=%T&n=200",zBr))%h(zBr)</a>,
    @ size: %d(szFile))</span>
    if( zUuid && origCheckin==0 ){
      if( nParent==0 ){
        @ <b>Added</b>
      }else if( pfnid ){
        char *zPrevName = db_text(0,"SELECT name FROM filename WHERE fnid=%d",
                                  pfnid);
        @ <b>Renamed</b> from
................................................................................
        fossil_free(zNewName);
      }else{
        @ <b>Deleted</b>
      }
    }
    if( g.perm.Hyperlink && zUuid ){
      const char *z = zFilename;

      @ %z(href("%R/annotate?filename=%h&checkin=%s",z,zCkin))
      @ [annotate]</a>
      @ %z(href("%R/blame?filename=%h&checkin=%s",z,zCkin))
      @ [blame]</a>
      @ %z(href("%R/timeline?n=200&uf=%!S",zUuid))[check-ins&nbsp;using]</a>
      if( fpid>0 ){
        @ %z(href("%R/fdiff?sbs=1&v1=%!S&v2=%!S",zPUuid,zUuid))[diff]</a>
      }

    }
    if( fDebug & FINFO_DEBUG_MLINK ){
      int ii;
      char *zAncLink;
      @ <br />fid=%d(frid) pid=%d(fpid) mid=%d(fmid)
      if( nParent>0 ){
        @ parents=%d(aParent[0])
................................................................................
          @ %d(aParent[ii])
        }
      }
      zAncLink = href("%R/finfo?name=%T&ci=%!S&debug=1",zFilename,zCkin);
      @ %z(zAncLink)[ancestry]</a>
    }
    tag_private_status(frid);

    @ </td></tr>
  }
  db_finalize(&q);
  db_finalize(&qparent);
  if( pGraph ){
    graph_finish(pGraph, 1);
    if( pGraph->nErr ){







|







 







>








>







 







>







521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
...
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
...
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
    hyperlink_to_uuid(zCkin);
    if( fShowId ){
      @ (%d(fmid))
    }
    @ user:
    hyperlink_to_user(zUser, zDate, ",");
    @ branch: %z(href("%R/timeline?t=%T&n=200",zBr))%h(zBr)</a>,
    @ size: %d(szFile))
    if( zUuid && origCheckin==0 ){
      if( nParent==0 ){
        @ <b>Added</b>
      }else if( pfnid ){
        char *zPrevName = db_text(0,"SELECT name FROM filename WHERE fnid=%d",
                                  pfnid);
        @ <b>Renamed</b> from
................................................................................
        fossil_free(zNewName);
      }else{
        @ <b>Deleted</b>
      }
    }
    if( g.perm.Hyperlink && zUuid ){
      const char *z = zFilename;
      @ <span class='timelineExtraLinks'>
      @ %z(href("%R/annotate?filename=%h&checkin=%s",z,zCkin))
      @ [annotate]</a>
      @ %z(href("%R/blame?filename=%h&checkin=%s",z,zCkin))
      @ [blame]</a>
      @ %z(href("%R/timeline?n=200&uf=%!S",zUuid))[check-ins&nbsp;using]</a>
      if( fpid>0 ){
        @ %z(href("%R/fdiff?sbs=1&v1=%!S&v2=%!S",zPUuid,zUuid))[diff]</a>
      }
      @ </span>
    }
    if( fDebug & FINFO_DEBUG_MLINK ){
      int ii;
      char *zAncLink;
      @ <br />fid=%d(frid) pid=%d(fpid) mid=%d(fmid)
      if( nParent>0 ){
        @ parents=%d(aParent[0])
................................................................................
          @ %d(aParent[ii])
        }
      }
      zAncLink = href("%R/finfo?name=%T&ci=%!S&debug=1",zFilename,zCkin);
      @ %z(zAncLink)[ancestry]</a>
    }
    tag_private_status(frid);
    @ </span>
    @ </td></tr>
  }
  db_finalize(&q);
  db_finalize(&qparent);
  if( pGraph ){
    graph_finish(pGraph, 1);
    if( pGraph->nErr ){