LastViews#
NAME#
Kernel::System::LastViews - LastViews lib
PUBLIC INTERFACE#
new()#
Don't use the constructor directly, use the ObjectManager instead:
my $LastViewsObject = $Kernel::OM->Get('Kernel::System::LastViews');
Get()#
Returns data of LastView (Request).
my %LastView = $LastViewsObject->Get(
%{ $Param{Request} },
);
Returns:
my %LastView = (
Type => 'TicketOverview',
Name => 'Queue',
Frontend => 'Agent',
Icon => 'fa fa-table',
PopUp => 0, # 0 or 1
Params => {
Title => 'Raw',
},
FrontendIcon => 'fa fa-user',
URL => 'Action=AgentTicketQueue;QueueID=2;View=;Filter=Unlocked',
Action => 'AgentTicketQueue',
TimeStamp => '2020-04-16 23:59:59',
);
_LastViewParameters()#
Returns additional LastView parameters for specific Modules.
my $LastViewParams = $Self->_LastViewParameters(
Param => \%Param,
LastView => \%LastView,
);
Returns:
$LastViewParams = {
'LastView' => {
'Name' => 'Znuny says hi!'
},
'Params' => {
'Nummer' => '2021012710123456',
'Besitzer' => 'root@localhost'
}
};
GetList()#
Returns a list of all last views from session
my @LastViews = $LastViewsObject->GetList(
SessionID => 123,
Types => ['Ticket', 'Admin'], # optional
);
Returns:
my @LastViews = 1;
GetActionMapping()#
returns action mappings.
my %ActionMapping = $LastViewsObject->GetActionMapping();
Returns:
my %ActionMapping = (
AgentTicketPhone => {
Type => 'TicketCreate',
Frontend => 'Agent',
Icon => 'Phone',
Name => 'Phone',
},
);
GetPopUpActions()#
returns all popup actions.
my %PopUpActions = $LastViewsObject->GetPopUpActions();
Returns:
my %PopUpActions = (
'AgentTicketMerge' => 'TicketAction',
'AgentTicketCustomer' => 'TicketAction',
'AgentTicketPriority' => 'TicketAction',
'AgentTicketNote' => 'TicketAction',
'AgentLinkObject' => 'TicketAction',
);
GetActionIgnore()#
returns all actions to skip.
my @ActionIgnore = $LastViewsObject->GetActionIgnore();
Returns:
my @ActionIgnore = (
'AgentTicketArticleContent'
);
GetSubactionIgnore()#
returns all sub-actions to skip.
my @SubactionIgnore = $LastViewsObject->GetSubactionIgnore();
Returns:
my @SubactionIgnore = (
'AgentTicketArticleContent'
);
Update()#
Updates the last view list - added latest view to list.
my $Success = $LastViewsObject->Update(
SessionID => $Self->{SessionID},
Request => \%Request,
);
Returns:
my $Success = 1;
Delete()#
Deletes the last view list.
my $Success = $LastViewsObject->Delete(
SessionID => $Param{SessionID},
Count => 20, # option - deletes all views but the latest n
);
Returns:
my $Success = 1;
IsValidRequest()#
Checks if request is valid. Request is valid if
RequestedURL has an Action
LastScreenView is not equal to RequestedURL
Action is not one of ‘ActionIgnore’
Subaction is not one of ‘SubactionIgnore’
my $IsValidRequest = $LastViewsObject->IsValidRequest(
%Request
);
Returns:
my $IsValidRequest = 1;