# bit-form/3.1.3/includes/API/Controller/EntryController.php

Bit Form – Contact Form, Payment Forms, Multi Step Forms, Calculator &amp; Custom Form Builder, version 3.1.3. 59 lines.

- Page: https://pluginprobe.com/plugins/bit-form/3.1.3/code/includes/API/Controller/EntryController.php
- Raw: https://pluginprobe.com/plugins/bit-form/3.1.3/raw/includes/API/Controller/EntryController.php
- Modified: 2026-03-05T09:53:52+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/bit-form/3.1.3/code/includes/API/Controller/EntryController.php#L10-L20`.

```php
<?php

namespace BitCode\BitForm\API\Controller;

use BitCode\BitForm\Core\Database\FormModel;
use WP_Error;
use WP_REST_Controller;
use WP_REST_Request;

class EntryController extends WP_REST_Controller
{
  protected static $form;
  protected $formModel;
  protected $form_id;

  public function __construct()
  {
    $this->formModel = new FormModel();
  }

  // public function oneDriveAuth()
  // {
  //   $state = $_GET['state'];
  //   $code = urlencode($_GET['code']);
  //   // echo $code;
  //   if (wp_redirect($state . '&code=' . $code, 302)) {
  //     exit;
  //   }
  // }

  public function authRedirect(WP_REST_Request $request)
  {
    $state = $request->get_param('state');
    $site_url = $this->getDomain(get_site_url());
    $state_domain = $this->getDomain($state);

    if ($site_url !== $state_domain) {
      return new WP_Error('404', 'Invalid redirect URL: ' . $state_domain);
    }

    $params = $request->get_params();
    unset($params['rest_route'], $params['state']);

    $redirect_url = $state . '&' . http_build_query($params);

    if (wp_safe_redirect($redirect_url, 302)) {
      exit;
    }
  }

  private function getDomain($url)
  {
    $parsed_url = wp_parse_url($url);
    $domain = $parsed_url['scheme'] . '://' . $parsed_url['host'];
    $domain .= empty($parsed_url['port']) ? null : ':' . $parsed_url['port'];
    return $domain;
  }
}

```
