summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Sulfrian <alex@spline.inf.fu-berlin.de>2015-01-24 17:03:19 +0100
committerAlexander Sulfrian <alex@spline.inf.fu-berlin.de>2015-01-24 17:03:19 +0100
commit44fd242d88c95a50cd917694ce903711e72bbc6f (patch)
tree232e769bad807519a568c32b8485326b7ee4e080
parentb9bb4664dc6fa06c1af4c7b44e2357530d3b1373 (diff)
downloadDefaultRecipient-44fd242d88c95a50cd917694ce903711e72bbc6f.tar.gz
DefaultRecipient-44fd242d88c95a50cd917694ce903711e72bbc6f.tar.bz2
DefaultRecipient-44fd242d88c95a50cd917694ce903711e72bbc6f.zip
Get the required objects only on demand from the OM.
-rw-r--r--Kernel/Modules/AdminDefaultTo.pm36
-rw-r--r--Kernel/Modules/AdminDefaultToTemplates.pm55
-rw-r--r--Kernel/System/DefaultTo.pm93
3 files changed, 110 insertions, 74 deletions
diff --git a/Kernel/Modules/AdminDefaultTo.pm b/Kernel/Modules/AdminDefaultTo.pm
index 448bb2f..485cd13 100644
--- a/Kernel/Modules/AdminDefaultTo.pm
+++ b/Kernel/Modules/AdminDefaultTo.pm
@@ -12,7 +12,13 @@ package Kernel::Modules::AdminDefaultTo;
use strict;
use warnings;
-use Kernel::System::DefaultTo;
+our @ObjectDependencies = qw(
+ Kernel::Config
+ Kernel::Output::HTML::Layout
+ Kernel::System::DB
+ Kernel::System::Web::Request
+ Kernel::System::DefaultTo
+);
sub new {
my ( $Type, %Param ) = @_;
@@ -22,12 +28,11 @@ sub new {
bless( $Self, $Type );
# check all needed objects
- for my $Needed (qw(ParamObject DBObject LayoutObject ConfigObject LogObject)) {
+ for my $Needed (qw(ParamObject DBObject LayoutObject ConfigObject)) {
if ( !$Self->{$Needed} ) {
$Self->{LayoutObject}->FatalError( Message => "Got no $Needed!" );
}
}
- $Self->{DefaultToObject} = Kernel::System::DefaultTo->new(%Param);
return $Self;
}
@@ -40,7 +45,8 @@ sub Run {
# ------------------------------------------------------------ #
if ( $Self->{Subaction} eq 'Change' ) {
my $ID = $Self->{ParamObject}->GetParam( Param => 'ID' ) || '';
- my %Data = $Self->{DefaultToObject}->Get(
+ my $DefaultToObject = $Kernel::OM->Get('Kernel::System::DefaultTo');
+ my %Data = $DefaultToObject->Get(
ID => $ID,
);
@@ -62,10 +68,10 @@ sub Run {
# change action
# ------------------------------------------------------------ #
elsif ( $Self->{Subaction} eq 'ChangeAction' ) {
-
# challenge token check for write action
$Self->{LayoutObject}->ChallengeTokenCheck();
+ my $DefaultToObject = $Kernel::OM->Get('Kernel::System::DefaultTo');
my @NewIDs = $Self->{ParamObject}->GetArray( Param => 'IDs' );
my ( %GetParam, %Errors );
for my $Parameter (qw(ID Title RemoveDefault AddNew NewAddress
@@ -79,7 +85,7 @@ sub Run {
$Errors{TitleInvalid} = 'ServerError' if !$GetParam{Title};
# check if a DefaultTo entry exist with this title
- my $TitleExists = $Self->{DefaultToObject}->TitleExistsCheck(
+ my $TitleExists = $DefaultToObject->TitleExistsCheck(
Title => $GetParam{Title},
ID => $GetParam{ID}
);
@@ -92,7 +98,7 @@ sub Run {
# if no errors occurred
if ( !%Errors ) {
- if ( $Self->{DefaultToObject}->Update(
+ if ( $DefaultToObject->Update(
%GetParam,
UserID => $Self->{UserID},
)
@@ -153,10 +159,10 @@ sub Run {
# add action
# ------------------------------------------------------------ #
elsif ( $Self->{Subaction} eq 'AddAction' ) {
-
# challenge token check for write action
$Self->{LayoutObject}->ChallengeTokenCheck();
+ my $DefaultToObject = $Kernel::OM->Get('Kernel::System::DefaultTo');
my @NewIDs = $Self->{ParamObject}->GetArray( Param => 'IDs' );
my ( %GetParam, %Errors );
@@ -169,7 +175,7 @@ sub Run {
$Errors{TitleInvalid} = 'ServerError' if !$GetParam{Title};
# check if a DefaultTo entry exists with this title
- my $TitleExists = $Self->{DefaultToObject}->TitleExistsCheck( Title => $GetParam{Title} );
+ my $TitleExists = $DefaultToObject->TitleExistsCheck( Title => $GetParam{Title} );
if ($TitleExists) {
$Errors{TitleExists} = 1;
$Errors{TitleInvalid} = 'ServerError';
@@ -179,7 +185,7 @@ sub Run {
if ( !%Errors ) {
# add DefaultTo entry
- my $ID = $Self->{DefaultToObject}->Add(
+ my $ID = $DefaultToObject->Add(
%GetParam,
UserID => $Self->{UserID},
);
@@ -219,13 +225,13 @@ sub Run {
# delete action
# ------------------------------------------------------------ #
elsif ( $Self->{Subaction} eq 'Delete' ) {
-
# challenge token check for write action
$Self->{LayoutObject}->ChallengeTokenCheck();
+ my $DefaultToObject = $Kernel::OM->Get('Kernel::System::DefaultTo');
my $ID = $Self->{ParamObject}->GetParam( Param => 'ID' );
- my $Delete = $Self->{DefaultToObject}->Delete(
+ my $Delete = $DefaultToObject->Delete(
ID => $ID,
);
if ( !$Delete ) {
@@ -321,11 +327,13 @@ sub _Overview {
Name => 'OverviewResult',
Data => \%Param,
);
- my %List = $Self->{DefaultToObject}->List();
+
+ my $DefaultToObject = $Kernel::OM->Get('Kernel::System::DefaultTo');
+ my %List = $DefaultToObject->List();
for my $ID ( sort { $List{$a} cmp $List{$b} } keys %List )
{
- my %DefaultTo = $Self->{DefaultToObject}->Get(
+ my %DefaultTo = $DefaultToObject->Get(
ID => $ID,
);
diff --git a/Kernel/Modules/AdminDefaultToTemplates.pm b/Kernel/Modules/AdminDefaultToTemplates.pm
index 12c5826..af49b00 100644
--- a/Kernel/Modules/AdminDefaultToTemplates.pm
+++ b/Kernel/Modules/AdminDefaultToTemplates.pm
@@ -12,8 +12,13 @@ package Kernel::Modules::AdminDefaultToTemplates;
use strict;
use warnings;
-use Kernel::System::DefaultTo;
-use Kernel::System::StandardTemplate;
+our @ObjectDependencies = qw(
+ Kernel::Output::HTML::Layout
+ Kernel::System::DB
+ Kernel::System::DefaultTo
+ Kernel::System::StandardTemplate
+ Kernel::System::Web::Request
+);
sub new {
my ( $Type, %Param ) = @_;
@@ -23,16 +28,12 @@ sub new {
bless( $Self, $Type );
# check all needed objects
- for (qw(ParamObject DBObject QueueObject LayoutObject ConfigObject LogObject)) {
+ for (qw(ParamObject DBObject LayoutObject)) {
if ( !$Self->{$_} ) {
$Self->{LayoutObject}->FatalError( Message => "Got no $_!" );
}
}
- $Self->{DefaultToObject} = Kernel::System::DefaultTo->new(%Param);
- $Self->{StandardTemplateObject} =
- Kernel::System::StandardTemplate->new(%Param);
-
return $Self;
}
@@ -46,15 +47,17 @@ sub Run {
# get template data
my $ID = $Self->{ParamObject}->GetParam( Param => 'ID' );
- my %StandardTemplateData = $Self->{StandardTemplateObject}->StandardTemplateGet( ID => $ID );
+ my $StandardTemplateObject = $Kernel::OM->Get('Kernel::System::StandardTemplate');
+ my %StandardTemplateData = $StandardTemplateObject->StandardTemplateGet( ID => $ID );
my $StandardTemplateType = $Self->{LayoutObject}->{LanguageObject}->Translate(
$StandardTemplateData{TemplateType},
);
my $Name = $StandardTemplateType . ' - ' . $StandardTemplateData{Name};
# get DefaultTo data
- my %DefaultToData = $Self->{DefaultToObject}->List();
- my %Member = $Self->{DefaultToObject}->MappingList(
+ my $DefaultToObject = $Kernel::OM->Get('Kernel::System::DefaultTo');
+ my %DefaultToData = $DefaultToObject->List();
+ my %Member = $DefaultToObject->MappingList(
TemplateID => $ID,
);
@@ -77,16 +80,18 @@ sub Run {
elsif ( $Self->{Subaction} eq 'DefaultTo' ) {
my $ID = $Self->{ParamObject}->GetParam( Param => 'ID' );
- my %DefaultToData = $Self->{DefaultToObject}->Get( ID => $ID );
+ my $DefaultToObject = $Kernel::OM->Get('Kernel::System::DefaultTo');
+ my %DefaultToData = $DefaultToObject->Get( ID => $ID );
# get templates
- my %StandardTemplateData = $Self->{StandardTemplateObject}->StandardTemplateList(
+ my $StandardTemplateObject = $Kernel::OM->Get('Kernel::System::StandardTemplate');
+ my %StandardTemplateData = $StandardTemplateObject->StandardTemplateList(
Valid => 1,
);
if (%StandardTemplateData) {
for my $StandardTemplateID ( sort keys %StandardTemplateData ) {
- my %Data = $Self->{StandardTemplateObject}->StandardTemplateGet(
+ my %Data = $StandardTemplateObject->StandardTemplateGet(
ID => $StandardTemplateID
);
$StandardTemplateData{$StandardTemplateID}
@@ -97,7 +102,7 @@ sub Run {
}
# get assigned templates
- my %Member = $Self->{DefaultToObject}->MappingList(
+ my %Member = $DefaultToObject->MappingList(
DefaultToID => $ID,
);
@@ -124,7 +129,8 @@ sub Run {
# get current mapping
my $ID = $Self->{ParamObject}->GetParam( Param => 'ID' );
- my %Mapping = $Self->{DefaultToObject}->MappingList(
+ my $DefaultToObject = $Kernel::OM->Get('Kernel::System::DefaultTo');
+ my %Mapping = $DefaultToObject->MappingList(
DefaultToID => $ID,
);
@@ -139,7 +145,7 @@ sub Run {
for my $TemplateID (@TemplatesAll) {
if ( $TemplatesSelected{$TemplateID} ) {
if ( ! $Mapping{$TemplateID} ) {
- $Self->{DefaultToObject}->MappingAdd(
+ $DefaultToObject->MappingAdd(
TemplateID => $TemplateID,
DefaultToID => $ID,
);
@@ -147,7 +153,7 @@ sub Run {
}
else {
if ( $Mapping{$TemplateID} ) {
- $Self->{DefaultToObject}->MappingDelete(
+ $DefaultToObject->MappingDelete(
ID => $Mapping{$TemplateID},
);
}
@@ -167,7 +173,8 @@ sub Run {
# get current mapping
my $ID = $Self->{ParamObject}->GetParam( Param => 'ID' );
- my %Mapping = $Self->{DefaultToObject}->MappingList(
+ my $DefaultToObject = $Kernel::OM->Get('Kernel::System::DefaultTo');
+ my %Mapping = $DefaultToObject->MappingList(
TemplateID => $ID,
);
@@ -182,7 +189,7 @@ sub Run {
for my $DefaultToID (@All) {
if ( $Selected{$DefaultToID} ) {
if ( ! $Mapping{$DefaultToID} ) {
- $Self->{DefaultToObject}->MappingAdd(
+ $DefaultToObject->MappingAdd(
TemplateID => $ID,
DefaultToID => $DefaultToID,
);
@@ -190,7 +197,7 @@ sub Run {
}
else {
if ( $Mapping{$DefaultToID} ) {
- $Self->{DefaultToObject}->MappingDelete(
+ $DefaultToObject->MappingDelete(
ID => $Mapping{$DefaultToID},
);
}
@@ -273,14 +280,15 @@ sub _Overview {
$Self->{LayoutObject}->Block( Name => 'OverviewResult' );
# get std template list
- my %StandardTemplateData = $Self->{StandardTemplateObject}->StandardTemplateList(
+ my $StandardTemplateObject = $Kernel::OM->Get('Kernel::System::StandardTemplate');
+ my %StandardTemplateData = $StandardTemplateObject->StandardTemplateList(
Valid => 1,
);
# if there are results to show
if (%StandardTemplateData) {
for my $StandardTemplateID ( sort keys %StandardTemplateData ) {
- my %Data = $Self->{StandardTemplateObject}->StandardTemplateGet(
+ my %Data = $StandardTemplateObject->StandardTemplateGet(
ID => $StandardTemplateID,
);
$StandardTemplateData{$StandardTemplateID}
@@ -315,7 +323,8 @@ sub _Overview {
}
# get queue data
- my %DefaultToData = $Self->{DefaultToObject}->List();
+ my $DefaultToObject = $Kernel::OM->Get('Kernel::System::DefaultTo');
+ my %DefaultToData = $DefaultToObject->List();
# if there are results to show
if (%DefaultToData) {
diff --git a/Kernel/System/DefaultTo.pm b/Kernel/System/DefaultTo.pm
index 62c8acd..9e8acdb 100644
--- a/Kernel/System/DefaultTo.pm
+++ b/Kernel/System/DefaultTo.pm
@@ -15,7 +15,6 @@ use warnings;
our @ObjectDependencies = qw(
Kernel::System::DB
Kernel::System::Log
- Kernel::System::StandardTemplate
);
sub new {
@@ -23,10 +22,6 @@ sub new {
# allocate new hash for object
my $Self = {};
- $Self->{DBObject} = $Kernel::OM->Get('Kernel::System::DB');
- $Self->{LogObject} = $Kernel::OM->Get('Kernel::System::Log');
- $Self->{StandardTemplateObject} =
- $Kernel::OM->Get('Kernel::System::StandardTemplate');
bless ($Self, $Type);
return $Self;
@@ -36,10 +31,10 @@ sub Add {
my ( $Self, %Param ) = @_;
# check needed stuff
- for my $Needed (qw(Title RemoveDefault AddNew NewAddress Comment
- UserID)) {
- if ( !$Param{$Needed} ) {
- $Self->{LogObject}->Log(
+ for my $Needed (qw(Title RemoveDefault AddNew NewAddress Comment UserID)) {
+ if ( ! defined $Param{$Needed} ) {
+ my $LogObject = $Kernel::OM->Get('Kernel::System::Log');
+ $LogObject->Log(
Priority => 'error',
Message => "Need $Needed!",
);
@@ -47,8 +42,10 @@ sub Add {
}
}
+ my $DBObject = $Kernel::OM->Get('Kernel::System::DB');
+
# insert new DefaultTo
- return if !$Self->{DBObject}->Do(
+ return if !$DBObject->Do(
SQL => 'INSERT INTO default_to '
. '(title, remove_default, add_new, new_address, comments, '
. ' create_time, create_by, change_time, change_by) '
@@ -65,19 +62,20 @@ sub Add {
);
# get new id
- return if !$Self->{DBObject}->Prepare(
+ return if !$DBObject->Prepare(
SQL => 'SELECT MAX(id) FROM default_to WHERE title = ?',
Bind => [ \$Param{Title}, ],
Limit => 1,
);
my $ID;
- while ( my @Row = $Self->{DBObject}->FetchrowArray() ) {
+ while ( my @Row = $DBObject->FetchrowArray() ) {
$ID = $Row[0];
}
# log notice
- $Self->{LogObject}->Log(
+ my $LogObject = $Kernel::OM->Get('Kernel::System::Log');
+ $LogObject->Log(
Priority => 'notice',
Message => "DefaultTo '$ID' created successfully!",
);
@@ -91,8 +89,9 @@ sub Update {
# check needed stuff
for my $Needed (qw(ID Title RemoveDefault AddNew NewAddress Comment
UserID)) {
- if ( !$Param{$Needed} ) {
- $Self->{LogObject}->Log(
+ if ( ! defined $Param{$Needed} ) {
+ my $LogObject = $Kernel::OM->Get('Kernel::System::Log');
+ $LogObject->Log(
Priority => 'error',
Message => "Need $Needed!",
);
@@ -100,8 +99,10 @@ sub Update {
}
}
+ my $DBObject = $Kernel::OM->Get('Kernel::System::DB');
+
# insert new DefaultTo
- return if !$Self->{DBObject}->Do(
+ return if !$DBObject->Do(
SQL => 'UPDATE default_to SET title = ?, remove_default = ?, '
. 'add_new = ?, new_address = ?, comments = ?, change_by = ?, '
. 'change_time = current_timestamp '
@@ -125,15 +126,18 @@ sub Get {
# check needed stuff
if ( !$Param{ID} ) {
- $Self->{LogObject}->Log(
+ my $LogObject = $Kernel::OM->Get('Kernel::System::Log');
+ $LogObject->Log(
Priority => 'error',
Message => 'Need ID!',
);
return;
}
+ my $DBObject = $Kernel::OM->Get('Kernel::System::DB');
+
# get RrsponseChangeDefaultTO obejct
- return if !$Self->{DBObject}->Prepare(
+ return if !$DBObject->Prepare(
SQL => 'SELECT id, title, remove_default, add_new, new_address, '
. 'comments, create_time, create_by, change_time, change_by '
. 'FROM default_to WHERE id = ?',
@@ -142,7 +146,7 @@ sub Get {
);
my %DefaultTo;
- while ( my @Data = $Self->{DBObject}->FetchrowArray() ) {
+ while ( my @Data = $DBObject->FetchrowArray() ) {
%DefaultTo = (
ID => $Data[0],
Title => $Data[1],
@@ -165,22 +169,25 @@ sub Delete {
# check needed stuff
if ( !$Param{ID} ) {
- $Self->{LogObject}->Log(
+ my $LogObject = $Kernel::OM->Get('Kernel::System::Log');
+ $LogObject->Log(
Priority => 'error',
Message => 'Need ID!',
);
return;
}
+ my $DBObject = $Kernel::OM->Get('Kernel::System::DB');
+
# delete mapping
- return if !$Self->{DBObject}->Do(
+ return if !$DBObject->Do(
SQL => 'DELETE FROM default_to_response '
. 'WHERE default_to_id = ?',
Bind => [ \$Param{ID} ],
);
# delete entry
- return $Self->{DBObject}->Do(
+ return $DBObject->Do(
SQL => 'DELETE FROM default_to WHERE id = ?',
Bind => [ \$Param{ID} ],
);
@@ -188,13 +195,14 @@ sub Delete {
sub List {
my ( $Self, %Param ) = @_;
+ my $DBObject = $Kernel::OM->Get('Kernel::System::DB');
- $Self->{DBObject}->Prepare(
+ $DBObject->Prepare(
SQL => 'SELECT id, title FROM default_to',
);
my %DefaultTo;
- while ( my @Data = $Self->{DBObject}->FetchrowArray() ) {
+ while ( my @Data = $DBObject->FetchrowArray() ) {
$DefaultTo{ $Data[0] } = $Data[1];
}
@@ -203,15 +211,16 @@ sub List {
sub TitleExistsCheck {
my ( $Self, %Param ) = @_;
+ my $DBObject = $Kernel::OM->Get('Kernel::System::DB');
- return if !$Self->{DBObject}->Prepare(
+ return if !$DBObject->Prepare(
SQL => 'SELECT id FROM default_to WHERE title = ?',
Bind => [ \$Param{Title} ],
);
# fetch the result
my $Flag;
- while ( my @Row = $Self->{DBObject}->FetchrowArray() ) {
+ while ( my @Row = $DBObject->FetchrowArray() ) {
if ( !$Param{ID} || $Param{ID} ne $Row[0] ) {
$Flag = 1;
}
@@ -228,7 +237,8 @@ sub MappingAdd {
# check needed stuff
for my $Needed (qw(TemplateID DefaultToID)) {
if ( !$Param{$Needed} ) {
- $Self->{LogObject}->Log(
+ my $LogObject = $Kernel::OM->Get('Kernel::System::Log');
+ $LogObject->Log(
Priority => 'error',
Message => "Need $Needed!",
);
@@ -236,8 +246,10 @@ sub MappingAdd {
}
}
+ my $DBObject = $Kernel::OM->Get('Kernel::System::DB');
+
# insert new mapping
- return if !$Self->{DBObject}->Do(
+ return if !$DBObject->Do(
SQL => 'INSERT INTO default_to_response '
. '(template_id, default_to_id) VALUES (?, ?)',
Bind => [
@@ -247,7 +259,7 @@ sub MappingAdd {
);
# get new id
- return if !$Self->{DBObject}->Prepare(
+ return if !$DBObject->Prepare(
SQL => 'SELECT MAX(id) FROM default_to_response '
. 'WHERE template_id = ? AND default_to_id = ?',
Bind => [
@@ -257,12 +269,13 @@ sub MappingAdd {
);
my $ID;
- while ( my @Row = $Self->{DBObject}->FetchrowArray() ) {
+ while ( my @Row = $DBObject->FetchrowArray() ) {
$ID = $Row[0];
}
# log notice
- $Self->{LogObject}->Log(
+ my $LogObject = $Kernel::OM->Get('Kernel::System::Log');
+ $LogObject->Log(
Priority => 'notice',
Message => "DefaultTo mapping '$ID' "
. "created successfully!",
@@ -276,15 +289,18 @@ sub MappingDelete {
# check needed stuff
if ( !$Param{ID} ) {
- $Self->{LogObject}->Log(
+ my $LogObject = $Kernel::OM->Get('Kernel::System::Log');
+ $LogObject->Log(
Priority => 'error',
Message => 'Need ID!',
);
return;
}
+ my $DBObject = $Kernel::OM->Get('Kernel::System::DB');
+
# delete mapping
- return $Self->{DBObject}->Do(
+ return $DBObject->Do(
SQL => 'DELETE FROM default_to_response '
. 'WHERE id = ?',
Bind => [ \$Param{ID} ],
@@ -296,16 +312,19 @@ sub MappingList {
# check needed stuff
if ( !$Param{TemplateID} && !$Param{DefaultToID} ) {
- $Self->{LogObject}->Log(
+ my $LogObject = $Kernel::OM->Get('Kernel::System::Log');
+ $LogObject->Log(
Priority => 'error',
Message => 'Got no TemplateID or DefaultToID!'
);
return;
}
+ my $DBObject = $Kernel::OM->Get('Kernel::System::DB');
+
# find mapped objects
if ( $Param{TemplateID} ) {
- $Self->{DBObject}->Prepare(
+ $DBObject->Prepare(
SQL => 'SELECT id, default_to_id '
. 'FROM default_to_response '
. 'WHERE template_id = ?',
@@ -313,7 +332,7 @@ sub MappingList {
);
}
else {
- $Self->{DBObject}->Prepare(
+ $DBObject->Prepare(
SQL => 'SELECT id, template_id '
. 'FROM default_to_response '
. 'WHERE default_to_id = ?',
@@ -322,7 +341,7 @@ sub MappingList {
}
my %Mapping;
- while ( my @Data = $Self->{DBObject}->FetchrowArray() ) {
+ while ( my @Data = $DBObject->FetchrowArray() ) {
$Mapping{ $Data[0] } = $Data[1];
}