register_field_types(); } public static function is_active() { return function_exists( 'WC' ); } /** * Register module widgets. * * @since 1.1.0 * @access public * * @return array */ public function get_widgets() { return [ 'order-details' ]; } public static function get_field_types() { return [ 'order_number' => __( 'Order Number', 'sellkit' ), 'order_status' => __( 'Order Status', 'sellkit' ), 'payment_method' => __( 'Payment Method', 'sellkit' ), 'contact_details' => __( 'Contact Details', 'sellkit' ), 'shipping_method' => __( 'Shipping Method', 'sellkit' ), 'trachking_number' => __( 'Tracking Number', 'sellkit' ), 'shipping_address' => __( 'Shipping Address', 'sellkit' ), ]; } public static function render_field( $widget, $field ) { self::$field_types[ $field['type'] ]->render( $widget, $field ); } /** * @SuppressWarnings(PHPMD.UnusedLocalVariable) */ private function register_field_types() { foreach ( self::get_field_types() as $field_key => $field_value ) { $class_name = 'Sellkit\Elementor\Modules\Order_Details\Items\\' . $field_key; self::$field_types[ $field_key ] = new $class_name(); } } }