You are here

function CheckAuthentication in FCKeditor - WYSIWYG HTML editor 6

Same name and namespace in other branches
  1. 5.2 filemanager.config.php \CheckAuthentication()
  2. 6.2 filemanager.config.php \CheckAuthentication()
1 call to CheckAuthentication()
filemanager.config.php in ./filemanager.config.php

File

./filemanager.config.php, line 38

Code

function CheckAuthentication() {
  static $authenticated;
  if (!isset($authenticated)) {
    $result = false;
    if (!empty($_SERVER['SCRIPT_FILENAME'])) {
      $drupal_path = dirname(dirname(dirname(dirname($_SERVER['SCRIPT_FILENAME']))));
      if (!file_exists($drupal_path . "/includes/bootstrap.inc")) {
        $drupal_path = dirname(dirname(dirname($_SERVER['SCRIPT_FILENAME'])));
        $depth = 2;
        do {
          $drupal_path = dirname($drupal_path);
          $depth++;
        } while (!($bootstrapFileFound = file_exists($drupal_path . "/includes/bootstrap.inc")) && $depth < 10);
      }
    }
    if (!isset($bootstrapFileFound) || !$bootstrapFileFound) {
      $drupal_path = "../../../";
      if (!file_exists($drupal_path . "/includes/bootstrap.inc")) {
        $drupal_path = "../..";
        do {
          $drupal_path .= "/..";
          $depth = substr_count($drupal_path, "..");
        } while (!($bootstrapFileFound = file_exists($drupal_path . "/includes/bootstrap.inc")) && $depth < 10);
      }
    }
    if (!isset($bootstrapFileFound) || $bootstrapFileFound) {
      $fck_cwd = getcwd();
      chdir($drupal_path);
      require_once "./includes/bootstrap.inc";
      drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);
      $authenticated = user_access("allow fckeditor file uploads");
      if (isset($_SESSION['FCKeditor']['UserFilesPath'], $_SESSION['FCKeditor']['UserFilesAbsolutePath'])) {
        $GLOBALS['fck_user_files_path'] = $_SESSION['FCKeditor']['UserFilesPath'];
        $GLOBALS['fck_user_files_absolute_path'] = $_SESSION['FCKeditor']['UserFilesAbsolutePath'];
      }
      chdir($fck_cwd);
    }
  }
  return $authenticated;
}