Permalink
Browse files

Merge branch 'master' of git@github.com:lestrrat/pixis

  • Loading branch information...
2 parents 829aec1 + 014e946 commit 2313241ca08dc6c83ed9aad51c71ce0a91b66887 @lestrrat lestrrat committed Apr 13, 2009
@@ -16,7 +16,7 @@ has 'user_agent' => (
has 'mode' => (
is => 'rw',
- isa => enum([ qw(producation development) ]),
+ isa => enum([ qw(production development) ]),
required => 1,
default => 'development'
);
View
@@ -141,8 +141,11 @@ sub register {
# if ($self->has_navigation) {
# $c->add_navigation($_) for @{$self->navigation};
# }
- $registry->set(api => (split(/::/, blessed($_)))[-1], $_)
- for $self->extra_api;
+ foreach my $api ($self->extra_api) {
+ my $pkg = blessed($api);
+ $pkg =~ s/^Pixis::API:://;
+ $registry->set(api => split(/::/, $pkg), $api);
+ }
}
1;
@@ -0,0 +1,33 @@
+# $Id$
+
+package Pixis::Plugin::Core;
+use Moose;
+use namespace::clean -except => qw(meta);
+with 'Pixis::Plugin';
+
+before register => sub {
+ my ($self, $c) = @_;
+
+ my $config = $c->config();
+
+ my $registry = Pixis::Registry->instance;
+ foreach my $name qw(Master) {
+ my $schema_config = $config->{"Schema::$name"};
+ my $module = "Pixis::Schema::$name";
+ Class::MOP::load_class($module);
+ my $schema = $module->connection( @{$schema_config->{connect_info}} );
+ $registry->set("schema" => $name => $schema);
+ }
+
+ my @list;
+ foreach my $name qw(Member MemberAuth MemberRelationship Order Payment::Paypal Payment::Transaction) {
+ my $api_config = $config->{"API::$name"} || {};
+ my $module = "Pixis::API::$name";
+ Class::MOP::load_class($module);
+ my $api = $module->new(%$api_config);
+ push @list, $api;
+ }
+ $self->extra_api(\@list);
+};
+
+__PACKAGE__->meta->make_immutable();
View
@@ -143,7 +143,7 @@ sub setup_pixis_plugins {
$plugin = $pkg->new(%$args);
if (! $plugin->registered && !($REGISTERED_PLUGINS{ $pkg }++) ){
print STDERR "[Pixis Plugin]: Registring $pkg\n";
- $plugin->register;
+ $plugin->register($self);
$plugin->registered(1);
push @PLUGINS, $plugin;
}
@@ -59,10 +59,11 @@ sub initiate_purchase :Private {
};
my $url = eval {
+ local $SIG{__DIE__} = 'DEFAULT';
$c->registry(api => 'payment' => 'paypal')->initiate_purchase($args);
};
if ($@) {
- $c->log->debug("Communication Paypal failed: $@") if $c->log->is_debug;
+ $c->log->debug("Communication with Paypal failed: $@") if $c->log->is_debug;
$c->detach('/error', "Communication with PayPal failed");
return;
}
@@ -74,6 +75,7 @@ sub complete_purchase :Private {
my ($self, $c, $args) = @_;
eval {
+ local $SIG{__DIE__} = 'DEFAULT';
$c->registry(api => 'payment' => 'paypal')->complete_purchase($args);
};
if ($@) {
@@ -1,39 +0,0 @@
-# $Id: /mirror/pixis/Pixis-Core/trunk/lib/Pixis/Web/Model/API.pm 101259 2009-02-27T04:36:03.762330Z daisuke $
-
-package Pixis::Web::Model::API;
-use strict;
-use base qw(Catalyst::Model);
-use Pixis::Registry;
-use Pixis::Schema::Master;
-
-sub COMPONENT {
- my ($self, $c, @args) = @_;
-
- my $registry = Pixis::Registry->instance;
-
- # setup the schemas first
- $registry->set( schema => 'master',
- Pixis::Schema::Master->connection(@{$c->config->{'Schema::Master'}->{connect_info}}));
-
- my $config = $c->config->{'Model::API'};
-
- my $apis = $config->{apis} || [];
- unshift @$apis, map { +{ class => $_ } } qw(Member MemberAuth MemberRelationship Payment::Paypal Payment::Transaction Order);
- foreach my $config (@$apis) {
- $config = { %$config };
- my $class = delete $config->{class} || die "'class' is required";
- if ($class !~ s/^\+//) {
- $class = "Pixis::API::$class";
- }
- $c->log->debug("Loading API '$class'") if $c->log->is_debug;
- my @key = split(/::/, lc $class);
- # pop Pixis::API
- shift @key;
- Class::MOP::load_class($class);
- $registry->set( @key, $class->new() );
- }
-
- return $registry
-}
-
-1;
@@ -21,15 +21,11 @@
<h2>Perlについて</h2>
-<p> Perlは1987年に初めて発表され、以来20年以上の長きに渡って進化し続けている言語
-です。インターネットの創世記にはCGIスクリプトを作成するのに多用されさらに有名に>なりました。しかしPerl自体はCGIのための言語ではありません:世界中の開発者達が自>作のライブラリを登録するCPANという巨大なライブラリネットワークを持ち、豊富なテス
-ト・自動化ツールを駆使して堅牢なシステム開発を可能にする、「難しい事を可能に、簡
-単な事をさらに簡単に」してくれる最高のツールと言えるでしょう。</p>
+<p> Perlは1987年に初めて発表され、以来20年以上の長きに渡って進化し続けている言語です。インターネットの創世記にはCGIスクリプトを作成するのに多用されさらに有名になりました。しかしPerl自体はCGIのための言語ではありません:世界中の開発者達が自作のライブラリを登録するCPANという巨大なライブラリネットワークを持ち、豊富なテスト・自動化ツールを駆使して堅牢なシステム開発を可能にする、「難しい事を可能に、簡単な事をさらに簡単に」してくれる最高のツールと言えるでしょう。</p>
-<p> PerlはWeb、バイオインフォマティクス、システム管理ツールやテストフレームワー>クなど、すでに様々な分野で幅広く使用されており、今後も活躍が期待されています。</p>
+<p> PerlはWeb、バイオインフォマティクス、システム管理ツールやテストフレームワークなど、すでに様々な分野で幅広く使用されており、今後も活躍が期待されています。</p>
-<p> JPAは モダンかつ実践的なPerlの使用方法やノウハウ
-を研修やセミナーなどで提供することにより、企業の皆様が安心してPerlを使用していただけるよう全力でサポートいたします。</p>
+<p> JPAは モダンかつ実践的なPerlの使用方法やノウハウを研修やセミナーなどで提供することにより、企業の皆様が安心してPerlを使用していただけるよう全力でサポートいたします。</p>
<h2> 参加 </h2>
<p> JPAは随時 <a href="[% c.uri_for('/jpa/signup') %]">新規会員を募集しております</a>。 JPAの会員になるとYAPC::Asia Tokyoを含むJPAイベントの参加費の割引等、特典が受けられるようになります。Perlの今後、Perlの文化、雇用を一緒に考えませんか?</p>
@@ -40,4 +36,10 @@
<p>本サイトは<a href="http://catalyst.perl.org">Catalyst MVCフレームワーク</a>、<a href="http://www.perlfoundation.org/perl5/index.cgi?dbix_class">DBIx::Class オブジェクトマッパー</a>、<a href="http://code.google.com/p/html-formfu/">HTML::FormFu フォーム作成・バリデーションツール</a>、<a href="http://search.cpan.org/dist/Data-Localize">Data::Localize 国際化用ツール</a>等を用いて、プラッガブルなWebアプリケーションシステムを可能にする<a href="http://github.com/lestrrat/pixis/tree/master">Pixis エンジン</a>上で動作しています。</p>
+<h2>お問い合わせ</h2>
+<p>株式会社endeworks内 一般社団法人 Japan Perl Association<br />
+TEL: 03-6416-1160<br />
+FAX: 03-6416-1161<br />
+MAIL: pr@perlassociation.org</p>
+
[% END # WRAPPER %]
@@ -28,7 +28,7 @@
<p>年会費のお支払い方法は以下からお選びください:</p>
<ul>
- <li><a href="[% c.uri_for('/jpa', 'payment', 'paypal', { order => order.id }) %]">Paypalでのお支払い</a> - 今なら5000円の年会費が4500円で<b>500円お得!</b></li>
+ <li><a href="[% c.uri_for('/payment', 'paypal', { order => order.id }) %]">Paypalでのお支払い</a> - 今なら5000円の年会費が4500円で<b>500円お得!</b></li>
<li><a href="[% c.uri_for('/jpa', 'payment', 'bank', { order => order.id }) %]">銀行振り込みでのお支払い</a></li>
</li>
</ul>

0 comments on commit 2313241

Please sign in to comment.