Fossil SCM
Improve /brlist page so that several branches can be easily selected for the dedicated study via /timeline page. This is implemented using simple JavaScript that interactively changes a special hyperlink in the submenu of /brlist page. See [forum:/fomumthread/07c94e4d7c202e|forum thread 07c94e4d7c].
Commit
08433ff8c9f6b035dcdf5b282bd704af0f438d01ecc4d9da95321b2362754b91
Parent
8913402d1026017…
2 files changed
+4
-1
+1
+4
-1
| --- src/branch.c | ||
| +++ src/branch.c | ||
| @@ -467,10 +467,11 @@ | ||
| 467 | 467 | if( !g.perm.Read ){ login_needed(g.anon.Read); return; } |
| 468 | 468 | style_set_current_feature("branch"); |
| 469 | 469 | style_header("Branches"); |
| 470 | 470 | style_adunit_config(ADUNIT_RIGHT_OK); |
| 471 | 471 | style_submenu_checkbox("colors", "Use Branch Colors", 0, 0); |
| 472 | + style_submenu_element("Timeline", "%R/timeline"); | |
| 472 | 473 | login_anonymous_available(); |
| 473 | 474 | |
| 474 | 475 | brlist_create_temp_table(); |
| 475 | 476 | db_prepare(&q, "SELECT * FROM tmp_brlist ORDER BY mtime DESC"); |
| 476 | 477 | rNow = db_double(0.0, "SELECT julianday('now')"); |
| @@ -504,11 +505,12 @@ | ||
| 504 | 505 | if( zBgClr && zBgClr[0] && show_colors ){ |
| 505 | 506 | @ <tr style="background-color:%s(zBgClr)"> |
| 506 | 507 | }else{ |
| 507 | 508 | @ <tr> |
| 508 | 509 | } |
| 509 | - @ <td>%z(href("%R/timeline?r=%T",zBranch))%h(zBranch)</a></td> | |
| 510 | + @ <td>%z(href("%R/timeline?r=%T",zBranch))%h(zBranch)</a> | |
| 511 | + @ <input type="checkbox" disabled="disabled"/></td> | |
| 510 | 512 | @ <td data-sortkey="%016llx(iMtime)">%s(zAge)</td> |
| 511 | 513 | @ <td>%d(nCkin)</td> |
| 512 | 514 | fossil_free(zAge); |
| 513 | 515 | @ <td>%s(isClosed?"closed":"")</td> |
| 514 | 516 | if( zMergeTo ){ |
| @@ -519,10 +521,11 @@ | ||
| 519 | 521 | } |
| 520 | 522 | @ </tr> |
| 521 | 523 | } |
| 522 | 524 | @ </tbody></table></div> |
| 523 | 525 | db_finalize(&q); |
| 526 | + builtin_request_js("fossil.page.brlist.js"); | |
| 524 | 527 | style_table_sorter(); |
| 525 | 528 | style_finish_page(); |
| 526 | 529 | } |
| 527 | 530 | |
| 528 | 531 | /* |
| 529 | 532 |
| --- src/branch.c | |
| +++ src/branch.c | |
| @@ -467,10 +467,11 @@ | |
| 467 | if( !g.perm.Read ){ login_needed(g.anon.Read); return; } |
| 468 | style_set_current_feature("branch"); |
| 469 | style_header("Branches"); |
| 470 | style_adunit_config(ADUNIT_RIGHT_OK); |
| 471 | style_submenu_checkbox("colors", "Use Branch Colors", 0, 0); |
| 472 | login_anonymous_available(); |
| 473 | |
| 474 | brlist_create_temp_table(); |
| 475 | db_prepare(&q, "SELECT * FROM tmp_brlist ORDER BY mtime DESC"); |
| 476 | rNow = db_double(0.0, "SELECT julianday('now')"); |
| @@ -504,11 +505,12 @@ | |
| 504 | if( zBgClr && zBgClr[0] && show_colors ){ |
| 505 | @ <tr style="background-color:%s(zBgClr)"> |
| 506 | }else{ |
| 507 | @ <tr> |
| 508 | } |
| 509 | @ <td>%z(href("%R/timeline?r=%T",zBranch))%h(zBranch)</a></td> |
| 510 | @ <td data-sortkey="%016llx(iMtime)">%s(zAge)</td> |
| 511 | @ <td>%d(nCkin)</td> |
| 512 | fossil_free(zAge); |
| 513 | @ <td>%s(isClosed?"closed":"")</td> |
| 514 | if( zMergeTo ){ |
| @@ -519,10 +521,11 @@ | |
| 519 | } |
| 520 | @ </tr> |
| 521 | } |
| 522 | @ </tbody></table></div> |
| 523 | db_finalize(&q); |
| 524 | style_table_sorter(); |
| 525 | style_finish_page(); |
| 526 | } |
| 527 | |
| 528 | /* |
| 529 |
| --- src/branch.c | |
| +++ src/branch.c | |
| @@ -467,10 +467,11 @@ | |
| 467 | if( !g.perm.Read ){ login_needed(g.anon.Read); return; } |
| 468 | style_set_current_feature("branch"); |
| 469 | style_header("Branches"); |
| 470 | style_adunit_config(ADUNIT_RIGHT_OK); |
| 471 | style_submenu_checkbox("colors", "Use Branch Colors", 0, 0); |
| 472 | style_submenu_element("Timeline", "%R/timeline"); |
| 473 | login_anonymous_available(); |
| 474 | |
| 475 | brlist_create_temp_table(); |
| 476 | db_prepare(&q, "SELECT * FROM tmp_brlist ORDER BY mtime DESC"); |
| 477 | rNow = db_double(0.0, "SELECT julianday('now')"); |
| @@ -504,11 +505,12 @@ | |
| 505 | if( zBgClr && zBgClr[0] && show_colors ){ |
| 506 | @ <tr style="background-color:%s(zBgClr)"> |
| 507 | }else{ |
| 508 | @ <tr> |
| 509 | } |
| 510 | @ <td>%z(href("%R/timeline?r=%T",zBranch))%h(zBranch)</a> |
| 511 | @ <input type="checkbox" disabled="disabled"/></td> |
| 512 | @ <td data-sortkey="%016llx(iMtime)">%s(zAge)</td> |
| 513 | @ <td>%d(nCkin)</td> |
| 514 | fossil_free(zAge); |
| 515 | @ <td>%s(isClosed?"closed":"")</td> |
| 516 | if( zMergeTo ){ |
| @@ -519,10 +521,11 @@ | |
| 521 | } |
| 522 | @ </tr> |
| 523 | } |
| 524 | @ </tbody></table></div> |
| 525 | db_finalize(&q); |
| 526 | builtin_request_js("fossil.page.brlist.js"); |
| 527 | style_table_sorter(); |
| 528 | style_finish_page(); |
| 529 | } |
| 530 | |
| 531 | /* |
| 532 |
+1
| --- src/main.mk | ||
| +++ src/main.mk | ||
| @@ -226,10 +226,11 @@ | ||
| 226 | 226 | $(SRCDIR)/fossil.copybutton.js \ |
| 227 | 227 | $(SRCDIR)/fossil.dom.js \ |
| 228 | 228 | $(SRCDIR)/fossil.fetch.js \ |
| 229 | 229 | $(SRCDIR)/fossil.info-diff.js \ |
| 230 | 230 | $(SRCDIR)/fossil.numbered-lines.js \ |
| 231 | + $(SRCDIR)/fossil.page.brlist.js \ | |
| 231 | 232 | $(SRCDIR)/fossil.page.fileedit.js \ |
| 232 | 233 | $(SRCDIR)/fossil.page.forumpost.js \ |
| 233 | 234 | $(SRCDIR)/fossil.page.pikchrshow.js \ |
| 234 | 235 | $(SRCDIR)/fossil.page.whistory.js \ |
| 235 | 236 | $(SRCDIR)/fossil.page.wikiedit.js \ |
| 236 | 237 |
| --- src/main.mk | |
| +++ src/main.mk | |
| @@ -226,10 +226,11 @@ | |
| 226 | $(SRCDIR)/fossil.copybutton.js \ |
| 227 | $(SRCDIR)/fossil.dom.js \ |
| 228 | $(SRCDIR)/fossil.fetch.js \ |
| 229 | $(SRCDIR)/fossil.info-diff.js \ |
| 230 | $(SRCDIR)/fossil.numbered-lines.js \ |
| 231 | $(SRCDIR)/fossil.page.fileedit.js \ |
| 232 | $(SRCDIR)/fossil.page.forumpost.js \ |
| 233 | $(SRCDIR)/fossil.page.pikchrshow.js \ |
| 234 | $(SRCDIR)/fossil.page.whistory.js \ |
| 235 | $(SRCDIR)/fossil.page.wikiedit.js \ |
| 236 |
| --- src/main.mk | |
| +++ src/main.mk | |
| @@ -226,10 +226,11 @@ | |
| 226 | $(SRCDIR)/fossil.copybutton.js \ |
| 227 | $(SRCDIR)/fossil.dom.js \ |
| 228 | $(SRCDIR)/fossil.fetch.js \ |
| 229 | $(SRCDIR)/fossil.info-diff.js \ |
| 230 | $(SRCDIR)/fossil.numbered-lines.js \ |
| 231 | $(SRCDIR)/fossil.page.brlist.js \ |
| 232 | $(SRCDIR)/fossil.page.fileedit.js \ |
| 233 | $(SRCDIR)/fossil.page.forumpost.js \ |
| 234 | $(SRCDIR)/fossil.page.pikchrshow.js \ |
| 235 | $(SRCDIR)/fossil.page.whistory.js \ |
| 236 | $(SRCDIR)/fossil.page.wikiedit.js \ |
| 237 |