HTML-StickyQuery-DoCoMoGUID

 view release on metacpan or  search on metacpan

lib/HTML/StickyQuery/DoCoMoGUID.pm  view on Meta::CPAN

        for my $key (@{ $attrseq }) {
            if ($key eq 'action'){
                $self->{output} .= sprintf ' action="%s"', $self->escapeHTML($u->as_string);
            } elsif ($attr->{$key} eq '__BOOLEAN__') {
                $self->{output} .= " $key";
            } else {
                $self->{output} .= sprintf qq{ $key="%s"}, $self->escapeHTML($attr->{$key});
            }
        }
        $self->{output} .= '>';
        # add some params
        _sticky_input($self, 1);
        return;
    }

    $self->{output} .= $orig;
}

sub _sticky_input {
    my($self, $ignore_guid) = @_;
    while (my($key, $value) = each %{ $self->{param} }) {
        next if $ignore_guid && $key eq 'guid';
        $self->{output} .= sprintf '<input type="hidden" name="%s" value="%s"%s>',
                               $key, $value, ($self->{use_xhtml} ? ' /' : '');
    }
}

1;
__END__

=encoding utf8

=head1 NAME

HTML::StickyQuery::DoCoMoGUID - add guid query for DoCoMo imode

=head1 SYNOPSIS

  use HTML::StickyQuery::DoCoMoGUID;

  my $guid = HTML::StickyQuery::DoCoMoGUID->new;
  print $guid->sticky( scalarref => \$html );

add sessionid

  my $guid = HTML::StickyQuery::DoCoMoGUID->new;
  print $guid->sticky(
      scalarref => \$html,
      param     => { sessionid => 'SID' },
  );

guid=ON を出さない

  my $guid = HTML::StickyQuery::DoCoMoGUID->new;
  print $guid->sticky(
      scalarref    => \$html,
      param        => { sessionid => 'SID' },
      disable_guid => 1,
  );

FORM タグの時の INPUT タグを XHTML じゃ無くする

  my $guid = HTML::StickyQuery::DoCoMoGUID->new;
  print $guid->sticky(
      scalarref    => \$html,
      param        => { sessionid => 'SID' },
      disable_guid => 1,
      xhtml        => 0,
  );


=head1 DESCRIPTION

主に HTML::StickyQuery を使って DoCoMo用の guid=ON をつけるフィルタリングをするよ。
FORM タグがある場合には、 get method の時には input タグを追加して、 post method の時には action の中に guid=ON を追加します。

sticky method への引数に param => { key => value } を追加すると HTML::StickyQuery へそのまま処理が引き継がれるよ。
ただし、 FORM タグの場合は <input type="hidden" name="key" value="value" /> のような HTML が出力されます。

どんな感じでフィルタリングされるかは t ディレクトリの中のテストコードを参考にしてくださいね。

=head1 AUTHOR

Kazuhiro Osawa E<lt>yappo {at} shibuya [dot] plE<gt>,
Hideo Kimura

=head1 SEE ALSO

L<HTML::StickyQuery>, L<http://www.nttdocomo.co.jp/service/imode/make/content/ip/index.html#imodeid>

=head1 REPOSITORY

  git clone git://github.com/yappo/p5-HTML-StickyQuery-DoCoMoGUID.git

patches and collaborators are welcome.

=head1 LICENSE

This library is free software; you can redistribute it and/or modify
it under the same terms as Perl itself.

=cut



( run in 1.904 second using v1.01-cache-2.11-cpan-119454b85a5 )