Вход

Просмотр полной версии : Удаление файлов, директорий. [DAM]


ConTorTion
10.12.2009, 22:34
Доброго времени суток!

Возникла проблема с удалением\переименованием файлов, директорий при установленном расширении DAM. При подтверждении удаления пишет, что не хватает привилегий, хотя я админ. При отключенном расширении все прекрасно удаляется и переименовывается. Так же установлена ТемплаВойла.

Раньше уже ставил DAM все работало отлично, а сейчас возникла проблема.

Версия Typo3 4.3.0


P.S. Поиск не выдает ничего вразумительно, если такая тема уже есть, просьба отписать ссылочку.
Приложу файл с иллюстрацией.

ConTorTion
11.12.2009, 11:03
Проблему решил, но каким-то через чур сложным способом.

В файле class.tx_dam_tce_file.php (DAM lib) сделал следующие изменения

до :

function init($file='') {
global $FILEMOUNTS, $TYPO3_CONF_VARS, $BE_USER;

// GP vars:
$this->file = is_array($file) ? $file : t3lib_div::_GP('file');
$this->overwriteExistingFiles = t3lib_div::_GP('overwriteExistingFiles');

// Initializing:
# $this->fileProcessor = t3lib_div::makeInstance('t3lib_extFileFunctions');
$this->fileProcessor = t3lib_div::makeInstance('tx_dam_extFileFunctions') ;
$this->fileProcessor->init($FILEMOUNTS, $TYPO3_CONF_VARS['BE']['fileExtensions']);
$this->fileProcessor->init_actionPerms($BE_USER->user['fileoper_perms']);
$this->fileProcessor->dontCheckForUnique = $this->overwriteExistingFiles ? 1 : 0;

return $this->error;

}


после :


function init($file='') {
global $FILEMOUNTS, $TYPO3_CONF_VARS, $BE_USER;

// GP vars:
$this->file = is_array($file) ? $file : t3lib_div::_GP('file');
$this->overwriteExistingFiles = t3lib_div::_GP('overwriteExistingFiles');

// Initializing:
# $this->fileProcessor = t3lib_div::makeInstance('t3lib_extFileFunctions');
$this->fileProcessor = t3lib_div::makeInstance('tx_dam_extFileFunctions') ;
$this->fileProcessor->init($FILEMOUNTS, $TYPO3_CONF_VARS['BE']['fileExtensions']);
if($BE_USER->isAdmin())
$this->fileProcessor->init_actionPerms(31);
else
$this->fileProcessor->init_actionPerms($BE_USER->user['fileoper_perms']);
$this->fileProcessor->dontCheckForUnique = $this->overwriteExistingFiles ? 1 : 0;

return $this->error;

}



Может кто-то знает более правильное и простое решение ?

Pavel Antonov
11.12.2009, 13:03
Собственно, судя по коду, можно было бы просто добавить соответствующие fileoper_perms админу?

ConTorTion
11.12.2009, 14:38
Да, но к сожалению когда я устанавливаю галочку "Админ" в разделе управления пользователями, система скрывает редактор привилегий для доступа к файлам. Это нормально ? =)

Pavel Antonov
11.12.2009, 22:29
Вообще они должны быть по умолчанию максимальными... может что то изменилось в 4.3

ConTorTion
11.12.2009, 23:43
Вообще они должны быть по умолчанию максимальными... может что то изменилось в 4.3

Ну у меня в typo3 4.3.0 по дефолту там был 0.

ConTorTion
12.12.2009, 14:34
Кстати нашел еше один баг с typo3 4.3 и DAM 1.1.1

Вот ссылка на патч, если кому интересно. http://bugs.typo3.org/view.php?id=12028

Суть бага в построении DAM деревьев файлов.