[otrs-cvs] otrs/Kernel/Modules AgentTicketProcess.pm,1.33,1.34
"CVS commits notifications of OTRS.org" <[email protected]>
| Newsgroups | gmane.comp.otrs.cvs |
|---|---|
| Message-ID | <[email protected]> |
Comments:
Update of /home/cvs/otrs/Kernel/Modules
In directory lancelot:/tmp/cvs-serv5587/Kernel/Modules
Modified Files:
AgentTicketProcess.pm
Log Message:
- 2013-01-29 Fixed bug#9095 - ProcessManagement: Service field does not show default services.
Author: cr
Index: AgentTicketProcess.pm
===================================================================
RCS file: /home/cvs/otrs/Kernel/Modules/AgentTicketProcess.pm,v
retrieving revision 1.33
retrieving revision 1.34
diff -2 -u -d -r1.33 -r1.34
--- AgentTicketProcess.pm 29 Jan 2013 22:24:34 -0000 1.33
+++ AgentTicketProcess.pm 30 Jan 2013 00:16:29 -0000 1.34
@@ -2759,7 +2759,10 @@
Data => $SLAs,
Name => 'SLAID',
- Translation => 1,
SelectedValue => $SelectedValue,
+ PossibleNone => 1,
+ Sort => 'AlphanumericValue',
+ Translation => 0,
Class => $ServerError,
+ Max => 200,
);
@@ -2888,11 +2891,21 @@
}
+ # get list type
+ my $TreeView = 0;
+ if ( $Self->{ConfigObject}->Get('Ticket::Frontend::ListType') eq 'tree' ) {
+ $TreeView = 1;
+ }
+
# build Service string
$Data{Content} = $Self->{LayoutObject}->BuildSelection(
Data => $Services,
Name => 'ServiceID',
- Translation => 1,
- SelectedValue => $SelectedValue,
Class => $ServerError,
+ SelectedValue => $SelectedValue,
+ PossibleNone => 1,
+ TreeView => $TreeView,
+ Sort => 'TreeView',
+ Translation => 0,
+ Max => 200,
);
@@ -4526,12 +4539,4 @@
my ( $Self, %Param ) = @_;
- my %Services;
- SERVICE:
- for my $Service ( @{ $Param{Services} } ) {
- next SERVICE if !$Service;
- $Services{ $Service->{Key} } = $Service->{Value};
- }
- $Param{Services} = \%Services;
-
# get sla
my %SLA;
@@ -4553,6 +4558,21 @@
# get service
my %Service;
- my @ServiceList;
- if ( ( $Param{QueueID} || $Param{TicketID} ) && $Param{CustomerUserID} ) {
+
+ # check needed
+ return \%Service if !$Param{QueueID} && !$Param{TicketID};
+
+ # get options for default services for unknown customers
+ my $DefaultServiceUnknownCustomer
+ = $Self->{ConfigObject}->Get('Ticket::Service::Default::UnknownCustomer');
+
+ # check if no CustomerUserID is selected
+ # if $DefaultServiceUnknownCustomer = 0 leave CustomerUserID empty, it will not get any services
+ # if $DefaultServiceUnknownCustomer = 1 set CustomerUserID to get default services
+ if ( !$Param{CustomerUserID} && $DefaultServiceUnknownCustomer ) {
+ $Param{CustomerUserID} = '<DEFAULT>';
+ }
+
+ # get service list
+ if ( $Param{CustomerUserID} ) {
%Service = $Self->{TicketObject}->TicketServiceList(
%Param,
@@ -4560,89 +4580,6 @@
UserID => $Self->{UserID},
);
-
- my %OrigService = $Self->{ServiceObject}->CustomerUserServiceMemberList(
- Result => 'HASH',
- CustomerUserLogin => $Param{CustomerUserID},
- UserID => 1,
- );
-
- # get all services
- my $ServiceList = $Self->{ServiceObject}->ServiceListGet(
- Valid => 0,
- UserID => 1,
- );
-
- # get a service lookup table
- my %ServiceLoockup;
- SERVICE:
- for my $ServiceData ( @{$ServiceList} ) {
- next SERVICE if !$ServiceData;
- next SERVICE if !IsHashRefWithData($ServiceData);
- next SERVICE if !$ServiceData->{ServiceID};
-
- $ServiceLoockup{ $ServiceData->{ServiceID} } = $ServiceData;
- }
-
- # to store already printed ServiceIDs
- my %AddedServices;
-
- for my $ServiceKey ( sort { $OrigService{$a} cmp $OrigService{$b} } keys %OrigService ) {
-
- # get the service parent
- my $ServiceParentID = $ServiceLoockup{$ServiceKey}->{ParentID} || 0;
-
- # check if direct parent is not listed as printed
- if ( $ServiceParentID && !defined $AddedServices{$ServiceParentID} ) {
-
- # get all parent IDs
- my $ServiceParents = $Self->{ServiceObject}->ServiceParentsGet(
- ServiceID => $ServiceKey,
- UserID => $Self->{UserID},
- );
-
- SERVICEID:
- for my $ServiceID ( @{$ServiceParents} ) {
- next SERVICEID if !$ServiceID;
- next SERVICEID if $AddedServices{$ServiceID};
-
- my $ServiceParent = $ServiceLoockup{$ServiceID};
- next SERVICEID if !IsHashRefWithData($ServiceParent);
-
- # create a new register for each parent as disabled
- my %ParentServiceRegister = (
- Key => $ServiceID,
- Value => $ServiceParent->{Name},
- Selected => 0,
- Disabled => 1,
- );
- push @ServiceList, \%ParentServiceRegister;
-
- # set service as printed
- $AddedServices{$ServiceID} = 1;
- }
- }
-
- # set default service structure
- my %ServiceRegister = (
- Key => $ServiceKey,
- Value => $OrigService{$ServiceKey},
- );
-
- # check if service is selected
- if ( $Param{ServiceID} && $Param{ServiceID} eq $ServiceKey ) {
- $ServiceRegister{Selected} = 1;
- }
-
- # check if service is disabled
- if ( !$Service{$ServiceKey} ) {
- $ServiceRegister{Disabled} = 1;
- }
- push @ServiceList, \%ServiceRegister;
-
- # set service as printed
- $AddedServices{$ServiceKey} = 1;
- }
}
- return \@ServiceList;
+ return \%Service;
}
---------------------------------------------------------------------
OTRS mailing list: cvs-log - Webpage: http://otrs.org/
Archive: http://lists.otrs.org/pipermail/cvs-log
To unsubscribe: http://lists.otrs.org/cgi-bin/listinfo/cvs-log