Install, config and base module for FriendManager.
This commit is contained in:
parent
8dd59e5d92
commit
968544580a
2 changed files with 162 additions and 0 deletions
119
lib/WebGUI/Account/FriendManager.pm
Normal file
119
lib/WebGUI/Account/FriendManager.pm
Normal file
|
|
@ -0,0 +1,119 @@
|
||||||
|
package WebGUI::Account::FriendManager;
|
||||||
|
|
||||||
|
use strict;
|
||||||
|
|
||||||
|
use WebGUI::Exception;
|
||||||
|
use WebGUI::International;
|
||||||
|
use WebGUI::Pluggable;
|
||||||
|
use WebGUI::Utility;
|
||||||
|
use base qw/WebGUI::Account/;
|
||||||
|
|
||||||
|
=head1 NAME
|
||||||
|
|
||||||
|
Package WebGUI::Account::FriendManager
|
||||||
|
|
||||||
|
=head1 DESCRIPTION
|
||||||
|
|
||||||
|
Allow friends to be assigned to one another instead of the usual social
|
||||||
|
networking.
|
||||||
|
|
||||||
|
The style and layout settings are always inherited from the main Account
|
||||||
|
module.
|
||||||
|
|
||||||
|
=head1 SYNOPSIS
|
||||||
|
|
||||||
|
use WebGUI::Account::FriendManager;
|
||||||
|
|
||||||
|
=head1 METHODS
|
||||||
|
|
||||||
|
These methods are available from this class:
|
||||||
|
|
||||||
|
=cut
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------
|
||||||
|
|
||||||
|
=head2 canView ( )
|
||||||
|
|
||||||
|
Returns whether or not the user can view the the tab for this module
|
||||||
|
|
||||||
|
=cut
|
||||||
|
|
||||||
|
sub canView {
|
||||||
|
my $self = shift;
|
||||||
|
my $session = $self->session;
|
||||||
|
return $session->user->isInGroup($session->setting->get('groupIdAdminFriends'));
|
||||||
|
}
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------
|
||||||
|
|
||||||
|
=head2 editSettingsForm ( )
|
||||||
|
|
||||||
|
Creates form elements for the settings page custom to this account module.
|
||||||
|
|
||||||
|
=cut
|
||||||
|
|
||||||
|
sub editSettingsForm {
|
||||||
|
my $self = shift;
|
||||||
|
my $session = $self->session;
|
||||||
|
my $i18n = WebGUI::International->new($session,'Account_FriendManager');
|
||||||
|
my $f = WebGUI::HTMLForm->new($session);
|
||||||
|
|
||||||
|
$f->group(
|
||||||
|
name => "groupIdAdminFriends",
|
||||||
|
value => $session->setting->get('groupIdAdminFriends'),
|
||||||
|
label => $i18n->get("setting groupIdAdminFriends label"),
|
||||||
|
hoverHelp => $i18n->get("setting groupIdAdminFriends hoverHelp")
|
||||||
|
);
|
||||||
|
$f->group(
|
||||||
|
name => "groupsToManageFriends",
|
||||||
|
value => $session->setting->get('groupsToManageFriends'),
|
||||||
|
multiple => 1,
|
||||||
|
label => $i18n->get("groupsToManageFriends label"),
|
||||||
|
hoverHelp => $i18n->get("groupsToManageFriends hoverHelp")
|
||||||
|
);
|
||||||
|
$f->template(
|
||||||
|
name => "friendManagerViewTemplateId",
|
||||||
|
value => $self->session->setting->get("friendManagerViewTemplateId"),
|
||||||
|
namespace => "Account/FriendManager/View",
|
||||||
|
label => $i18n->get("view template label"),
|
||||||
|
hoverHelp => $i18n->get("view template hoverHelp")
|
||||||
|
);
|
||||||
|
|
||||||
|
return $f->printRowsOnly;
|
||||||
|
}
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------
|
||||||
|
|
||||||
|
=head2 editSettingsFormSave ( )
|
||||||
|
|
||||||
|
Creates form elements for the settings page custom to this account module
|
||||||
|
|
||||||
|
=cut
|
||||||
|
|
||||||
|
sub editSettingsFormSave {
|
||||||
|
my $self = shift;
|
||||||
|
my $session = $self->session;
|
||||||
|
my $setting = $session->setting;
|
||||||
|
my $form = $session->form;
|
||||||
|
|
||||||
|
$setting->set("moduleViewTemplateId", $form->process("moduleViewTemplateId","template"));
|
||||||
|
}
|
||||||
|
|
||||||
|
#-------------------------------------------------------------------
|
||||||
|
|
||||||
|
=head2 www_view ( )
|
||||||
|
|
||||||
|
The main view page for editing the user's profile.
|
||||||
|
|
||||||
|
=cut
|
||||||
|
|
||||||
|
sub www_view {
|
||||||
|
my $self = shift;
|
||||||
|
my $session = $self->session;
|
||||||
|
my $var = {};
|
||||||
|
|
||||||
|
return $self->processTemplate($var,$session->setting->get("moduleViewTemplateId"));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
1;
|
||||||
43
lib/WebGUI/i18n/English/Account_FriendManager.pm
Normal file
43
lib/WebGUI/i18n/English/Account_FriendManager.pm
Normal file
|
|
@ -0,0 +1,43 @@
|
||||||
|
package WebGUI::i18n::English::FriendManager;
|
||||||
|
use strict;
|
||||||
|
|
||||||
|
our $I18N = {
|
||||||
|
|
||||||
|
'settings groupIdAdminFriends label' => {
|
||||||
|
message => q{Friends Manager},
|
||||||
|
lastUpdated => 0,
|
||||||
|
},
|
||||||
|
|
||||||
|
'settings groupIdAdminFriends hoverHelp' => {
|
||||||
|
message => q{Group to manage friends, to assign people to one another and to view the interface for managing friends.},
|
||||||
|
lastUpdated => 0,
|
||||||
|
},
|
||||||
|
|
||||||
|
'view template label' => {
|
||||||
|
message => q{View Template},
|
||||||
|
lastUpdated => 0,
|
||||||
|
},
|
||||||
|
|
||||||
|
'view template hoverHelp' => {
|
||||||
|
message => q{This template renders the Friend Manager itself, inside the layout and style templates.},
|
||||||
|
lastUpdated => 0,
|
||||||
|
},
|
||||||
|
|
||||||
|
'groupsToManageFriends label' => {
|
||||||
|
message => q{Groups to Manage as Friends},
|
||||||
|
lastUpdated => 0,
|
||||||
|
},
|
||||||
|
|
||||||
|
'groupsToManageFriends hoverHelp' => {
|
||||||
|
message => q{Choose groups of users whose Friends Networks you want to Manage.},
|
||||||
|
lastUpdated => 0,
|
||||||
|
},
|
||||||
|
|
||||||
|
'title' => {
|
||||||
|
message => q{Friend Manager},
|
||||||
|
lastUpdated => 0,
|
||||||
|
},
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
1;
|
||||||
Loading…
Add table
Add a link
Reference in a new issue