Projekt

Allgemein

Profil

Herunterladen (1,09 KB) Statistiken
| Zweig: | Markierung: | Revision:
eebe8e90 Sven Schöling
package SL::PriceSource::ALL;

use strict;
use SL::PriceSource::Pricegroup;
use SL::PriceSource::MasterData;
df1b03d5 Sven Schöling
use SL::PriceSource::Makemodel;
89b26688 Sven Schöling
use SL::PriceSource::Customer;
use SL::PriceSource::Vendor;
use SL::PriceSource::Business;
9589ecd7 Sven Schöling
use SL::PriceSource::PriceRules;
eebe8e90 Sven Schöling
my %price_sources_by_name = (
master_data => 'SL::PriceSource::MasterData',
89b26688 Sven Schöling
customer => 'SL::PriceSource::Customer',
vendor => 'SL::PriceSource::Vendor',
eebe8e90 Sven Schöling
pricegroup => 'SL::PriceSource::Pricegroup',
df1b03d5 Sven Schöling
makemodel => 'SL::PriceSource::Makemodel',
89b26688 Sven Schöling
business => 'SL::PriceSource::Business',
9589ecd7 Sven Schöling
price_rules => 'SL::PriceSource::PriceRules',
eebe8e90 Sven Schöling
);

my @price_sources_order = qw(
master_data
89b26688 Sven Schöling
customer
vendor
eebe8e90 Sven Schöling
pricegroup
df1b03d5 Sven Schöling
makemodel
89b26688 Sven Schöling
business
9589ecd7 Sven Schöling
price_rules
eebe8e90 Sven Schöling
);

5384e5cb Sven Schöling
sub all_enabled_price_sources {
392e0365 Sven Schöling
my %disabled = map { $_ => 1 } @{ $::instance_conf->get_disabled_price_sources || [] };
5384e5cb Sven Schöling
map { $price_sources_by_name{$_} } grep { !$disabled{$_} } @price_sources_order;
}

eebe8e90 Sven Schöling
sub all_price_sources {
map { $price_sources_by_name{$_} } @price_sources_order;
}

sub price_source_class_by_name {
$price_sources_by_name{$_[1]};
}

1;