All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jakub Narebski <jnareb@gmail.com>
To: git@vger.kernel.org
Subject: [PATCH 5/9] gitweb: Separate finding project owner into git_get_project_owner
Date: Mon, 14 Aug 2006 02:10:06 +0200	[thread overview]
Message-ID: <200608140210.06961.jnareb@gmail.com> (raw)
In-Reply-To: <200608140202.46160.jnareb@gmail.com>

Signed-off-by: Jakub Narebski <jnareb@gmail.com>
---
And added some comments, while at it.

 gitweb/gitweb.perl |   50 ++++++++++++++++++++++++++++++++------------------
 1 files changed, 32 insertions(+), 18 deletions(-)

diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl
index 5af6e77..6be6c55 100755
--- a/gitweb/gitweb.perl
+++ b/gitweb/gitweb.perl
@@ -527,6 +527,37 @@ sub git_get_projects_list {
 	return @list;
 }
 
+sub git_get_project_owner {
+	my $project = shift;
+	my $owner;
+
+	return undef unless $project;
+
+	# read from file (url-encoded):
+	# 'git%2Fgit.git Linus+Torvalds'
+	# 'libs%2Fklibc%2Fklibc.git H.+Peter+Anvin'
+	# 'linux%2Fhotplug%2Fudev.git Greg+Kroah-Hartman'
+	if (-f $projects_list) {
+		open (my $fd , $projects_list);
+		while (my $line = <$fd>) {
+			chomp $line;
+			my ($pr, $ow) = split ' ', $line;
+			$pr = unescape($pr);
+			$ow = unescape($ow);
+			if ($pr eq $project) {
+				$owner = decode("utf8", $ow, Encode::FB_DEFAULT);
+				last;
+			}
+		}
+		close $fd;
+	}
+	if (!defined $owner) {
+		$owner = get_file_owner("$projectroot/$project");
+	}
+
+	return $owner;
+}
+
 sub git_get_references {
 	my $type = shift || "";
 	my %refs;
@@ -1458,24 +1489,7 @@ sub git_summary {
 	my %co = parse_commit($head);
 	my %cd = parse_date($co{'committer_epoch'}, $co{'committer_tz'});
 
-	my $owner;
-	if (-f $projects_list) {
-		open (my $fd , $projects_list);
-		while (my $line = <$fd>) {
-			chomp $line;
-			my ($pr, $ow) = split ' ', $line;
-			$pr = unescape($pr);
-			$ow = unescape($ow);
-			if ($pr eq $project) {
-				$owner = decode("utf8", $ow, Encode::FB_DEFAULT);
-				last;
-			}
-		}
-		close $fd;
-	}
-	if (!defined $owner) {
-		$owner = get_file_owner("$projectroot/$project");
-	}
+	my $owner = git_get_project_owner($project);
 
 	my $refs = git_get_references();
 	git_header_html();
-- 
1.4.1.1

  parent reply	other threads:[~2006-08-14 10:16 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-08-14  0:02 [PATCH 0/9] gitweb: Great subroutine renaming + task separation into subroutines + improvements Jakub Narebski
2006-08-14  0:05 ` [PATCH 1/9] gitweb: Great subroutines renaming Jakub Narebski
2006-08-14 23:28   ` Junio C Hamano
2006-08-14  0:07 ` [PATCH 2/9] gitweb: Separate ref parsing in git_get_refs_list into parse_ref Jakub Narebski
2006-08-15  0:29   ` Junio C Hamano
2006-08-15 16:18     ` Jakub Narebski
2006-08-14  0:08 ` [PATCH 3/9] gitweb: Refactor printing shortened title in git_shortlog_body and git_tags_body Jakub Narebski
2006-08-15  0:29   ` Junio C Hamano
2006-08-14  0:09 ` [PATCH 4/9] gitweb: Separate main part of git_history into git_history_body Jakub Narebski
2006-08-14  0:10 ` Jakub Narebski [this message]
2006-08-14  0:14 ` [PATCH 6/9] gitweb: Change appereance of marker of refs pointing to given object Jakub Narebski
2006-08-14  9:30   ` Jakub Narebski
2006-08-15  0:27   ` Junio C Hamano
2006-08-15 16:34     ` Jakub Narebski
2006-08-14  0:15 ` [PATCH 7/9] gitweb: Skip comments in mime.types like file Jakub Narebski
2006-08-14  0:16 ` [PATCH 8/9] gitweb: True fix: Support for the standard mime.types map in gitweb Jakub Narebski
2006-08-15  0:33   ` Junio C Hamano
2006-08-15 16:43     ` Jakub Narebski
2006-08-14  0:18 ` [PATCH 9/9] gitweb: Separate printing difftree in git_commit into git_difftree_body Jakub Narebski
2006-08-15  0:40   ` Junio C Hamano
2006-08-15 16:45     ` Jakub Narebski
2006-08-14 10:40 ` [PATCH 0/9] gitweb: Great subroutine renaming + task separation into subroutines + improvements Jakub Narebski
2006-08-15  0:42   ` Junio C Hamano

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200608140210.06961.jnareb@gmail.com \
    --to=jnareb@gmail.com \
    --cc=git@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.