Fossil SCM
Tidy up tagview code.
Commit
0e924820bffe17d305c7f64c05a4f6eed65f169e
Parent
5fb14b9a0fa04a7…
2 files changed
+2
-2
+25
-32
+2
-2
| --- src/name.c | ||
| +++ src/name.c | ||
| @@ -120,11 +120,11 @@ | ||
| 120 | 120 | " FROM tagxref JOIN event ON rid=objid" |
| 121 | 121 | " WHERE tagid=(SELECT tagid FROM tag WHERE tagname=%Q||%Q)" |
| 122 | 122 | " AND tagtype>0" |
| 123 | 123 | " AND value IS NULL" |
| 124 | 124 | " ORDER BY event.mtime DESC", |
| 125 | - pPrefix, | |
| 125 | + pPrefix, | |
| 126 | 126 | pName |
| 127 | 127 | ); |
| 128 | 128 | blob_zero(pUuid); |
| 129 | 129 | while( db_step(&q)==SQLITE_ROW ){ |
| 130 | 130 | count++; |
| @@ -135,11 +135,11 @@ | ||
| 135 | 135 | } |
| 136 | 136 | db_finalize(&q); |
| 137 | 137 | return count; |
| 138 | 138 | } |
| 139 | 139 | int sym_tag_to_uuid(const char *pName, Blob *pUuid){ |
| 140 | - return tag_to_uuid(pName,pUuid,"sym-"); | |
| 140 | + return tag_to_uuid(pName,pUuid,"sym-"); | |
| 141 | 141 | } |
| 142 | 142 | |
| 143 | 143 | /* |
| 144 | 144 | ** COMMAND: test-name-to-uuid |
| 145 | 145 | ** |
| 146 | 146 |
| --- src/name.c | |
| +++ src/name.c | |
| @@ -120,11 +120,11 @@ | |
| 120 | " FROM tagxref JOIN event ON rid=objid" |
| 121 | " WHERE tagid=(SELECT tagid FROM tag WHERE tagname=%Q||%Q)" |
| 122 | " AND tagtype>0" |
| 123 | " AND value IS NULL" |
| 124 | " ORDER BY event.mtime DESC", |
| 125 | pPrefix, |
| 126 | pName |
| 127 | ); |
| 128 | blob_zero(pUuid); |
| 129 | while( db_step(&q)==SQLITE_ROW ){ |
| 130 | count++; |
| @@ -135,11 +135,11 @@ | |
| 135 | } |
| 136 | db_finalize(&q); |
| 137 | return count; |
| 138 | } |
| 139 | int sym_tag_to_uuid(const char *pName, Blob *pUuid){ |
| 140 | return tag_to_uuid(pName,pUuid,"sym-"); |
| 141 | } |
| 142 | |
| 143 | /* |
| 144 | ** COMMAND: test-name-to-uuid |
| 145 | ** |
| 146 |
| --- src/name.c | |
| +++ src/name.c | |
| @@ -120,11 +120,11 @@ | |
| 120 | " FROM tagxref JOIN event ON rid=objid" |
| 121 | " WHERE tagid=(SELECT tagid FROM tag WHERE tagname=%Q||%Q)" |
| 122 | " AND tagtype>0" |
| 123 | " AND value IS NULL" |
| 124 | " ORDER BY event.mtime DESC", |
| 125 | pPrefix, |
| 126 | pName |
| 127 | ); |
| 128 | blob_zero(pUuid); |
| 129 | while( db_step(&q)==SQLITE_ROW ){ |
| 130 | count++; |
| @@ -135,11 +135,11 @@ | |
| 135 | } |
| 136 | db_finalize(&q); |
| 137 | return count; |
| 138 | } |
| 139 | int sym_tag_to_uuid(const char *pName, Blob *pUuid){ |
| 140 | return tag_to_uuid(pName,pUuid,"sym-"); |
| 141 | } |
| 142 | |
| 143 | /* |
| 144 | ** COMMAND: test-name-to-uuid |
| 145 | ** |
| 146 |
+25
-32
| --- src/tagview.c | ||
| +++ src/tagview.c | ||
| @@ -158,10 +158,31 @@ | ||
| 158 | 158 | }else{ |
| 159 | 159 | tagview_page_default(); |
| 160 | 160 | } |
| 161 | 161 | style_footer(); |
| 162 | 162 | } |
| 163 | + | |
| 164 | +#undef TAGVIEW_DEFAULT_FILTER | |
| 165 | + | |
| 166 | +/* | |
| 167 | +** Generate a timeline for the chosen tag | |
| 168 | +*/ | |
| 169 | +void tagview_print_timeline(char const *pName, char const *pPrefix){ | |
| 170 | + char *zSql; | |
| 171 | + Stmt q; | |
| 172 | + zSql = mprintf("%s AND EXISTS (SELECT 1" | |
| 173 | + " FROM tagxref" | |
| 174 | + " WHERE tagxref.rid = event.objid" | |
| 175 | + " AND tagxref.tagid = (SELECT tagid FROM tag" | |
| 176 | + " WHERE tagname = %Q||%Q))" | |
| 177 | + " ORDER BY 3 desc", | |
| 178 | + timeline_query_for_www(), pPrefix, pName); | |
| 179 | + db_prepare(&q, zSql); | |
| 180 | + free(zSql); | |
| 181 | + www_print_timeline(&q); | |
| 182 | + db_finalize(&q); | |
| 183 | +} | |
| 163 | 184 | |
| 164 | 185 | /* |
| 165 | 186 | ** WEBPAGE: /tagview |
| 166 | 187 | */ |
| 167 | 188 | void tagview_page(void){ |
| @@ -171,43 +192,17 @@ | ||
| 171 | 192 | login_needed(); |
| 172 | 193 | } |
| 173 | 194 | login_anonymous_available(); |
| 174 | 195 | if( 0 != (zName = P("name")) ){ |
| 175 | 196 | Blob uuid; |
| 176 | - char *zSql; | |
| 177 | - Stmt q; | |
| 197 | + style_header("Tagged Baselines"); | |
| 198 | + @ <h2>%s(zName):</h2> | |
| 178 | 199 | if( sym_tag_to_uuid(zName, &uuid) > 0){ |
| 179 | - style_header("Tagged Baselines"); | |
| 180 | - @ <h2>%s(zName):</h2> | |
| 181 | - zSql = mprintf("%s AND EXISTS (SELECT 1" | |
| 182 | - " FROM tagxref" | |
| 183 | - " WHERE tagxref.rid = event.objid" | |
| 184 | - " AND tagxref.tagid = (SELECT tagid FROM tag" | |
| 185 | - " WHERE tagname = 'sym-'||%Q))" | |
| 186 | - " ORDER BY 3 desc", | |
| 187 | - timeline_query_for_www(), zName); | |
| 188 | - db_prepare(&q, zSql); | |
| 189 | - free(zSql); | |
| 190 | - www_print_timeline(&q); | |
| 191 | - db_finalize(&q); | |
| 200 | + tagview_print_timeline(zName, "sym-"); | |
| 192 | 201 | }else if( tag_to_uuid(zName, &uuid, "") > 0){ |
| 193 | - style_header("Tagged Baselines"); | |
| 194 | - @ <h2>%s(zName):</h2> | |
| 195 | - zSql = mprintf("%s AND EXISTS (SELECT 1" | |
| 196 | - " FROM tagxref" | |
| 197 | - " WHERE tagxref.rid = event.objid" | |
| 198 | - " AND tagxref.tagid = (SELECT tagid FROM tag" | |
| 199 | - " WHERE tagname = %Q))" | |
| 200 | - " ORDER BY 3 desc", | |
| 201 | - timeline_query_for_www(), zName); | |
| 202 | - db_prepare(&q, zSql); | |
| 203 | - free(zSql); | |
| 204 | - www_print_timeline(&q); | |
| 205 | - db_finalize(&q); | |
| 202 | + tagview_print_timeline(zName, ""); | |
| 206 | 203 | }else{ |
| 207 | - style_header("TaggedBaselines"); | |
| 208 | - @ <h2>%s(zName):</h2> | |
| 209 | 204 | @ There is no artifact with this tag. |
| 210 | 205 | } |
| 211 | 206 | }else{ |
| 212 | 207 | Stmt q; |
| 213 | 208 | const char *prefix = "sym-"; |
| @@ -239,7 +234,5 @@ | ||
| 239 | 234 | @ </ul> |
| 240 | 235 | db_finalize(&q); |
| 241 | 236 | } |
| 242 | 237 | style_footer(); |
| 243 | 238 | } |
| 244 | - | |
| 245 | -#undef TAGVIEW_DEFAULT_FILTER | |
| 246 | 239 |
| --- src/tagview.c | |
| +++ src/tagview.c | |
| @@ -158,10 +158,31 @@ | |
| 158 | }else{ |
| 159 | tagview_page_default(); |
| 160 | } |
| 161 | style_footer(); |
| 162 | } |
| 163 | |
| 164 | /* |
| 165 | ** WEBPAGE: /tagview |
| 166 | */ |
| 167 | void tagview_page(void){ |
| @@ -171,43 +192,17 @@ | |
| 171 | login_needed(); |
| 172 | } |
| 173 | login_anonymous_available(); |
| 174 | if( 0 != (zName = P("name")) ){ |
| 175 | Blob uuid; |
| 176 | char *zSql; |
| 177 | Stmt q; |
| 178 | if( sym_tag_to_uuid(zName, &uuid) > 0){ |
| 179 | style_header("Tagged Baselines"); |
| 180 | @ <h2>%s(zName):</h2> |
| 181 | zSql = mprintf("%s AND EXISTS (SELECT 1" |
| 182 | " FROM tagxref" |
| 183 | " WHERE tagxref.rid = event.objid" |
| 184 | " AND tagxref.tagid = (SELECT tagid FROM tag" |
| 185 | " WHERE tagname = 'sym-'||%Q))" |
| 186 | " ORDER BY 3 desc", |
| 187 | timeline_query_for_www(), zName); |
| 188 | db_prepare(&q, zSql); |
| 189 | free(zSql); |
| 190 | www_print_timeline(&q); |
| 191 | db_finalize(&q); |
| 192 | }else if( tag_to_uuid(zName, &uuid, "") > 0){ |
| 193 | style_header("Tagged Baselines"); |
| 194 | @ <h2>%s(zName):</h2> |
| 195 | zSql = mprintf("%s AND EXISTS (SELECT 1" |
| 196 | " FROM tagxref" |
| 197 | " WHERE tagxref.rid = event.objid" |
| 198 | " AND tagxref.tagid = (SELECT tagid FROM tag" |
| 199 | " WHERE tagname = %Q))" |
| 200 | " ORDER BY 3 desc", |
| 201 | timeline_query_for_www(), zName); |
| 202 | db_prepare(&q, zSql); |
| 203 | free(zSql); |
| 204 | www_print_timeline(&q); |
| 205 | db_finalize(&q); |
| 206 | }else{ |
| 207 | style_header("TaggedBaselines"); |
| 208 | @ <h2>%s(zName):</h2> |
| 209 | @ There is no artifact with this tag. |
| 210 | } |
| 211 | }else{ |
| 212 | Stmt q; |
| 213 | const char *prefix = "sym-"; |
| @@ -239,7 +234,5 @@ | |
| 239 | @ </ul> |
| 240 | db_finalize(&q); |
| 241 | } |
| 242 | style_footer(); |
| 243 | } |
| 244 | |
| 245 | #undef TAGVIEW_DEFAULT_FILTER |
| 246 |
| --- src/tagview.c | |
| +++ src/tagview.c | |
| @@ -158,10 +158,31 @@ | |
| 158 | }else{ |
| 159 | tagview_page_default(); |
| 160 | } |
| 161 | style_footer(); |
| 162 | } |
| 163 | |
| 164 | #undef TAGVIEW_DEFAULT_FILTER |
| 165 | |
| 166 | /* |
| 167 | ** Generate a timeline for the chosen tag |
| 168 | */ |
| 169 | void tagview_print_timeline(char const *pName, char const *pPrefix){ |
| 170 | char *zSql; |
| 171 | Stmt q; |
| 172 | zSql = mprintf("%s AND EXISTS (SELECT 1" |
| 173 | " FROM tagxref" |
| 174 | " WHERE tagxref.rid = event.objid" |
| 175 | " AND tagxref.tagid = (SELECT tagid FROM tag" |
| 176 | " WHERE tagname = %Q||%Q))" |
| 177 | " ORDER BY 3 desc", |
| 178 | timeline_query_for_www(), pPrefix, pName); |
| 179 | db_prepare(&q, zSql); |
| 180 | free(zSql); |
| 181 | www_print_timeline(&q); |
| 182 | db_finalize(&q); |
| 183 | } |
| 184 | |
| 185 | /* |
| 186 | ** WEBPAGE: /tagview |
| 187 | */ |
| 188 | void tagview_page(void){ |
| @@ -171,43 +192,17 @@ | |
| 192 | login_needed(); |
| 193 | } |
| 194 | login_anonymous_available(); |
| 195 | if( 0 != (zName = P("name")) ){ |
| 196 | Blob uuid; |
| 197 | style_header("Tagged Baselines"); |
| 198 | @ <h2>%s(zName):</h2> |
| 199 | if( sym_tag_to_uuid(zName, &uuid) > 0){ |
| 200 | tagview_print_timeline(zName, "sym-"); |
| 201 | }else if( tag_to_uuid(zName, &uuid, "") > 0){ |
| 202 | tagview_print_timeline(zName, ""); |
| 203 | }else{ |
| 204 | @ There is no artifact with this tag. |
| 205 | } |
| 206 | }else{ |
| 207 | Stmt q; |
| 208 | const char *prefix = "sym-"; |
| @@ -239,7 +234,5 @@ | |
| 234 | @ </ul> |
| 235 | db_finalize(&q); |
| 236 | } |
| 237 | style_footer(); |
| 238 | } |
| 239 |