1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115
|
# --
# Kernel/System/LinkObject/FAQ.pm - to link faq objects
# Copyright (C) 2001-2005 Martin Edenhofer <martin+code@otrs.org>
# --
# $Id: FAQ.pm,v 1.5 2005/08/08 11:12:31 cs Exp $
# --
# This software comes with ABSOLUTELY NO WARRANTY. For details, see
# the enclosed file COPYING for license information (GPL). If you
# did not receive this file, see http://www.gnu.org/licenses/gpl.txt.
# --
package Kernel::System::LinkObject::FAQ;
use strict;
use Kernel::System::FAQ;
use vars qw($VERSION);
$VERSION = '$Revision: 1.5 $';
$VERSION =~ s/^\$.*:\W(.*)\W.+?$/$1/;
sub Init {
my $Self = shift;
my %Param = @_;
$Self->{FAQObject} = Kernel::System::FAQ->new(%{$Self});
return 1;
}
sub FillDataMap {
my $Self = shift;
my %Param = @_;
foreach (qw(ID)) {
if (!$Param{$_}) {
$Self->{LogObject}->Log(Priority => 'error', Message => "Need $_!");
return;
}
}
my %Article = $Self->{FAQObject}->FAQGet(
FAQID => $Param{ID},
);
return (
Text => 'F:'.$Article{Number},
Number => $Article{Number},
ID => $Param{ID},
Object => 'FAQ',
FrontendDest => "Action=FAQ&FAQID=",
);
}
sub BackendLinkObject {
my $Self = shift;
my %Param = @_;
return 1;
}
sub BackendUnlinkObject {
my $Self = shift;
my %Param = @_;
return 1;
}
sub LinkSearchParams {
my $Self = shift;
my %Param = @_;
return (
{ Name => 'FAQNumber', Text => 'FAQ#'},
{ Name => 'FAQTitle', Text => 'Title'},
{ Name => 'FAQFulltext', Text => 'Fulltext'},
);
}
sub LinkSearch {
my $Self = shift;
my %Param = @_;
my @ResultWithData = ();
my @Result = $Self->{FAQObject}->FAQSearch(
Number => $Param{FAQNumber},
Title => $Param{FAQTitle},
What => $Param{FAQFulltext},
);
foreach (@Result) {
my %Article = $Self->{FAQObject}->FAQGet(FAQID => $_);
push (@ResultWithData, {
%Article,
ID => $Article{FAQID},
},
);
}
return @ResultWithData;
}
sub LinkItemData {
my $Self = shift;
my %Param = @_;
my %Article = $Self->{FAQObject}->FAQGet(
FAQID => $Param{ID},
);
my $Body = '';
foreach (1..10) {
if ($Article{"Field$_"}) {
$Body .= $Article{"Field$_"};
}
}
return (
%Article,
ID => $Article{FAQID},
Body => $Body,
);
}
1;
|