Comments 10
Просите за боян, но как вариант, как вконтакте, ты в текстэрия ссылку на картинку, а она прикрепляется и можно сразу увидеть что ты залил… Имхо, довольно удобный способ. Это экономит кучу времени и избавляет от кучи лишних действий.
По своему опыту могу сказать, что при написании статьи некоторые картинки вставляются, но потом меняются на другие.
Поэтому предлагаю картинки не заливать сразу, а хранить локально информацию о них. При редактировании вставлять в текст метки, которые в препросмотре расширением заменяются на картинки. Также есть кнопка «готово к публикации» (например) по нажатию которой изображения, участвующие в статье, заливаются уже на сторадж, и метки заменяются нормальными тегами.
Плюс в том, что на сервер не заливаются «мертвые» изображения, которые нигде потом не участвуют. Минус, очевидно, в переносимости черновика между компьютерами.
Поэтому предлагаю картинки не заливать сразу, а хранить локально информацию о них. При редактировании вставлять в текст метки, которые в препросмотре расширением заменяются на картинки. Также есть кнопка «готово к публикации» (например) по нажатию которой изображения, участвующие в статье, заливаются уже на сторадж, и метки заменяются нормальными тегами.
Плюс в том, что на сервер не заливаются «мертвые» изображения, которые нигде потом не участвуют. Минус, очевидно, в переносимости черновика между компьютерами.
Информация о путях после затаскивания файла в скрипте недоступна, в расширениях и аддонах — доступна (но это усложняет технику работы). В Фаербаге видим свойство mozFullPath, но в скрипте по нему — пустая строка. Поэтому надо или хранить файлы в base64 (а стандартного места — всего 5 МБ), или излишне озабочиваться вводом путей файлов. А дальше — да, мысль Ваша интересная. Вводим, например, вместо картинок (путь)/dummy.png#NNN (NNN — число), и подменяем на закинутые base64-файлы. И работаем с картинками, ничего не заливая на сервер. Для переноса черновика публикации нужно экспортировать все base64 массивом, в этом ничего сложного нет, и их же потом публиковать или конвертировать для правок в графических редакторах.
Но я бы не стал усложняться по такой причине: Тратой лишних десятков мегабайт никто не обеспокоен — на странице нет сохранения ссылок последних закачанных файлов. Значит, с лишними файлами легко справляются средствами сервера. Отличить неиспользуемый файл от используемого очень просто по траффику и по наличию ссылок на него в БД. Поэтому, думаю, что файлы без ссылок там через месяц сами удаляются, а то и через неделю. Но если есть свободное пространство, а оно всегда есть, то могут и год лежать, пока место не понадобится. Тогда запускают сборщик мусора и удаляют с приоритетом по давности.
Сохранение ссылок, которое я предлагаю вврести, нужно по другой причине — для того, чтобы не быть привязанным к своим локальным файлам излишне сильно. Файлы для возможной публикации мы можем держать в списке и не помнить без необходимости, в каких местах диска они разложены. Они же будут видны отовсюду из сети, как и черновик.
Но я бы не стал усложняться по такой причине: Тратой лишних десятков мегабайт никто не обеспокоен — на странице нет сохранения ссылок последних закачанных файлов. Значит, с лишними файлами легко справляются средствами сервера. Отличить неиспользуемый файл от используемого очень просто по траффику и по наличию ссылок на него в БД. Поэтому, думаю, что файлы без ссылок там через месяц сами удаляются, а то и через неделю. Но если есть свободное пространство, а оно всегда есть, то могут и год лежать, пока место не понадобится. Тогда запускают сборщик мусора и удаляют с приоритетом по давности.
Сохранение ссылок, которое я предлагаю вврести, нужно по другой причине — для того, чтобы не быть привязанным к своим локальным файлам излишне сильно. Файлы для возможной публикации мы можем держать в списке и не помнить без необходимости, в каких местах диска они разложены. Они же будут видны отовсюду из сети, как и черновик.
Кстати, было бы неплохо разрешить использовать картинки со сторонних хостов. Не часто, в исключительных случаях.
Бывают картинки, которые автоматически изменяются. И их хотелось бы оставлять в том виде, в каком представлены сторонним хостингом. Например, в этом посте мы следили за тем, как собираются деньги на кикстартере на игру Армикрог. Там ситуация менялась каждые несколько часов и пользователи следили. И вдруг смотрим − за последние 12 часов никаких изменений! Оказывается картинка была скопирована и залита на habrastorage.org.
Либо, если уж требуется обязательно загружать на habrastorage.org, можно поставить какую-то галочку, чтобы картинку автоматически перезагружали через какой-то период времени. Через час, или через сутки.
Бывают картинки, которые автоматически изменяются. И их хотелось бы оставлять в том виде, в каком представлены сторонним хостингом. Например, в этом посте мы следили за тем, как собираются деньги на кикстартере на игру Армикрог. Там ситуация менялась каждые несколько часов и пользователи следили. И вдруг смотрим − за последние 12 часов никаких изменений! Оказывается картинка была скопирована и залита на habrastorage.org.
Либо, если уж требуется обязательно загружать на habrastorage.org, можно поставить какую-то галочку, чтобы картинку автоматически перезагружали через какой-то период времени. Через час, или через сутки.
Задача для одного человека макс. на неделю.
а зачем? все равно же кэшироваться будет
Чтобы опубликовать. Исходим из того, что у вас нет ссылки на желаемую картинку, но есть файл. (Для ссылки в интерфейсе я даже не нашёл места — вставка их уже работает: щелчок по habrahabr.ru/images/panel/image.gif + вставить ссылку.)
Как такой интерфейс после закидывания, перед публикацией?
Sign up to leave a comment.
Краудсорсинг-дизайн: делаем расширение браузера для быстрой публикации картинок на Хабре