change first parameter for object display functions
authorChristian Thaeter <ct@pipapo.org>
Thu, 17 Jan 2008 20:33:36 +0000 (21:33 +0100)
committerChristian Thaeter <ct@pipapo.org>
Thu, 17 Jan 2008 20:33:36 +0000 (21:33 +0100)
from webgit_query* to webgit_repo_info*

src/actions.c
src/object.c
src/object.h

index f766ff6..150eb7c 100644 (file)
@@ -274,7 +274,7 @@ webgit_diff_action (struct webgit_query* query)
 static Html
 webgit_object_action (struct webgit_query* query)
 {
-  webgit_repo_enter (query);
+  struct webgit_repo_info* repo = webgit_repo_enter (query);
 
   unsigned char sha1[20];
   if (get_sha1 (query->object, sha1))
@@ -284,14 +284,14 @@ webgit_object_action (struct webgit_query* query)
     {
     case OBJ_COMMIT:
       if (!query->deref_to_tree)
-        return webgit_object_commit_action (query, sha1);
+        return webgit_object_commit_action (repo, sha1);
       /* else fallthrough */
     case OBJ_TREE:
-      return webgit_object_tree_action (query, sha1);
+      return webgit_object_tree_action (repo, sha1);
     case OBJ_BLOB:
-      return webgit_object_blob_action (query, sha1);
+      return webgit_object_blob_action (repo, sha1);
     case OBJ_TAG:
-      return html ("its a tag");
+      return webgit_object_tag_action (repo, sha1);
 
       break;
     default:
index 57e9b93..6e0679e 100644 (file)
@@ -208,9 +208,9 @@ webgit_commit_message_parse (struct commit* commit)
 */
 
 static Html
-webgit_object_commit_menu_action (struct webgit_query* query, unsigned char* sha1, void* buf, unsigned long size)
+webgit_object_commit_menu_action (struct webgit_repo_info* repo, unsigned char* sha1, void* buf, unsigned long size)
 {
-  (void) query;
+  (void) repo;
   (void) sha1;
   (void) buf;
   (void) size;
@@ -219,7 +219,7 @@ webgit_object_commit_menu_action (struct webgit_query* query, unsigned char* sha
 }
 
 static Html
-webgit_object_commit_content_action (struct webgit_query* query, unsigned char* sha1, void* buf, unsigned long size)
+webgit_object_commit_content_action (struct webgit_repo_info* repo, unsigned char* sha1, void* buf, unsigned long size)
 {
 /*
   TODO pass commit objects instead buf/size, use parsers from above
@@ -248,8 +248,8 @@ webgit_object_commit_content_action (struct webgit_query* query, unsigned char*
         {
           html_list_append (tree,
                             "Tree: ",
-                            webgit_object_link (query,
-                                                query->repo, strlen (query->repo),
+                            webgit_object_link (repo->query,
+                                                repo->name, strlen (repo->name),
                                                 i+5, 40,
                                                 NULL,
                                                 NULL,
@@ -263,8 +263,8 @@ webgit_object_commit_content_action (struct webgit_query* query, unsigned char*
         {
           html_list_append (parents, html (
                                            "Parent: ",
-                                           webgit_object_link (query,
-                                                               query->repo, strlen (query->repo),
+                                           webgit_object_link (repo->query,
+                                                               repo->name, strlen (repo->name),
                                                                i+7, 40,
                                                                NULL,
                                                                NULL,
@@ -381,7 +381,7 @@ webgit_object_commit_content_action (struct webgit_query* query, unsigned char*
 }
 
 Html
-webgit_object_commit_action (struct webgit_query* query, unsigned char* sha1)
+webgit_object_commit_action (struct webgit_repo_info* repo, unsigned char* sha1)
 {
   void* buf;
   unsigned long size;
@@ -389,8 +389,8 @@ webgit_object_commit_action (struct webgit_query* query, unsigned char* sha1)
   buf = read_object_with_reference (sha1, "commit", &size, NULL);
 
   return html(
-              html(html_tag("div"), webgit_object_commit_menu_action (query, sha1, buf, size)), html_nl (),
-              html(html_tag("div"), webgit_object_commit_content_action (query, sha1, buf, size)), html_nl ()
+              html(html_tag("div"), webgit_object_commit_menu_action (repo, sha1, buf, size)), html_nl (),
+              html(html_tag("div"), webgit_object_commit_content_action (repo, sha1, buf, size)), html_nl ()
               );
 }
 
@@ -400,9 +400,9 @@ webgit_object_commit_action (struct webgit_query* query, unsigned char* sha1)
 */
 
 static Html
-webgit_object_tree_menu_action (struct webgit_query* query, unsigned char* sha1, struct tree *tree)
+webgit_object_tree_menu_action (struct webgit_repo_info* repo, unsigned char* sha1, struct tree *tree)
 {
-  (void) query;
+  (void) repo;
   (void) sha1;
   (void) tree;
   return html ("TODO: tree-object sidebar");
@@ -517,19 +517,20 @@ webgit_html_tree (const unsigned char *sha1, const char *base, int baselen,
 
 
 static Html
-webgit_object_tree_content_action (struct webgit_query* query, unsigned char* sha1, struct tree *tree)
+webgit_object_tree_content_action (struct webgit_repo_info* repo, unsigned char* sha1, struct tree *tree)
 {
   (void) sha1;
-  query_in_flight = query;
+  query_in_flight = repo->query;
   tree_in_flight = html_list ();
 
-  read_tree_recursive (tree, query->path, query->path ? strlen (query->path): 0, 0, NULL, webgit_html_tree);
+  read_tree_recursive (tree, repo->query->path,
+                       repo->query->path ? strlen (repo->query->path) : 0, 0, NULL, webgit_html_tree);
 
   return html (html_tag ("table"), tree_in_flight);
 }
 
 Html
-webgit_object_tree_action (struct webgit_query* query, unsigned char* sha1)
+webgit_object_tree_action (struct webgit_repo_info* repo, unsigned char* sha1)
 {
   struct tree *tree;
 
@@ -538,8 +539,8 @@ webgit_object_tree_action (struct webgit_query* query, unsigned char* sha1)
     die("not a tree object");
 
   return html(
-              html(html_tag("div"), webgit_object_tree_menu_action (query, sha1, tree)), html_nl (),
-              html(html_tag("div"), webgit_object_tree_content_action (query, sha1, tree)), html_nl ()
+              html(html_tag("div"), webgit_object_tree_menu_action (repo, sha1, tree)), html_nl (),
+              html(html_tag("div"), webgit_object_tree_content_action (repo, sha1, tree)), html_nl ()
               );
 }
 
@@ -547,11 +548,10 @@ webgit_object_tree_action (struct webgit_query* query, unsigned char* sha1)
 /*
   Display blobs
 */
-
 static Html
-webgit_object_blob_menu_action (struct webgit_query* query, unsigned char* sha1, void* buf, unsigned long size)
+webgit_object_blob_menu_action (struct webgit_repo_info* repo, unsigned char* sha1, void* buf, unsigned long size)
 {
-  (void) query;
+  (void) repo;
   (void) sha1;
   (void) buf;
   (void) size;
@@ -559,7 +559,7 @@ webgit_object_blob_menu_action (struct webgit_query* query, unsigned char* sha1,
 }
 
 static Html
-webgit_object_blob_content_action (struct webgit_query* query, unsigned char* sha1, void* buf, unsigned long size)
+webgit_object_blob_content_action (struct webgit_repo_info* repo, unsigned char* sha1, void* buf, unsigned long size)
 {
   (void) sha1;
 
@@ -569,6 +569,7 @@ webgit_object_blob_content_action (struct webgit_query* query, unsigned char* sh
     }
   else
     {
+      struct webgit_query* query = repo->query;
       const char* mimetype = webgit_mimetype (query->path);
 
       Html ret;
@@ -580,10 +581,10 @@ webgit_object_blob_content_action (struct webgit_query* query, unsigned char* sh
                       html_tag ("img",
                                 html_attr ("src",
                                            html_fmt ("%s?repo=%s&action=raw&object=%s&path=%s",
-                                                            query->request->script_name,
-                                                            query->repo, query->object, query->path)
+                                                     query->request->script_name,
+                                                     query->repo, query->object, query->path)
                                            ),
-                                html_attr ("alt", query->path? query->path : query->object)
+                                html_attr ("alt", query->path ? query->path : query->object)
                                 )
                       );
         }
@@ -600,7 +601,7 @@ webgit_object_blob_content_action (struct webgit_query* query, unsigned char* sh
 
 
 Html
-webgit_object_blob_action (struct webgit_query* query, unsigned char* sha1)
+webgit_object_blob_action (struct webgit_repo_info* repo, unsigned char* sha1)
 {
   void* buf;
   unsigned long size;
@@ -608,8 +609,8 @@ webgit_object_blob_action (struct webgit_query* query, unsigned char* sha1)
   buf = read_object_with_reference (sha1, "blob", &size, NULL);
 
   return html(
-              html(html_tag("div"), webgit_object_blob_menu_action (query, sha1, buf, size)), html_nl (),
-              html(html_tag("div"), webgit_object_blob_content_action (query, sha1, buf, size)), html_nl ()
+              html(html_tag("div"), webgit_object_blob_menu_action (repo, sha1, buf, size)), html_nl (),
+              html(html_tag("div"), webgit_object_blob_content_action (repo, sha1, buf, size)), html_nl ()
               );
 }
 
index f1df9d9..96a518d 100644 (file)
@@ -66,13 +66,16 @@ Html
 webgit_commit_message_parse (struct commit* commit);
 
 Html
-webgit_object_commit_action (struct webgit_query* query, unsigned char* sha1);
+webgit_object_commit_action (struct webgit_repo_info* repo, unsigned char* sha1);
 
 Html
-webgit_object_tree_action (struct webgit_query* query, unsigned char* sha1);
+webgit_object_tree_action (struct webgit_repo_info* repo, unsigned char* sha1);
 
 Html
-webgit_object_blob_action (struct webgit_query* query, unsigned char* sha1);
+webgit_object_blob_action (struct webgit_repo_info* repo, unsigned char* sha1);
+
+Html
+webgit_object_tag_action (struct webgit_repo_info* repo, unsigned char* sha1);
 
 
 #endif