%# No one can make you feel inferior without your consent. %# -- Eleanor Roosevelt <& /Edit/Elements/PopHeader, Title => loc('Pick'), $IsWork ? (BG => '#C0EBEB') : () &>
<& /Edit/Elements/PopFooter &> <%INIT> if ($User) { my $Item = $RT::Nothing; $Item = RT::Queue->new($session{'CurrentUser'}); $Item->Load($Queue) or Abort("Cannot load queue $Queue"); my $Groups = RT::Groups->new($session{'CurrentUser'}); $Groups->LimitToPersonalGroupsFor($CurrentUser); my $Delegates; while ( my $Group = $Groups->Next) { $Delegates->{$Group->Name} = $Group; } my $Group = $Delegates->{$Item->Id}; if (!$Group) { $Group = RT::Group->new($session{'CurrentUser'}); $Group->CreatePersonalGroup( Name => $Item->Id, PrincipalId => $CurrentUser, ); $Delegates->{$Item->Id} = $Group; } $Group->SetDescription($User); foreach my $User (@{$Group->UserMembersObj->ItemsArrayRef}) { $Group->DeleteMember($User->PrincipalId); } $Group->AddMember($User); $m->print(""); $m->abort; } my $U = $session{'CurrentUser'}->UserObj; my $J = $U->table($U->normalize($U->table('employee'), 'job')); my $company = $U->Attribute('Company'); my %J = map {($_->{job_cname}, $_->{job_id})} grep { !$RT::CompanySpecific or !$company or ($_->{company_id} eq $company) } values %$J; my $Jobs; @$Jobs = sort keys %J; my $Groups = RT::Groups->HRMSUserDefinedGroups( $session{'CurrentUser'} ); my $Users = $RT::Nothing; if ($Group or $Job) { $Users = RT::Users->new($session{'CurrentUser'}); $Users->Limit( FIELD => 'ExternalAuthId', OPERATOR => '!=', VALUE =>'0'); $Users->MemberOfGroup($Group) if $Group; } <%ARGS> $User => 0 $IsWork => 0 $Queue => '' $Group => 0 $Job => 0 $CurrentUser => $session{'CurrentUser'}->UserObj->PrincipalId