migrate Account Friends sentFriendRequest to FB

This commit is contained in:
Doug Bell 2010-12-21 17:02:16 -06:00
parent b5c1ffe5b7
commit 8299e9e706
3 changed files with 59 additions and 17 deletions

View file

@ -402,33 +402,37 @@ sub www_sendFriendsRequest {
$var->{'user_full_name' } = $user->getWholeName;
$var->{'user_member_since' } = $user->dateCreated;
$var->{'cancel_url' } = $user->getProfileUrl;
my $defaultComment = sprintf(
$i18n->get('default friend comments'),
$user->getFirstName,
$session->user->getFirstName
);
$var->{'form_message_text'} = WebGUI::Form::textarea($session, {
my $form = WebGUI::FormBuilder->new( $session,
name => "messageForm",
action => $self->getUrl( "module=friends;do=sendFriendsRequestSave;uid=$uid" ),
);
$form->addField( "HTMLArea",
name => "message",
value => $defaultComment,
width => 600,
);
# Add an alternative to the rich editor
$var->{'form_message_text'} = WebGUI::Form::Textarea->new($session, {
name =>"message",
value =>$defaultComment,
width =>600,
height =>200
});
})->toHtml;
$var->{'form_message_rich'} = WebGUI::Form::HTMLArea($session, {
name => "message",
value => $defaultComment,
width => "600",
});
$form->addField( "Submit",
name => "submit",
);
$var->{'form_header' } = WebGUI::Form::formHeader($session,{
action => $self->getUrl("module=friends;do=sendFriendsRequestSave;uid=$uid"),
extras => q{name="messageForm"}
});
$var->{'submit_button' } = WebGUI::Form::submit($session,{});
$var->{'form_footer' } = WebGUI::Form::formFooter($session, {});
$var->{'cancel_url' } = $user->getProfileUrl;
$form->toTemplateVars( "form", $var );
return $self->processTemplate($var,$self->getSendRequestTemplateId);
}

View file

@ -19,6 +19,10 @@ my %namespaces = (
submit => "form_field_submit",
formFooter => "form_footer",
},
"Account/Friends/SendRequest" => {
form_message_rich => "form_field_message_field",
submit_button => "form_field_submit",
},
);
# Map of namespace => { match => replacement }

View file

@ -16,6 +16,7 @@ use strict;
use Test::More;
use WebGUI::Test; # Must use this before any other WebGUI modules
use WebGUI::Session;
use WebGUI::Test::Mechanize;
#----------------------------------------------------------------------------
# Init
@ -25,7 +26,7 @@ my $session = WebGUI::Test->session;
#----------------------------------------------------------------------------
# Tests
plan tests => 7; # Increment this number for each test you create
plan tests => 11; # Increment this number for each test you create
#----------------------------------------------------------------------------
# Test the creation of WebGUI::Account::Friends
@ -67,4 +68,37 @@ is( $account->getUrl( 'op=account' ), $session->url->page( 'op=account' ),
'getUrl doesnt add op=account if already exists'
);
#----------------------------------------------------------------------------
# Test the send friend request form
# Start a session
my $mech = WebGUI::Test::Mechanize->new( config => WebGUI::Test->file );
$mech->get_ok( '/' );
# Get our admin
my $admin = WebGUI::User->new( $mech->session, "3" );
# Add a user who can be a friend for admin
my $edgar_friendly = WebGUI::Test->user( username => 'edgarfriendly', ableToBeFriend => 1 );
$edgar_friendly = WebGUI::User->new( $mech->session, $edgar_friendly->getId ); # fix the session
# Add a user who is not very nice
my $simon_phoenix = WebGUI::Test->user( username => 'simonphoenix', ableToBeFriend => 0 );
$simon_phoenix = WebGUI::User->new( $mech->session, $simon_phoenix->getId ); # fix the session
$mech->session->user({ user => $admin });
$mech->get_ok( "/?op=account;module=friends;do=sendFriendsRequest;uid=" . $edgar_friendly->getId, "get send request form" );
$mech->submit_form_ok(
{
form_name => "messageForm",
fields => { }, # keep the defaults
},
"submit send request form",
);
my $friend = WebGUI::Friends->new($mech->session);
ok( $friend->isInvited($edgar_friendly->getId), "invitation was sent" );
#vim:ft=perl