/** * * Render * * Renders a content element * * @param int $uid * @param array $data * return string */ public function render($uid, $data = null) { $this->cObj = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('tslib_cObj'); $conf = array('tables' => 'tt_content', 'source' => $uid, 'dontCheckPid' => 1); $html = $this->cObj->RECORDS($conf); if ($data) { $html = $this->anyHelper->renderTemplateSource($html, $data); } return $html ? $html : "Keine Content-Element mit uid {$uid} gefunden. Evtl. muss uid im View angepasst werden!"; }
function processRequestAction() { $_GP = $this->request->getArguments(); $action = $_GP['action']; $uid = (int) $_GP['uid']; $key = $_GP['key']; // Validierung der Aktion if ($action) { if (!$this->anyHelper->validateKeyForUid($uid, $key)) { die("Validierung fehlgeschlagen."); } } if ($action == 'approve') { // Klick auf "Bestätigen" in Admin-Email $this->mainController->approveAction($uid); } else { if ($action == 'remove') { // Klick auf "Löschen" in E-Mail $this->mainController->removeAction($uid); } else { if ($action == 'edit') { // Klick auf "Bearbeiten" aus der E-Mail return $this->mainController->editAction($uid); } else { if ($action == 'feedit') { // Klick auf "Bearbeiten" eines bestehenden Datensatzes im Frontend $message = $this->mainController->feeditAction($_GP); } else { if ($action == 'fedelete') { // Klick auf "Löschen" eines bestehenden Datensatzes im Frontend $message = $this->mainController->feDeleteAction($_GP); } } } } } if ($message = $this->anyHelper->renderFlashMessages()) { return $message; } //$this->anyHelper->httpRedirect( 0 ); }
/** * action feDeleteAction * Löschen eines bestehenden Datensatzes aus fremder Tabelle. * * @return array */ public function feDeleteAction($params) { $this->settings = $this->settingsUtility->getSettings(); $uid = intval($params['uid']); $type = $params['type']; $settings = $this->settings[$type]; $extName = $settings['extension']; $tmplPath = $settings['templatePath']; // Prüfen, ob Datensatz in fremder Tabelle exisitert if (!($data = $this->tableService->getEntry($settings, $uid))) { return $this->anyHelper->addFlashMessage('Kein Eintrag gefunden', "In der Tabelle {$settings['tablename']} wurde kein Datensatz mit der uid={$uid} gefunden.", 'ERROR'); } $mapperVars = $this->insertViewVariablesFromMapper($extName, $params); //* if ($mapper = $this->createMapperObject($extName)) { if (!$mapper->delete($data, $settings)) { return $this->anyHelper->addFlashMessage('Eintrag konnte nicht gelöscht werden', "Fehler beim Löschen des Eintrags mit der uid={$data['uid']} in Tabelle {$settings['tablename']}", 'ERROR'); } } //*/ if ($settings['notification']['fedelete']['enabled'] !== '0') { $feUser = $this->feUserRepository->findOneByUid($GLOBALS['TSFE']->fe_user->user['uid']); $data = array_merge_recursive($data, $mapperVars, array('feUser' => $feUser, 'baseUrl' => $GLOBALS['TSFE']->baseUrl, 'settings' => $settings)); $html = $this->anyHelper->renderTemplate($tmplPath . 'EmailNotificationFeDelete.html', $data, true, null, false); $this->anyHelper->send_email(array_merge($settings['notification']['fedelete'], array('html' => $html))); } $this->anyHelper->addFlashMessage('Datensatz gelöscht', 'Der Datensatz wurde erfolgreich entfernt.', 'OK'); if ($params['returnUrl']) { $this->anyHelper->httpRedirect($params['returnUrl']); } $this->anyHelper->httpRedirect(null, array('nnf' => $params['nnf'], 'tx_nnfesubmit_nnfesubmit[key]' => $this->anyHelper->createKeyForUid($entryUid), 'tx_nnfesubmit_nnfesubmit[entry]' => $entryUid, 'tx_nnfesubmit_nnfesubmit[pluginUid]' => intval($params['pluginUid']), 'tx_nnfesubmit_nnfesubmit[returnUrl]' => $params['returnUrl'])); /* $this->anyHelper->httpRedirect( null, array( 'nnf' => $params['nnf'] )); */ }