# give/4.16.9/src/ThirdPartySupport/ServiceProvider.php

GiveWP – Donation Plugin and Fundraising Platform, version 4.16.9. 49 lines.

- Page: https://pluginprobe.com/plugins/give/4.16.9/code/src/ThirdPartySupport/ServiceProvider.php
- Raw: https://pluginprobe.com/plugins/give/4.16.9/raw/src/ThirdPartySupport/ServiceProvider.php
- Modified: 2025-02-26T22:53:50+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/give/4.16.9/code/src/ThirdPartySupport/ServiceProvider.php#L10-L20`.

```php
<?php

namespace Give\ThirdPartySupport;

use Give\ServiceProviders\ServiceProvider as ServiceProviderInterface;
use Give\ThirdPartySupport\Polylang\Helpers\Polylang;
use Give\ThirdPartySupport\WPML\Helpers\WPML;

/**
 * @since 3.22.0
 */
class ServiceProvider implements ServiceProviderInterface
{
    /**
     * @since 3.22.0
     */
    public function register()
    {
    }

    /**
     * @since 3.22.0
     */
    public function boot()
    {
        /**
         * When in the admin area and WPML or Polylang is installed, retrieve the language
         * selected in the language selector of the WordPress admin bar added by them
         */
        add_filter('givewp_locale', function ($locale) {
            if ( ! is_admin()) {
                return $locale;
            }

            $wpmlLocale = WPML::getLocale();
            if ($wpmlLocale != $locale) {
                return $wpmlLocale;
            }

            $polylangLocale = Polylang::getLocale();
            if ($polylangLocale != $locale) {
                return $polylangLocale;
            }

            return $locale;
        });
    }
}

```
