Diff
Not logged in

Differences From:

File src/tagview.c part of check-in [070e63db33] - Merge old tagview branch into this branch by eric on 2008-08-17 20:53:20. [view]

To:

File src/tagview.c part of check-in [5fb14b9a0f] - Include non-sym- tags in tagview web page. Also merge mainline into tagview branch. by eric on 2008-08-21 20:59:01. [view]

@@ -136,34 +136,8 @@
   free(zSql);
 }
 
 /*
-** Get the UUIDs for a tag
-*/
-char *tag_query_for_www(const char *pName){
-  static const char zBaseSql[] =
-  @ SELECT
-  @   blob.rid,
-  @   uuid,
-  @   datetime(event.mtime,'localtime') AS timestamp,
-  @   coalesce(ecomment, comment),
-  @   coalesce(euser, user),
-  @   (SELECT count(*) FROM plink WHERE pid=blob.rid AND isprim=1),
-  @   (SELECT count(*) FROM plink WHERE cid=blob.rid),
-  @   NOT EXISTS (SELECT 1 FROM plink WHERE pid=blob.rid),
-  @   coalesce(bgcolor, brbgcolor),
-  @   event.type
-  @  FROM event JOIN blob JOIN tagxref
-  @ WHERE blob.rid=event.objid
-  @ AND tagxref.rid = event.objid
-  @ AND tagxref.tagid = (SELECT tagid FROM tag
-  @       WHERE tagname = 'sym-'||%Q)
-  @ ORDER BY 3 desc
-  ;
-  return mprintf(zBaseSql,pName);
-}
-
-/*
 ** WEBP AGE: /tagview
 */
 void old_tagview_page(void){
   char const * check = 0;
@@ -203,9 +177,29 @@
     Stmt q;
     if( sym_tag_to_uuid(zName, &uuid) > 0){
       style_header("Tagged Baselines");
       @ <h2>%s(zName):</h2>
-      zSql = tag_query_for_www(zName);
+      zSql = mprintf("%s AND EXISTS (SELECT 1"
+             " FROM tagxref"
+             "  WHERE tagxref.rid = event.objid"
+             "  AND tagxref.tagid = (SELECT tagid FROM tag"
+             "      WHERE tagname = 'sym-'||%Q))"
+             " ORDER BY 3 desc",
+             timeline_query_for_www(), zName);
+      db_prepare(&q, zSql);
+      free(zSql);
+      www_print_timeline(&q);
+      db_finalize(&q);
+    }else if( tag_to_uuid(zName, &uuid, "") > 0){
+      style_header("Tagged Baselines");
+      @ <h2>%s(zName):</h2>
+      zSql = mprintf("%s AND EXISTS (SELECT 1"
+             " FROM tagxref"
+             "  WHERE tagxref.rid = event.objid"
+             "  AND tagxref.tagid = (SELECT tagid FROM tag"
+             "      WHERE tagname = %Q))"
+             " ORDER BY 3 desc",
+             timeline_query_for_www(), zName);
       db_prepare(&q, zSql);
       free(zSql);
       www_print_timeline(&q);
       db_finalize(&q);
@@ -224,16 +218,23 @@
       "  FROM tag"
       " WHERE EXISTS(SELECT 1 FROM tagxref"
       "               WHERE tagid=tag.tagid"
       "                 AND tagtype>0)"
-      " ORDER BY tagname"
+      " AND tagid > %d"
+      " AND tagname NOT GLOB 'wiki-*'"
+      " AND tagname NOT GLOB 'tkt-*'"
+      " ORDER BY tagname",
+      MAX_INT_TAG
     );
     @ <ul>
     while( db_step(&q)==SQLITE_ROW ){
       const char *name = db_column_text(&q, 0);
       if( strncmp(name, prefix, preflen)==0 ){
         @ <li><a href=%s(g.zBaseURL)/tagview?name=%s(name+preflen)>
-        @ %s(name+preflen)</a></li>
+        @ <strong>%s(name+preflen)</strong></a></li>
+      }else{
+        @ <li><a href=%s(g.zBaseURL)/tagview?name=%s(name)>
+        @ %s(name)</a></li>
       }
     }
     @ </ul>
     db_finalize(&q);