本文整理汇总了PHP中Goteo\Library\Text::save方法的典型用法代码示例。如果您正苦于以下问题:PHP Text::save方法的具体用法?PHP Text::save怎么用?PHP Text::save使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Goteo\Library\Text
的用法示例。
在下文中一共展示了Text::save方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: index
public function index($table = '', $action = 'list', $id = null, $auxAction = 'list', $contentId = null)
{
$_SESSION['user']->translangs = Model\User\Translate::getLangs($_SESSION['user']->id);
if (empty($_SESSION['user']->translangs)) {
Message::Error(Text::_('No tienes ningún idioma, contacta con el administrador'));
throw new Redirection('/dashboard');
}
if (empty($_SESSION['translate_lang']) || !isset($_SESSION['user']->translangs[$_SESSION['translate_lang']])) {
if (count($_SESSION['user']->translangs) > 1 && isset($_SESSION['user']->translangs['en'])) {
$_SESSION['translate_lang'] = 'en';
} else {
$_SESSION['translate_lang'] = current(array_keys($_SESSION['user']->translangs));
}
}
if ($table == '') {
return new View('view/translate/index.html.php', array('menu' => self::menu()));
}
// para el breadcrumbs segun el contenido
$section = $table == 'news' || $table == 'promote' ? 'home' : 'contents';
// muy especial para traducción de nodo
if ($table == 'node') {
$BC = self::menu(array('section' => 'node', 'node' => $action, 'option' => $id, 'action' => $auxAction, 'id' => $contentId));
} else {
$BC = self::menu(array('section' => $section, 'option' => $table, 'action' => $action, 'id' => $id));
}
define('ADMIN_BCPATH', $BC);
$errors = array();
// la operación según acción
switch ($table) {
case 'texts':
// comprobamos los filtros
$filters = array();
$fields = array('group', 'text', 'pending');
if (!isset($_GET['pending'])) {
$_GET['pending'] = 0;
}
foreach ($fields as $field) {
if (isset($_GET[$field])) {
$filters[$field] = $_GET[$field];
$_SESSION['translate_filters']['texts'][$field] = (string) $_GET[$field];
} elseif (!empty($_SESSION['translate_filters']['texts'][$field])) {
// si no lo tenemos en el get, cogemos de la sesion pero no lo pisamos
$filters[$field] = $_SESSION['translate_filters']['texts'][$field];
}
}
$filter = "?group={$filters['group']}&text={$filters['text']}&pending={$filters['pending']}";
// si llega post, vamos a guardar los cambios
if ($action == 'edit' && $_SERVER['REQUEST_METHOD'] == 'POST' && isset($_POST['save'])) {
if (Text::save(array('id' => $id, 'text' => $_POST['text'], 'lang' => $_POST['lang']), $errors)) {
// Evento Feed
/*
$log = new Feed();
$log->populate('texto traducido (traductor)', '/translate/texts',
\vsprintf('El traductor %s ha %s el texto %s al %s', array(
Feed::item('user', $_SESSION['user']->name, $_SESSION['user']->id),
Feed::item('relevant', 'Traducido'),
Feed::item('blog', $id),
Feed::item('relevant', Lang::get($_POST['lang'])->name)
)));
$log->doAdmin('admin');
unset($log);
*/
Message::Info('Texto <strong>' . $id . '</strong> traducido correctamente al <strong>' . Lang::get($_POST['lang'])->name . '</strong>');
throw new Redirection("/translate/texts/{$filter}&page=" . $_GET['page']);
} else {
// Evento Feed
$log = new Feed();
$log->setTarget($_SESSION['user']->id, 'user');
$log->populate('texto traducido (traductor)', '/translate/texts', \vsprintf('Al traductor %s le ha %s el texto %s al %s', array(Feed::item('user', $_SESSION['user']->name, $_SESSION['user']->id), Feed::item('relevant', 'Fallado al traducir'), Feed::item('blog', $id), Feed::item('relevant', Lang::get($_POST['lang'])->name))));
$log->doAdmin('admin');
unset($log);
Message::Error('Ha habido algun ERROR al traducir el Texto <strong>' . $id . '</strong> al <strong>' . Lang::get($_POST['lang'])->name . '</strong><br />' . implode('<br />', $errors));
}
}
// sino, mostramos la lista
return new View('view/translate/index.html.php', array('section' => 'texts', 'action' => $action, 'id' => $id, 'filter' => $filter, 'filters' => $filters, 'errors' => $errors));
break;
case 'node':
// parametros especiales
$node = $action;
$action = $auxAction;
$contentTable = $id;
// si llega post, vamos a guardar los cambios
if ($action == 'edit' && $_SERVER['REQUEST_METHOD'] == 'POST' && isset($_POST['save'])) {
switch ($contentTable) {
case 'banner':
if (Content::save(array('id' => $contentId, 'table' => $contentTable, 'title' => $_POST['title'], 'description' => $_POST['description'], 'lang' => $_POST['lang']), $errors)) {
Message::Info('El Banner <strong>' . $contentId . '</strong> del nodo <strong>' . $node . '</strong> traducido correctamente al <strong>' . Lang::get($_POST['lang'])->name . '</strong>');
throw new Redirection("/translate/node/{$node}/{$contentTable}/list");
} else {
Message::Error('Ha habido algun ERROR al traducir el Banner <strong>' . $contentId . '</strong> del nodo <strong>' . $node . '</strong> al <strong>' . Lang::get($_POST['lang'])->name . '</strong><br />' . implode('<br />', $errors));
}
break;
case 'page':
$page = Page::get($contentId, $node);
if ($page->update($contentId, $_POST['lang'], $node, $_POST['name'], $_POST['description'], $_POST['content'], $errors)) {
Message::Info('La página <strong>' . $contentId . '</strong> del nodo <strong>' . $node . '</strong> traducido correctamente al <strong>' . Lang::get($_POST['lang'])->name . '</strong>');
throw new Redirection("/translate/node/{$node}/{$contentTable}/list");
} else {
Message::Error('Ha habido algun ERROR al traducir la página <strong>' . $contentId . '</strong> del nodo <strong>' . $node . '</strong> al <strong>' . Lang::get($_POST['lang'])->name . '</strong><br />' . implode('<br />', $errors));
//.........这里部分代码省略.........