• File: Factory.php
  • Full Path: /home/lef/public_html/wp-content/plugins/woocommerce-multilingual/classes/Multicurrency/Resolver/Factory.php
  • File size: 671 bytes
  • MIME-type: text/x-php
  • Charset: utf-8
<?php

namespace WCML\MultiCurrency\Resolver;

use WCML\MultiCurrency\Settings;

class Factory {

	/**
	 * @return Resolver
	 */
	public static function create() {
		// $getOriginalProductLang :: int|string -> string|null
		$getOriginalProductLang = function( $productId ) {
			/** @var \woocommerce_wpml $woocommerce_wpml */
			global $woocommerce_wpml;

			return $woocommerce_wpml->products->get_original_product_language( $productId );
		};

		return new ComposedResolver( [
			new ResolverForContext( $getOriginalProductLang ),
			Settings::isModeByLocation() ? new ResolverForModeLocation() : new ResolverForModeLanguage(),
			new ResolverForDefault(),
		] );
	}
}