~ubuntu-branches/debian/experimental/otrs2/experimental

« back to all changes in this revision

Viewing changes to Kernel/GenericInterface/Operation/Ticket/TicketSearch.pm

  • Committer: Package Import Robot
  • Author(s): Patrick Matthäi
  • Date: 2012-08-22 18:00:51 UTC
  • mfrom: (1.1.23)
  • Revision ID: package-import@ubuntu.com-20120822180051-by6plokxiowzgt08
Tags: 3.1.9+dfsg1-1
* New upstream release.
* Fix typo in the changelog of my 3.1.7+dfsg1-3 upload.

Show diffs side-by-side

added added

removed removed

Lines of Context:
2
2
# Kernel/GenericInterface/Operation/Ticket/TicketSearch.pm - GenericInterface Ticket Search operation backend
3
3
# Copyright (C) 2001-2012 OTRS AG, http://otrs.org/
4
4
# --
5
 
# $Id: TicketSearch.pm,v 1.14 2012/02/09 03:04:29 cr Exp $
 
5
# $Id: TicketSearch.pm,v 1.14.2.1 2012/08/14 22:45:21 cg Exp $
6
6
# --
7
7
# This software comes with ABSOLUTELY NO WARRANTY. For details, see
8
8
# the enclosed file COPYING for license information (AGPL). If you
22
22
use Kernel::GenericInterface::Operation::Ticket::Common;
23
23
 
24
24
use vars qw(@ISA $VERSION);
25
 
$VERSION = qw($Revision: 1.14 $) [1];
 
25
$VERSION = qw($Revision: 1.14.2.1 $) [1];
26
26
 
27
27
=head1 NAME
28
28
 
302
302
    %GetParam = $Self->_CreateTimeSettings(%GetParam);
303
303
 
304
304
    # get dynamic fields
305
 
    my %DynamicFieldSearchParameters = $Self->_GetDynamicFields(%GetParam);
 
305
    my %DynamicFieldSearchParameters = $Self->_GetDynamicFields( %{ $Param{Data} } );
306
306
 
307
307
    # perform ticket search
308
308
    my @TicketIDs = $Self->{TicketObject}->TicketSearch(
365
365
        Agent ResultForm TimeSearchType ChangeTimeSearchType CloseTimeSearchType UseSubQueues
366
366
        ArticleTimeSearchType SearchInArchive
367
367
        Fulltext ShownAttributes
368
 
        ArticleCreateTimePointFormat ArticleCreateTimePoint
369
 
        ArticleCreateTimePointStart
370
 
        ArticleCreateTimeStart ArticleCreateTimeStartDay ArticleCreateTimeStartMonth
371
 
        ArticleCreateTimeStartYear
372
 
        ArticleCreateTimeStop ArticleCreateTimeStopDay ArticleCreateTimeStopMonth
373
 
        ArticleCreateTimeStopYear
374
 
        TicketCreateTimePointFormat TicketCreateTimePoint
375
 
        TicketCreateTimePointStart
376
 
        TicketCreateTimeStart TicketCreateTimeStartDay TicketCreateTimeStartMonth
377
 
        TicketCreateTimeStartYear
378
 
        TicketCreateTimeStop TicketCreateTimeStopDay TicketCreateTimeStopMonth
379
 
        TicketCreateTimeStopYear
380
 
        TicketChangeTimePointFormat TicketChangeTimePoint
381
 
        TicketChangeTimePointStart
382
 
        TicketChangeTimeStart TicketChangeTimeStartDay TicketChangeTimeStartMonth
383
 
        TicketChangeTimeStartYear
384
 
        TicketChangeTimeStop TicketChangeTimeStopDay TicketChangeTimeStopMonth
385
 
        TicketChangeTimeStopYear
386
 
        TicketCloseTimePointFormat TicketCloseTimePoint
387
 
        TicketCloseTimePointStart
388
 
        TicketCloseTimeStart TicketCloseTimeStartDay TicketCloseTimeStartMonth
389
 
        TicketCloseTimeStartYear
390
 
        TicketCloseTimeStop TicketCloseTimeStopDay TicketCloseTimeStopMonth
391
 
        TicketCloseTimeStopYear
392
368
        )
