3. Реализуй таки вставку картинки через пункт контекстного меню textarea. Drag&drop прошел мимо меня :)
Желательно вставлять туда, где у меня курсор был — не удобно, когда вставляет в конец, а не в нужное место.
4. При чтении кода нашел багу:
Если на странице textarea появится после DOMContentLoaded (например ajax-ом), тогда вставить туда нельзя будет.
Исправить просто — вешать listener ondrop на document или body и уже в обработчике события смотреть кто собственно поймал.
5. Было бы хорошо иметь возможность не запоминать пароль от Яндекса. Например, чтобы запоминало логин, а пароль запоминало только, если галочка поставлена. Если пароль не запомнен, тогда при первой загрузке в пределах текущей сессии спрашивать.
> насколько web интерфейс и соответственно скриптовая реализация применима для решения такого проекта
Вполне применима. В вашем случае «реализация» будет контролировать только логику приложения, а она достаточно несложная насколько я вижу.
Основные нагрузки будут:
1. файловая система и web-сервер, отдающий статику
2. база данных
3. поиск (sphinx, например)
4. фоновая конвертация видео в flv (видео конвертируется именно в flv, а не в swf) (например связка mplayer + flvtool)
Т.е. большая часть тяжелой работы делается внешними приложениями и на чем вы будете писать логику не сильно принципиально.
> какая ОС в совокупности с остальным ПО лучше подходит для решения задачи?
Обычно для решения любых задач лучше подходит та ОС, которую лучше всего знаешь. Разумеется я бы не рекомендовал использовать Windows :)
Ну вообще данный алгоритм с этой задачей прекрасно справляется. Сессия с данными авторизации текущего юзера у всех сайтов одна и та же — автоматические узнаваемая с помощью sso.com
Подумал, пока курил, и придумал более простой алгоритм чем ваш. После этого прошел по ссылке из первой строки вашего поста и увидел тоже самое :) Но чтоб буквам не пропадать таки опубликую:
Достаточно в сессии пользователя project2.com хранить id его сессии на sso.com.
Для этого достаточно при входе на project2.com:
1. проверить известен ли нам id сессии пользователя на sso.com
2. если неизвестен тогда простейшая серия автоматических редиректов
project2.com/page -> sso.com/sync -> project2.com/set_sso/ -> project2.com/page (можно так же в виде фрейма или картинки 1x1 pcs, например)
В результате project2 знает где sso.com хранит данные аутентификации текущего пользователя и постоянно берет их оттуда.
Если хочет что-то записать — пишет туда же. Об этом моментально узнают и остальные проекты.
Если пользователь войдет/выйдет/войдет под другим пользователем мы это узнаем.
Все остальные события делаем где хотим — можем авторизовываться на любом из сайтов, логаутится на любом из сайтов и тд.
Я вижу добавился абзац «не лишний Вопрос». Собственно ввиду его отсутствия я и задал свой вопрос. Хотя ваше объяснение не снимает проблему — многие сети работают через один IP для всех пользователей. Например, следуя вашему алгоритму я могу легко войти под Васей Пупкиным, сидящим со мной в одном офисе.
Так же в тексте остались неточности вроде:
— Пользователь на сайте project1.com жмет на ссылку Войти.
— идет редирект на sso.com/signin/project1/#id
А #id-то мы пока и не знаем :)
Так же непонятно как действовать на project2.com на страницах, открытых для анонимусов, но с особым поведением для авторизованных. Например, как на хабре — страницу могут видеть все, а поле для комментариев только авторизованные. Будете каждый раз пересылать пользователя на sso и обратно чтобы узнать не авторизовался ли он на project1.com?
1. Ограничение на Firefox 3.6+ чем-нить технически обосновано?
2. Настройки должны быть доступны тут тоже
clip2net.com/clip/m12120/1265812477-clip-17kb.png
3. Реализуй таки вставку картинки через пункт контекстного меню textarea. Drag&drop прошел мимо меня :)
Желательно вставлять туда, где у меня курсор был — не удобно, когда вставляет в конец, а не в нужное место.
4. При чтении кода нашел багу:
Если на странице textarea появится после DOMContentLoaded (например ajax-ом), тогда вставить туда нельзя будет.
Исправить просто — вешать listener ondrop на document или body и уже в обработчике события смотреть кто собственно поймал.
5. Было бы хорошо иметь возможность не запоминать пароль от Яндекса. Например, чтобы запоминало логин, а пароль запоминало только, если галочка поставлена. Если пароль не запомнен, тогда при первой загрузке в пределах текущей сессии спрашивать.
Вполне применима. В вашем случае «реализация» будет контролировать только логику приложения, а она достаточно несложная насколько я вижу.
Основные нагрузки будут:
1. файловая система и web-сервер, отдающий статику
2. база данных
3. поиск (sphinx, например)
4. фоновая конвертация видео в flv (видео конвертируется именно в flv, а не в swf) (например связка mplayer + flvtool)
Т.е. большая часть тяжелой работы делается внешними приложениями и на чем вы будете писать логику не сильно принципиально.
> какая ОС в совокупности с остальным ПО лучше подходит для решения задачи?
Обычно для решения любых задач лучше подходит та ОС, которую лучше всего знаешь. Разумеется я бы не рекомендовал использовать Windows :)
Заказывали матовый. А тут опять глянец вроде
Ну не это важно. Важно что озаботились и сделали все максимально быстро.
Что-то комменты зачастили улетать недописанными.
Такие редиректы:
project2.com/page -> sso.com/sync -> project2.com/set_sso?*id сессии на sso* -> project2.com/page
еще и эти комменты раз в 5 минут :(
Достаточно в сессии пользователя project2.com хранить id его сессии на sso.com.
Для этого достаточно при входе на project2.com:
1. проверить известен ли нам id сессии пользователя на sso.com
2. если неизвестен тогда простейшая серия автоматических редиректов
project2.com/page -> sso.com/sync -> project2.com/set_sso/ -> project2.com/page (можно так же в виде фрейма или картинки 1x1 pcs, например)
В результате project2 знает где sso.com хранит данные аутентификации текущего пользователя и постоянно берет их оттуда.
Если хочет что-то записать — пишет туда же. Об этом моментально узнают и остальные проекты.
Если пользователь войдет/выйдет/войдет под другим пользователем мы это узнаем.
Все остальные события делаем где хотим — можем авторизовываться на любом из сайтов, логаутится на любом из сайтов и тд.
Так же в тексте остались неточности вроде:
— Пользователь на сайте project1.com жмет на ссылку Войти.
— идет редирект на sso.com/signin/project1/#id
А #id-то мы пока и не знаем :)
Так же непонятно как действовать на project2.com на страницах, открытых для анонимусов, но с особым поведением для авторизованных. Например, как на хабре — страницу могут видеть все, а поле для комментариев только авторизованные. Будете каждый раз пересылать пользователя на sso и обратно чтобы узнать не авторизовался ли он на project1.com?