3e56f626ffaea1abffd715356ebacea45c7a1f70 galt Wed Mar 3 23:16:47 2010 -0800 adding all-files view diff --git git-reports.c git-reports.c index b344e5d..593ed4e 100644 --- git-reports.c +++ git-reports.c @@ -457,23 +457,32 @@ /* process one user's files-view (or all if u is NULL) */ { -// TODO handle u is NULL // http://hgwdev.cse.ucsc.edu/cvs-reports/branch/user/galt/index-by-file.html +// if u is NULL +// http://hgwdev.cse.ucsc.edu/cvs-reports/branch/file/index.html char userPath[1024]; +if (u) safef(userPath, sizeof(userPath), "%s/%s/%s/%s/index-by-file.html", outDir, outPrefix, "user", u); +else + safef(userPath, sizeof(userPath), "%s/%s/%s/index.html", outDir, outPrefix, "file"); FILE *h = mustOpen(userPath, "w"); +if (u) + { fprintf(h, "<html>\n<head>\n<title>%s Files View</title>\n</head>\n</body>\n", u); fprintf(h, "<h2>Files for %s</h2>\n", u); - fprintf(h, "switch to <A href=\"index.html\">commits view</A>, <A href=\"../index.html\">user index</A>"); + } +else + fprintf(h, "<html>\n<head>\n<title>%s Files View</title>\n</head>\n</body>\n", u); + fprintf(h, "<h2>%s to %s (%s to %s) %s</h2>\n", startTag, endTag, startDate, endDate, title); fprintf(h, "<pre>\n"); -int userLinesChanged = 0; -int userFileCount = 0; +int totalLinesChanged = 0; +int totalFileCount = 0; // TODO should this count duplicates or not char *cDiff = NULL, *cHtml = NULL, *fDiff = NULL, *fHtml = NULL; char *relativePath = NULL; @@ -481,15 +490,6 @@ struct commit *c = NULL; struct files *f = NULL; -/* -struct comFile - { - struct comFile *next; - struct files *f; - struct commit *commit; - } -*/ - struct comFile *comFiles = NULL, *cf = NULL; // pre-filter for u if u is not NULL @@ -526,7 +526,10 @@ char path[1024]; // context unified + if (u) safef(path, sizeof(path), "%s/%s%s", "context", f->path, c->commitId); + else + safef(path, sizeof(path), "../user/%s/%s/%s%s", c->author, "context", f->path, c->commitId); relativePath = cloneString(path); safef(path, sizeof(path), "%s.html", relativePath); cHtml = cloneString(path); @@ -537,7 +540,10 @@ // full text (up to 10,000 lines) freeMem(relativePath); + if (u) safef(path, sizeof(path), "%s/%s%s", "full", f->path, c->commitId); + else + safef(path, sizeof(path), "../user/%s/%s/%s%s", c->author, "context", f->path, c->commitId); relativePath = cloneString(path); safef(path, sizeof(path), "%s.html", relativePath); fHtml = cloneString(path); @@ -561,16 +567,17 @@ freeMem(fDiff); freeMem(fHtml); - userLinesChanged += f->linesChanged; - ++userFileCount; + totalLinesChanged += f->linesChanged; + ++totalFileCount; fprintf(h, "\n"); } +if (u) fprintf(h, "switch to <A href=\"index.html\">commits view</A>, <A href=\"../index.html\">user index</A>"); +else + fprintf(h, "\n lines changed: %d\n files changed: %d\n", totalLinesChanged, totalFileCount); fprintf(h, "</pre>\n</body>\n</html>\n"); fclose(h); -//*saveUlc = userLinesChanged; -//*saveUfc = userFileCount; } @@ -653,7 +660,7 @@ userChangedFiles = 0; // DEBUG REMOVE - if (sameString(u->name, "galt")) + //if (sameString(u->name, "galt")) /* make user's reports */ doUserCommits(u->name, commits, &userChangedLines, &userChangedFiles); @@ -673,6 +680,10 @@ fprintf(h, "</pre>\n</body>\n</html>\n"); fclose(h); + +// make index of all files view +doUserFiles(NULL, commits); + } int main(int argc, char *argv[])