fix for openid authentication
[scpubgit/stemmatology.git] / stemmaweb / lib / stemmaweb.pm
CommitLineData
5c9ecf66 1package stemmaweb;
dbcf12a6 2use Moose;
3use namespace::autoclean;
4
5use Catalyst::Runtime 5.80;
6
d1ba091f 7use Search::GIN::Extract::Class;
8use Search::GIN::Extract::Attributes;
9use Search::GIN::Extract::Multiplex;
10
dbcf12a6 11# Set flags and add plugins for the application.
12#
13# Note that ORDERING IS IMPORTANT here as plugins are initialized in order,
14# therefore you almost certainly want to keep ConfigLoader at the head of the
15# list if you're using it.
16#
17# -Debug: activates the debug mode for very useful log messages
18# ConfigLoader: will load the configuration from a Config::General file in the
19# application's home directory
20# Static::Simple: will serve static files from the application's root
21# directory
22
23use Catalyst qw/
dbcf12a6 24 ConfigLoader
25 Static::Simple
26 Unicode::Encoding
d1ba091f 27 Authentication
28 Session
29 Session::Store::File
30 Session::State::Cookie
4dbd098b 31 StatusMessage
54e5debe 32 StackTrace
dbcf12a6 33/;
34
35extends 'Catalyst';
36
37our $VERSION = '0.01';
38
39# Configure the application.
40#
5c9ecf66 41# Note that settings in stemmaweb.conf (or other external
dbcf12a6 42# configuration file that you set up manually) take precedence
43# over this when using ConfigLoader. Thus configuration
44# details given here can function as a default configuration,
45# with an external configuration file acting as an override for
46# local deployment.
47
48__PACKAGE__->config(
5c9ecf66 49 name => 'stemmaweb',
dbcf12a6 50 # Disable deprecated behavior needed by old applications
51 disable_component_resolution_regex_fallback => 1,
c4a4fb1b 52 default_view => 'TT',
b90c84a0 53 'View::JSON' => {
54 expose_stash => 'result',
55 },
350a6cdc 56 'View::TT' => {
57 INCLUDE_PATH => [
58 stemmaweb->path_to( 'root', 'src' ),
59 ],
60 },
d1ba091f 61 ## kiokudb auth store testing
62 'Plugin::Authentication' => {
63 default => {
64 credential => {
65 class => 'Password',
66 password_field => 'password',
67 password_type => 'self_check',
68 },
69 store => {
70 class => 'Model::KiokuDB',
77be2fb4 71 model_name => 'Directory',
d1ba091f 72 },
4dbd098b 73 },
74 openid => {
75 credential => {
76 class => 'OpenID',
6fadc28b 77 extensions => ['http://openid.net/srv/ax/1.0' =>
78 {
79 ns => 'ax',
80 uri => 'http://openid.net/srv/ax/1.0',
81 mode => 'fetch_request',
82 required => 'email',
59acd833 83 'type.email' => 'http://axschema.org/contact/email',
84 # type => {
85 # email => 'http://axschema.org/contact/email'
86 # }
6fadc28b 87 }
88 ],
4dbd098b 89 },
90 store => {
91 class => 'Model::KiokuDB',
786f9761 92 model_name => 'Directory',
4dbd098b 93 },
94 auto_create_user => 1,
95 },
96 },
97 ## Auth with CatalystX::Controller::Auth
98 'Controller::Users' => {
99 model => 'User',
100 login_id_field => 'username',
101 login_db_field => 'username',
102 action_after_login => '/index',
103 send_register_email => 0,
8591038d 104 realm => 'default',
7d244e7d 105 login_fields => { openid => [qw/openid_identifier/],
8591038d 106 default => [qw/username password remember/],
4dbd098b 107 },
d1ba091f 108 },
dbcf12a6 109);
110
111# Start the application
112__PACKAGE__->setup();
113
114
115=head1 NAME
116
5c9ecf66 117stemmaweb - Catalyst based application
dbcf12a6 118
119=head1 SYNOPSIS
120
5c9ecf66 121 script/stemmaweb_server.pl
dbcf12a6 122
123=head1 DESCRIPTION
124
125[enter your description here]
126
127=head1 SEE ALSO
128
5c9ecf66 129L<stemmaweb::Controller::Root>, L<Catalyst>
dbcf12a6 130
131=head1 AUTHOR
132
133Tara L Andrews
134
135=head1 LICENSE
136
137This library is free software. You can redistribute it and/or modify
138it under the same terms as Perl itself.
139
140=cut
141
1421;