393
369
        )
394
370
    {
451
427
        }
452
428
    }
453
429
 
 
430
    my @Prefixes = (
 
431
        'TicketCreateTime',
 
432
        'TicketChangeTime',
 
433
        'TicketCloseTime',
 
434
        'TicketPendingTime',
 
435
        'ArticleCreateTime',
 
436
    );
 
437
 
 
438
    my @Postfixes = (
 
439
        'Point',
 
440
        'PointFormat',
 
441
        'PointStart',
 
442
        'Start',
 
443
        'StartDay',
 
444
        'StartMonth',
 
445
        'StartYear',
 
446
        'Stop',
 
447
        'StopDay',
 
448
        'StopMonth',
 
449
        'StopYear',
 
450
        'OlderMinutes',
 
451
        'NewerMinutes',
 
452
        'OlderDate',
 
453
        'NewerDate',
 
454
    );
 
455
 
 
456
    for my $Prefix (@Prefixes) {
 
457
 
 
458
        # get search string params (get submitted params)
 
459
        if ( IsStringWithData( $Param{$Prefix} ) ) {
 
460
            $GetParam{$Prefix} = $Param{$Prefix};
 
461
 
 
462
            # remove white space on the start and end
 
463
            $GetParam{$Prefix} =~ s/\s+$//g;
 
464
            $GetParam{$Prefix} =~ s/^\s+//g;
 
465
        }
 
466
 
 
467
        for my $Postfix (@Postfixes) {
 
468
            my $Item = $Prefix . $Postfix;
 
469
 
 
470
            # get search string params (get submitted params)
 
471
            if ( IsStringWithData( $Param{$Item} ) ) {
 
472
                $GetParam{$Item} = $Param{$Item};
 
473
 
 
474
                # remove white space on the start and end
 
475
                $GetParam{$Item} =~ s/\s+$//g;
 
476
                $GetParam{$Item} =~ s/^\s+//g;
 
477
            }
 
478
        }
 
479
    }
 
480
 
454
481
    return %GetParam;
455
482
 
456
483
}
480
507
    # get single params
481
508
    my %AttributeLookup;
482
509
 
483
 
    # get dynamic field config for frontend module
484
 
    my $DynamicFieldFilter = $Self->{Config}->{DynamicField};
485
 
 
486
510
    # get the dynamic fields for ticket object
487
511
    $Self->{DynamicField} = $Self->{DynamicFieldObject}->DynamicFieldListGet(
488
 
        Valid       => 1,
489
 
        ObjectType  => ['Ticket'],
490
 
        FieldFilter => $Self->{DynamicFieldFilter} || {},
 
512
        Valid      => 1,
 
513
        ObjectType => ['Ticket'],
491
514
    );
492
515
 
493
516
    for my $ParameterName ( keys %Param ) {
505
528
 
506
529
                # get new search parameter
507
530
                my $SearchParameter
508
 
                    = $Self->{BackendObject}->CommonSearchFieldParameterBuild(
 
531
                    = $Self->{DFBackendObject}->CommonSearchFieldParameterBuild(
509
532
                    DynamicFieldConfig => $DynamicFieldConfig,
510
533
                    Value              => $Param{$ParameterName},
511
534
                    );
514
537
                # set search parameter
515
538
                if ( defined $SearchParameter ) {
516
539
                    $DynamicFieldSearchParameters{ 'DynamicField_' . $DynamicFieldConfig->{Name} }
517
 
                        = $SearchParameter->{Parameter};
 
540
                        = $Param{ 'DynamicField_' . $DynamicFieldConfig->{Name} };
518
541
                }
519
542
            }
520
543
        }
738
761
 
739
762
=head1 VERSION
740
763
 
741
 
$Revision: 1.14 $ $Date: 2012/02/09 03:04:29 $
 
764
$Revision: 1.14.2.1 $ $Date: 2012/08/14 22:45:21 $
742
765
 
743
766
=cut