├── .gitignore ├── .iex.exs ├── README.md ├── client ├── css │ ├── bootstrap-modules.scss │ ├── components │ │ ├── message-input.scss │ │ ├── message-item.scss │ │ ├── message-list.scss │ │ ├── navigate-sidebar.scss │ │ ├── sidebar-setting.scss │ │ └── suggestion-panel.scss │ ├── flexbox-mixin.scss │ └── main.scss ├── js │ ├── actions │ │ ├── auth.js │ │ ├── channels.js │ │ ├── directChannels.js │ │ ├── local.js │ │ ├── messages.js │ │ └── users.js │ ├── app.js │ ├── auth.js │ ├── components │ │ ├── channel │ │ │ ├── Channel.jsx │ │ │ ├── PostMessage.jsx │ │ │ └── UnreadDivider.jsx │ │ ├── message │ │ │ └── Message.jsx │ │ ├── overlay │ │ │ ├── Index.jsx │ │ │ ├── JoinChannel.jsx │ │ │ ├── JoinDirectChannel.jsx │ │ │ └── NewChannel.jsx │ │ ├── session │ │ │ └── SignIn.jsx │ │ ├── shared │ │ │ ├── Avatar.jsx │ │ │ ├── ChannelNameBar.jsx │ │ │ ├── ErrorMessage.jsx │ │ │ └── List.jsx │ │ └── sidebar │ │ │ ├── Sidebar.jsx │ │ │ ├── _Channels.jsx │ │ │ ├── _DirectChannels.jsx │ │ │ └── _Settings.jsx │ ├── constants │ │ ├── ActionTypes.js │ │ ├── ApiTypes.js │ │ └── Keycode.js │ ├── containers │ │ └── App.jsx │ ├── middleware │ │ ├── api.js │ │ ├── auth.js │ │ ├── permission.js │ │ └── realtime.js │ ├── reducers │ │ ├── channels.js │ │ ├── directChannels.js │ │ ├── errors.js │ │ ├── index.js │ │ ├── local.js │ │ ├── messages.js │ │ ├── session.js │ │ └── users.js │ ├── routes.js │ ├── socket │ │ ├── event_socket.js │ │ └── ex_socket.js │ └── store │ │ ├── configureStore.js │ │ └── schema.js └── vendor │ └── fontello │ ├── font │ ├── fontello.eot │ ├── fontello.svg │ ├── fontello.ttf │ ├── fontello.woff │ └── fontello.woff2 │ └── fontello.css ├── compile ├── config ├── config.exs ├── dev.exs ├── example.exs ├── prod.exs └── test.exs ├── elixir_buildpack.config ├── lib ├── exchat.ex └── exchat │ ├── endpoint.ex │ ├── repo.ex │ └── time.ex ├── mix.exs ├── mix.lock ├── package.json ├── phoenix_static_buildpack.config ├── priv └── repo │ ├── fill_channels_users.exs │ ├── migrations │ ├── 20150905075735_create_channel.exs │ ├── 20151004163510_create_message.exs │ ├── 20160119151556_create_user.exs │ ├── 20160201141207_add_user_id_to_messages.exs │ ├── 20160316165239_create_user_read_message.exs │ ├── 20160409085129_create_channel_user.exs │ ├── 20160417064843_add_name_unique_to_channels.exs │ └── 20160419150236_add_type_to_channels.exs │ └── seeds.exs ├── sys.config ├── test ├── channels │ └── event_channel_test.exs ├── controllers │ ├── api_auth_test.exs │ ├── channel_controller_test.exs │ ├── direct_channel_controller_test.exs │ └── user_controller_test.exs ├── lib │ └── time_test.exs ├── models │ ├── channel_repo_test.exs │ ├── channel_test.exs │ ├── channel_user_test.exs │ ├── message_test.exs │ ├── user_read_message_repo_test.exs │ ├── user_read_message_test.exs │ └── user_test.exs ├── services │ ├── channel_user_service_test.exs │ └── unread_service_test.exs ├── support │ ├── channel_case.ex │ ├── conn_case.ex │ ├── model_case.ex │ └── test_helpers.ex ├── test_helper.exs └── views │ ├── error_view_test.exs │ ├── layout_view_test.exs │ └── page_view_test.exs ├── web ├── channels │ ├── event_channel.ex │ ├── message_channel.ex │ ├── user_presence.ex │ └── user_socket.ex ├── controllers │ ├── api_auth.ex │ ├── channel_controller.ex │ ├── channel_user_controller.ex │ ├── direct_channel_controller.ex │ ├── message_controller.ex │ ├── page_controller.ex │ ├── session_controller.ex │ └── user_controller.ex ├── gettext.ex ├── models │ ├── channel.ex │ ├── channel_user.ex │ ├── message.ex │ ├── user.ex │ └── user_read_message.ex ├── router.ex ├── services │ ├── channel_user_service.ex │ ├── message_service.ex │ └── unread_service.ex ├── templates │ ├── layout │ │ └── app.html.eex │ └── page │ │ └── index.html.eex ├── views │ ├── changeset_view.ex │ ├── channel_view.ex │ ├── direct_channel_view.ex │ ├── error_helpers.ex │ ├── error_view.ex │ ├── layout_view.ex │ ├── message_view.ex │ ├── page_view.ex │ ├── session_view.ex │ └── user_view.ex └── web.ex └── webpack.config.js /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/.gitignore -------------------------------------------------------------------------------- /.iex.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/.iex.exs -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/README.md -------------------------------------------------------------------------------- /client/css/bootstrap-modules.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/css/bootstrap-modules.scss -------------------------------------------------------------------------------- /client/css/components/message-input.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/css/components/message-input.scss -------------------------------------------------------------------------------- /client/css/components/message-item.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/css/components/message-item.scss -------------------------------------------------------------------------------- /client/css/components/message-list.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/css/components/message-list.scss -------------------------------------------------------------------------------- /client/css/components/navigate-sidebar.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/css/components/navigate-sidebar.scss -------------------------------------------------------------------------------- /client/css/components/sidebar-setting.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/css/components/sidebar-setting.scss -------------------------------------------------------------------------------- /client/css/components/suggestion-panel.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/css/components/suggestion-panel.scss -------------------------------------------------------------------------------- /client/css/flexbox-mixin.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/css/flexbox-mixin.scss -------------------------------------------------------------------------------- /client/css/main.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/css/main.scss -------------------------------------------------------------------------------- /client/js/actions/auth.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/actions/auth.js -------------------------------------------------------------------------------- /client/js/actions/channels.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/actions/channels.js -------------------------------------------------------------------------------- /client/js/actions/directChannels.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/actions/directChannels.js -------------------------------------------------------------------------------- /client/js/actions/local.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/actions/local.js -------------------------------------------------------------------------------- /client/js/actions/messages.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/actions/messages.js -------------------------------------------------------------------------------- /client/js/actions/users.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/actions/users.js -------------------------------------------------------------------------------- /client/js/app.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/app.js -------------------------------------------------------------------------------- /client/js/auth.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/auth.js -------------------------------------------------------------------------------- /client/js/components/channel/Channel.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/components/channel/Channel.jsx -------------------------------------------------------------------------------- /client/js/components/channel/PostMessage.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/components/channel/PostMessage.jsx -------------------------------------------------------------------------------- /client/js/components/channel/UnreadDivider.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/components/channel/UnreadDivider.jsx -------------------------------------------------------------------------------- /client/js/components/message/Message.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/components/message/Message.jsx -------------------------------------------------------------------------------- /client/js/components/overlay/Index.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/components/overlay/Index.jsx -------------------------------------------------------------------------------- /client/js/components/overlay/JoinChannel.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/components/overlay/JoinChannel.jsx -------------------------------------------------------------------------------- /client/js/components/overlay/JoinDirectChannel.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/components/overlay/JoinDirectChannel.jsx -------------------------------------------------------------------------------- /client/js/components/overlay/NewChannel.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/components/overlay/NewChannel.jsx -------------------------------------------------------------------------------- /client/js/components/session/SignIn.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/components/session/SignIn.jsx -------------------------------------------------------------------------------- /client/js/components/shared/Avatar.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/components/shared/Avatar.jsx -------------------------------------------------------------------------------- /client/js/components/shared/ChannelNameBar.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/components/shared/ChannelNameBar.jsx -------------------------------------------------------------------------------- /client/js/components/shared/ErrorMessage.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/components/shared/ErrorMessage.jsx -------------------------------------------------------------------------------- /client/js/components/shared/List.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/components/shared/List.jsx -------------------------------------------------------------------------------- /client/js/components/sidebar/Sidebar.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/components/sidebar/Sidebar.jsx -------------------------------------------------------------------------------- /client/js/components/sidebar/_Channels.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/components/sidebar/_Channels.jsx -------------------------------------------------------------------------------- /client/js/components/sidebar/_DirectChannels.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/components/sidebar/_DirectChannels.jsx -------------------------------------------------------------------------------- /client/js/components/sidebar/_Settings.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/components/sidebar/_Settings.jsx -------------------------------------------------------------------------------- /client/js/constants/ActionTypes.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/constants/ActionTypes.js -------------------------------------------------------------------------------- /client/js/constants/ApiTypes.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/constants/ApiTypes.js -------------------------------------------------------------------------------- /client/js/constants/Keycode.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/constants/Keycode.js -------------------------------------------------------------------------------- /client/js/containers/App.jsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/containers/App.jsx -------------------------------------------------------------------------------- /client/js/middleware/api.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/middleware/api.js -------------------------------------------------------------------------------- /client/js/middleware/auth.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/middleware/auth.js -------------------------------------------------------------------------------- /client/js/middleware/permission.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/middleware/permission.js -------------------------------------------------------------------------------- /client/js/middleware/realtime.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/middleware/realtime.js -------------------------------------------------------------------------------- /client/js/reducers/channels.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/reducers/channels.js -------------------------------------------------------------------------------- /client/js/reducers/directChannels.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/reducers/directChannels.js -------------------------------------------------------------------------------- /client/js/reducers/errors.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/reducers/errors.js -------------------------------------------------------------------------------- /client/js/reducers/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/reducers/index.js -------------------------------------------------------------------------------- /client/js/reducers/local.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/reducers/local.js -------------------------------------------------------------------------------- /client/js/reducers/messages.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/reducers/messages.js -------------------------------------------------------------------------------- /client/js/reducers/session.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/reducers/session.js -------------------------------------------------------------------------------- /client/js/reducers/users.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/reducers/users.js -------------------------------------------------------------------------------- /client/js/routes.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/routes.js -------------------------------------------------------------------------------- /client/js/socket/event_socket.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/socket/event_socket.js -------------------------------------------------------------------------------- /client/js/socket/ex_socket.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/socket/ex_socket.js -------------------------------------------------------------------------------- /client/js/store/configureStore.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/store/configureStore.js -------------------------------------------------------------------------------- /client/js/store/schema.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/js/store/schema.js -------------------------------------------------------------------------------- /client/vendor/fontello/font/fontello.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/vendor/fontello/font/fontello.eot -------------------------------------------------------------------------------- /client/vendor/fontello/font/fontello.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/vendor/fontello/font/fontello.svg -------------------------------------------------------------------------------- /client/vendor/fontello/font/fontello.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/vendor/fontello/font/fontello.ttf -------------------------------------------------------------------------------- /client/vendor/fontello/font/fontello.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/vendor/fontello/font/fontello.woff -------------------------------------------------------------------------------- /client/vendor/fontello/font/fontello.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/vendor/fontello/font/fontello.woff2 -------------------------------------------------------------------------------- /client/vendor/fontello/fontello.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/client/vendor/fontello/fontello.css -------------------------------------------------------------------------------- /compile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/compile -------------------------------------------------------------------------------- /config/config.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/config/config.exs -------------------------------------------------------------------------------- /config/dev.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/config/dev.exs -------------------------------------------------------------------------------- /config/example.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/config/example.exs -------------------------------------------------------------------------------- /config/prod.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/config/prod.exs -------------------------------------------------------------------------------- /config/test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/config/test.exs -------------------------------------------------------------------------------- /elixir_buildpack.config: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/elixir_buildpack.config -------------------------------------------------------------------------------- /lib/exchat.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/lib/exchat.ex -------------------------------------------------------------------------------- /lib/exchat/endpoint.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/lib/exchat/endpoint.ex -------------------------------------------------------------------------------- /lib/exchat/repo.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/lib/exchat/repo.ex -------------------------------------------------------------------------------- /lib/exchat/time.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/lib/exchat/time.ex -------------------------------------------------------------------------------- /mix.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/mix.exs -------------------------------------------------------------------------------- /mix.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/mix.lock -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/package.json -------------------------------------------------------------------------------- /phoenix_static_buildpack.config: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/phoenix_static_buildpack.config -------------------------------------------------------------------------------- /priv/repo/fill_channels_users.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/priv/repo/fill_channels_users.exs -------------------------------------------------------------------------------- /priv/repo/migrations/20150905075735_create_channel.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/priv/repo/migrations/20150905075735_create_channel.exs -------------------------------------------------------------------------------- /priv/repo/migrations/20151004163510_create_message.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/priv/repo/migrations/20151004163510_create_message.exs -------------------------------------------------------------------------------- /priv/repo/migrations/20160119151556_create_user.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/priv/repo/migrations/20160119151556_create_user.exs -------------------------------------------------------------------------------- /priv/repo/migrations/20160201141207_add_user_id_to_messages.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/priv/repo/migrations/20160201141207_add_user_id_to_messages.exs -------------------------------------------------------------------------------- /priv/repo/migrations/20160316165239_create_user_read_message.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/priv/repo/migrations/20160316165239_create_user_read_message.exs -------------------------------------------------------------------------------- /priv/repo/migrations/20160409085129_create_channel_user.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/priv/repo/migrations/20160409085129_create_channel_user.exs -------------------------------------------------------------------------------- /priv/repo/migrations/20160417064843_add_name_unique_to_channels.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/priv/repo/migrations/20160417064843_add_name_unique_to_channels.exs -------------------------------------------------------------------------------- /priv/repo/migrations/20160419150236_add_type_to_channels.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/priv/repo/migrations/20160419150236_add_type_to_channels.exs -------------------------------------------------------------------------------- /priv/repo/seeds.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/priv/repo/seeds.exs -------------------------------------------------------------------------------- /sys.config: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/sys.config -------------------------------------------------------------------------------- /test/channels/event_channel_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/test/channels/event_channel_test.exs -------------------------------------------------------------------------------- /test/controllers/api_auth_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/test/controllers/api_auth_test.exs -------------------------------------------------------------------------------- /test/controllers/channel_controller_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/test/controllers/channel_controller_test.exs -------------------------------------------------------------------------------- /test/controllers/direct_channel_controller_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/test/controllers/direct_channel_controller_test.exs -------------------------------------------------------------------------------- /test/controllers/user_controller_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/test/controllers/user_controller_test.exs -------------------------------------------------------------------------------- /test/lib/time_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/test/lib/time_test.exs -------------------------------------------------------------------------------- /test/models/channel_repo_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/test/models/channel_repo_test.exs -------------------------------------------------------------------------------- /test/models/channel_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/test/models/channel_test.exs -------------------------------------------------------------------------------- /test/models/channel_user_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/test/models/channel_user_test.exs -------------------------------------------------------------------------------- /test/models/message_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/test/models/message_test.exs -------------------------------------------------------------------------------- /test/models/user_read_message_repo_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/test/models/user_read_message_repo_test.exs -------------------------------------------------------------------------------- /test/models/user_read_message_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/test/models/user_read_message_test.exs -------------------------------------------------------------------------------- /test/models/user_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/test/models/user_test.exs -------------------------------------------------------------------------------- /test/services/channel_user_service_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/test/services/channel_user_service_test.exs -------------------------------------------------------------------------------- /test/services/unread_service_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/test/services/unread_service_test.exs -------------------------------------------------------------------------------- /test/support/channel_case.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/test/support/channel_case.ex -------------------------------------------------------------------------------- /test/support/conn_case.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/test/support/conn_case.ex -------------------------------------------------------------------------------- /test/support/model_case.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/test/support/model_case.ex -------------------------------------------------------------------------------- /test/support/test_helpers.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/test/support/test_helpers.ex -------------------------------------------------------------------------------- /test/test_helper.exs: -------------------------------------------------------------------------------- 1 | ExUnit.start 2 | 3 | Ecto.Adapters.SQL.Sandbox.mode(Exchat.Repo, :manual) 4 | -------------------------------------------------------------------------------- /test/views/error_view_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/test/views/error_view_test.exs -------------------------------------------------------------------------------- /test/views/layout_view_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/test/views/layout_view_test.exs -------------------------------------------------------------------------------- /test/views/page_view_test.exs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/test/views/page_view_test.exs -------------------------------------------------------------------------------- /web/channels/event_channel.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/web/channels/event_channel.ex -------------------------------------------------------------------------------- /web/channels/message_channel.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/web/channels/message_channel.ex -------------------------------------------------------------------------------- /web/channels/user_presence.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/web/channels/user_presence.ex -------------------------------------------------------------------------------- /web/channels/user_socket.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/web/channels/user_socket.ex -------------------------------------------------------------------------------- /web/controllers/api_auth.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/web/controllers/api_auth.ex -------------------------------------------------------------------------------- /web/controllers/channel_controller.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/web/controllers/channel_controller.ex -------------------------------------------------------------------------------- /web/controllers/channel_user_controller.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/web/controllers/channel_user_controller.ex -------------------------------------------------------------------------------- /web/controllers/direct_channel_controller.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/web/controllers/direct_channel_controller.ex -------------------------------------------------------------------------------- /web/controllers/message_controller.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/web/controllers/message_controller.ex -------------------------------------------------------------------------------- /web/controllers/page_controller.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/web/controllers/page_controller.ex -------------------------------------------------------------------------------- /web/controllers/session_controller.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/web/controllers/session_controller.ex -------------------------------------------------------------------------------- /web/controllers/user_controller.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/web/controllers/user_controller.ex -------------------------------------------------------------------------------- /web/gettext.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/web/gettext.ex -------------------------------------------------------------------------------- /web/models/channel.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/web/models/channel.ex -------------------------------------------------------------------------------- /web/models/channel_user.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/web/models/channel_user.ex -------------------------------------------------------------------------------- /web/models/message.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/web/models/message.ex -------------------------------------------------------------------------------- /web/models/user.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/web/models/user.ex -------------------------------------------------------------------------------- /web/models/user_read_message.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/web/models/user_read_message.ex -------------------------------------------------------------------------------- /web/router.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/web/router.ex -------------------------------------------------------------------------------- /web/services/channel_user_service.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/web/services/channel_user_service.ex -------------------------------------------------------------------------------- /web/services/message_service.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/web/services/message_service.ex -------------------------------------------------------------------------------- /web/services/unread_service.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/web/services/unread_service.ex -------------------------------------------------------------------------------- /web/templates/layout/app.html.eex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/web/templates/layout/app.html.eex -------------------------------------------------------------------------------- /web/templates/page/index.html.eex: -------------------------------------------------------------------------------- 1 |
2 |
3 | -------------------------------------------------------------------------------- /web/views/changeset_view.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/web/views/changeset_view.ex -------------------------------------------------------------------------------- /web/views/channel_view.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/web/views/channel_view.ex -------------------------------------------------------------------------------- /web/views/direct_channel_view.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/web/views/direct_channel_view.ex -------------------------------------------------------------------------------- /web/views/error_helpers.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/web/views/error_helpers.ex -------------------------------------------------------------------------------- /web/views/error_view.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/web/views/error_view.ex -------------------------------------------------------------------------------- /web/views/layout_view.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/web/views/layout_view.ex -------------------------------------------------------------------------------- /web/views/message_view.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/web/views/message_view.ex -------------------------------------------------------------------------------- /web/views/page_view.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/web/views/page_view.ex -------------------------------------------------------------------------------- /web/views/session_view.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/web/views/session_view.ex -------------------------------------------------------------------------------- /web/views/user_view.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/web/views/user_view.ex -------------------------------------------------------------------------------- /web/web.ex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/web/web.ex -------------------------------------------------------------------------------- /webpack.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tony612/exchat/HEAD/webpack.config.js --------------------------------------------------------------------------------