Fix glitch-soc front-end not linking to the provided SOURCE_URL
This commit is contained in:
		
							parent
							
								
									6bbcd99f14
								
							
						
					
					
						commit
						4a94f4127b
					
				| @ -1,6 +1,7 @@ | |||||||
| import React from 'react'; | import React from 'react'; | ||||||
| import PropTypes from 'prop-types'; | import PropTypes from 'prop-types'; | ||||||
| import { FormattedMessage } from 'react-intl'; | import { FormattedMessage } from 'react-intl'; | ||||||
|  | import { source_url } from 'flavours/glitch/util/initial_state'; | ||||||
| import { preferencesLink } from 'flavours/glitch/util/backend_links'; | import { preferencesLink } from 'flavours/glitch/util/backend_links'; | ||||||
| import StackTrace from 'stacktrace-js'; | import StackTrace from 'stacktrace-js'; | ||||||
| 
 | 
 | ||||||
| @ -64,6 +65,11 @@ export default class ErrorBoundary extends React.PureComponent { | |||||||
|       debugInfo += 'React component stack\n---------------------\n\n```\n' + componentStack.toString() + '\n```'; |       debugInfo += 'React component stack\n---------------------\n\n```\n' + componentStack.toString() + '\n```'; | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|  |     let issueTracker = source_url; | ||||||
|  |     if (source_url.match(/^https:\/\/github\.com\/[^/]+\/[^/]+\/?$/)) { | ||||||
|  |       issueTracker = source_url + '/issues'; | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|     return ( |     return ( | ||||||
|       <div tabIndex='-1'> |       <div tabIndex='-1'> | ||||||
|         <div className='error-boundary'> |         <div className='error-boundary'> | ||||||
| @ -84,7 +90,7 @@ export default class ErrorBoundary extends React.PureComponent { | |||||||
|               <FormattedMessage |               <FormattedMessage | ||||||
|                 id='web_app_crash.report_issue' |                 id='web_app_crash.report_issue' | ||||||
|                 defaultMessage='Report a bug in the {issuetracker}' |                 defaultMessage='Report a bug in the {issuetracker}' | ||||||
|                 values={{ issuetracker: <a href='https://github.com/glitch-soc/mastodon/issues' rel='noopener noreferrer' target='_blank'><FormattedMessage id='web_app_crash.issue_tracker' defaultMessage='issue tracker' /></a> }} |                 values={{ issuetracker: <a href={issueTracker} rel='noopener noreferrer' target='_blank'><FormattedMessage id='web_app_crash.issue_tracker' defaultMessage='issue tracker' /></a> }} | ||||||
|               /> |               /> | ||||||
|               { debugInfo !== '' && ( |               { debugInfo !== '' && ( | ||||||
|                 <details> |                 <details> | ||||||
|  | |||||||
| @ -3,7 +3,7 @@ import React from 'react'; | |||||||
| import PropTypes from 'prop-types'; | import PropTypes from 'prop-types'; | ||||||
| import { FormattedMessage, defineMessages, injectIntl } from 'react-intl'; | import { FormattedMessage, defineMessages, injectIntl } from 'react-intl'; | ||||||
| import { Link } from 'react-router-dom'; | import { Link } from 'react-router-dom'; | ||||||
| import { invitesEnabled, version, limitedFederationMode, repository, source_url } from 'flavours/glitch/util/initial_state'; | import { invitesEnabled, limitedFederationMode, version, repository, source_url } from 'flavours/glitch/util/initial_state'; | ||||||
| import { signOutLink, securityLink } from 'flavours/glitch/util/backend_links'; | import { signOutLink, securityLink } from 'flavours/glitch/util/backend_links'; | ||||||
| import { logOut } from 'flavours/glitch/util/log_out'; | import { logOut } from 'flavours/glitch/util/log_out'; | ||||||
| import { openModal } from 'flavours/glitch/actions/modal'; | import { openModal } from 'flavours/glitch/actions/modal'; | ||||||
| @ -61,7 +61,7 @@ class LinkFooter extends React.PureComponent { | |||||||
|             id='getting_started.open_source_notice' |             id='getting_started.open_source_notice' | ||||||
|             defaultMessage='Glitchsoc is open source software, a friendly fork of {Mastodon}. You can contribute or report issues on GitHub at {github}.' |             defaultMessage='Glitchsoc is open source software, a friendly fork of {Mastodon}. You can contribute or report issues on GitHub at {github}.' | ||||||
|             values={{ |             values={{ | ||||||
|               github: <span><a href='https://github.com/glitch-soc/mastodon' rel='noopener noreferrer' target='_blank'>glitch-soc/mastodon</a> (v{version})</span>, |               github: <span><a href={source_url} rel='noopener noreferrer' target='_blank'>{repository}</a> (v{version})</span>, | ||||||
|               Mastodon: <a href='https://github.com/tootsuite/mastodon' rel='noopener noreferrer' target='_blank'>Mastodon</a> }} |               Mastodon: <a href='https://github.com/tootsuite/mastodon' rel='noopener noreferrer' target='_blank'>Mastodon</a> }} | ||||||
|           /> |           /> | ||||||
|         </p> |         </p> | ||||||
|  | |||||||
| @ -10,7 +10,7 @@ import ComposeForm from 'flavours/glitch/features/compose/components/compose_for | |||||||
| import DrawerAccount from 'flavours/glitch/features/compose/components/navigation_bar'; | import DrawerAccount from 'flavours/glitch/features/compose/components/navigation_bar'; | ||||||
| import Search from 'flavours/glitch/features/compose/components/search'; | import Search from 'flavours/glitch/features/compose/components/search'; | ||||||
| import ColumnHeader from './column_header'; | import ColumnHeader from './column_header'; | ||||||
| import { me } from 'flavours/glitch/util/initial_state'; | import { me, source_url } from 'flavours/glitch/util/initial_state'; | ||||||
| 
 | 
 | ||||||
| const noop = () => { }; | const noop = () => { }; | ||||||
| 
 | 
 | ||||||
| @ -141,7 +141,18 @@ const PageSix = ({ admin, domain }) => { | |||||||
|     <div className='onboarding-modal__page onboarding-modal__page-six'> |     <div className='onboarding-modal__page onboarding-modal__page-six'> | ||||||
|       <h1><FormattedMessage id='onboarding.page_six.almost_done' defaultMessage='Almost done...' /></h1> |       <h1><FormattedMessage id='onboarding.page_six.almost_done' defaultMessage='Almost done...' /></h1> | ||||||
|       {adminSection} |       {adminSection} | ||||||
|       <p><FormattedMessage id='onboarding.page_six.github' defaultMessage='{domain} runs on Glitchsoc. Glitchsoc is a friendly {fork} of {Mastodon}. Glitchsoc is fully compatible with all Mastodon apps and instances. Glitchsoc is free open-source software. You can report bugs, request features, or contribute to the code on {github}.' values={{ domain, fork: <a href='https://en.wikipedia.org/wiki/Fork_(software_development)' target='_blank' rel='noopener'>fork</a>, Mastodon: <a href='https://github.com/tootsuite/mastodon' target='_blank' rel='noopener'>Mastodon</a>, github: <a href='https://github.com/glitch-soc/mastodon' target='_blank' rel='noopener'>GitHub</a> }} /></p>
 |       <p> | ||||||
|  |         <FormattedMessage | ||||||
|  |           id='onboarding.page_six.github' | ||||||
|  |           defaultMessage='{domain} runs on Glitchsoc. Glitchsoc is a friendly {fork} of {Mastodon}. Glitchsoc is fully compatible with all Mastodon apps and instances. Glitchsoc is free open-source software. You can report bugs, request features, or contribute to the code on {github}.' | ||||||
|  |           values={{ | ||||||
|  |             domain, | ||||||
|  |             fork: <a href='https://en.wikipedia.org/wiki/Fork_(software_development)' target='_blank' rel='noopener'>fork</a>, | ||||||
|  |             Mastodon: <a href='https://github.com/tootsuite/mastodon' target='_blank' rel='noopener'>Mastodon</a>, | ||||||
|  |             github: <a href={source_url} target='_blank' rel='noopener'>GitHub</a>, | ||||||
|  |           }} | ||||||
|  |         /> | ||||||
|  |       </p> | ||||||
|       <p><FormattedMessage id='onboarding.page_six.apps_available' defaultMessage='There are {apps} available for iOS, Android and other platforms.' values={{ domain, apps: <a href='https://joinmastodon.org/apps' target='_blank' rel='noopener'><FormattedMessage id='onboarding.page_six.various_app' defaultMessage='mobile apps' /></a> }} /></p> |       <p><FormattedMessage id='onboarding.page_six.apps_available' defaultMessage='There are {apps} available for iOS, Android and other platforms.' values={{ domain, apps: <a href='https://joinmastodon.org/apps' target='_blank' rel='noopener'><FormattedMessage id='onboarding.page_six.various_app' defaultMessage='mobile apps' /></a> }} /></p> | ||||||
|       <p><em><FormattedMessage id='onboarding.page_six.appetoot' defaultMessage='Bon Appetoot!' /></em></p> |       <p><em><FormattedMessage id='onboarding.page_six.appetoot' defaultMessage='Bon Appetoot!' /></em></p> | ||||||
|     </div> |     </div> | ||||||
|  | |||||||
| @ -25,6 +25,8 @@ export const maxChars = (initialState && initialState.max_toot_chars) || 500; | |||||||
| export const pollLimits = (initialState && initialState.poll_limits); | export const pollLimits = (initialState && initialState.poll_limits); | ||||||
| export const invitesEnabled = getMeta('invites_enabled'); | export const invitesEnabled = getMeta('invites_enabled'); | ||||||
| export const limitedFederationMode = getMeta('limited_federation_mode'); | export const limitedFederationMode = getMeta('limited_federation_mode'); | ||||||
|  | export const repository = getMeta('repository'); | ||||||
|  | export const source_url = getMeta('source_url'); | ||||||
| export const version = getMeta('version'); | export const version = getMeta('version'); | ||||||
| export const mascot = getMeta('mascot'); | export const mascot = getMeta('mascot'); | ||||||
| export const profile_directory = getMeta('profile_directory'); | export const profile_directory = getMeta('profile_directory'); | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user