Missing session variables, reworked some wording on old POD.
Added POD to two more files.
This commit is contained in:
parent
dc204428f6
commit
0621fd4492
6 changed files with 146 additions and 71 deletions
|
|
@ -31,7 +31,7 @@ Utility routine for creating the AdminConsole for DatabaseLink functions.
|
||||||
|
|
||||||
=head3 $session
|
=head3 $session
|
||||||
|
|
||||||
The current WebGUI session variable.
|
The current WebGUI session object.
|
||||||
|
|
||||||
=head3 $workarea
|
=head3 $workarea
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -18,56 +18,115 @@ use WebGUI::International;
|
||||||
use WebGUI::Paginator;
|
use WebGUI::Paginator;
|
||||||
use WebGUI::SQL;
|
use WebGUI::SQL;
|
||||||
|
|
||||||
|
=head1 NAME
|
||||||
|
|
||||||
|
Package WebGUI::Operation::LDAPLink
|
||||||
|
|
||||||
|
=head1 DESCRIPTION
|
||||||
|
|
||||||
|
Operational handler for creating, managing and deleting LDAP Links. Only users
|
||||||
|
in group Admin (3) are allowed to execute subroutines in this package.
|
||||||
|
|
||||||
|
=cut
|
||||||
|
|
||||||
#-------------------------------------------------------------------
|
#-------------------------------------------------------------------
|
||||||
|
|
||||||
|
=head2 _submenu ( $session, $workarea, $title, $help )
|
||||||
|
|
||||||
|
Utility routine for creating the AdminConsole for LDAPLink functions.
|
||||||
|
|
||||||
|
=head3 $session
|
||||||
|
|
||||||
|
The current WebGUI session object.
|
||||||
|
|
||||||
|
=head3 $workarea
|
||||||
|
|
||||||
|
The content to display to the user.
|
||||||
|
|
||||||
|
=head3 $title
|
||||||
|
|
||||||
|
The title of the Admin Console. This should be an entry in the i18n
|
||||||
|
table in the WebGUI namespace.
|
||||||
|
|
||||||
|
=head3 $help
|
||||||
|
|
||||||
|
An entry in the Help system in the WebGUI namespace. This will be shown
|
||||||
|
as a link to the user.
|
||||||
|
|
||||||
|
=cut
|
||||||
|
|
||||||
sub _submenu {
|
sub _submenu {
|
||||||
my $session = shift;
|
my $session = shift;
|
||||||
my $workarea = shift;
|
my $workarea = shift;
|
||||||
my $title = shift;
|
my $title = shift;
|
||||||
my $i18n = WebGUI::International->new($session,"AuthLDAP");
|
my $i18n = WebGUI::International->new($session,"AuthLDAP");
|
||||||
$title = $i18n->get($title) if ($title);
|
$title = $i18n->get($title) if ($title);
|
||||||
my $help = shift;
|
my $help = shift;
|
||||||
my $ac = WebGUI::AdminConsole->new($session,"ldapconnections");
|
my $ac = WebGUI::AdminConsole->new($session,"ldapconnections");
|
||||||
if ($help) {
|
if ($help) {
|
||||||
$ac->setHelp($help,"AuthLDAP");
|
$ac->setHelp($help,"AuthLDAP");
|
||||||
}
|
}
|
||||||
my $returnUrl = "";
|
my $returnUrl = "";
|
||||||
if($session->form->process("returnUrl")) {
|
if($session->form->process("returnUrl")) {
|
||||||
$returnUrl = ";returnUrl=".$session->url->escape($session->form->process("returnUrl"));
|
$returnUrl = ";returnUrl=".$session->url->escape($session->form->process("returnUrl"));
|
||||||
}
|
}
|
||||||
$ac->addSubmenuItem($session->url->page('op=editLDAPLink;llid=new'.$returnUrl), $i18n->get("LDAPLink_982"));
|
$ac->addSubmenuItem($session->url->page('op=editLDAPLink;llid=new'.$returnUrl), $i18n->get("LDAPLink_982"));
|
||||||
if ($session->form->process("op") eq "editLDAPLink" && $session->form->process("llid") ne "new") {
|
if ($session->form->process("op") eq "editLDAPLink" && $session->form->process("llid") ne "new") {
|
||||||
$ac->addSubmenuItem($session->url->page('op=editLDAPLink;llid='.$session->form->process("llid").$returnUrl), $i18n->get("LDAPLink_983"));
|
$ac->addSubmenuItem($session->url->page('op=editLDAPLink;llid='.$session->form->process("llid").$returnUrl), $i18n->get("LDAPLink_983"));
|
||||||
$ac->addSubmenuItem($session->url->page('op=copyLDAPLink;llid='.$session->form->process("llid").$returnUrl), $i18n->get("LDAPLink_984"));
|
$ac->addSubmenuItem($session->url->page('op=copyLDAPLink;llid='.$session->form->process("llid").$returnUrl), $i18n->get("LDAPLink_984"));
|
||||||
$ac->addSubmenuItem($session->url->page('op=deleteLDAPLink;llid='.$session->form->process("llid")), $i18n->get("LDAPLink_985"));
|
$ac->addSubmenuItem($session->url->page('op=deleteLDAPLink;llid='.$session->form->process("llid")), $i18n->get("LDAPLink_985"));
|
||||||
$ac->addSubmenuItem($session->url->page('op=listLDAPLinks'.$returnUrl), $i18n->get("LDAPLink_986"));
|
$ac->addSubmenuItem($session->url->page('op=listLDAPLinks'.$returnUrl), $i18n->get("LDAPLink_986"));
|
||||||
}
|
}
|
||||||
return $ac->render($workarea, $title);
|
return $ac->render($workarea, $title);
|
||||||
}
|
}
|
||||||
|
|
||||||
#-------------------------------------------------------------------
|
#-------------------------------------------------------------------
|
||||||
|
=head2 www_copyLDAPLink ( $session )
|
||||||
|
|
||||||
|
Copies the requested LDAP link in the form variable C<llid>. Adds the words
|
||||||
|
"Copy of" to the link name.
|
||||||
|
Returns the user to the List LDAP Links screen.
|
||||||
|
|
||||||
|
=cut
|
||||||
|
|
||||||
sub www_copyLDAPLink {
|
sub www_copyLDAPLink {
|
||||||
my $session = shift;
|
my $session = shift;
|
||||||
return $session->privilege->insufficient unless ($session->user->isInGroup(3));
|
return $session->privilege->insufficient unless ($session->user->isInGroup(3));
|
||||||
my (%db);
|
my (%db);
|
||||||
tie %db, 'Tie::CPHash';
|
tie %db, 'Tie::CPHash';
|
||||||
%db = $session->db->quickHash("select * from ldapLink where ldapLinkId=".$session->db->quote($session->form->process("llid")));
|
%db = $session->db->quickHash("select * from ldapLink where ldapLinkId=".$session->db->quote($session->form->process("llid")));
|
||||||
$db{ldapLinkId} = "new";
|
$db{ldapLinkId} = "new";
|
||||||
$db{ldapLinkName} = "Copy of ".$db{ldapLinkName};
|
$db{ldapLinkName} = "Copy of ".$db{ldapLinkName};
|
||||||
$session->db->setRow("ldapLink","ldapLinkId",\%db);
|
$session->db->setRow("ldapLink","ldapLinkId",\%db);
|
||||||
$session->form->process("op") = "listLDAPLinks";
|
$session->form->process("op") = "listLDAPLinks";
|
||||||
return www_listLDAPLinks();
|
return www_listLDAPLinks($session);
|
||||||
}
|
}
|
||||||
|
|
||||||
#-------------------------------------------------------------------
|
#-------------------------------------------------------------------
|
||||||
|
|
||||||
|
=head2 www_deleteLDAPLink ( $session )
|
||||||
|
|
||||||
|
Deletes the requested LDAP Link in the form variable C<llid>. Returns the user to the List LDAP Links screen.
|
||||||
|
|
||||||
|
=cut
|
||||||
|
|
||||||
sub www_deleteLDAPLink {
|
sub www_deleteLDAPLink {
|
||||||
my $session = shift;
|
my $session = shift;
|
||||||
return $session->privilege->insufficient unless ($session->user->isInGroup(3));
|
return $session->privilege->insufficient unless ($session->user->isInGroup(3));
|
||||||
$session->db->write("delete from ldapLink where ldapLinkId=".$session->db->quote($session->form->process("llid")));
|
$session->db->write("delete from ldapLink where ldapLinkId=".$session->db->quote($session->form->process("llid")));
|
||||||
$session->form->process("op") = "listLDAPLinks";
|
$session->form->process("op") = "listLDAPLinks";
|
||||||
return www_listLDAPLinks();
|
return www_listLDAPLinks($session);
|
||||||
}
|
}
|
||||||
|
|
||||||
#-------------------------------------------------------------------
|
#-------------------------------------------------------------------
|
||||||
|
|
||||||
|
=head2 www_editLDAPLink ( $session )
|
||||||
|
|
||||||
|
Creates a new LDAPLink or edits the LDAPLink defined by form variable C<llid>.
|
||||||
|
Calls www_editLDAPLinkSave when done.
|
||||||
|
|
||||||
|
=cut
|
||||||
|
|
||||||
sub www_editLDAPLink {
|
sub www_editLDAPLink {
|
||||||
my $session = shift;
|
my $session = shift;
|
||||||
return $session->privilege->insufficient unless ($session->user->isInGroup(3));
|
return $session->privilege->insufficient unless ($session->user->isInGroup(3));
|
||||||
|
|
@ -85,15 +144,15 @@ sub www_editLDAPLink {
|
||||||
-name => "llid",
|
-name => "llid",
|
||||||
-value => $session->form->process("llid"),
|
-value => $session->form->process("llid"),
|
||||||
);
|
);
|
||||||
$f->hidden(
|
$f->hidden(
|
||||||
-name => "returnUrl",
|
-name => "returnUrl",
|
||||||
-value => $session->form->process("returnUrl"),
|
-value => $session->form->process("returnUrl"),
|
||||||
);
|
);
|
||||||
$f->readOnly(
|
$f->readOnly(
|
||||||
-label => $i18n->get("LDAPLink_991"),
|
-label => $i18n->get("LDAPLink_991"),
|
||||||
-value => $session->form->process("llid"),
|
-value => $session->form->process("llid"),
|
||||||
);
|
);
|
||||||
$f->text(
|
$f->text(
|
||||||
-name => "ldapLinkName",
|
-name => "ldapLinkName",
|
||||||
-label => $i18n->get("LDAPLink_992"),
|
-label => $i18n->get("LDAPLink_992"),
|
||||||
-hoverHelp => $i18n->get("LDAPLink_992 description"),
|
-hoverHelp => $i18n->get("LDAPLink_992 description"),
|
||||||
|
|
@ -141,13 +200,13 @@ sub www_editLDAPLink {
|
||||||
-hoverHelp => $i18n->get('8 description'),
|
-hoverHelp => $i18n->get('8 description'),
|
||||||
-value => $db{ldapPasswordName},
|
-value => $db{ldapPasswordName},
|
||||||
);
|
);
|
||||||
$f->yesNo(
|
$f->yesNo(
|
||||||
-name=>"ldapSendWelcomeMessage",
|
-name=>"ldapSendWelcomeMessage",
|
||||||
-value=>$db{ldapSendWelcomeMessage},
|
-value=>$db{ldapSendWelcomeMessage},
|
||||||
-label=>$i18n->get(868),
|
-label=>$i18n->get(868),
|
||||||
-hoverHelp=>$i18n->get('868 description'),
|
-hoverHelp=>$i18n->get('868 description'),
|
||||||
);
|
);
|
||||||
$f->textarea(
|
$f->textarea(
|
||||||
-name=>"ldapWelcomeMessage",
|
-name=>"ldapWelcomeMessage",
|
||||||
-value=>$db{ldapWelcomeMessage},
|
-value=>$db{ldapWelcomeMessage},
|
||||||
-label=>$i18n->get(869),
|
-label=>$i18n->get(869),
|
||||||
|
|
@ -181,32 +240,48 @@ sub www_editLDAPLink {
|
||||||
}
|
}
|
||||||
|
|
||||||
#-------------------------------------------------------------------
|
#-------------------------------------------------------------------
|
||||||
|
|
||||||
|
=head2 www_editLDAPLinkSave ( $session )
|
||||||
|
|
||||||
|
Form post processor for www_editLDAPLink.
|
||||||
|
Returns the user to www_listLDAPLinks when done.
|
||||||
|
|
||||||
|
=cut
|
||||||
|
|
||||||
sub www_editLDAPLinkSave {
|
sub www_editLDAPLinkSave {
|
||||||
my $session = shift;
|
my $session = shift;
|
||||||
return $session->privilege->insufficient unless ($session->user->isInGroup(3));
|
return $session->privilege->insufficient unless ($session->user->isInGroup(3));
|
||||||
my $properties = {};
|
my $properties = {};
|
||||||
$properties->{ldapLinkId} = $session->form->process("llid");
|
$properties->{ldapLinkId} = $session->form->process("llid");
|
||||||
$properties->{ldapLinkName} = $session->form->process("ldapLinkName");
|
$properties->{ldapLinkName} = $session->form->process("ldapLinkName");
|
||||||
$properties->{ldapUrl} = $session->form->process("ldapUrl");
|
$properties->{ldapUrl} = $session->form->process("ldapUrl");
|
||||||
$properties->{connectDn} = $session->form->process("connectDn");
|
$properties->{connectDn} = $session->form->process("connectDn");
|
||||||
$properties->{identifier} = $session->form->process("ldapIdentifier");
|
$properties->{identifier} = $session->form->process("ldapIdentifier");
|
||||||
$properties->{ldapUserRDN} = $session->form->process("ldapUserRDN");
|
$properties->{ldapUserRDN} = $session->form->process("ldapUserRDN");
|
||||||
$properties->{ldapIdentity} = $session->form->process("ldapIdentity");
|
$properties->{ldapIdentity} = $session->form->process("ldapIdentity");
|
||||||
$properties->{ldapIdentityName} = $session->form->process("ldapIdentityName");
|
$properties->{ldapIdentityName} = $session->form->process("ldapIdentityName");
|
||||||
$properties->{ldapPasswordName} = $session->form->process("ldapPasswordName");
|
$properties->{ldapPasswordName} = $session->form->process("ldapPasswordName");
|
||||||
$properties->{ldapSendWelcomeMessage} = $session->form->yesNo("ldapSendWelcomeMessage");
|
$properties->{ldapSendWelcomeMessage} = $session->form->yesNo("ldapSendWelcomeMessage");
|
||||||
$properties->{ldapWelcomeMessage} = $session->form->textarea("ldapWelcomeMessage");
|
$properties->{ldapWelcomeMessage} = $session->form->textarea("ldapWelcomeMessage");
|
||||||
$properties->{ldapAccountTemplate} = $session->form->template("ldapAccountTemplate");
|
$properties->{ldapAccountTemplate} = $session->form->template("ldapAccountTemplate");
|
||||||
$properties->{ldapCreateAccountTemplate} = $session->form->template("ldapCreateAccountTemplate");
|
$properties->{ldapCreateAccountTemplate} = $session->form->template("ldapCreateAccountTemplate");
|
||||||
$properties->{ldapLoginTemplate} = $session->form->template("ldapLoginTemplate");
|
$properties->{ldapLoginTemplate} = $session->form->template("ldapLoginTemplate");
|
||||||
$session->db->setRow("ldapLink","ldapLinkId",$properties);
|
$session->db->setRow("ldapLink","ldapLinkId",$properties);
|
||||||
if($session->form->process("returnUrl")) {
|
if($session->form->process("returnUrl")) {
|
||||||
$session->http->setRedirect($session->form->process("returnUrl"));
|
$session->http->setRedirect($session->form->process("returnUrl"));
|
||||||
}
|
}
|
||||||
return www_listLDAPLinks();
|
return www_listLDAPLinks($session);
|
||||||
}
|
}
|
||||||
|
|
||||||
#-------------------------------------------------------------------
|
#-------------------------------------------------------------------
|
||||||
|
|
||||||
|
=head2 www_listLDAPLinks ( $session )
|
||||||
|
|
||||||
|
Create a paginated form that lists all LDAP links and allows the user to add, edit or copy LDAP
|
||||||
|
links. Each LDAP link is tested and the status of that test is returned.
|
||||||
|
|
||||||
|
=cut
|
||||||
|
|
||||||
sub www_listLDAPLinks {
|
sub www_listLDAPLinks {
|
||||||
my $session = shift;
|
my $session = shift;
|
||||||
return $session->privilege->adminOnly() unless($session->user->isInGroup(3));
|
return $session->privilege->adminOnly() unless($session->user->isInGroup(3));
|
||||||
|
|
|
||||||
|
|
@ -39,7 +39,7 @@ to be used as template variables in the WebGUI template system.
|
||||||
|
|
||||||
=head3 $session
|
=head3 $session
|
||||||
|
|
||||||
The current WebGUI session variable.
|
The current WebGUI session object.
|
||||||
|
|
||||||
=cut
|
=cut
|
||||||
|
|
||||||
|
|
@ -87,7 +87,7 @@ Saves profile data to a user's profile. Does not validate any of the data.
|
||||||
|
|
||||||
=head3 $session
|
=head3 $session
|
||||||
|
|
||||||
WebGUI session variable
|
WebGUI session object
|
||||||
|
|
||||||
=head3 $user
|
=head3 $user
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -34,11 +34,11 @@ Only users in group Admin (3) are allowed to call subroutines in this package.
|
||||||
|
|
||||||
=head2 _submenu ( $session, $workarea, $title, $help )
|
=head2 _submenu ( $session, $workarea, $title, $help )
|
||||||
|
|
||||||
Utility routine for creating the AdminConsole for DatabaseLink functions.
|
Utility routine for creating the AdminConsole for ProfileSetting functions.
|
||||||
|
|
||||||
=head3 $session
|
=head3 $session
|
||||||
|
|
||||||
The current WebGUI session variable.
|
The current WebGUI session object.
|
||||||
|
|
||||||
=head3 $workarea
|
=head3 $workarea
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -27,11 +27,11 @@ a search and replace function in word processors.
|
||||||
|
|
||||||
=head2 _submenu ( $session, $workarea, $title, $help )
|
=head2 _submenu ( $session, $workarea, $title, $help )
|
||||||
|
|
||||||
Utility routine for creating the AdminConsole for DatabaseLink functions.
|
Utility routine for creating the AdminConsole for Replacement functions.
|
||||||
|
|
||||||
=head3 $session
|
=head3 $session
|
||||||
|
|
||||||
The current WebGUI session variable.
|
The current WebGUI session object.
|
||||||
|
|
||||||
=head3 $workarea
|
=head3 $workarea
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -31,7 +31,7 @@ Utility routine for creating the AdminConsole for Statistics functions.
|
||||||
|
|
||||||
=head3 $session
|
=head3 $session
|
||||||
|
|
||||||
The current WebGUI session variable.
|
The current WebGUI session object.
|
||||||
|
|
||||||
=head3 $workarea
|
=head3 $workarea
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue