migrate Account Friends sentFriendRequest to FB
This commit is contained in:
parent
b5c1ffe5b7
commit
8299e9e706
3 changed files with 59 additions and 17 deletions
|
|
@ -402,33 +402,37 @@ sub www_sendFriendsRequest {
|
||||||
$var->{'user_full_name' } = $user->getWholeName;
|
$var->{'user_full_name' } = $user->getWholeName;
|
||||||
$var->{'user_member_since' } = $user->dateCreated;
|
$var->{'user_member_since' } = $user->dateCreated;
|
||||||
|
|
||||||
|
$var->{'cancel_url' } = $user->getProfileUrl;
|
||||||
|
|
||||||
my $defaultComment = sprintf(
|
my $defaultComment = sprintf(
|
||||||
$i18n->get('default friend comments'),
|
$i18n->get('default friend comments'),
|
||||||
$user->getFirstName,
|
$user->getFirstName,
|
||||||
$session->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",
|
name =>"message",
|
||||||
value =>$defaultComment,
|
value =>$defaultComment,
|
||||||
width =>600,
|
width =>600,
|
||||||
height =>200
|
height =>200
|
||||||
});
|
})->toHtml;
|
||||||
|
|
||||||
$var->{'form_message_rich'} = WebGUI::Form::HTMLArea($session, {
|
$form->addField( "Submit",
|
||||||
name => "message",
|
name => "submit",
|
||||||
value => $defaultComment,
|
);
|
||||||
width => "600",
|
|
||||||
});
|
|
||||||
|
|
||||||
$var->{'form_header' } = WebGUI::Form::formHeader($session,{
|
$form->toTemplateVars( "form", $var );
|
||||||
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;
|
|
||||||
|
|
||||||
return $self->processTemplate($var,$self->getSendRequestTemplateId);
|
return $self->processTemplate($var,$self->getSendRequestTemplateId);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -19,6 +19,10 @@ my %namespaces = (
|
||||||
submit => "form_field_submit",
|
submit => "form_field_submit",
|
||||||
formFooter => "form_footer",
|
formFooter => "form_footer",
|
||||||
},
|
},
|
||||||
|
"Account/Friends/SendRequest" => {
|
||||||
|
form_message_rich => "form_field_message_field",
|
||||||
|
submit_button => "form_field_submit",
|
||||||
|
},
|
||||||
);
|
);
|
||||||
|
|
||||||
# Map of namespace => { match => replacement }
|
# Map of namespace => { match => replacement }
|
||||||
|
|
|
||||||
|
|
@ -16,6 +16,7 @@ use strict;
|
||||||
use Test::More;
|
use Test::More;
|
||||||
use WebGUI::Test; # Must use this before any other WebGUI modules
|
use WebGUI::Test; # Must use this before any other WebGUI modules
|
||||||
use WebGUI::Session;
|
use WebGUI::Session;
|
||||||
|
use WebGUI::Test::Mechanize;
|
||||||
|
|
||||||
#----------------------------------------------------------------------------
|
#----------------------------------------------------------------------------
|
||||||
# Init
|
# Init
|
||||||
|
|
@ -25,7 +26,7 @@ my $session = WebGUI::Test->session;
|
||||||
#----------------------------------------------------------------------------
|
#----------------------------------------------------------------------------
|
||||||
# Tests
|
# 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
|
# 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'
|
'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
|
#vim:ft=perl
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue