Commit 3e800c3bb1b835cd17e32eedd8816bc17f6317e4
1 parent
1cda6246
Exists in
master
and in
4 other branches
Refactor GFM JS naming and access
Showing
4 changed files
with
20 additions
and
19 deletions
Show diff stats
app/assets/javascripts/gfm_auto_complete.js.coffee
1 | 1 | # Creates the variables for setting up GFM auto-completion |
2 | 2 | |
3 | 3 | window.GitLab ?= {} |
4 | -window.GitLab.AutoComplete ?= {} | |
4 | +GitLab.GfmAutoComplete ?= {} | |
5 | 5 | |
6 | 6 | # Emoji |
7 | 7 | data = [] |
8 | 8 | template = "<li data-value='${insert}'>${name} <img alt='${name}' height='20' src='${image}' width='20' /></li>" |
9 | -window.GitLab.AutoComplete.Emoji = {data, template} | |
9 | +GitLab.GfmAutoComplete.Emoji = {data, template} | |
10 | 10 | |
11 | 11 | # Team Members |
12 | +data = [] | |
12 | 13 | url = ''; |
13 | 14 | params = {private_token: '', page: 1} |
14 | -window.GitLab.AutoComplete.Members = {data, url, params} | |
15 | +GitLab.GfmAutoComplete.Members = {data, url, params} | |
15 | 16 | |
16 | 17 | # Add GFM auto-completion to all input fields, that accept GFM input. |
17 | -window.setupGfmAutoComplete = -> | |
18 | +GitLab.GfmAutoComplete.setup = -> | |
18 | 19 | input = $('.js-gfm-input') |
19 | 20 | |
20 | 21 | # Emoji |
21 | 22 | input.atWho ':', |
22 | - data: GitLab.AutoComplete.Emoji.data, | |
23 | - tpl: GitLab.AutoComplete.Emoji.template | |
23 | + data: GitLab.GfmAutoComplete.Emoji.data, | |
24 | + tpl: GitLab.GfmAutoComplete.Emoji.template | |
24 | 25 | |
25 | 26 | # Team Members |
26 | 27 | input.atWho '@', (query, callback) -> |
27 | 28 | (getMoreMembers = -> |
28 | - $.getJSON(GitLab.AutoComplete.Members.url, GitLab.AutoComplete.Members.params) | |
29 | + $.getJSON(GitLab.GfmAutoComplete.Members.url, GitLab.GfmAutoComplete.Members.params) | |
29 | 30 | .success (members) -> |
30 | 31 | # pick the data we need |
31 | 32 | newMembersData = $.map(members, (m) -> m.name ) |
32 | 33 | |
33 | 34 | # add the new page of data to the rest |
34 | - $.merge(GitLab.AutoComplete.Members.data, newMembersData) | |
35 | + $.merge(GitLab.GfmAutoComplete.Members.data, newMembersData) | |
35 | 36 | |
36 | 37 | # show the pop-up with a copy of the current data |
37 | - callback(GitLab.AutoComplete.Members.data[..]) | |
38 | + callback(GitLab.GfmAutoComplete.Members.data[..]) | |
38 | 39 | |
39 | 40 | # are we past the last page? |
40 | 41 | if newMembersData.length is 0 |
41 | 42 | # set static data and stop callbacks |
42 | 43 | input.atWho '@', |
43 | - data: GitLab.AutoComplete.Members.data | |
44 | + data: GitLab.GfmAutoComplete.Members.data | |
44 | 45 | callback: null |
45 | 46 | else |
46 | 47 | # get next page |
47 | 48 | getMoreMembers() |
48 | 49 | |
49 | 50 | # so the next request gets the next page |
50 | - GitLab.AutoComplete.Members.params.page += 1 | |
51 | + GitLab.GfmAutoComplete.Members.params.page += 1 | |
51 | 52 | ).call() | ... | ... |
app/assets/javascripts/issues.js
... | ... | @@ -5,7 +5,7 @@ function switchToNewIssue(){ |
5 | 5 | $("#new_issue_dialog").show("fade", { direction: "right" }, 150); |
6 | 6 | $('.top-tabs .add_new').hide(); |
7 | 7 | disableButtonIfEmptyField("#issue_title", ".save-btn"); |
8 | - setupGfmAutoComplete(); | |
8 | + GitLab.GfmAutoComplete.setup(); | |
9 | 9 | }); |
10 | 10 | } |
11 | 11 | |
... | ... | @@ -16,7 +16,7 @@ function switchToEditIssue(){ |
16 | 16 | $("#edit_issue_dialog").show("fade", { direction: "right" }, 150); |
17 | 17 | $('.add_new').hide(); |
18 | 18 | disableButtonIfEmptyField("#issue_title", ".save-btn"); |
19 | - setupGfmAutoComplete(); | |
19 | + GitLab.GfmAutoComplete.setup(); | |
20 | 20 | }); |
21 | 21 | } |
22 | 22 | ... | ... |
app/views/layouts/_init_auto_complete.html.haml
1 | 1 | :javascript |
2 | 2 | $(function() { |
3 | - GitLab.AutoComplete.Members.url = "#{ "/api/v2/projects/#{@project.code}/members" if @project }"; | |
4 | - GitLab.AutoComplete.Members.params.private_token = "#{current_user.private_token}"; | |
3 | + GitLab.GfmAutoComplete.Members.url = "#{ "/api/v2/projects/#{@project.code}/members" if @project }"; | |
4 | + GitLab.GfmAutoComplete.Members.params.private_token = "#{current_user.private_token}"; | |
5 | 5 | |
6 | - GitLab.AutoComplete.Emoji.data = #{raw emoji_autocomplete_source}; | |
6 | + GitLab.GfmAutoComplete.Emoji.data = #{raw emoji_autocomplete_source}; | |
7 | 7 | // convert the list so that the items have the right format for completion |
8 | - GitLab.AutoComplete.Emoji.data = $.map(GitLab.AutoComplete.Emoji.data, function(value) { | |
8 | + GitLab.GfmAutoComplete.Emoji.data = $.map(GitLab.GfmAutoComplete.Emoji.data, function(value) { | |
9 | 9 | return { |
10 | 10 | name: value, |
11 | 11 | insert: value+':', |
... | ... | @@ -13,5 +13,5 @@ |
13 | 13 | } |
14 | 14 | }); |
15 | 15 | |
16 | - setupGfmAutoComplete(); | |
16 | + GitLab.GfmAutoComplete.setup(); | |
17 | 17 | }); | ... | ... |