StringDatabaseStorage::dbStringInsert

protected StringDatabaseStorage::dbStringInsert($string)

Creates a database record for a string object.

Parameters

\Drupal\locale\StringInterface $string: The string object.

Return value

bool|int If the operation failed, returns FALSE. If it succeeded returns the last insert ID of the query, if one exists.

Throws

\Drupal\locale\StringStorageException If the string is not suitable for this storage, an exception is thrown.

File

core/modules/locale/src/StringDatabaseStorage.php, line 464

Class

StringDatabaseStorage
Defines a class to store localized strings in the database.

Namespace

Drupal\locale

Code

protected function dbStringInsert($string) {
  if ($string->isSource()) {
    $string->setValues(array('context' => '', 'version' => 'none'), FALSE);
    $fields = $string->getValues(array('source', 'context', 'version'));
  }
  elseif ($string->isTranslation()) {
    $string->setValues(array('customized' => 0), FALSE);
    $fields = $string->getValues(array('lid', 'language', 'translation', 'customized'));
  }
  if (!empty($fields)) {
    return $this->connection->insert($this->dbStringTable($string), $this->options)
      ->fields($fields)
      ->execute();
  }
  else {
    throw new StringStorageException('The string cannot be saved: ' . $string->getString());
  }
}
doc_Drupal
2016-10-29 09:45:06
Comments
Leave a Comment

Please login to continue.