X-Git-Url: http://www.aleph1.co.uk/gitweb/?p=yaffs-website;a=blobdiff_plain;f=vendor%2Fdrupal%2Fdrupal-driver%2Fsrc%2FDrupal%2FDriver%2FCores%2FDrupal8.php;fp=vendor%2Fdrupal%2Fdrupal-driver%2Fsrc%2FDrupal%2FDriver%2FCores%2FDrupal8.php;h=0000000000000000000000000000000000000000;hp=c1cd9ab0b83306e71c60e8b929aaafcbed7a98b0;hb=af6d1fb995500ae68849458ee10d66abbdcfb252;hpb=680c79a86e3ed402f263faeac92e89fb6d9edcc0 diff --git a/vendor/drupal/drupal-driver/src/Drupal/Driver/Cores/Drupal8.php b/vendor/drupal/drupal-driver/src/Drupal/Driver/Cores/Drupal8.php deleted file mode 100644 index c1cd9ab0b..000000000 --- a/vendor/drupal/drupal-driver/src/Drupal/Driver/Cores/Drupal8.php +++ /dev/null @@ -1,423 +0,0 @@ -drupalRoot); - } - - // Bootstrap Drupal. - chdir(DRUPAL_ROOT); - $autoloader = require DRUPAL_ROOT . '/autoload.php'; - require_once DRUPAL_ROOT . '/core/includes/bootstrap.inc'; - $this->validateDrupalSite(); - - $request = Request::createFromGlobals(); - $kernel = DrupalKernel::createFromRequest($request, $autoloader, 'prod'); - $kernel->boot(); - $kernel->prepareLegacyRequest($request); - - // Initialise an anonymous session. required for the bootstrap. - \Drupal::service('session_manager')->start(); - } - - /** - * {@inheritdoc} - */ - public function clearCache() { - // Need to change into the Drupal root directory or the registry explodes. - drupal_flush_all_caches(); - } - - /** - * {@inheritdoc} - */ - public function nodeCreate($node) { - // Throw an exception if the node type is missing or does not exist. - if (!isset($node->type) || !$node->type) { - throw new \Exception("Cannot create content because it is missing the required property 'type'."); - } - $bundles = \Drupal::entityManager()->getBundleInfo('node'); - if (!in_array($node->type, array_keys($bundles))) { - throw new \Exception("Cannot create content because provided content type '$node->type' does not exist."); - } - // Default status to 1 if not set. - if (!isset($node->status)) { - $node->status = 1; - } - // If 'author' is set, remap it to 'uid'. - if (isset($node->author)) { - $user = user_load_by_name($node->author); - if ($user) { - $node->uid = $user->id(); - } - } - $this->expandEntityFields('node', $node); - $entity = entity_create('node', (array) $node); - $entity->save(); - - $node->nid = $entity->id(); - - return $node; - } - - /** - * {@inheritdoc} - */ - public function nodeDelete($node) { - $node = $node instanceof NodeInterface ? $node : Node::load($node->nid); - if ($node instanceof NodeInterface) { - $node->delete(); - } - } - - /** - * {@inheritdoc} - */ - public function runCron() { - return \Drupal::service('cron')->run(); - } - - /** - * {@inheritdoc} - */ - public function userCreate(\stdClass $user) { - $this->validateDrupalSite(); - - // Default status to TRUE if not explicitly creating a blocked user. - if (!isset($user->status)) { - $user->status = 1; - } - - // Clone user object, otherwise user_save() changes the password to the - // hashed password. - $this->expandEntityFields('user', $user); - $account = entity_create('user', (array) $user); - $account->save(); - - // Store UID. - $user->uid = $account->id(); - } - - /** - * {@inheritdoc} - */ - public function roleCreate(array $permissions) { - // Generate a random, lowercase machine name. - $rid = strtolower($this->random->name(8, TRUE)); - - // Generate a random label. - $name = trim($this->random->name(8, TRUE)); - - // Convert labels to machine names. - $this->convertPermissions($permissions); - - // Check the all the permissions strings are valid. - $this->checkPermissions($permissions); - - // Create new role. - $role = entity_create('user_role', array( - 'id' => $rid, - 'label' => $name, - )); - $result = $role->save(); - - if ($result === SAVED_NEW) { - // Grant the specified permissions to the role, if any. - if (!empty($permissions)) { - user_role_grant_permissions($role->id(), $permissions); - } - return $role->id(); - } - - throw new \RuntimeException(sprintf('Failed to create a role with "%s" permission(s).', implode(', ', $permissions))); - } - - /** - * {@inheritdoc} - */ - public function roleDelete($role_name) { - $role = user_role_load($role_name); - - if (!$role) { - throw new \RuntimeException(sprintf('No role "%s" exists.', $role_name)); - } - - $role->delete(); - } - - /** - * {@inheritdoc} - */ - public function processBatch() { - $this->validateDrupalSite(); - $batch =& batch_get(); - $batch['progressive'] = FALSE; - batch_process(); - } - - /** - * Retrieve all permissions. - * - * @return array - * Array of all defined permissions. - */ - protected function getAllPermissions() { - $permissions = &drupal_static(__FUNCTION__); - - if (!isset($permissions)) { - $permissions = \Drupal::service('user.permissions')->getPermissions(); - } - - return $permissions; - } - - /** - * Convert any permission labels to machine name. - * - * @param array &$permissions - * Array of permission names. - */ - protected function convertPermissions(array &$permissions) { - $all_permissions = $this->getAllPermissions(); - - foreach ($all_permissions as $name => $definition) { - $key = array_search($definition['title'], $permissions); - if (FALSE !== $key) { - $permissions[$key] = $name; - } - } - } - - /** - * Check to make sure that the array of permissions are valid. - * - * @param array $permissions - * Permissions to check. - */ - protected function checkPermissions(array &$permissions) { - $available = array_keys($this->getAllPermissions()); - - foreach ($permissions as $permission) { - if (!in_array($permission, $available)) { - throw new \RuntimeException(sprintf('Invalid permission "%s".', $permission)); - } - } - } - - /** - * {@inheritdoc} - */ - public function userDelete(\stdClass $user) { - user_cancel(array(), $user->uid, 'user_cancel_delete'); - } - - /** - * {@inheritdoc} - */ - public function userAddRole(\stdClass $user, $role_name) { - // Allow both machine and human role names. - $roles = user_role_names(); - $id = array_search($role_name, $roles); - if (FALSE !== $id) { - $role_name = $id; - } - - if (!$role = user_role_load($role_name)) { - throw new \RuntimeException(sprintf('No role "%s" exists.', $role_name)); - } - - $account = \user_load($user->uid); - $account->addRole($role->id()); - $account->save(); - } - - /** - * {@inheritdoc} - */ - public function validateDrupalSite() { - if ('default' !== $this->uri) { - // Fake the necessary HTTP headers that Drupal needs: - $drupal_base_url = parse_url($this->uri); - // If there's no url scheme set, add http:// and re-parse the url - // so the host and path values are set accurately. - if (!array_key_exists('scheme', $drupal_base_url)) { - $drupal_base_url = parse_url($this->uri); - } - // Fill in defaults. - $drupal_base_url += array( - 'path' => NULL, - 'host' => NULL, - 'port' => NULL, - ); - $_SERVER['HTTP_HOST'] = $drupal_base_url['host']; - - if ($drupal_base_url['port']) { - $_SERVER['HTTP_HOST'] .= ':' . $drupal_base_url['port']; - } - $_SERVER['SERVER_PORT'] = $drupal_base_url['port']; - - if (array_key_exists('path', $drupal_base_url)) { - $_SERVER['PHP_SELF'] = $drupal_base_url['path'] . '/index.php'; - } - else { - $_SERVER['PHP_SELF'] = '/index.php'; - } - } - else { - $_SERVER['HTTP_HOST'] = 'default'; - $_SERVER['PHP_SELF'] = '/index.php'; - } - - $_SERVER['REQUEST_URI'] = $_SERVER['SCRIPT_NAME'] = $_SERVER['PHP_SELF']; - $_SERVER['REMOTE_ADDR'] = '127.0.0.1'; - $_SERVER['REQUEST_METHOD'] = NULL; - - $_SERVER['SERVER_SOFTWARE'] = NULL; - $_SERVER['HTTP_USER_AGENT'] = NULL; - - $conf_path = DrupalKernel::findSitePath(Request::createFromGlobals()); - $conf_file = $this->drupalRoot . "/$conf_path/settings.php"; - if (!file_exists($conf_file)) { - throw new BootstrapException(sprintf('Could not find a Drupal settings.php file at "%s"', $conf_file)); - } - } - - /** - * {@inheritdoc} - */ - public function termCreate(\stdClass $term) { - $term->vid = $term->vocabulary_machine_name; - $this->expandEntityFields('taxonomy_term', $term); - $entity = Term::create((array) $term); - $entity->save(); - - $term->tid = $entity->id(); - return $term; - } - - /** - * {@inheritdoc} - */ - public function termDelete(\stdClass $term) { - $term = $term instanceof TermInterface ? $term : Term::load($term->tid); - if ($term instanceof TermInterface) { - $term->delete(); - } - } - - /** - * {@inheritdoc} - */ - public function getModuleList() { - return array_keys(\Drupal::moduleHandler()->getModuleList()); - } - - /** - * {@inheritdoc} - */ - public function getExtensionPathList() { - $paths = array(); - - // Get enabled modules. - foreach (\Drupal::moduleHandler()->getModuleList() as $module) { - $paths[] = $this->drupalRoot . DIRECTORY_SEPARATOR . $module->getPath(); - } - - return $paths; - } - - /** - * {@inheritdoc} - */ - public function getEntityFieldTypes($entity_type) { - $return = array(); - $fields = \Drupal::entityManager()->getFieldStorageDefinitions($entity_type); - foreach ($fields as $field_name => $field) { - if ($this->isField($entity_type, $field_name)) { - $return[$field_name] = $field->getType(); - } - } - return $return; - } - - /** - * {@inheritdoc} - */ - public function isField($entity_type, $field_name) { - $fields = \Drupal::entityManager()->getFieldStorageDefinitions($entity_type); - return (isset($fields[$field_name]) && $fields[$field_name] instanceof FieldStorageConfig); - } - - /** - * {@inheritdoc} - */ - public function languageCreate(\stdClass $language) { - $langcode = $language->langcode; - - // Enable a language only if it has not been enabled already. - if (!ConfigurableLanguage::load($langcode)) { - $created_language = ConfigurableLanguage::createFromLangcode($language->langcode); - if (!$created_language) { - throw new InvalidArgumentException("There is no predefined language with langcode '{$langcode}'."); - } - $created_language->save(); - return $language; - } - - return FALSE; - } - - /** - * {@inheritdoc} - */ - public function languageDelete(\stdClass $language) { - $configurable_language = ConfigurableLanguage::load($language->langcode); - $configurable_language->delete(); - } - - /** - * {@inheritdoc} - */ - public function clearStaticCaches() { - drupal_static_reset(); - \Drupal::service('cache_tags.invalidator')->resetChecksums(); - } - - /** - * {@inheritdoc} - */ - public function configGet($name, $key = '') { - return \Drupal::config($name)->get($key); - } - - /** - * {@inheritdoc} - */ - public function configSet($name, $key, $value) { - \Drupal::configFactory()->getEditable($name) - ->set($key, $value) - ->save(); - } - -}