PluginProbe
Tiered Pricing Table for WooCommerce / trunk
Tiered Pricing Table for WooCommerce vtrunk
7.1.7 7.1.5 7.1.4 7.1.1 6.5.0 6.4.0 6.1.0 trunk 1.0 1.1 2.0 2.0.1 2.0.2 2.1 2.1.1 2.1.2 2.2.0 2.2.1 2.2.2 2.2.3 2.3.0 2.3.1 2.3.2 2.3.3 2.3.4 All 90 releases
tier-pricing-table / src / Addons / CustomColumns / Schema.php

Schema.php in Tiered Pricing Table for WooCommerce trunk, at src/Addons/CustomColumns/Schema.php

49 lines 2.0 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php namespace TierPricingTable\Addons\CustomColumns;
2
3 use TierPricingTable\Addons\CustomColumns\Columns\CustomDataColumn;
4 use TierPricingTable\Addons\CustomColumns\Columns\PriceExcludingTaxesColumn;
5 use TierPricingTable\Addons\CustomColumns\Columns\PriceIncludingTaxesColumn;
6 use TierPricingTable\Addons\CustomColumns\Columns\RowTotalPriceColumn;
7 use TierPricingTable\Addons\CustomColumns\Columns\SavingPerItemColumn;
8 use TierPricingTable\Addons\CustomColumns\Columns\SkuColumn;
9
10 class Schema {
11 public static function getAvailableCustomColumnsTypes() {
12 return apply_filters( 'tiered_pricing_table/custom_columns/available_columns_types', array(
13 'custom' => __( 'Custom column', 'tier-pricing-table' ),
14 'price_excl_taxes' => __( 'Price excluding taxes', 'tier-pricing-table' ),
15 'price_incl_taxes' => __( 'Price including taxes', 'tier-pricing-table' ),
16 'total_price' => __( 'Total row price', 'tier-pricing-table' ),
17 'saving_per_item' => __( 'Saving per item', 'tier-pricing-table' ),
18 ) );
19 }
20
21 public static function getAvailableDataTypes() {
22 return apply_filters( 'tiered_pricing_table/custom_columns/available_data_types', array(
23 'price' => __( 'Price', 'tier-pricing-table' ),
24 'number' => __( 'Number', 'tier-pricing-table' ),
25 'text' => __( 'Text', 'tier-pricing-table' ),
26 ) );
27 }
28
29 public static function isValidColumnType( $type ): bool {
30 return in_array( $type, array_keys( self::getAvailableCustomColumnsTypes() ) );
31 }
32
33 public static function isValidDataType( $type ): bool {
34 return in_array( $type, array_keys( self::getAvailableDataTypes() ) );
35 }
36
37 public static function getClassForType( $type ) {
38 $classes = apply_filters( 'tiered_pricing_table/custom_columns/columns_handlers', array(
39 'custom' => CustomDataColumn::class,
40 'price_excl_taxes' => PriceExcludingTaxesColumn::class,
41 'price_incl_taxes' => PriceIncludingTaxesColumn::class,
42 'total_price' => RowTotalPriceColumn::class,
43 'saving_per_item' => SavingPerItemColumn::class,
44 ) );
45
46 return $classes[ $type ] ?? null;
47 }
48 }
49