Форум больше не используется. Присоединяйтесь к каналу #community-ru в Slack for TYPO3 community |
|
10.02.2012, 12:44 | #1 |
Senior Member
Регистрация: 25.12.2009
Сообщений: 106
|
листинг и редактирование в mod1
cnолкнулся с проблемой на которую пока не нашел ответа, буду рад любой помощи
создал кикстартером модуль для бэкенда и пара таблиц отметил нужные галочки получил вывод моих элементов и создание их на страницах в модуле web->list теперь мне нужно сделать чтоб они там не выводились и не редактировались а чтоб листинг и редактирование происходило в моем модуле web->test |
10.02.2012, 16:13 | #2 |
Продвинутый
Регистрация: 28.04.2010
Сообщений: 73
|
$TCA[$tableName]['ctrl']['hideTable'] = true;
|
10.02.2012, 17:08 | #3 |
Senior Member
Регистрация: 25.12.2009
Сообщений: 106
|
спасибо за проявленный интерес к моей проблеме, данную часть задачи я решил убиранием галок в кикстарте при редактировании таблицы
теперь интересует вторая часть вопроса каким образом мне сделать листинг данных к примеру вот тут http://doxygen.frozenkiwi.com/typo3/...hp_source.html нашел интересный кусочек кода Код:
$dblist = t3lib_div::makeInstance('localRecordList'); $dblist->backPath = $BACK_PATH; $dblist->script = t3lib_BEfunc::getModuleUrl('web_list', array(), ''); $dblist->calcPerms = $BE_USER->calcPerms($this->pageinfo); $dblist->thumbs = $BE_USER->uc['thumbnailsByDefault']; $dblist->returnUrl=$this->returnUrl; $dblist->allFields = ($this->MOD_SETTINGS['bigControlPanel'] || $this->table) ? 1 : 0; $dblist->localizationView = $this->MOD_SETTINGS['localization']; $dblist->showClipboard = 1; $dblist->disableSingleTableView = $this->modTSconfig['properties']['disableSingleTableView']; $dblist->listOnlyInSingleTableMode = $this->modTSconfig['properties']['listOnlyInSingleTableView']; $dblist->hideTables = $this->modTSconfig['properties']['hideTables']; $dblist->tableTSconfigOverTCA = $this->modTSconfig['properties']['table.']; $dblist->clickTitleMode = $this->modTSconfig['properties']['clickTitleMode']; $dblist->alternateBgColors=$this->modTSconfig['properties']['alternateBgColors']?1:0; $dblist->allowedNewTables = t3lib_div::trimExplode(',', $this->modTSconfig['properties']['allowedNewTables'], 1); $dblist->deniedNewTables = t3lib_div::trimExplode(',', $this->modTSconfig['properties']['deniedNewTables'], 1); $dblist->newWizards=$this->modTSconfig['properties']['newWizards']?1:0; $dblist->pageRow = $this->pageinfo; $dblist->counter++; $dblist->MOD_MENU = array('bigControlPanel' => '', 'clipBoard' => '', 'localization' => ''); $dblist->modTSconfig = $this->modTSconfig; возможно ктото уже сталкивался? кстати, Дмитрий, перечитываю сейчас Вашу книгу "Typo3 Extension Development" там тоже не нахожу выведение списка в своем модуле... поправьте меня, возможно плохо ищу... Последний раз редактировалось 3ton; 10.02.2012 в 17:43 |
10.02.2012, 18:30 | #4 |
Senior Member
|
Пример собственного BE модуля есть в эксте tt_news папка \mod1 (в BE это News Admin). Там как раз то что вам нужно.
|
10.02.2012, 18:45 | #5 | |
Senior Member
Регистрация: 25.12.2009
Сообщений: 106
|
Цитата:
Код:
function displayNewsList() { $content = ''; $this->initSubCategories(); $table = 'tt_news'; $dblist = t3lib_div::makeInstance('tx_ttnews_recordlist'); $dblist->backPath = $GLOBALS['BACK_PATH']; $dblist->script = $this->script; $dblist->doEdit = $this->mayUserEditArticles; $dblist->ext_CALC_PERMS = $this->newArticleCalcPerms; $dblist->perms_clause = $this->perms_clause; $dblist->agePrefixes = $GLOBALS['LANG']->sL('LLL:EXT:lang/locallang_core.php:labels.minutesHoursDaysYears'); $dblist->id = $this->id; $dblist->newRecPid = $this->newArticlePid; $dblist->singlePid = $this->singlePid; $dblist->selectedCategories = $this->selectedCategories; $dblist->category = $this->category; $dblist->returnUrl = t3lib_extMgm::extRelPath('tt_news').'mod1/'.$dblist->listURL($this->id,FALSE); $dblist->excludeCats = $this->excludeCats; $dblist->includeCats = $this->includeCats; $dblist->isAdmin = $this->isAdmin; $dblist->current_sys_language = $this->current_sys_language; $dblist->showOnlyEditable = $this->mData['showOnlyEditable']; $dblist->pidList = $this->pidList; $dblist->editablePagesList = $this->editablePagesList; $dblist->start($this->id,$table,$this->pointer,$this->search_field,$this->searchLevels,$this->showLimit); $externalTables[$table][0]['fList'] = $this->fieldList; $externalTables[$table][0]['icon'] = $this->TSprop['list.']['icon']; $dblist->externalTables = $externalTables; $dblist->no_noWrap = TRUE; $dblist->lTSprop = $this->TSprop['list.']; $dblist->thumbs = $this->thumbs; $dblist->pObj = &$this; $dblist->generateList(); if (is_array($this->TSprop['list.']['show.']) && $this->TSprop['list.']['show.']['search']) { $search = $this->displaySearch($dblist->listURL($this->id,FALSE)); $content .= '<div style="float:right;">'.$search.'</div>'; } $content .= $this->renderListCheckBoxes(); $content .= $this->getListHeaderMsg($dblist); $content .= $dblist->HTMLcode; $content = '<form action="'.htmlspecialchars($dblist->listURL()).'" method="post" name="dblistForm">'.$content.'</form>'; return '<div id="ttnewslist">'.$content.'</div>'; } думаю копать следует в этом направлении http://api.typo3.org/typo3v4/45/html...hp_source.html метод public function render Код:
00086 public function render($tableName, array $fieldList = array(), $storagePid = NULL, $levels = 0, $filter = '', $recordsPerPage = 0, $sortField = '', $sortDescending = FALSE, $readOnly = FALSE, $enableClickMenu = TRUE, $clickTitleMode = NULL, $alternateBackgroundColors = FALSE) { 00087 $pageinfo = t3lib_BEfunc::readPageAccess(t3lib_div::_GP('id'), $GLOBALS['BE_USER']->getPagePermsClause(1)); 00088 00089 $dblist = t3lib_div::makeInstance('localRecordList'); 00090 $dblist->backPath = $GLOBALS['BACK_PATH']; 00091 $dblist->pageRow = $pageinfo; 00092 if ($readOnly === FALSE) { 00093 $dblist->calcPerms = $GLOBALS['BE_USER']->calcPerms($pageinfo); 00094 } 00095 $dblist->showClipboard = FALSE; 00096 $dblist->disableSingleTableView = TRUE; 00097 $dblist->clickTitleMode = $clickTitleMode; 00098 $dblist->alternateBgColors = $alternateBackgroundColors; 00099 $dblist->clickMenuEnabled = $enableClickMenu; 00100 00101 if ($storagePid === NULL) { 00102 $frameworkConfiguration = $this->configurationManager->getConfiguration(Tx_Extbase_Configuration_ConfigurationManagerInterface::CONFIGURATION_TYPE_FRAMEWORK); 00103 $storagePid = $frameworkConfiguration['persistence']['storagePid']; 00104 } 00105 00106 $dblist->start($storagePid, $tableName, (integer)t3lib_div::_GP('pointer'), $filter, $levels, $recordsPerPage); 00107 $dblist->allFields = TRUE; 00108 $dblist->dontShowClipControlPanels = TRUE; 00109 $dblist->displayFields = FALSE; 00110 $dblist->setFields = array($tableName => $fieldList); 00111 $dblist->noControlPanels = TRUE; 00112 $dblist->sortField = $sortField; 00113 $dblist->sortRev = $sortDescending; 00114 00115 $dblist->script = $_SERVER['REQUEST_URI']; 00116 $dblist->generateList(); 00117 00118 return $dblist->HTMLcode; 00119 } Последний раз редактировалось 3ton; 10.02.2012 в 19:01 |
|
10.02.2012, 19:08 | #6 |
Senior Member
|
Экст tt_news популярен -> его много кто использует -> значит он вполне рабочий и содержит мало ошибок -> значит можно рекомендовать его как пример
А толку вам от встроенного если вы наверняка захотите какую-то уникальную нужную вам функциональность? Ну ладно, вот еще один пример: templavoila\mod1\class.tx_templavoila_mod1_recordl ist.php Код:
require_once(PATH_t3lib . 'class.t3lib_recordlist.php'); require_once(PATH_typo3 . 'class.db_list.inc'); require_once(PATH_typo3 . 'class.db_list_extra.inc'); // Need List lables for delete confirmation $LANG->includeLLFile('EXT:lang/locallang_mod_web_list.xml'); /** * Extension of standard List module * * @author Dmitry Dulepov <dmitry@typo3.org> * @package TYPO3 * @subpackage tx_templavoila */ class tx_templavoila_mod1_recordlist extends localRecordList { |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Почему-то не хочет работать редактирование текста | Максим Ботенко | TYPO3 хостинг | 3 | 29.04.2010 12:07 |
pdf листинг с предосмотром | federico | Общие вопросы | 3 | 19.02.2009 11:51 |
FE редактирование "Logout from CMS" | margol | Общие вопросы | 0 | 24.12.2008 15:53 |
Разграничение прав на редактирование через FE | margol | Общие вопросы | 3 | 13.12.2007 20:54 |
Возможно ли редактирование HTML после TemplaVoila! | logovas | Общие вопросы | 9 | 30.03.2007 21:05 |