gitweb: Modularized git_get_project_description to be more generic
Introduce a git_get_file_or_project_config utility function to retrieve a repository variable either from a plain text file in the $GIT_DIR or else from 'gitweb.$variable' in the repository config (e.g. 'description'). This would be used in next commit to retrieve category for a project, which is to be stored in the same way as project description. Signed-off-by: Sebastien Cevey <seb@cine7.net> Signed-off-by: Jakub Narebski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
0fa920c35c
commit
e4e3b32bd2
@ -2562,18 +2562,26 @@ sub git_get_path_by_hash {
|
|||||||
## ......................................................................
|
## ......................................................................
|
||||||
## git utility functions, directly accessing git repository
|
## git utility functions, directly accessing git repository
|
||||||
|
|
||||||
sub git_get_project_description {
|
# get the value of config variable either from file named as the variable
|
||||||
my $path = shift;
|
# itself in the repository ($GIT_DIR/$name file), or from gitweb.$name
|
||||||
|
# configuration variable in the repository config file.
|
||||||
|
sub git_get_file_or_project_config {
|
||||||
|
my ($path, $name) = @_;
|
||||||
|
|
||||||
$git_dir = "$projectroot/$path";
|
$git_dir = "$projectroot/$path";
|
||||||
open my $fd, '<', "$git_dir/description"
|
open my $fd, '<', "$git_dir/$name"
|
||||||
or return git_get_project_config('description');
|
or return git_get_project_config($name);
|
||||||
my $descr = <$fd>;
|
my $conf = <$fd>;
|
||||||
close $fd;
|
close $fd;
|
||||||
if (defined $descr) {
|
if (defined $conf) {
|
||||||
chomp $descr;
|
chomp $conf;
|
||||||
}
|
}
|
||||||
return $descr;
|
return $conf;
|
||||||
|
}
|
||||||
|
|
||||||
|
sub git_get_project_description {
|
||||||
|
my $path = shift;
|
||||||
|
return git_get_file_or_project_config($path, 'description');
|
||||||
}
|
}
|
||||||
|
|
||||||
# supported formats:
|
# supported formats:
|
||||||
|
Loading…
Reference in New Issue
Block a user