fu: Close-up of Fu, bringing a scoop of water to her mouth (Default)
fu ([personal profile] fu) wrote in [site community profile] changelog2012-05-01 12:12 pm

[dw-free] add a link to "claim your openid" to the settings page

[commit: http://hg.dwscoalition.org/dw-free/rev/d6958a4d48f0]

http://bugs.dwscoalition.org/show_bug.cgi?id=4367

Add "claim openid" link to account history tab.

Patch by [personal profile] randomling.

Files modified:
  • bin/upgrading/en.dat
  • cgi-bin/DW/Setting/Display/OpenIDClaim.pm
  • htdocs/manage/settings/index.bml
--------------------------------------------------------------------------------
diff -r f12703db8010 -r d6958a4d48f0 bin/upgrading/en.dat
--- a/bin/upgrading/en.dat	Tue May 01 19:53:38 2012 +0800
+++ b/bin/upgrading/en.dat	Tue May 01 20:11:44 2012 +0800
@@ -2600,6 +2600,10 @@
 
 setting.display.logins.option=Manage login sessions
 
+setting.display.openidclaim.label=Claim OpenID Account
+
+setting.display.openidclaim.option=Claim an OpenID account
+
 setting.display.orders.label=Orders
 
 setting.display.orders.option=View order history
diff -r f12703db8010 -r d6958a4d48f0 cgi-bin/DW/Setting/Display/OpenIDClaim.pm
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cgi-bin/DW/Setting/Display/OpenIDClaim.pm	Tue May 01 20:11:44 2012 +0800
@@ -0,0 +1,36 @@
+#!/usr/bin/perl
+#
+# DW::Setting::Display::OpenIDClaim - Shows a link to claim an OpenID account
+#
+# Authors:
+#      Randomling
+#
+# Copyright (c) 2012 by Dreamwidth Studios, LLC.
+#
+# This program is free software; you may redistribute it and/or modify it under
+# the same terms as Perl itself. For a copy of the license, please reference
+# 'perldoc perlartistic' or 'perldoc perlgpl'.
+
+package DW::Setting::Display::OpenIDClaim;
+use base 'LJ::Setting';
+use strict;
+
+sub should_render {
+    my ( $class, $u ) = @_;
+
+    return $u && !$u->is_community ? 1 : 0;
+}
+
+sub label {
+    my ( $class ) = @_;
+
+    return $class->ml( 'setting.display.openidclaim.label' );
+}
+
+sub option {
+    my ( $class, $u, $errs, $args ) = @_;
+
+    return "<a href='$LJ::SITEROOT/openid/claim'>" . $class->ml( 'setting.display.openidclaim.option' ) . "</a>";
+}
+
+1;
diff -r f12703db8010 -r d6958a4d48f0 htdocs/manage/settings/index.bml
--- a/htdocs/manage/settings/index.bml	Tue May 01 19:53:38 2012 +0800
+++ b/htdocs/manage/settings/index.bml	Tue May 01 20:11:44 2012 +0800
@@ -153,6 +153,7 @@
                 LJ::Setting::Display::Emails
                 LJ::Setting::Display::EmailPosts
                 LJ::Setting::Display::Orders
+                DW::Setting::Display::OpenIDClaim
             )],
         },
         othersites => {
--------------------------------------------------------------------------------