From 404cd5d3bf348e16f53bf53aca1dfe34df16180b Mon Sep 17 00:00:00 2001 From: JT Smith Date: Sat, 25 Sep 2010 10:33:45 -0500 Subject: [PATCH] added become this user --- lib/Lacuna/Web/Admin.pm | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/lib/Lacuna/Web/Admin.pm b/lib/Lacuna/Web/Admin.pm index b49c0c0d..f0859aef 100644 --- a/lib/Lacuna/Web/Admin.pm +++ b/lib/Lacuna/Web/Admin.pm @@ -448,6 +448,19 @@ sub www_toggle_isolationist { return $self->www_view_empire($request, $id); } +sub www_become_empire { + my ($self, $request, $id) = @_; + $id ||= $request->param('id'); + my $empire = Lacuna->db->resultset('Lacuna::DB::Result::Empire')->find($id); + unless (defined $empire) { + confess [404, 'Empire not found.']; + } + my $uri = Lacuna->config->get('server_url'); + $uri .= '#session_id=%s'; + $uri = sprintf $uri, $empire->start_session({ api_key => 'admin_console' })->id; + [$uri, { status => 302 } ] +} + sub www_view_empire { my ($self, $request, $id) = @_; $id ||= $request->param('id'); @@ -470,6 +483,7 @@ sub www_view_empire { $out .= sprintf('University Level%s', $empire->university_level); $out .= sprintf('Isolationist%sToggle', $empire->is_isolationist, $empire->id); $out .= '