HEX
Server: Apache
System: Linux sxb1plmcpnl510113.prod.sxb1.secureserver.net 4.18.0-553.58.1.lve.el8.x86_64 #1 SMP Fri Jul 4 12:07:06 UTC 2025 x86_64
User: acnbijigo78q (10488831)
PHP: 8.3.30
Disabled: NONE
Upload Files
File: /home/acnbijigo78q/public_html/wp-content/plugins/wpml-graphql/classes/Resolvers/QueryFields.php
<?php

namespace WPML\GraphQL\Resolvers;

use WPGraphQL\AppContext;
use GraphQL\Type\Definition\ResolveInfo;

class QueryFields extends BaseFields {

	/**
	 * Resolve the \WPML\GraphQL\Hooks\Query\Languages::LANGUAGES_QUERY_SLUG query
	 *
	 * @param mixed       $source
	 * @param mixed[]     $args
	 * @param AppContext  $context
	 * @param ResolveInfo $info
	 *
	 * @return array[]
	 */
	public function resolveLanguagesQuery( $source, $args, $context, $info ) {
		$resolved_languages = [];
		$fields             = array_keys( $info->getFieldSelection() );

		if ( empty( $fields ) ) {
			return $resolved_languages;
		}

		$languages = $this->helpers->getAvailableLanguages();

		foreach ( $languages as $lang ) {
			$resolved_languages[] = $this->helpers->filterFields( $lang, $fields );
		}

		return $resolved_languages;
	}

	/**
	 * Resolve the \WPML\GraphQL\Hooks\Query\Languages::DEFAULT_LANGUAGE_QUERY_SLUG query
	 *
	 * @param mixed       $source
	 * @param mixed[]     $args
	 * @param AppContext  $context
	 * @param ResolveInfo $info
	 *
	 * @return array
	 */
	public function resolveDefaultLanguageQuery( $source, $args, $context, $info ) {
		$fields = array_keys( $info->getFieldSelection() );

		if ( empty( $fields ) ) {
			return [];
		}

		$defaultLang = $this->helpers->getDefaultLanguage();

		if ( empty( $defaultLang ) ) {
			return [];
		}

		$languages       = $this->helpers->getAvailableLanguages();
		$defaultLangData = $this->helpers->getArr( $defaultLang, $languages );

		if ( empty( $defaultLangData ) ) {
			return [];
		}

		$defaultLanguage = $this->helpers->filterFields( $defaultLangData, $fields );

		return $defaultLanguage;
	}

}