Fossil SCM

A wiki-style hyperlink to a well-formed ISO8601 date-time will link to the timeline at that date and time.

drh 2010-02-27 12:26 trunk
Commit 7ca773bc312f914225553fe58451fbfe5f55a361
1 file changed +5
--- src/wikiformat.c
+++ src/wikiformat.c
@@ -958,10 +958,12 @@
958958
** [WikiPageName]
959959
**
960960
** [0123456789abcdef]
961961
**
962962
** [#fragment]
963
+**
964
+** [2010-02-27 07:13]
963965
*/
964966
static void openHyperlink(
965967
Renderer *p, /* Rendering context */
966968
const char *zTarget, /* Hyperlink traget; text within [...] */
967969
char *zClose, /* Write hyperlink closing text here */
@@ -1015,10 +1017,13 @@
10151017
}
10161018
}
10171019
}else if( g.okHistory ){
10181020
blob_appendf(p->pOut, "<a href=\"%s/info/%s\">", g.zBaseURL, zTarget);
10191021
}
1022
+ }else if( strlen(zTarget)>=10 && isdigit(zTarget[0]) && zTarget[4]=='-'
1023
+ && db_int(0, "SELECT datetime(%Q) NOT NULL", zTarget) ){
1024
+ blob_appendf(p->pOut, "<a href=\"%s/timeline?c=%T\">", g.zBaseURL, zTarget);
10201025
}else if( wiki_name_is_wellformed((const unsigned char *)zTarget) ){
10211026
blob_appendf(p->pOut, "<a href=\"%s/wiki?name=%T\">", g.zBaseURL, zTarget);
10221027
}else{
10231028
blob_appendf(p->pOut, "[bad-link: %h]", zTarget);
10241029
zTerm = "";
10251030
--- src/wikiformat.c
+++ src/wikiformat.c
@@ -958,10 +958,12 @@
958 ** [WikiPageName]
959 **
960 ** [0123456789abcdef]
961 **
962 ** [#fragment]
 
 
963 */
964 static void openHyperlink(
965 Renderer *p, /* Rendering context */
966 const char *zTarget, /* Hyperlink traget; text within [...] */
967 char *zClose, /* Write hyperlink closing text here */
@@ -1015,10 +1017,13 @@
1015 }
1016 }
1017 }else if( g.okHistory ){
1018 blob_appendf(p->pOut, "<a href=\"%s/info/%s\">", g.zBaseURL, zTarget);
1019 }
 
 
 
1020 }else if( wiki_name_is_wellformed((const unsigned char *)zTarget) ){
1021 blob_appendf(p->pOut, "<a href=\"%s/wiki?name=%T\">", g.zBaseURL, zTarget);
1022 }else{
1023 blob_appendf(p->pOut, "[bad-link: %h]", zTarget);
1024 zTerm = "";
1025
--- src/wikiformat.c
+++ src/wikiformat.c
@@ -958,10 +958,12 @@
958 ** [WikiPageName]
959 **
960 ** [0123456789abcdef]
961 **
962 ** [#fragment]
963 **
964 ** [2010-02-27 07:13]
965 */
966 static void openHyperlink(
967 Renderer *p, /* Rendering context */
968 const char *zTarget, /* Hyperlink traget; text within [...] */
969 char *zClose, /* Write hyperlink closing text here */
@@ -1015,10 +1017,13 @@
1017 }
1018 }
1019 }else if( g.okHistory ){
1020 blob_appendf(p->pOut, "<a href=\"%s/info/%s\">", g.zBaseURL, zTarget);
1021 }
1022 }else if( strlen(zTarget)>=10 && isdigit(zTarget[0]) && zTarget[4]=='-'
1023 && db_int(0, "SELECT datetime(%Q) NOT NULL", zTarget) ){
1024 blob_appendf(p->pOut, "<a href=\"%s/timeline?c=%T\">", g.zBaseURL, zTarget);
1025 }else if( wiki_name_is_wellformed((const unsigned char *)zTarget) ){
1026 blob_appendf(p->pOut, "<a href=\"%s/wiki?name=%T\">", g.zBaseURL, zTarget);
1027 }else{
1028 blob_appendf(p->pOut, "[bad-link: %h]", zTarget);
1029 zTerm = "";
1030

Keyboard Shortcuts

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