Страница 1 из 2

Расширение Потерянные вложения

Добавлено: 28 апр 2020, 00:14
igorbond
Нужно сделать так, чтобы форум выкидывал предупреждение, что вложение еще не загружено, дабы не было казусов с вложениями. Очень надо

Расширение Потерянные вложения

Добавлено: 28 апр 2020, 00:56
romaamor
igorbond, случайно не 3.3.0 ? При включении расширения красным матом ругается ?

Расширение Потерянные вложения

Добавлено: 28 апр 2020, 14:07
igorbond
ЧТо? Вы вообще читали ?

Расширение Потерянные вложения

Добавлено: 29 апр 2020, 22:26
CabinetAdmin
igorbond писал(а): что вложение еще не загружено
Правильно ли я понял - нужно чтобы вложение было обязательным и если оно не загружено выводилось какое то сообщение? Так?

зы. Не понял только на счёт казусов... :scratch:

Расширение Потерянные вложения

Добавлено: 29 апр 2020, 22:49
igorbond
Нет, нужно если человек загружает вложение, оно не загрузилось еще, не успело, но он уже отправляет сообщение и вложения теряется. Чтобы было предупреждение Вложение еще не загружено, дождитесь окончание загрузки.

Расширение Потерянные вложения

Добавлено: 29 апр 2020, 23:54
CabinetAdmin
А такое бывает? Обычно вложение загружается за пару секунд...

Могу накидать скрипт на пробу:

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

<!-- IF S_SHOW_ATTACH_BOX -->
<script>
$('#postform').submit(function(){
	var attacherror = $('input.file-inline-bbcode:not([style="display: inline-block;"])').val();
	if (attacherror)
	{
		alert('{L_ERROR}');
		return false;
	}	
});
</script>
<!-- ENDIF -->
Вместо {L_ERROR} можно добавить свою переменную, либо, если всё равно пока тестить, добавить текст напрямую.

Расширение Потерянные вложения

Добавлено: 30 апр 2020, 00:04
igorbond
Куда именно вставляется скрипт?
CabinetAdmin писал(а): А такое бывает?
Ага бывает, не у всех интернет хороший, некоторые с телефонов. Так же нельзя сделать чтобы например при нажатии назад, закрыть вкладку, если есть текст или загруженное вложение, система бы спрашивала об уверенности закрытия страницы?

Расширение Потерянные вложения

Добавлено: 30 апр 2020, 09:00
CabinetAdmin
Ну это же для теста, значит просто в футер, к остальным скриптам форума.
igorbond писал(а): чтобы например при нажатии назад
Вроде бы это в быстром ответе реализовано было, если я правильно помню. Если нет, то можно попробовать накидать скрипт, надо будет посмотреть.

Расширение Потерянные вложения

Добавлено: 30 апр 2020, 12:51
romaamor
igorbond писал(а): ЧТо? Вы вообще читали ?
Игорь. Как вопрос задали, так и ответил.

Расширение Потерянные вложения

Добавлено: 30 апр 2020, 15:16
igorbond
CabinetAdmin писал(а): Вроде бы это в быстром ответе реализовано было, если я правильно помню
Да, но только если включена отправка через Аякс

Расширение Потерянные вложения

Добавлено: 02 май 2020, 15:12
igorbond
Попробовал, если нажать отправить, выскакивает ошибка, но нажать назад и все теряется. Проверил насчет БО, там да это все реализовано и с вложениями и с настройкой нажатия назад, но как это все с БО прикрепить к стандартной отправке?

Расширение Потерянные вложения

Добавлено: 05 май 2020, 11:13
CabinetAdmin
Ну так если всё есть в быстром ответе, то зачем изобретать велосипед?

Расширение Потерянные вложения

Добавлено: 05 май 2020, 19:59
igorbond
CabinetAdmin писал(а): Ну так если всё есть в быстром ответе, то зачем изобретать велосипед?
Так оно только для быстрого ответа, для стандартного та нет, вот я о чем.

Расширение Потерянные вложения

Добавлено: 07 май 2020, 17:21
CabinetAdmin
Ну да, логично:)

Тогда на пробу:

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

<!-- IF S_IN_POSTING and S_SHOW_ATTACH_BOX -->
<script>
$('#postform').each(function() {
	var postform = $(this),
		errortext = '{L_ERROR}';

	$(window).on("beforeunload", function() {
		if ($('#message').val() || $('#file-list').children().not('#attach-row-tpl').length) {
			return errortext;
		}
	});
	
	postform.submit(function(){
		if ($('.file-progress:visible').length) {
			alert(errortext);
			return false;
		} else {
			$(window).off("beforeunload");
		}
	});
});
</script>
<!-- ENDIF -->
Опять же переменная {L_ERROR}, меняем на свою.
Плюс что ещё хотел упомянуть по поводу надписи. Вот эта вот надпись будет только если нажать на кнопку "Отправить" во время загрузки файла, если нажать обновить страницу или назад появится стандартное уведомление браузера, в более старых браузерах будет надпись из переменной.

Расширение Потерянные вложения

Добавлено: 07 май 2020, 17:51
igorbond
Работает, главное что теперь при нажатии назад не будет этого девать делать без уведомления. ПО поводу загрузки, все же можно как то сделать как в БО? Там отложенная отправка, файлы грузятся и потом отправляются, без ошибки?