diff --git a/app/javascript/mastodon/containers/timeline_container.js b/app/javascript/mastodon/containers/timeline_container.js
index 54f8eb310..a1a4bd024 100644
--- a/app/javascript/mastodon/containers/timeline_container.js
+++ b/app/javascript/mastodon/containers/timeline_container.js
@@ -7,6 +7,7 @@ import { hydrateStore } from '../actions/store';
import { IntlProvider, addLocaleData } from 'react-intl';
import { getLocale } from '../locales';
import PublicTimeline from '../features/standalone/public_timeline';
+import CommunityTimeline from '../features/standalone/community_timeline';
import HashtagTimeline from '../features/standalone/hashtag_timeline';
import ModalContainer from '../features/ui/containers/modal_container';
import initialState from '../initial_state';
@@ -25,22 +26,24 @@ export default class TimelineContainer extends React.PureComponent {
static propTypes = {
locale: PropTypes.string.isRequired,
hashtag: PropTypes.string,
- local: PropTypes.bool,
+ showPublicTimeline: PropTypes.bool.isRequired,
};
static defaultProps = {
- local: !initialState.settings.known_fediverse,
+ showPublicTimeline: initialState.settings.known_fediverse,
};
render () {
- const { locale, hashtag, local } = this.props;
+ const { locale, hashtag, showPublicTimeline } = this.props;
let timeline;
if (hashtag) {
timeline =
;
+ } else if (showPublicTimeline) {
+ timeline =
;
} else {
- timeline =
;
+ timeline =
;
}
return (
@@ -48,7 +51,6 @@ export default class TimelineContainer extends React.PureComponent {
{timeline}
-
{ReactDOM.createPortal(
,
document.getElementById('modal-container'),
diff --git a/app/javascript/mastodon/features/compose/components/emoji_picker_dropdown.js b/app/javascript/mastodon/features/compose/components/emoji_picker_dropdown.js
index e57c3c20c..aa5309c69 100644
--- a/app/javascript/mastodon/features/compose/components/emoji_picker_dropdown.js
+++ b/app/javascript/mastodon/features/compose/components/emoji_picker_dropdown.js
@@ -359,8 +359,8 @@ class EmojiPickerDropdown extends React.PureComponent {
diff --git a/app/javascript/mastodon/features/compose/containers/emoji_picker_dropdown_container.js b/app/javascript/mastodon/features/compose/containers/emoji_picker_dropdown_container.js
index 5ec937a39..4c1332153 100644
--- a/app/javascript/mastodon/features/compose/containers/emoji_picker_dropdown_container.js
+++ b/app/javascript/mastodon/features/compose/containers/emoji_picker_dropdown_container.js
@@ -12,13 +12,13 @@ const DEFAULTS = [
'+1',
'grinning',
'kissing_heart',
- 'heart_eyes',
+ 'vhs',
'laughing',
- 'stuck_out_tongue_winking_eye',
+ 'floppy_disk',
'sweat_smile',
'joy',
'yum',
- 'disappointed',
+ 'computer',
'thinking_face',
'weary',
'sob',
diff --git a/app/javascript/mastodon/features/getting_started/index.js b/app/javascript/mastodon/features/getting_started/index.js
index 67ec7665b..db150dfee 100644
--- a/app/javascript/mastodon/features/getting_started/index.js
+++ b/app/javascript/mastodon/features/getting_started/index.js
@@ -16,20 +16,20 @@ import LinkFooter from 'mastodon/features/ui/components/link_footer';
import TrendsContainer from './containers/trends_container';
const messages = defineMessages({
- home_timeline: { id: 'tabs_bar.home', defaultMessage: 'Home' },
- notifications: { id: 'tabs_bar.notifications', defaultMessage: 'Notifications' },
- public_timeline: { id: 'navigation_bar.public_timeline', defaultMessage: 'Federated timeline' },
+ home_timeline: { id: 'tabs_bar.home', defaultMessage: '/timelines/home' },
+ notifications: { id: 'tabs_bar.notifications', defaultMessage: '~/.notifications' },
+ public_timeline: { id: 'navigation_bar.public_timeline', defaultMessage: '/timelines/federated' },
settings_subheading: { id: 'column_subheading.settings', defaultMessage: 'Settings' },
- community_timeline: { id: 'navigation_bar.community_timeline', defaultMessage: 'Local timeline' },
- direct: { id: 'navigation_bar.direct', defaultMessage: 'Direct messages' },
- preferences: { id: 'navigation_bar.preferences', defaultMessage: 'Preferences' },
- follow_requests: { id: 'navigation_bar.follow_requests', defaultMessage: 'Follow requests' },
- favourites: { id: 'navigation_bar.favourites', defaultMessage: 'Favourites' },
- blocks: { id: 'navigation_bar.blocks', defaultMessage: 'Blocked users' },
- domain_blocks: { id: 'navigation_bar.domain_blocks', defaultMessage: 'Hidden domains' },
- mutes: { id: 'navigation_bar.mutes', defaultMessage: 'Muted users' },
- pins: { id: 'navigation_bar.pins', defaultMessage: 'Pinned toots' },
- lists: { id: 'navigation_bar.lists', defaultMessage: 'Lists' },
+ community_timeline: { id: 'navigation_bar.community_timeline', defaultMessage: '/timelines/local' },
+ direct: { id: 'navigation_bar.direct', defaultMessage: '~/.dms' },
+ preferences: { id: 'navigation_bar.preferences', defaultMessage: 'edit ~/.config' },
+ follow_requests: { id: 'navigation_bar.follow_requests', defaultMessage: '~/.follow-requests' },
+ favourites: { id: 'navigation_bar.favourites', defaultMessage: '~/.florps' },
+ blocks: { id: 'navigation_bar.blocks', defaultMessage: '~/.blocked' },
+ domain_blocks: { id: 'navigation_bar.domain_blocks', defaultMessage: '~/.muted/domains' },
+ mutes: { id: 'navigation_bar.mutes', defaultMessage: '~/.muted' },
+ pins: { id: 'navigation_bar.pins', defaultMessage: '~/.pinned' },
+ lists: { id: 'navigation_bar.lists', defaultMessage: '~/.lists' },
discover: { id: 'navigation_bar.discover', defaultMessage: 'Discover' },
personal: { id: 'navigation_bar.personal', defaultMessage: 'Personal' },
security: { id: 'navigation_bar.security', defaultMessage: 'Security' },
diff --git a/app/javascript/mastodon/features/notifications/components/notification.js b/app/javascript/mastodon/features/notifications/components/notification.js
index 41e9324e6..d2f242e23 100644
--- a/app/javascript/mastodon/features/notifications/components/notification.js
+++ b/app/javascript/mastodon/features/notifications/components/notification.js
@@ -149,7 +149,7 @@ class Notification extends ImmutablePureComponent {
-
+
diff --git a/app/javascript/mastodon/features/standalone/community_timeline/index.js b/app/javascript/mastodon/features/standalone/community_timeline/index.js
new file mode 100644
index 000000000..f917f41c9
--- /dev/null
+++ b/app/javascript/mastodon/features/standalone/community_timeline/index.js
@@ -0,0 +1,71 @@
+import React from 'react';
+import { connect } from 'react-redux';
+import PropTypes from 'prop-types';
+import StatusListContainer from '../../ui/containers/status_list_container';
+import { expandCommunityTimeline } from '../../../actions/timelines';
+import Column from '../../../components/column';
+import ColumnHeader from '../../../components/column_header';
+import { defineMessages, injectIntl } from 'react-intl';
+import { connectCommunityStream } from '../../../actions/streaming';
+
+const messages = defineMessages({
+ title: { id: 'standalone.public_title', defaultMessage: 'A look inside...' },
+});
+
+export default @connect()
+@injectIntl
+class CommunityTimeline extends React.PureComponent {
+
+ static propTypes = {
+ dispatch: PropTypes.func.isRequired,
+ intl: PropTypes.object.isRequired,
+ };
+
+ handleHeaderClick = () => {
+ this.column.scrollTop();
+ }
+
+ setRef = c => {
+ this.column = c;
+ }
+
+ componentDidMount () {
+ const { dispatch } = this.props;
+
+ dispatch(expandCommunityTimeline());
+ this.disconnect = dispatch(connectCommunityStream());
+ }
+
+ componentWillUnmount () {
+ if (this.disconnect) {
+ this.disconnect();
+ this.disconnect = null;
+ }
+ }
+
+ handleLoadMore = maxId => {
+ this.props.dispatch(expandCommunityTimeline({ maxId }));
+ }
+
+ render () {
+ const { intl } = this.props;
+
+ return (
+
+
+
+
+
+ );
+ }
+
+}
diff --git a/app/javascript/mastodon/features/status/components/action_bar.js b/app/javascript/mastodon/features/status/components/action_bar.js
index 3e511b7a6..66d7e88e2 100644
--- a/app/javascript/mastodon/features/status/components/action_bar.js
+++ b/app/javascript/mastodon/features/status/components/action_bar.js
@@ -196,7 +196,7 @@ class ActionBar extends React.PureComponent {
-
+
{shareButton}
diff --git a/app/javascript/mastodon/features/status/components/detailed_status.js b/app/javascript/mastodon/features/status/components/detailed_status.js
index e97f18f08..2ebc8676d 100644
--- a/app/javascript/mastodon/features/status/components/detailed_status.js
+++ b/app/javascript/mastodon/features/status/components/detailed_status.js
@@ -190,7 +190,7 @@ export default class DetailedStatus extends ImmutablePureComponent {
if (this.context.router) {
favouriteLink = (
-
+
@@ -199,7 +199,7 @@ export default class DetailedStatus extends ImmutablePureComponent {
} else {
favouriteLink = (
-
+
diff --git a/app/javascript/styles/mastodon/containers.scss b/app/javascript/styles/mastodon/containers.scss
index 319f8c94d..32037dde9 100644
--- a/app/javascript/styles/mastodon/containers.scss
+++ b/app/javascript/styles/mastodon/containers.scss
@@ -263,8 +263,6 @@
}
.container {
- max-width: 960px;
-
@media screen and (max-width: $no-gap-breakpoint) {
padding: 0;
}
diff --git a/app/presenters/instance_presenter.rb b/app/presenters/instance_presenter.rb
index c150bf742..41ba77f4f 100644
--- a/app/presenters/instance_presenter.rb
+++ b/app/presenters/instance_presenter.rb
@@ -8,6 +8,7 @@ class InstancePresenter
:site_description,
:site_extended_description,
:site_terms,
+ :open_registrations,
:closed_registrations_message,
to: Setting
)
diff --git a/app/views/about/show.html.haml b/app/views/about/show.html.haml
index 80f4cd828..9f6e3574f 100644
--- a/app/views/about/show.html.haml
+++ b/app/views/about/show.html.haml
@@ -8,8 +8,7 @@
.landing
.landing__brand
= link_to root_url, class: 'brand' do
- = svg_logo_full
- %span.brand__tagline=t 'about.tagline'
+ = image_tag @instance_presenter.hero&.file&.url || @instance_presenter.thumbnail&.file&.url || asset_pack_path('media/images/preview.jpg'), alt: @instance_presenter.site_title
.landing__grid
.landing__grid__column.landing__grid__column-registration
@@ -58,7 +57,6 @@
= link_to about_more_path do
= t('about.learn_more')
= fa_icon 'angle-double-right'
-
.hero-widget__footer
.hero-widget__footer__column
%h4= t 'about.administered_by'
diff --git a/app/views/layouts/admin.html.haml b/app/views/layouts/admin.html.haml
index 57bda45e2..a91c5153b 100644
--- a/app/views/layouts/admin.html.haml
+++ b/app/views/layouts/admin.html.haml
@@ -7,7 +7,7 @@
.sidebar-wrapper__inner
.sidebar
= link_to root_path do
- = image_pack_tag 'logo.svg', class: 'logo', alt: 'Mastodon'
+ = image_pack_tag 'logo-cybre.png', class: 'logo', alt: 'Cybrespace'
.sidebar__toggle
.sidebar__toggle__logo
diff --git a/app/views/layouts/auth.html.haml b/app/views/layouts/auth.html.haml
index 585e24655..ed4a81811 100644
--- a/app/views/layouts/auth.html.haml
+++ b/app/views/layouts/auth.html.haml
@@ -6,7 +6,7 @@
.logo-container
%h1
= link_to root_path do
- = svg_logo_full
+ = image_pack_tag 'logo-cybre.png', alt: 'Cybrespace'
.form-container
= render 'flashes'
diff --git a/app/views/layouts/public.html.haml b/app/views/layouts/public.html.haml
index b9179e23d..c16e9b13b 100644
--- a/app/views/layouts/public.html.haml
+++ b/app/views/layouts/public.html.haml
@@ -42,7 +42,7 @@
%li= link_to t('about.api'), 'https://docs.joinmastodon.org/api/guidelines/'
.column-2
%h4= link_to t('about.what_is_mastodon'), 'https://joinmastodon.org/'
- = link_to svg_logo, root_url, class: 'brand'
+ = link_to (image_pack_tag 'logo-cybre.png', width: 50), root_url, class: 'brand', alt: 'Cybrespace'
.column-3
%h4= site_hostname
%ul
diff --git a/app/views/statuses/_detailed_status.html.haml b/app/views/statuses/_detailed_status.html.haml
index 5cee84ada..f222fb826 100644
--- a/app/views/statuses/_detailed_status.html.haml
+++ b/app/views/statuses/_detailed_status.html.haml
@@ -74,7 +74,7 @@
= " "
ยท
= link_to remote_interaction_path(status, type: :favourite), class: 'modal-button detailed-status__link' do
- = fa_icon('star')
+ = fa_icon('floppy-o')
%span.detailed-status__favorites>= number_to_human status.favourites_count, strip_insignificant_zeros: true
= " "
diff --git a/app/views/statuses/_simple_status.html.haml b/app/views/statuses/_simple_status.html.haml
index a68fe1022..c014b5586 100644
--- a/app/views/statuses/_simple_status.html.haml
+++ b/app/views/statuses/_simple_status.html.haml
@@ -61,4 +61,4 @@
- else
= fa_icon 'envelope fw'
= link_to remote_interaction_path(status, type: :favourite), class: 'status__action-bar-button icon-button modal-button', style: 'font-size: 18px; width: 23.1429px; height: 23.1429px; line-height: 23.15px;' do
- = fa_icon 'star fw'
+ = fa_icon 'floppy-o fw'
diff --git a/config/settings.yml b/config/settings.yml
index bd2f65b5e..482c11aa0 100644
--- a/config/settings.yml
+++ b/config/settings.yml
@@ -2,7 +2,7 @@
# important settings can be changed from the admin interface.
defaults: &defaults
- site_title: Mastodon
+ site_title: 'Cybrespace'
site_short_description: ''
site_description: ''
site_extended_description: ''
diff --git a/lib/mastodon/version.rb b/lib/mastodon/version.rb
index f3ead6d8d..4afab1264 100644
--- a/lib/mastodon/version.rb
+++ b/lib/mastodon/version.rb
@@ -21,7 +21,7 @@ module Mastodon
end
def suffix
- ''
+ '-cybre'
end
def to_a
@@ -37,7 +37,7 @@ module Mastodon
end
def source_base_url
- ENV.fetch('SOURCE_BASE_URL') { "https://github.com/#{repository}" }
+ 'https://cybre.tech/cybrespace/mastodon'
end
# specify git tag or commit hash here
diff --git a/public/android-chrome-192x192.png b/public/android-chrome-192x192.png
index 7a99a1964..8e9c26b58 100644
Binary files a/public/android-chrome-192x192.png and b/public/android-chrome-192x192.png differ
diff --git a/public/apple-touch-icon.png b/public/apple-touch-icon.png
index b12aa55a3..691c1f20a 100644
Binary files a/public/apple-touch-icon.png and b/public/apple-touch-icon.png differ
diff --git a/public/background-cybre.png b/public/background-cybre.png
new file mode 100644
index 000000000..151fd5584
Binary files /dev/null and b/public/background-cybre.png differ
diff --git a/public/browserconfig.xml b/public/browserconfig.xml
index 7fdab5058..fcf794bc2 100644
--- a/public/browserconfig.xml
+++ b/public/browserconfig.xml
@@ -3,7 +3,7 @@
- #282c37
+ #1ea21e
diff --git a/public/emoji/1f418.svg b/public/emoji/1f418.svg
index fb9656cd1..3852006c5 100644
--- a/public/emoji/1f418.svg
+++ b/public/emoji/1f418.svg
@@ -1 +1,17 @@
-
\ No newline at end of file
+
diff --git a/public/favicon.ico b/public/favicon.ico
index 79000c9cc..887128534 100644
Binary files a/public/favicon.ico and b/public/favicon.ico differ
diff --git a/public/header.jpeg b/public/header.jpeg
new file mode 100644
index 000000000..e9d7b336f
Binary files /dev/null and b/public/header.jpeg differ
diff --git a/public/logo-cybre-glitch.gif b/public/logo-cybre-glitch.gif
new file mode 100644
index 000000000..abe9b2a9a
Binary files /dev/null and b/public/logo-cybre-glitch.gif differ
diff --git a/public/logo-cybre.png b/public/logo-cybre.png
new file mode 100644
index 000000000..41dd8fd4c
Binary files /dev/null and b/public/logo-cybre.png differ
diff --git a/public/mstile-150x150.png b/public/mstile-150x150.png
index a4994062d..a79f11992 100644
Binary files a/public/mstile-150x150.png and b/public/mstile-150x150.png differ
diff --git a/public/riot-glitch.png b/public/riot-glitch.png
new file mode 100644
index 000000000..1c97ce5f1
Binary files /dev/null and b/public/riot-glitch.png differ