public function editTemplateAction()
{
$key = $this->getKey();
$form = new Admin_Form_Template();
$form->setMethod('post');
$metadata = $this->service->fetchMetadata($key);
$form->setDefaults(array('content' => $this->service->fetchItem($key), 'cache_lifetime' => $metadata->type == 'tpl' ? $metadata->ttl : 0));
$request = $this->getRequest();
if ($request->isPost() && $form->isValid($request->getPost())) {
$values = $form->getValues();
$this->service->storeItem($key, $values['content']);
if ($metadata->type == 'tpl') {
$this->service->storeMetadata($key, $values);
$this->_helper->entity->flushManager();
}
$this->_helper->flashMessenger(getGS("Template '\$1' \$2.", basename($key), getGS('updated')));
$this->_redirect(urldecode($this->_getParam('next')), array('prependBase' => false));
}
$this->view->form = $form;
}