These are chat archives for synrc/n2o

10th
Dec 2015
Andrii Sergiienko
@fycth
Dec 10 2015 11:35
и шаблоны можно, и одностраничные приложения можно
Ryuuji Kagami
@kagami-ryuuji
Dec 10 2015 12:07

index.erl

-module(index).
-compile(export_all).
-include_lib("nitro/include/nitro.hrl").
-include_lib("n2o/include/wf.hrl").

main() -> #dtl{file="index", app=comics}.

% clicked <a href="/comic/name/read/150">Next: #150</a>
% while we weren't in reader (e.g. came from /comic/list)
event(chapter) ->
    wf:update(view, #dtl{file="reader", app=comics}),
    event({chapter, wf:q(name), wf:q(chapter)}).

% clicked <a href="/comic/name/read/150">Next: #150</a>
% while we were in reader
event({chapter, Name, Chapter}) ->

    % SELECT "url" FROM "images" WHERE "name" = 'Name' AND "chapter" = Chapter
    ImageUrlList = [
        <<"http://placehold.it/800x600">>,
        <<"http://placehold.it/800x600">>,
        <<"http://placehold.it/800x600">>,
        <<"http://placehold.it/800x600">>
    ],
    wf:update(img_list, [image_li(Url) || Url <- ImageUrlList]).

image_li(Url) ->
    #li{body=#image{src=ImgUrl}}.

index.html

<html>
<head>
    <title>Foo: Attack of Bar</title>
</head>
<body>

    <div id="view" class="container"></div>

<stylesheets ..>
<scripts ...>
</body>
</html>

reader.html

<ul id="img_list"></ul>

<!-- надо вспомнить, как history api работает -->
<a href="/comic/name/read/148">Prev: #148</a>
<a href="/comic/name/read/150">Next: #150</a>

Не проверял, пока негде. Просто набросал за обедом. Как-то так?

Andy
@m-2k
Dec 10 2015 12:14
весьма
только не понял как ты связал нажатие кнопок с event'ами
event(chapter) и event({chapter, Name, Chapter}) выполнятся одновременно
Andy
@m-2k
Dec 10 2015 12:20
если ты хочешь выводить плейсхолдеры после смены контейнера то надо как-то так: self() ! {server,{chapter, N, C}} и event({server,{chapter, N, C}) -> ...
чтобы переходить по комиксам как СПА тебе надо вешать ивенты непосредственно на кнопки: button{postback={view,Chapter}} и ловить в event({view,C})
Andy
@m-2k
Dec 10 2015 12:25
так же wf:q вынимает значения из DOM элементов по их id
сделать СПА не получиться навешивая href'ы так как они будут генерировать get запросы на сервер
Andy
@m-2k
Dec 10 2015 12:30
ты должен отправлять запрос через ws в виде ивента и после обновления dom вставлять history item
в котором будет url и state (можешь сюда просто распарсенный url пихать)
при переходе по хистори ты будешь отправлять state на сервер и знать какую страницу надо отобразить
Ryuuji Kagami
@kagami-ryuuji
Dec 10 2015 12:35
Это я и имел в виду. Перехватывать клик на ссылку и отправлять запрос серверу
Andy
@m-2k
Dec 10 2015 12:41
перехватить получится только если будет preventDefault в addEventListener для ссылки (href имеет больший приоритет для <a> чем ивенты так как это действие по умолчанию). то есть сначала у тебя сделается запрос на сервер через get а потом выполнится js код в навешенном на элемент ивенте. или скорее наоборот, но страница все равно перезагрузится
если конечно ты хочешь дуплексную тему чтобы можно было ссылки открывать в новых окнах
либо просто через button навернуть что будет проще для начала
Andy
@m-2k
Dec 10 2015 12:49
ничо так
юзабельно
/comic/name/review overview
/comic/name read
Ryuuji Kagami
@kagami-ryuuji
Dec 10 2015 12:52
Думаешь?
Andy
@m-2k
Dec 10 2015 12:52
хз, я б еще comic убрал
у меня так: erlach.erlang.one/tr/i :smile:
Ryuuji Kagami
@kagami-ryuuji
Dec 10 2015 12:54
Еше хочу блог автора создать. Вот только думаю: author.mysite.com/blog или mysite.com/blog/author
Andy
@m-2k
Dec 10 2015 12:54
если будешь накручивать ssl то для первого варианта придется разориться
Ryuuji Kagami
@kagami-ryuuji
Dec 10 2015 12:56
Сертификат на поддомены отдельно?
Andy
@m-2k
Dec 10 2015 12:56
он кажется EV называется чтобы можно было *.domain.com делать
но стоит много
я бы вообще lets encript посоветовал
и без субдоменов
для бложиков есть medium и прочее
захер блог в комиксах
вот в тумблре тоже IM сообщения прикрутили лол
Ryuuji Kagami
@kagami-ryuuji
Dec 10 2015 12:58
Ну, типа, рассказать, как ты главу делал
Andy
@m-2k
Dec 10 2015 12:58
ну а нах для этого в блог лезть?
сделай подписку и бложик свяжи с комиксами
как review у тебя
и коменты
кому нужны новости из подписки будут узнавать
а там хз, но как мне кажется делать из каждого сайта соцсеть - хуевая идея
Ryuuji Kagami
@kagami-ryuuji
Dec 10 2015 13:00
В принципе, да. Блогохостингов и так много. МОжно выбрать любой
Andy
@m-2k
Dec 10 2015 13:00
это сразу тысячи часов проебаного времени для сомнительных фич
я erlach также начинал
как универсальную прощадку
потом пришлось почти все выкинуть нахуй и переписать вообще заново на новом движке
там еще тележка работы но времени нет пока
Ryuuji Kagami
@kagami-ryuuji
Dec 10 2015 13:02
Это имиджборда?
Andy
@m-2k
Dec 10 2015 13:02
судя по всему да
я кстати тоже полгода назад хотел сделать сайт с комиксами когда по hack/slash упарывался
потом тупо забыл про это ааххах
Ryuuji Kagami
@kagami-ryuuji
Dec 10 2015 13:04
Недурно обложка выглядит. Девушка с битой
Andy
@m-2k
Dec 10 2015 13:05
там милота :3
Ryuuji Kagami
@kagami-ryuuji
Dec 10 2015 13:09
А у меня пока планшет простаивает. Если я его как мышь не использую
Andy
@m-2k
Dec 10 2015 13:09
рисуешь?
Ryuuji Kagami
@kagami-ryuuji
Dec 10 2015 13:10
Ага. Хочу свои комиксы публиковать. Но площадка той же ридманги (селфманга) мне не нравится. Да и опыта хочется нормального, а не PHP
Andy
@m-2k
Dec 10 2015 13:10
не помню как но на hack/slash я вышел через lithium picknic http://lithiumpicnic.deviantart.com/art/motion-study-2-40725567
Ryuuji Kagami
@kagami-ryuuji
Dec 10 2015 13:14
В комментах, наверное, писали. Там только фотки
Andy
@m-2k
Dec 10 2015 13:14
где
Ryuuji Kagami
@kagami-ryuuji
Dec 10 2015 13:14
ПО ссылке на девиант
Andy
@m-2k
Dec 10 2015 13:15
ну да, я по фото упарываюсь же
есть твои работы?
комиксов
Макс тоже рисует :smile:
Ryuuji Kagami
@kagami-ryuuji
Dec 10 2015 13:16
Работ готовых нет, эксперименты только. Рисую не очень хорошо, поэтому модели в блендере делаю:
https://pp.vk.me/c629300/v629300076/b923/a9pI-SwV7Hs.jpg
https://pp.vk.me/c625723/v625723076/41b5b/pBtxpKpsYLA.jpg
https://pp.vk.me/c622928/v622928076/4c9cc/7PrShD6obkU.jpg
https://pp.vk.me/c622523/v622523076/507b6/UDFnAxYGFcs.jpg
Andy
@m-2k
Dec 10 2015 13:16
вот аву какую себе графоманскую влепил
Ryuuji Kagami
@kagami-ryuuji
Dec 10 2015 13:16
Я думал, ссылками придут. А картинки развернуллись
Andy
@m-2k
Dec 10 2015 13:17
вращение корабля? это из insterstellar? )
нарисуй мне маскота
Ryuuji Kagami
@kagami-ryuuji
Dec 10 2015 13:18
Не смотрел. Это собственный персонаж. А про корабль так просто, сцена в голову пришла
Какого?
Andy
@m-2k
Dec 10 2015 13:52
для имиджборды
Ryuuji Kagami
@kagami-ryuuji
Dec 10 2015 13:55
Это я понял. А что именно? Девушка, кошка, бутерброд с глазами и лапками
Andy
@m-2k
Dec 10 2015 13:55
ЛОЛ
БУТЕРБРОД
lpkQI0MhAu0.jpg
блядь, кровь аж из носа пошла
Ryuuji Kagami
@kagami-ryuuji
Dec 10 2015 13:59
:)
Roman
@AstRonin
Dec 10 2015 14:36
кто видел @5HT ? :)
Andy
@m-2k
Dec 10 2015 14:37
вживую?
Roman
@AstRonin
Dec 10 2015 14:38
не, в чате, спросить хочу...
Andy
@m-2k
Dec 10 2015 14:38
ну спроси чо
Roman
@AstRonin
Dec 10 2015 14:38
спросил, пока жду
Andy
@m-2k
Dec 10 2015 14:42
чот не понял твоего вопроса про мад
Roman
@AstRonin
Dec 10 2015 14:44
подхватит ли mad настройки из sys.config если там указать путь к файлу среди прочих настроек
Roman
@AstRonin
Dec 10 2015 14:48
вот я тоже так думаю, было бы не плохо, чтоб подхватывал
Andy
@m-2k
Dec 10 2015 14:49
это есть в rebar?
Roman
@AstRonin
Dec 10 2015 14:52
без понятия
ну это не совсем то
Andy
@m-2k
Dec 10 2015 14:52
лол.
Roman
@AstRonin
Dec 10 2015 14:54
этого не хватает когда используются разные среды
Andy
@m-2k
Dec 10 2015 14:54
если ты делаешь бандл и заливаешь на сервак, то чтобы перезаписать в образе любой файл - воссоздай рядом с бандлом необходимую структуру и всё
нативная ФС имеет больший приоритет чем ФС внутри бандла
Roman
@AstRonin
Dec 10 2015 14:56
ясно
а если не бандл?
Andy
@m-2k
Dec 10 2015 14:58
ты сформулируй что ты хочешь сделать
все остальные вопросы "было бы неплохо" принимаются в виде пул-реквестов на гитхабе
:smile:
Roman
@AstRonin
Dec 10 2015 15:01
к примеру mad start
подумаем :)
Andy
@m-2k
Dec 10 2015 15:01
что mad start
о каких средах речь. что ты там делаешь с ними вообще
сегодня четверг вообще
Roman
@AstRonin
Dec 10 2015 15:03
с кем?
не, не этих средах :)
dev, test, prod
Andy
@m-2k
Dec 10 2015 15:03
на эту тему как я помню вопрос отрыт
Roman
@AstRonin
Dec 10 2015 15:06
геде?
Andy
@m-2k
Dec 10 2015 15:06
вообще, в верхних слоях атмосферы
можешь написать своё видение этого процесса
Roman
@AstRonin
Dec 10 2015 15:12
вот как раз подгрузка файла должна помочь этому процессу
указываем в подключаемом файле (sys.config.dev) настройки относительно env которые перезапишут дефолтные
Andy
@m-2k
Dec 10 2015 15:13
ты хочешь mad start ENV и 3 sys.config?
Roman
@AstRonin
Dec 10 2015 15:17
указывать env нет необходимости, достаточно просто подхватывать файл, указыванный в sys.conf
rilian
@rilian
Dec 10 2015 19:18
n2o is dead. vive le H2O :)
Andy
@m-2k
Dec 10 2015 19:19
ко-ко-ко
h2o не особо быстрее nginx
Andy
@m-2k
Dec 10 2015 19:25
попахивает продуктом на спидах. уж как только не пытаются руби запихнуть куда только можно. будет смешно если опять обосрутся :smile:
это же язык для киборгов
тест основанный на выдаче тапла json. неплохая попытка :smile:
но это возможно поудобнее будет чем openresty (nginx + lua + bugfixes)
для хипстеров всамый раз
Andy
@m-2k
Dec 10 2015 19:30
посмотреть бы еще загрузку по ядрам процессора для этого теста
@rilian и ты ваще жирный тролль, поставил на одной линии веб-сервер и веб-фреймворк
прям как ализар лозунги генеришь
вот nginx прикрутит вместо lua к себе js-тачку под коробку и посмотрим кто соснёт в хипстаёбстве :smile:
rilian
@rilian
Dec 10 2015 19:43
ти так говоришь как будто я єтот сервис написал
Andy
@m-2k
Dec 10 2015 19:44
у меня прост настроение хорошее
Ryuuji Kagami
@kagami-ryuuji
Dec 10 2015 21:23
Мне, конечно, нравится Япония, но Руби мне никогда не нравился
Andy
@m-2k
Dec 10 2015 21:28
мне до сих пор нравится. но желания писать на нем уже не возникает
Ryuuji Kagami
@kagami-ryuuji
Dec 10 2015 22:12
wf:update меняет outerHTMl. А innerHTML можно как-то менять?
Ryuuji Kagami
@kagami-ryuuji
Dec 10 2015 22:18
Наконец-то, хоть что-то получилось
Andy
@m-2k
Dec 10 2015 22:18
Низя
Обновляй с контейнером тоже
Ryuuji Kagami
@kagami-ryuuji
Dec 10 2015 22:19
Да, так и сделал
make_view(View) ->
  #panel { id=view, body = View }.
