# give/4.15.5/src/DonorDashboards/Tabs/EditProfileTab/LocationRoute.php

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

- Page: https://pluginprobe.com/plugins/give/4.15.5/code/src/DonorDashboards/Tabs/EditProfileTab/LocationRoute.php
- Raw: https://pluginprobe.com/plugins/give/4.15.5/raw/src/DonorDashboards/Tabs/EditProfileTab/LocationRoute.php
- Modified: 2021-11-23T23:55:18+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.15.5/code/src/DonorDashboards/Tabs/EditProfileTab/LocationRoute.php#L10-L20`.

```php
<?php

namespace Give\DonorDashboards\Tabs\EditProfileTab;

use Give\DonorDashboards\Helpers\LocationList;
use Give\DonorDashboards\Tabs\Contracts\Route as RouteAbstract;
use WP_REST_Request;

/**
 * @since 2.10.0
 */
class LocationRoute extends RouteAbstract
{

    /** @var string */
    public function endpoint()
    {
        return 'location';
    }

    public function args()
    {
        return [
            'countryCode' => [
                'type' => 'string',
                'required' => true,
                'sanitize_callback' => 'sanitize_text_field',
            ],
        ];
    }

    /**
     * @since 2.10.0
     *
     * @param WP_REST_Request $request
     *
     * @return array
     *
     */
    public function handleRequest(WP_REST_Request $request)
    {
        return [
            'states' => LocationList::getStates(
                $request->get_param('countryCode')
            ),
        ];
    }
}

```
