Createds a database record for a string object.
Drupal\locale\StringInterface $string: The string object.
bool|int If the operation failed, returns FALSE. If it succeeded returns the last insert ID of the query, if one exists.
Drupal\locale\StringStorageException If the string is not suitable for this storage, an exception ithrown.
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(format_string('The string cannot be saved: @string', array(
'@string' => $string
->getString(),
)));
}
}