diff --git a/app/controllers/services/mastodon_controller.rb b/app/controllers/services/mastodon_controller.rb new file mode 100644 index 0000000..c98f3cb --- /dev/null +++ b/app/controllers/services/mastodon_controller.rb @@ -0,0 +1,14 @@ +class Services::MastodonController < Services::BaseController + before_action :authenticate_user! + before_action :require_service_available + + def show + @service_enabled = current_user.services_enabled.include?(:mastodon) + end + + private + + def require_service_available + http_status :not_found unless Setting.ejabberd_enabled? + end +end diff --git a/app/views/services/chat/show.html.erb b/app/views/services/chat/show.html.erb index 88d8386..c2cb061 100644 --- a/app/views/services/chat/show.html.erb +++ b/app/views/services/chat/show.html.erb @@ -3,7 +3,7 @@ <%= render MainSimpleComponent.new do %>

- Chat with anyone on the open Jabber network. Message people directly, or + Chat with anyone on the open Jabber (XMPP) network. Message people directly, or join public channels or private rooms.

@@ -37,9 +37,9 @@

Chat Apps

- Use your Kosmos account with many different apps, and on any devices - you wish! When opening an app for the first time, just enter your - user address and password to log in. + Use your account with many different apps, and on any devices you wish! + When opening an app for the first time, just enter your user address and + password to log in.

diff --git a/app/views/services/mastodon/show.html.erb b/app/views/services/mastodon/show.html.erb new file mode 100644 index 0000000..d0651aa --- /dev/null +++ b/app/views/services/mastodon/show.html.erb @@ -0,0 +1,206 @@ +<%= render HeaderComponent.new(title: "Social") %> + +<%= render MainSimpleComponent.new do %> +
+

+ Follow and interact with anyone on the open social web, from your Kosmos Mastodon account. +

+
+
+

Your User Address

+

+ Others can follow you under this address: +

+

+ disabled="disabled" + data-clipboard-target="source" /> + + +

+ <%= render QrCodeModalComponent.new(qr_content: current_user.address) %> +
+
+

Social Apps

+

+ Use your Mastodon account with many different apps, and on any devices + you wish! When adding your account to an app, you will log in via kosmos.social. +

+
+
+

Recommended Apps

+
+ + + + + + + + +
+
+<% end %> diff --git a/config/routes.rb b/config/routes.rb index ec98cb3..3dc922a 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -29,6 +29,8 @@ Rails.application.routes.draw do get 'qr_lnurlp' end end + + resource :mastodon, only: [:show], controller: 'mastodon' end resources :settings, param: 'section', only: ['index', 'show', 'update'] do diff --git a/public/img/logos/icon_elk.svg b/public/img/logos/icon_elk.svg new file mode 100644 index 0000000..3645460 --- /dev/null +++ b/public/img/logos/icon_elk.svg @@ -0,0 +1,42 @@ + + + + + + + + + + + + diff --git a/public/img/logos/icon_fedilab.png b/public/img/logos/icon_fedilab.png new file mode 100644 index 0000000..c329861 Binary files /dev/null and b/public/img/logos/icon_fedilab.png differ diff --git a/public/img/logos/icon_icecubes.png b/public/img/logos/icon_icecubes.png new file mode 100644 index 0000000..c5fdb98 Binary files /dev/null and b/public/img/logos/icon_icecubes.png differ diff --git a/public/img/logos/icon_mammoth.png b/public/img/logos/icon_mammoth.png new file mode 100644 index 0000000..b5ee3fe Binary files /dev/null and b/public/img/logos/icon_mammoth.png differ diff --git a/public/img/logos/icon_mastodon-2.svg b/public/img/logos/icon_mastodon-2.svg new file mode 100644 index 0000000..ba483a2 --- /dev/null +++ b/public/img/logos/icon_mastodon-2.svg @@ -0,0 +1,65 @@ + + + + + + + + + + + + + + diff --git a/public/img/logos/icon_mastonaut.png b/public/img/logos/icon_mastonaut.png new file mode 100644 index 0000000..bcddf4a Binary files /dev/null and b/public/img/logos/icon_mastonaut.png differ diff --git a/public/img/logos/icon_megalodon.png b/public/img/logos/icon_megalodon.png new file mode 100644 index 0000000..0ebe72f Binary files /dev/null and b/public/img/logos/icon_megalodon.png differ diff --git a/public/img/logos/icon_sengi.png b/public/img/logos/icon_sengi.png new file mode 100644 index 0000000..6635416 Binary files /dev/null and b/public/img/logos/icon_sengi.png differ diff --git a/public/img/logos/icon_tuba.svg b/public/img/logos/icon_tuba.svg new file mode 100644 index 0000000..7f80313 --- /dev/null +++ b/public/img/logos/icon_tuba.svg @@ -0,0 +1,1123 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +