# Composer Help Button

**URL:** https://meta.discourse.org/t/composer-help-button/22748
**Category:** Plugin
**Tags:** broken
**Created:** [December 2, 2014, 2:29pm UTC](https://meta.discourse.org/t/composer-help-button/22748 "2014-12-02T14:29:17Z")
**Posts on this page:** 20
**Page:** 1

<div class="post-metadata">

### Author: ![cpradio](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/cpradio/32/4970_2.png) [@cpradio](https://meta.discourse.org/u/cpradio)
#### Post date: [December 2, 2014, 2:29pm UTC](https://meta.discourse.org/t/composer-help-button/22748/1 "2014-12-02T14:29:17Z")

</div>

I’ve now completed my work on a composer help button.  
[https://github.com/cpradio/composer-help-button](https://github.com/cpradio/composer-help-button)

It adds a button to the composer window  
 ![](https://global.discourse-cdn.com/meta/original/3X/5/b/5b741b3d40349a628ddf8df041169be80fceeec6.png)

and a setting in the Admin area:

 ![](https://global.discourse-cdn.com/meta/original/3X/d/9/d9cc1aba43c4b00525143bf267af7c4fe38189a7.png)

Clicking on that icon, will open a modal window with the content from the first post at the URL set in the Admin area

 ![](https://global.discourse-cdn.com/meta/original/3X/4/a/4a03fa0d8c5e6d467f91ff8ee9c8bac592caca00.png)

The only caveat, is that you need to store the Topic in a publicly accessible location so ALL of your members can see it. Otherwise, they’ll get an access denied error.

---

<div class="post-metadata">

### Author: ![cpradio](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/cpradio/32/4970_2.png) [@cpradio](https://meta.discourse.org/u/cpradio)
#### Post date: [December 2, 2014, 7:55pm UTC](https://meta.discourse.org/t/composer-help-button/22748/2 "2014-12-02T19:55:20Z")

</div>

Something I should mention. By default the button will not appear until a URL is entered in the Admin Setting. So you won’t have a broken button out of the box 😄

---

<div class="post-metadata">

### Author: ![cpradio](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/cpradio/32/4970_2.png) [@cpradio](https://meta.discourse.org/u/cpradio)
#### Post date: [April 24, 2015, 1:55pm UTC](https://meta.discourse.org/t/composer-help-button/22748/3 "2015-04-24T13:55:09Z")

</div>

@eviltrout, @lightyear, @santouras, @orodio (Jude and James, I included you in case you have a moment to help guide me too!)

Okay, so I started with this plugin, as it was a tad bit simplier than the ReplyGIF one to get my “feet wet”.

You can see my first attempt here  
[https://github.com/cpradio/composer-help-button/tree/convert-to-es6](https://github.com/cpradio/composer-help-button/tree/convert-to-es6)

I feel like I’m close! I just can’t get the ajax loaded content to appear in the body of the modal window. I feel like I’m missing something, but I’m not getting any errors to indicate what I’m missing.

Can one of you take a peek and push me in the right direction? I’d really appreciate it!

---

<div class="post-metadata">

### Author: ![cpradio](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/cpradio/32/4970_2.png) [@cpradio](https://meta.discourse.org/u/cpradio)
#### Post date: [April 24, 2015, 2:37pm UTC](https://meta.discourse.org/t/composer-help-button/22748/4 "2015-04-24T14:37:15Z")

</div>

nm. Seems I figured it out (not sure how though… I simply renamed the composer-help.js.handlebars to composer-help.hbs and took it out of the plugin.rb. Then I fixed the showModal call and it started working!

Merging to main branch soon so this plugin is at least functional again.

**Edit:** Version 0.2 is now live on GitHub

---

<div class="post-metadata">

### Author: ![eviltrout](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/eviltrout/32/5275_2.png) [@eviltrout](https://meta.discourse.org/u/eviltrout)
#### Post date: [April 24, 2015, 3:26pm UTC](https://meta.discourse.org/t/composer-help-button/22748/5 "2015-04-24T15:26:42Z")

</div>

Awesome! Yeah we use `hbs` as extensions and they are automatically included now.

---

<div class="post-metadata">

### Author: ![hedgehog](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/hedgehog/32/107645_2.png) [@hedgehog](https://meta.discourse.org/u/hedgehog)
#### Post date: [August 15, 2015, 7:19pm UTC](https://meta.discourse.org/t/composer-help-button/22748/6 "2015-08-15T19:19:42Z")

</div>

The help button doesn’t show up on Discourse version 1.4. Did you have time to check out why it isn’t working anymore?

---

<div class="post-metadata">

### Author: ![cpradio](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/cpradio/32/4970_2.png) [@cpradio](https://meta.discourse.org/u/cpradio)
#### Post date: [August 16, 2015, 1:12pm UTC](https://meta.discourse.org/t/composer-help-button/22748/7 "2015-08-16T13:12:22Z")

</div>

Yeah, it seems to be the ember upgrade, I’m trying to debug it, but running into problems, as it almost seems the plugin’s front-end isn’t being loaded at all.

---

<div class="post-metadata">

### Author: ![cpradio](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/cpradio/32/4970_2.png) [@cpradio](https://meta.discourse.org/u/cpradio)
#### Post date: [August 16, 2015, 1:47pm UTC](https://meta.discourse.org/t/composer-help-button/22748/8 "2015-08-16T13:47:24Z")

</div>

There are a couple of things going on, first was the change that moved the composer window from #wmd-button-row to .wmd-button-row, now the second is far more confusing, as it states it can’t load discourse/controllers/controller…

```plaintext
Uncaught Error: Could not find module `discourse/controllers/controller` imported from 
`discourse/plugins/composer-help-button/discourse/controllers/composer-help`requireFrom @ loader:111
reify @ loader:98
mod.state @ loader:141
tryFinally @ loader:22
requireModule @ loader:140
__exports__.default.Ember.DefaultResolver.extend.customResolve @ discourse/ember/resolver:85
__exports__.default.Ember.DefaultResolver.extend.resolveController @ discourse/ember/resolver:110
superWrapper @ ember-template-compiler:9278
exports.default.EmberObject.default.extend.resolve @ ember.debug:4591
resolve @ ember.debug:4434
resolve @ ember.debug:2110
Registry.resolve @ ember.debug:1716
factoryFor @ ember.debug:1318
instantiate @ ember.debug:1376
lookup @ ember.debug:1274
Container.lookup @ ember.debug:1209
__exports__.default @ discourse/lib/show-modal:23
__exports__.default.initialize.ApplicationRoute.reopen.actions.showComposerHelp @ javascripts/discourse/initializers/composer-help:15
triggerEvent @ ember.debug:23488
trigger @ ember.debug:45006
Router.trigger @ ember.debug:43730
EmberObject.default.extend.send @ ember.debug:22983
mixin.Mixin.create.send @ ember.debug:26917
mixin.Mixin.create.send @ ember.debug:26917
(anonymous function) @ javascripts/discourse/initializers/composer-help:29
jQuery.event.dispatch @ jquery.debug:4431
jQuery.event.add.elemData.handle @ jquery.debug:4117

```

---

<div class="post-metadata">

### Author: ![cpradio](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/cpradio/32/4970_2.png) [@cpradio](https://meta.discourse.org/u/cpradio)
#### Post date: [August 16, 2015, 1:56pm UTC](https://meta.discourse.org/t/composer-help-button/22748/9 "2015-08-16T13:56:34Z")

</div>

I believe this is functional again. Thanks for reporting it!  
[https://github.com/cpradio/composer-help-button/commit/b52fd9e7609f571405cb8a259c86874ffb5fd47f](https://github.com/cpradio/composer-help-button/commit/b52fd9e7609f571405cb8a259c86874ffb5fd47f)

---

<div class="post-metadata">

### Author: ![hedgehog](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/hedgehog/32/107645_2.png) [@hedgehog](https://meta.discourse.org/u/hedgehog)
#### Post date: [August 16, 2015, 4:11pm UTC](https://meta.discourse.org/t/composer-help-button/22748/10 "2015-08-16T16:11:24Z")

</div>

Awesome @cpradio It works for me. I added another issue. It’s just about moving the settings to the plugin-tab.

[https://github.com/cpradio/composer-help-button/issues/6](https://github.com/cpradio/composer-help-button/issues/6)

---

<div class="post-metadata">

### Author: ![cpradio](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/cpradio/32/4970_2.png) [@cpradio](https://meta.discourse.org/u/cpradio)
#### Post date: [August 16, 2015, 4:31pm UTC](https://meta.discourse.org/t/composer-help-button/22748/11 "2015-08-16T16:31:22Z")

</div>

Yeah, I thought about looking into that too, but haven’t yet (as I believe that came about after this plugin was written).

---

<div class="post-metadata">

### Author: ![cpradio](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/cpradio/32/4970_2.png) [@cpradio](https://meta.discourse.org/u/cpradio)
#### Post date: [August 16, 2015, 6:14pm UTC](https://meta.discourse.org/t/composer-help-button/22748/12 "2015-08-16T18:14:48Z")

</div>

Just finished this request

As an FYI  
With this change, you will need to re-enable the plugin and re-enter the URL for the modal window (so you might want to copy the URL before upgrading).

Here are the new Admin Screenshots

 ![](https://global.discourse-cdn.com/meta/original/3X/7/b/7b16bb5846b206294b84c434e63930373e03f023.png)  
 ![](https://global.discourse-cdn.com/meta/original/3X/0/1/013fb06ab0361076430b91b8ffb63fd6e26a4a78.png)

---

<div class="post-metadata">

### Author: ![riking](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/riking/32/170938_2.png) [@riking](https://meta.discourse.org/u/riking)
#### Post date: [August 16, 2015, 6:49pm UTC](https://meta.discourse.org/t/composer-help-button/22748/13 "2015-08-16T18:49:17Z")

</div>

thanks, this will make the plugin behave nicer on multisite 🙂

---

<div class="post-metadata">

### Author: ![yadlabus](https://avatars.discourse-cdn.com/v4/letter/y/41988e/32.png) [@yadlabus](https://meta.discourse.org/u/yadlabus)
#### Post date: [October 12, 2015, 12:09am UTC](https://meta.discourse.org/t/composer-help-button/22748/14 "2015-10-12T00:09:02Z")

</div>

Very nice plugin @cpradio, thanks!

I found difficult to write the message that would display when clicking the help button, and I ended up posting a table with formatting ↔ code equivalences, quite larger than the pop-up window.

Is there a way to resize the modal window so that my table fits completely inside it?

---

<div class="post-metadata">

### Author: ![cpradio](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/cpradio/32/4970_2.png) [@cpradio](https://meta.discourse.org/u/cpradio)
#### Post date: [October 12, 2015, 12:47am UTC](https://meta.discourse.org/t/composer-help-button/22748/15 "2015-10-12T00:47:52Z")

</div>

Yes. Change the max height for `.composer-help-content` in your admin \> customize \> css

Example:

```plaintext
.modal-body {
  max-height: 550px;
}
.composer-help-content {
  max-height: 500px;
}

```

---

<div class="post-metadata">

### Author: ![yadlabus](https://avatars.discourse-cdn.com/v4/letter/y/41988e/32.png) [@yadlabus](https://meta.discourse.org/u/yadlabus)
#### Post date: [October 12, 2015, 4:06am UTC](https://meta.discourse.org/t/composer-help-button/22748/16 "2015-10-12T04:06:56Z")

</div>

First time using CSS, it’s quite easy actually 😉

The following customization did the trick for me:

```html
.modal-inner-container {
    max-width: 950px;
    height: 820px;
}
.composer-help-modal {
  .composer-help-content {
    max-height: 750px;
  }
}

```

Thanks again!

---

<div class="post-metadata">

### Author: ![cpradio](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/cpradio/32/4970_2.png) [@cpradio](https://meta.discourse.org/u/cpradio)
#### Post date: [November 25, 2016, 3:50pm UTC](https://meta.discourse.org/t/composer-help-button/22748/17 "2016-11-25T15:50:55Z")

</div>

With the Ember 2.4 upgrade now merged in, there is a release branch to use for older versions of Discourse

`git clone --branch v0.6.0 https://github.com/cpradio/discourse-plugin-composer-help-button.git`

---

<div class="post-metadata">

### Author: ![cpradio](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/cpradio/32/4970_2.png) [@cpradio](https://meta.discourse.org/u/cpradio)
#### Post date: [April 9, 2020, 3:28am UTC](https://meta.discourse.org/t/composer-help-button/22748/18 "2020-04-09T03:28:19Z")

</div>

Just fixed  
[https://github.com/cpradio/discourse-plugin-composer-help-button/issues/12](https://github.com/cpradio/discourse-plugin-composer-help-button/issues/12)

---

<div class="post-metadata">

### Author: ![AntiMetaman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/antimetaman/32/186978_2.png) [@AntiMetaman](https://meta.discourse.org/u/AntiMetaman)
#### Post date: [August 4, 2020, 1:53pm UTC](https://meta.discourse.org/t/composer-help-button/22748/19 "2020-08-04T13:53:57Z")

</div>

Does someone have a good post or documentation that explains all the markdown, bbcode, and html tags in discourse? This can be used for the composer help button.

---

<div class="post-metadata">

### Author: ![EricGT](https://avatars.discourse-cdn.com/v4/letter/e/f1d935/32.png) [@EricGT](https://meta.discourse.org/u/EricGT)
#### Post date: [August 4, 2020, 2:11pm UTC](https://meta.discourse.org/t/composer-help-button/22748/20 "2020-08-04T14:11:15Z")

</div>

IMHO that is a lot to give to all users in one post.

If it were me I would break it down and post just the basics on the popup and include links to more advanced features. Also don’t forget to note the `Keyboard Shortcuts` which is on Discourse by default and accessed under the hamburger menu.

[Next page](https://meta.discourse.org/t/composer-help-button/22748.md?page=2)
