Changeset 335
- Timestamp:
- 02/26/08 14:36:28 (2 months ago)
- Files:
-
- trunk/src/plugins/fmerges/Kwiki-OpenID/Changes (modified) (1 diff)
- trunk/src/plugins/fmerges/Kwiki-OpenID/Makefile.PL (modified) (1 diff)
- trunk/src/plugins/fmerges/Kwiki-OpenID/README (modified) (2 diffs)
- trunk/src/plugins/fmerges/Kwiki-OpenID/lib/Kwiki/Edit/OpenIDRequired.pm (modified) (3 diffs)
- trunk/src/plugins/fmerges/Kwiki-OpenID/lib/Kwiki/OpenID.pm (modified) (8 diffs)
- trunk/src/plugins/fmerges/Kwiki-OpenID/lib/Kwiki/Users/OpenID.pm (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/src/plugins/fmerges/Kwiki-OpenID/Changes
r322 r335 1 1 Revision history for Perl extension Kwiki::OpenID 2 2 3 0.02 Wed Feb 27 02:31:23 2008 4 - Small modifications. 5 - Using Digest::MD5 instead of Digest::SHA1. 6 3 7 0.01 Mon Feb 25 03:12:42 2008 trunk/src/plugins/fmerges/Kwiki-OpenID/Makefile.PL
r323 r335 11 11 requires ('Kwiki::Session' => 0.01); 12 12 requires ('Net::OpenID::Consumer' => 0.14); 13 requires ('LWPx::ParanoidAgent' => 1.03); 13 14 requires ('Text::Microformat' => 0.02); 14 requires ('Digest::SHA1' => 2.11);15 15 16 16 build_requires ('Test::More'); trunk/src/plugins/fmerges/Kwiki-OpenID/README
r322 r335 1 Kwiki::OpenID version 0.0 11 Kwiki::OpenID version 0.02 2 2 ======================================= 3 3 … … 24 24 Net::OpenID::Consumer 25 25 Text::Microformat 26 Digest::SHA127 26 28 27 COPYRIGHT AND LICENCE trunk/src/plugins/fmerges/Kwiki-OpenID/lib/Kwiki/Edit/OpenIDRequired.pm
r322 r335 2 2 use strict; 3 3 4 our $VERSION = 0.01;4 our $VERSION = '0.01'; 5 5 6 6 use Kwiki::Plugin '-Base'; 7 7 use mixin 'Kwiki::Installer'; 8 8 9 const class_id => 'EditOpenIDRequired';9 const class_id => 'EditOpenIDRequired'; 10 10 const class_title => 'Require OpenID to edit'; 11 11 … … 23 23 my $page_uri = $page->uri; 24 24 $hook->cancel; 25 return $self->redirect("action=edit_noOpenID&page =$page_uri");25 return $self->redirect("action=edit_noOpenID&page_name=$page_uri"); 26 26 } 27 27 } … … 48 48 <p> 49 49 This web site does not allow anonymous editing. 50 Please <a href="[% script_name _ "?action=login_openid;page =" _ hub.cgi.page %]">login via OpenID</a> first.50 Please <a href="[% script_name _ "?action=login_openid;page_name=" _ hub.cgi.page %]">login via OpenID</a> first. 51 51 </p> 52 52 <p> trunk/src/plugins/fmerges/Kwiki-OpenID/lib/Kwiki/OpenID.pm
r322 r335 8 8 use Net::OpenID::Consumer; 9 9 use LWPx::ParanoidAgent; 10 use Digest:: SHA1 qw(sha1);10 use Digest::MD5 qw(md5); 11 11 use Text::Microformat; 12 12 use CGI; 13 13 14 our $VERSION = 0.01;14 our $VERSION = '0.02'; 15 15 16 16 const class_id => 'user_name'; … … 48 48 49 49 sub login_openid { 50 my $oi_referer = $self->cgi->page; 51 my $ci = $self->cgi->oi_url; 52 if ($ci) { 50 if (my $ci = $self->cgi->oi_url) { 53 51 my $session = $self->hub->session->load; 54 $session->param('oi_referer', $ oi_referer); # Safe for later52 $session->param('oi_referer', $self->cgi->page); # Safe for later 55 53 56 54 my $nonce_pattern = $self->config->consumer_secret; 57 my $nonce = sha1(sprintf($nonce_pattern, time, (stat $0)[9], -s _, $session->id)); 55 my $nonce = md5(sprintf($nonce_pattern, time, (stat $0)[9], -s _, $session->id)); 56 warn "NONCE : [$nonce]"; 58 57 $session->param('nonce', $nonce); 59 58 … … 71 70 72 71 unless (defined $claimed_identity) { 73 warn "Can't determine claimed identity for: [$ci]"; 74 return $self->redirect('action=login_openid;oi_error=Wrong identity'); 72 return $self->redirect('action=login_openid&oi_error=Wrong identity'); 75 73 } 76 74 my $check_url = $claimed_identity->check_url( … … 79 77 $self->redirect($check_url); # Now we send the user to authenticate 80 78 } 81 $self->render_screen( 82 content_pane => 'login_openid.html', page => $oi_referer); 79 $self->render_screen(content_pane => 'login_openid.html'); 83 80 } 84 81 … … 104 101 } 105 102 elsif ($csr->user_cancel) { 106 $self->redirect('action=login_openid ;oi_error=User cancel');103 $self->redirect('action=login_openid&oi_error=User cancel'); 107 104 } 108 105 elsif (my $vident = $csr->verified_identity) { … … 112 109 } 113 110 else { 114 $self->redirect('action=login_openid ;oi_error=Service temporarily unavailable');111 $self->redirect('action=login_openid&oi_error=Service temporarily unavailable'); 115 112 } 116 113 } … … 152 149 use Kwiki::CGI '-Base'; 153 150 151 cgi 'oi_error'; 154 152 cgi 'oi_url'; 155 153 cgi 'page'; … … 194 192 __template/tt2/login_openid.html__ 195 193 <!-- BEGIN login_openid.html --> 196 [% IF hub.cgi.oi_error %]197 <div class="error"> Error: [% hub.cgi.oi_error %]</div>194 [% IF self.cgi.oi_error %] 195 <div class="error"><p>Error: [% self.cgi.oi_error %]</p></div> 198 196 [% END %] 199 197 <form action="[% script_name %]" method="get"> 200 <input type="hidden" name="page" value="[% page %]">198 <input type="hidden" name="page" value="[% self.cgi.page %]"> 201 199 <input type="hidden" name="action" value="login_openid"> 202 200 <b>Your OpenID URL:</b> <input type="text" class="openid_input" name="oi_url" size="30"> trunk/src/plugins/fmerges/Kwiki-OpenID/lib/Kwiki/Users/OpenID.pm
r322 r335 2 2 use strict; 3 3 4 our $VERSION = 0.01;4 our $VERSION = '0.01'; 5 5 6 6 use Kwiki::Users '-Base';
