Уважаемые пользователи!
C 7 ноября 2020 года phpBB Group прекратила выпуск обновлений и завершила дальнейшее развитие phpBB версии 3.2.
С 1 августа 2024 года phpBB Group прекращает поддержку phpBB 3.2 на официальном сайте.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.2 до 31 декабря 2024 года.
С учетом этого, настоятельно рекомендуется обновить конференции до версии 3.3.

Мультизагрузка вложений (Multiple File Upload)

Все моды, созданные нашим сообществом для phpBB 3.0.x, будут анонсированы тут. Вся техническая поддержка по этим модам оказывается в этом форуме.
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Аватара пользователя
владимир1983
phpBB 3.2.6
Сообщения: 5954
Стаж: 13 лет 11 месяцев
Откуда: Сергиев Посад
Благодарил (а): 374 раза
Поблагодарили: 727 раз
Контактная информация:

Re: Мультизагрузка вложений (Multiple File Upload)

Сообщение владимир1983 »

Из инструкции. Надо исправить.
Открыть: styles/subsilver2/template/posting_buttons.html

найти

Код: Выделить всё

		function add_more_upload()
		{
			var id = document.getElementById('proxid').value;
Заменить на

Код: Выделить всё

		function add_more_upload()
		{
			<!-- IF FORMS_LIMIT and not U_MCP and not U_ACP -->
				var node_list = document.getElementsByTagName('input');
				var forms = [];

				for (var i = 0; i < node_list.length; i++)
				{
					var node = node_list[i];

					if (node.getAttribute('type') == 'file')
					{
						forms.push(node);
					}
				}

				if (forms.length >= {FORMS_LIMIT})
				{
					alert('{LA_FORMS_LIMIT}');
					return false;
				}
			<!-- ENDIF -->

			var id = document.getElementById('proxid').value;
За ваши деньги решу ваши проблемы. Стучи в ЛС.
Нет человека - нет проблемы. (c)
Аватара пользователя
Pazh
Former team member
Сообщения: 2317
Стаж: 14 лет 4 месяца
Благодарил (а): 43 раза
Поблагодарили: 506 раз
Контактная информация:

Re: Мультизагрузка вложений (Multiple File Upload)

Сообщение Pazh »

владимир1983 в аддоне так и написано, или ты про исходный мод?
Помощь в ЛС/email только за WM или ЮMoney
Аватара пользователя
владимир1983
phpBB 3.2.6
Сообщения: 5954
Стаж: 13 лет 11 месяцев
Откуда: Сергиев Посад
Благодарил (а): 374 раза
Поблагодарили: 727 раз
Контактная информация:

Re: Мультизагрузка вложений (Multiple File Upload)

Сообщение владимир1983 »

Pazh
В исходном нету к стилю

Код: Выделить всё

function add_more_upload()
		{
			var id = document.getElementById('proxid').value;
Ты про что?
За ваши деньги решу ваши проблемы. Стучи в ЛС.
Нет человека - нет проблемы. (c)
Shredder
Former team member
Сообщения: 2217
Стаж: 15 лет 3 месяца
Благодарил (а): 236 раз
Поблагодарили: 561 раз
Контактная информация:

Re: Мультизагрузка вложений (Multiple File Upload)

Сообщение Shredder »

Pazh писал(а):Аддон совместим с Update attachment
В в чём была несовместимость? У меня нормально без дополнительных правок работало. Новый выложенный тобой не проверял, речь про старый код.

Добавлено спустя 2 часа 4 секунды:
- sizeof($attachment_data) будет вызывать ошибки с отрицательными значениями, когда это число больше предыдущей сравниваемой части.

Добавлено спустя 1 час 25 минут:

Код: Выделить всё

$multiple_upload_limit = (int)(($config['multiple_upload_limit'] == 0) ? $config['max_attachments'] : min($config['max_attachments'], $config['multiple_upload_limit'])) - sizeof($attachment_data);
А в целом это выражение будет давать баг, когда Максимум вложений в одном сообщении больше Максимального числа форм загрузки. Например, Максимум вложений в одном сообщении - 30, Максимальное число форм загрузки - 20, получаем: $multiple_upload_limit = min($config['max_attachments'], $config['multiple_upload_limit']) - sizeof($attachment_data) = min(30, 20) - 21 = -1. Т.е. до лимита вложений в одном сообщении нам ещё 9 штук, а форма загрузки уже одна...

Я сейчас работаю над устранением этих багов, и там ещё учёт северного max_file_uploads хочу добавить. Потом пошлю на валидацию или сюда выложу сначала для тестирования.
Аватара пользователя
Pazh
Former team member
Сообщения: 2317
Стаж: 14 лет 4 месяца
Благодарил (а): 43 раза
Поблагодарили: 506 раз
Контактная информация:

Re: Мультизагрузка вложений (Multiple File Upload)

Сообщение Pazh »

Shredder писал(а):В в чём была несовместимость?
кнопка "Добавить файл" активна при достижении максимального числа вложений и соответственно остается возможность получить сообщение о достижении максимума. Я оставляю поле ввода файла и коммента, но убираю кнопку Добавить
Shredder писал(а):А в целом это выражение будет давать баг
нужно заменить в файле posting.php

Код: Выделить всё

$multiple_upload_limit = (int)(($config['multiple_upload_limit'] == 0) ? $config['max_attachments'] : min($config['max_attachments'], $config['multiple_upload_limit'])) - sizeof($attachment_data);
на

Код: Выделить всё

$multiple_upload_limit = (int)(($config['multiple_upload_limit'] == 0) ? $config['max_attachments'] : min($config['max_attachments']- sizeof($attachment_data), $config['multiple_upload_limit']));
и в файле includes/ucp/ucp_pm_compose.php

Код: Выделить всё

$multiple_upload_limit = (int)(($config['multiple_upload_limit'] == 0) ? $config['max_attachments_pm'] : min($config['max_attachments_pm'], $config['multiple_upload_limit'])) - sizeof($attachment_data);
на

Код: Выделить всё

$multiple_upload_limit = (int)(($config['multiple_upload_limit'] == 0) ? $config['max_attachments_pm'] : min($config['max_attachments_pm']- sizeof($attachment_data), $config['multiple_upload_limit']));
Аддон перевыложил
Помощь в ЛС/email только за WM или ЮMoney
Shredder
Former team member
Сообщения: 2217
Стаж: 15 лет 3 месяца
Благодарил (а): 236 раз
Поблагодарили: 561 раз
Контактная информация:

Re: Мультизагрузка вложений (Multiple File Upload)

Сообщение Shredder »

Итак, мой собственный результат шестичасовых тестов на разных системах:
Вложение add-on_multiple_upload_forms_limit.zip больше недоступно
add-on_multiple_upload_forms_limit.zip
Аддон отдельно
(150.87 КБ) 536 скачиваний
+ добавлена поддержка max_file_uploads, чтобы не было вот такого.

Насчёт этого я ничего не менял, т.к. мод не имеет отношения к багам phpBB. Когда там исправят, подгоню при надобности и его. С Update Attachments тоже ничего не проверял, т.к. всё время ушло на основной мод. Пусть аддон для совместимости будет в твоём - кому надо, тот скачает.
Тесты и замечания приветствуются.
Последний раз редактировалось Shredder 27.10.2012 10:44, всего редактировалось 2 раза.
Аватара пользователя
владимир1983
phpBB 3.2.6
Сообщения: 5954
Стаж: 13 лет 11 месяцев
Откуда: Сергиев Посад
Благодарил (а): 374 раза
Поблагодарили: 727 раз
Контактная информация:

Re: Мультизагрузка вложений (Multiple File Upload)

Сообщение владимир1983 »

Shredder, по сравнению с Мультизагрузка вложений (Multiple File Upload) сильно код поменял?
За ваши деньги решу ваши проблемы. Стучи в ЛС.
Нет человека - нет проблемы. (c)
Shredder
Former team member
Сообщения: 2217
Стаж: 15 лет 3 месяца
Благодарил (а): 236 раз
Поблагодарили: 561 раз
Контактная информация:

Re: Мультизагрузка вложений (Multiple File Upload)

Сообщение Shredder »

владимир1983
Да. Собраны все исправления и добавлена поддержка max_file_uploads. Всё это ещё нужно было совместить между собой, чтобы вместе нормально работало. Выглядеть будет примерно так: если у пользователя есть возможность загрузить сразу несколько вложений, он сможет открыть точно соответствующее им число форм с учётом всех настроек админки, а также уже имеющихся вложений в сообщении и max_file_uploads. Если возможным для загрузки остался только один файл или достигнут полный лимит, т.е. 0, то будет показываться стандартная форма загрузки phpBB, словно мода и нет.

Проверка на модеров и админов также вынесена в php, как и в оригинальном phpBB. Это избавляет от необходимости городить огород в шаблонах и даёт более правильный результат.

Добавлено спустя 6 минут 18 секунд:
Shredder писал(а):Мод с включённым аддоном
Аддон находится в папке contrib.

Добавлено спустя 30 минут 6 секунд:
Shredder писал(а):max_file_uploads
Мой инсталлятор сразу устанавливает эту вещь в качестве максимального числа форм загрузки. Если она отсутствует (например, на версиях php ниже 5.2.12), то ставится 0. В дальнейшем, если из админки попытаться превысить это (ненулевое) значение, выдаётся предупреждение о невозможности данного действия.

Хотел ещё о игнорировании настроек модерами и админами в описании к опции написать, но не стал - слишком длинное тогда выйдет. Или всё же стоит?
Jons
phpBB 2.0.4
Сообщения: 418
Стаж: 15 лет 6 месяцев
Благодарил (а): 65 раз
Поблагодарили: 2 раза

Re: Мультизагрузка вложений (Multiple File Upload)

Сообщение Jons »

Я не совсем понял, ставить это, а потом это, - или достаточно только последнего?

А то написано тут
Вложение add-on_multiple_upload_forms_limit.zip больше недоступно
и тут же само сложение
add-on_multiple_upload_forms_limit.zip
Аддон отдельно
(150.87 КБ) Скачиваний: 4
одно протеворечит другому, я лично не понял
Аватара пользователя
Vlad Nesterov
phpBB 1.2.1
Сообщения: 24
Стаж: 11 лет 1 месяц
Благодарил (а): 8 раз
Поблагодарили: 1 раз

Комменарий к файлу (Обязательное для заполнения поле)

Сообщение Vlad Nesterov »

Здравствуйте уважаемые Гуру.
У меня установлен мод Мультизагрузка вложений (Multiple File Upload)
Помогите пожалуйста разобраться как мне сделать чтобы поле "Комментарий к файлу" было обязательно для заполнения в случае когда добавляется вложение в сообщение?
HTML более менее понимаю, с php плохо.
Уже три дня мучаю гугл. Всю голову уже сломал :( .
Аватара пользователя
Vlad Nesterov
phpBB 1.2.1
Сообщения: 24
Стаж: 11 лет 1 месяц
Благодарил (а): 8 раз
Поблагодарили: 1 раз

Re: Мультизагрузка вложений (Multiple File Upload)

Сообщение Vlad Nesterov »

Здравствуйте, возможно ли прикрутить к этому моду функцию которая автоматически создавало бы превьюшку загружаемого изображения перед загрузкой файлов на сервер?
Пытался разобраться вот с этим http://true-coder.ru/javascript/chitaem ... cript.html
ДЕМО
Но знаний не хватает.
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16313
Стаж: 17 лет 10 месяцев
Откуда: Красноярск
Благодарил (а): 533 раза
Поблагодарили: 2119 раз
Контактная информация:

Re: Комменарий к файлу (Обязательное для заполнения поле)

Сообщение rxu »

Vlad Nesterov
Вопрос лучше было бы задать в теме мода, там есть шанс, что автор поможет.
Изображение
Аватара пользователя
Vlad Nesterov
phpBB 1.2.1
Сообщения: 24
Стаж: 11 лет 1 месяц
Благодарил (а): 8 раз
Поблагодарили: 1 раз

Re: Комменарий к файлу (Обязательное для заполнения поле)

Сообщение Vlad Nesterov »

rxu здравствуйте.
Помогите с реализацией требуемого для не модернизированного кода phpBB.
Как сделать поле добавления комментария к файлу обязательным?
Я пробовал некоторые варианты, но у меня не получается сделать проверку выбран ли файл для загрузки или не выбран.
У меня получается что в любом случае, даже когда файл не выбран требуется заполнить поле "Комментарий к файлу", или же сообщение не отправляется.
Аватара пользователя
Vlad Nesterov
phpBB 1.2.1
Сообщения: 24
Стаж: 11 лет 1 месяц
Благодарил (а): 8 раз
Поблагодарили: 1 раз

Re: Комменарий к файлу (Обязательное для заполнения поле)

Сообщение Vlad Nesterov »

Гуру загляните пожалуйста)
Аватара пользователя
rxu
phpBB Guru
phpBB Guru
Сообщения: 16313
Стаж: 17 лет 10 месяцев
Откуда: Красноярск
Благодарил (а): 533 раза
Поблагодарили: 2119 раз
Контактная информация:

Re: Комменарий к файлу (Обязательное для заполнения поле)

Сообщение rxu »

Vlad Nesterov
Примерно так:

Код: Выделить всё

OPEN
includes/message_parser.php

FIND
// Reindex Array

BEFORE, ADD
$num_attachments--;

FIND
foreach ($error as $error_msg)

BEFORE, ADD
if ($num_attachments && !empty($actual_comment_list) && array_search('', $actual_comment_list) !== false)
{
	$error[] = $user->lang('COMMENT_FIELDS_REQUIRED');
}

OPEN
language/ru/posting.php

FIND
'CLOSE_TAGS'				=> 'Закрыть тэги',

AFTER, ADD
'COMMENT_FIELDS_REQUIRED'				=> 'Комментарии к вложениям обязательны для заполнения',
Изображение
Закрыто

Вернуться в «Анонсы и поддержка модов для phpBB 3.0.x»