about summary refs log tree commit diff
path: root/app/javascript/flavours/glitch/features/composer/index.js
diff options
context:
space:
mode:
authorThibaut Girka <thib@sitedethib.com>2018-01-19 11:34:48 +0100
committerThibaut Girka <thib@sitedethib.com>2018-01-19 12:59:33 +0100
commit1287b2782b8e8a1d2c7a3684ebf1327fc5647f51 (patch)
treeec3a2fff5d3bfd1f750102845d5df27cf13d8ffc /app/javascript/flavours/glitch/features/composer/index.js
parent708ec07e27dd02d03f2d155bcc61ae8de4c10c4a (diff)
Display a warning when composing unlisted toots with something looking like a hashtag
This is a backport of b6af88192ff48372c5f6ed1321f21d99aaffcd3f to the glitch flavour.
Diffstat (limited to 'app/javascript/flavours/glitch/features/composer/index.js')
-rw-r--r--app/javascript/flavours/glitch/features/composer/index.js4
1 files changed, 4 insertions, 0 deletions
diff --git a/app/javascript/flavours/glitch/features/composer/index.js b/app/javascript/flavours/glitch/features/composer/index.js
index 29a2f4775..e50f3ec3f 100644
--- a/app/javascript/flavours/glitch/features/composer/index.js
+++ b/app/javascript/flavours/glitch/features/composer/index.js
@@ -3,6 +3,8 @@ import PropTypes from 'prop-types';
 import React from 'react';
 import ImmutablePropTypes from 'react-immutable-proptypes';
 
+const APPROX_HASHTAG_RE = /(?:^|[^\/\)\w])#(\S+)/i;
+
 //  Actions.
 import {
   cancelReplyCompose,
@@ -36,6 +38,7 @@ import ComposerSpoiler from './spoiler';
 import ComposerTextarea from './textarea';
 import ComposerUploadForm from './upload_form';
 import ComposerWarning from './warning';
+import ComposerHashtagWarning from './hashtag_warning';
 
 //  Utils.
 import { countableText } from 'flavours/glitch/util/counter';
@@ -312,6 +315,7 @@ class Composer extends React.Component {
           text={spoilerText}
         />
         {privacy === 'private' && amUnlocked ? <ComposerWarning /> : null}
+        {privacy !== 'public' && APPROX_HASHTAG_RE.test(text) ? <ComposerHashtagWarning /> : null}
         {replyContent ? (
           <ComposerReply
             account={replyAccount}