Только я что-то напутал с history api
Andy
@m-2k
Dec 10 2015 22:20
Тебе она пока не нужна
Да и dtl тоже
Ryuuji Kagami
@kagami-ryuuji
Dec 10 2015 22:21
Ну ,я уже сделал. И просто забыл pushState
Andy
@m-2k
Dec 10 2015 22:21
Make view на render(view=Panel) замени
Ryuuji Kagami
@kagami-ryuuji
Dec 10 2015 22:22
То есть?
Andy
@m-2k
Dec 10 2015 22:24
render(view=Panel) ->
#panel { id=Panel, body = [] }.
Ryuuji Kagami
@kagami-ryuuji
Dec 10 2015 22:25
render(view=Panel) ->
  #panel { id=Panel, body = [] }.
?
Andy
@m-2k
Dec 10 2015 22:29
Тип того
Я могу написать статью как я делаю СПА приложения
На медиум или на хабр
Там довольно много нюансов
Я постоянно что то переделывал
Ryuuji Kagami
@kagami-ryuuji
Dec 10 2015 22:30
Сейчас я репу сделаю, покажу
Какую лицензию поставить, без разницы?
Andy
@m-2k
Dec 10 2015 22:32
лицензию на 20 строчек кода?
сам не разберешься? )
Ryuuji Kagami
@kagami-ryuuji
Dec 10 2015 22:34
))
Andy
@m-2k
Dec 10 2015 22:42
Ебать
Ryuuji Kagami
@kagami-ryuuji
Dec 10 2015 22:43
Хуйня получилась?
Andy
@m-2k
Dec 10 2015 22:43
Ещё бы
Wf:render не нужен
Ивенты на кнопки навешивай из эрланга
Ryuuji Kagami
@kagami-ryuuji
Dec 10 2015 22:44
У меня не кнопки, а ссылки
Andy
@m-2k
Dec 10 2015 22:44
Нахуй весь этот js код
Наркоман штоле :smile:
Сделай кнопки
Ссылки у него
Ryuuji Kagami
@kagami-ryuuji
Dec 10 2015 22:45
То есть, допустим, ссылки на юзеров в комментах тоже кнопками делать?
Andy
@m-2k
Dec 10 2015 22:46
Потом расскажу как из них ссылки
Сделать
Все, саппорт кончился, я спать
Ryuuji Kagami
@kagami-ryuuji
Dec 10 2015 22:46
Мне бы еще тогда на div'ы postback ставить
Мне уже 4 часа как спать положено
Время 4 утра. Ладно, спокойной ночи
Andy
@m-2k
Dec 10 2015 22:47
Cms, games, n2o_sample... Нет надо было по-своему заколхозить
Ryuuji Kagami
@kagami-ryuuji
Dec 10 2015 22:48
:D
Я только n2o book.pdf прочитал
А games слишком большой для начинающего