]> Untitled Git - lemmy.git/commitdiff
For top-bar post creation, dont select a default community. Fixes #729
authorDessalines <tyhou13@gmx.com>
Thu, 28 May 2020 16:55:18 +0000 (12:55 -0400)
committerDessalines <tyhou13@gmx.com>
Thu, 28 May 2020 16:55:18 +0000 (12:55 -0400)
ui/src/components/post-form.tsx
ui/translations/en.json

index 912d8e5896157c89ae6e9be9925b08b10b2849c0..6f1e34e01417e0e2b1a25dff00d6b2baf0e2df42 100644 (file)
@@ -194,8 +194,9 @@ export class PostForm extends Component<PostFormProps, PostFormState> {
               <form>
                 <label
                   htmlFor="file-upload"
-                  className={`${UserService.Instance.user &&
-                    'pointer'} d-inline-block float-right text-muted font-weight-bold`}
+                  className={`${
+                    UserService.Instance.user && 'pointer'
+                  } d-inline-block float-right text-muted font-weight-bold`}
                   data-tippy-content={i18n.t('upload_image')}
                 >
                   <svg class="icon icon-inline">
@@ -288,8 +289,9 @@ export class PostForm extends Component<PostFormProps, PostFormState> {
               )}
               {this.state.postForm.body && (
                 <button
-                  className={`mt-1 mr-2 btn btn-sm btn-secondary ${this.state
-                    .previewMode && 'active'}`}
+                  className={`mt-1 mr-2 btn btn-sm btn-secondary ${
+                    this.state.previewMode && 'active'
+                  }`}
                   onClick={linkEvent(this, this.handlePreviewToggle)}
                 >
                   {i18n.t('preview')}
@@ -328,6 +330,7 @@ export class PostForm extends Component<PostFormProps, PostFormState> {
                   value={this.state.postForm.community_id}
                   onInput={linkEvent(this, this.handlePostCommunityChange)}
                 >
+                  <option>{i18n.t('select_a_community')}</option>
                   {this.state.communities.map(community => (
                     <option value={community.id}>{community.name}</option>
                   ))}
@@ -355,7 +358,11 @@ export class PostForm extends Component<PostFormProps, PostFormState> {
           )}
           <div class="form-group row">
             <div class="col-sm-10">
-              <button type="submit" class="btn btn-secondary mr-2">
+              <button
+                disabled={!this.state.postForm.community_id}
+                type="submit"
+                class="btn btn-secondary mr-2"
+              >
                 {this.state.loading ? (
                   <svg class="icon icon-spinner spin">
                     <use xlinkHref="#icon-spinner"></use>
@@ -561,7 +568,7 @@ export class PostForm extends Component<PostFormProps, PostFormState> {
         ).id;
         this.state.postForm.community_id = foundCommunityId;
       } else {
-        this.state.postForm.community_id = data.communities[0].id;
+        // By default, the null valued 'Select a Community'
       }
       this.setState(this.state);
 
@@ -571,6 +578,7 @@ export class PostForm extends Component<PostFormProps, PostFormState> {
         let selector = new Selectr(selectId, { nativeDropdown: false });
         selector.on('selectr.select', option => {
           this.state.postForm.community_id = Number(option.value);
+          this.setState(this.state);
         });
       }
     } else if (res.op == UserOperation.CreatePost) {
index 6509bc64ef359058726480be10098f3ddf7a146e..8a9a570ec078bdba37b2dc0fed535f34f57acb83 100644 (file)
@@ -18,6 +18,7 @@
     "communities": "Communities",
     "users": "Users",
     "create_a_community": "Create a community",
+    "select_a_community": "Select a community",
     "create_community": "Create Community",
     "remove_community": "Remove Community",
     "subscribed_to_communities": "Subscribed to <1>communities</1>",