git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Giuseppe Bilotta <giuseppe.bilotta@gmail.com>
To: Jakub Narebski <jnareb@gmail.com>
Cc: git@vger.kernel.org
Subject: Re: [PATCHv5 08/12] gitweb: auxiliary function to group data
Date: Mon, 27 Sep 2010 09:26:25 +0200	[thread overview]
Message-ID: <AANLkTimOJ7RXDWXy=tF+rZf1gnfB7_GHCZuU5bZ5Wc91@mail.gmail.com> (raw)
In-Reply-To: <201009262347.15779.jnareb@gmail.com>

2010/9/26 Jakub Narebski <jnareb@gmail.com>:
> On Fri, 24 Sep 2010, Giuseppe Bilotta wrote:
>
>> Subject: gitweb: auxiliary function to group data
>>
>
> Errr... what!?  git_group() is not "auxiliary function to group data",
> but a template for output of group of data.

I will rephrase

> It would be probably good to describe how this output looks like
> (using e.g. ASII-art mockup) in a commit message.

Well, that would depend on the CSS that is used ... should I squash
the styling in this patch then?

>> +sub git_group {
>
> Name?

git_collection? git_collect_data? I'm a little short on ideas.
git_section? git_subsection? the function (with different styling) can
probably be used even for the main sections in each view (think
summary view in particular).

>> +     my ($class, $id, @rest) = @_;
>> +
>> +     my $content_func = pop @rest;
>> +
>> +     $class = join(' ', 'group', $class);
>> +
>> +     print $cgi->start_div({
>> +             -class => $class,
>> +             -id => $id,
>> +     });
>> +     git_print_header_div(@rest);
>> +     $content_func->() if defined $content_func;
>
> More defensive programming would be to use
>
>  +     $content_func->() if ref($content_func) eq 'CODE';
>
> Or even:
>
>  +     if (ref($content) eq 'CODE') {
>  +             $content->();
>  +     } elsif (ref($content) eq 'ARRAY') {
>  +             print @$content;
>  +     } elsif (!ref($content) && defined($content)) {
>  +             print $content;
>  +     }
>
> Well, $content could be also open filehandle...

Ah, very interesting and very flexible, I'll steal your idea.

-- 
Giuseppe "Oblomov" Bilotta

  reply	other threads:[~2010-09-27  7:26 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-09-24 16:02 [PATCHv5 00/12] gitweb: remote_heads feature Giuseppe Bilotta
2010-09-24 16:02 ` [PATCHv5 01/12] gitweb: introduce " Giuseppe Bilotta
2010-09-26 17:24   ` Jakub Narebski
2010-09-26 19:19     ` Ævar Arnfjörð Bjarmason
2010-09-26 19:47       ` David Ripton
2010-09-27  6:42         ` Giuseppe Bilotta
2010-09-24 16:02 ` [PATCHv5 02/12] gitweb: git_get_heads_list accepts an optional list of refs Giuseppe Bilotta
2010-09-26 17:27   ` Jakub Narebski
2010-09-24 16:02 ` [PATCHv5 03/12] gitweb: separate heads and remotes lists Giuseppe Bilotta
2010-09-26 17:39   ` Jakub Narebski
2010-09-24 16:02 ` [PATCHv5 04/12] gitweb: nagivation menu for tags, heads and remotes Giuseppe Bilotta
2010-09-26 17:52   ` Jakub Narebski
2010-09-27  6:48     ` Giuseppe Bilotta
2010-09-27  8:30       ` Jakub Narebski
2010-09-24 16:02 ` [PATCHv5 05/12] gitweb: use fullname as hash_base in heads link Giuseppe Bilotta
2010-09-26 17:57   ` Jakub Narebski
2010-09-24 16:02 ` [PATCHv5 06/12] gitweb: allow extra text after action in page header Giuseppe Bilotta
2010-09-26 18:11   ` Jakub Narebski
2010-09-27  6:56     ` Giuseppe Bilotta
2010-09-27  7:42       ` Jakub Narebski
2010-09-24 16:02 ` [PATCHv5 07/12] gitweb: remotes view for a single remote Giuseppe Bilotta
2010-09-26 20:55   ` Jakub Narebski
2010-09-27  7:11     ` Giuseppe Bilotta
2010-09-27  7:53       ` Jakub Narebski
2010-09-24 16:02 ` [PATCHv5 08/12] gitweb: auxiliary function to group data Giuseppe Bilotta
2010-09-26 21:47   ` Jakub Narebski
2010-09-27  7:26     ` Giuseppe Bilotta [this message]
2010-09-27  8:12       ` Jakub Narebski
2010-09-27 19:17         ` Giuseppe Bilotta
2010-09-24 16:02 ` [PATCHv5 09/12] gitweb: group styling Giuseppe Bilotta
2010-09-26 22:10   ` Jakub Narebski
2010-09-27  7:27     ` Giuseppe Bilotta
2010-09-24 16:02 ` [PATCHv5 10/12] gitweb: git_repo_url() routine Giuseppe Bilotta
2010-09-26 22:34   ` Jakub Narebski
2010-09-27  7:29     ` Giuseppe Bilotta
2010-09-24 16:02 ` [PATCHv5 11/12] gitweb: use git_repo_url() in summary Giuseppe Bilotta
2010-09-26 22:36   ` Jakub Narebski
2010-09-24 16:02 ` [PATCHv5 12/12] gitweb: gather more remote data Giuseppe Bilotta
2010-09-27 15:47   ` Jakub Narebski
2010-10-23 16:17     ` Giuseppe Bilotta
2010-09-26 18:18 ` [PATCHv5 00/12] gitweb: remote_heads feature Jakub Narebski

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='AANLkTimOJ7RXDWXy=tF+rZf1gnfB7_GHCZuU5bZ5Wc91@mail.gmail.com' \
    --to=giuseppe.bilotta@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=jnareb@gmail.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).