| Server IP : 158.247.231.215 / Your IP : 216.73.217.84 Web Server : Apache/2.4.41 (Ubuntu) System : Linux CTMS 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64 User : www-data ( 33) PHP Version : 8.0.30 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /mnt/blockstorage/ctms/wp-content/plugins/tutor/ecommerce/Cart/ |
Upload File : |
<?php
/**
* Cart factory for creating cart object
*
* @package Tutor\Ecommerce
* @author Themeum
* @link https://themeum.com
* @since 3.5.0
*/
namespace Tutor\Ecommerce\Cart;
use Tutor\Ecommerce\Cart\Contracts\CartInterface;
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
/**
* CartFactory class
*
* @since 3.5.0
*/
class CartFactory {
/**
* Create a cart object
*
* @since 3.5.0
*
* @throws \Exception If monetization engine is not valid.
*
* @param string $monetization_engine Monetization engine.
*
* @return CartInterface
*/
public static function create_cart( $monetization_engine ) : CartInterface {
switch ( $monetization_engine ) {
case 'wc':
return new WooCart();
case 'tutor':
return new NativeCart();
case 'edd':
return new EddCart();
default:
throw new \Exception( 'Invalid monetization engine' );
}
}
}