/**
  * action edit
  *
  * @param int $uid
  * @param array $edit
  * @return void
  */
 public function editAction($uid = 0, $edit = [])
 {
     if ($uid > 0) {
         $item = $this->templateRepository->findByUid($uid);
         if (!count($edit)) {
             $edit['title'] = $item->getTitle();
             $edit['subject'] = $item->getSubject();
             $edit['category'] = $item->getCategory();
             $edit['template'] = $item->getTemplate();
             $edit['uid'] = $item->getUid();
         }
         if (isset($edit['save']) || isset($edit['saveAndClose']) || isset($edit['saveAndNew'])) {
             $item->setTitle($edit['title']);
             $item->setSubject($edit['subject']);
             $item->setCategory($edit['category']);
             $item->setTemplate($edit['template']);
             $this->templateRepository->update($item);
             $this->objectManager->get('TYPO3\\CMS\\Extbase\\Persistence\\PersistenceManagerInterface')->persistAll();
             $this->addFlashMessage('', 'Änderungen wurden erfolgreich gespeichert.', FlashMessage::OK);
         }
         if (isset($edit['saveAndClose'])) {
             $this->redirect("index");
         } elseif (isset($edit['saveAndNew'])) {
             $this->redirect("add");
         } else {
             $this->view->assign('item', $item);
             $this->view->assign('categories', $this->getTemplateCategories());
             $this->view->assign('action', 'edit');
             $this->view->assign('uid', $uid);
         }
     } else {
         $this->redirect("index");
     }
 }