From 89654431eadb9cdbec89b173e1c335592bb0a2b8 Mon Sep 17 00:00:00 2001 From: Dmitriy Zaporozhets Date: Tue, 1 Oct 2013 12:04:14 +0300 Subject: [PATCH] Group#ldap_cn selectbox with ajax autocomplete via api --- app/assets/javascripts/api.js.coffee | 22 +++++++++++++++++++--- app/views/groups/edit.html.haml | 2 +- 2 files changed, 20 insertions(+), 4 deletions(-) diff --git a/app/assets/javascripts/api.js.coffee b/app/assets/javascripts/api.js.coffee index db80e7b0f3..9d2cbf3a34 100644 --- a/app/assets/javascripts/api.js.coffee +++ b/app/assets/javascripts/api.js.coffee @@ -2,13 +2,14 @@ users_path: "/api/:version/users.json" user_path: "/api/:version/users/:id.json" notes_path: "/api/:version/projects/:id/notes.json" + ldap_groups_path: "/api/:version/ldap/groups.json" - # Get 20 (depends on api) recent notes + # Get 20 (depends on api) recent notes # and sort the ascending from oldest to newest notes: (project_id, callback) -> url = Api.buildUrl(Api.notes_path) url = url.replace(':id', project_id) - + $.ajax( url: url, data: @@ -37,7 +38,7 @@ # Only active users retrieved users: (query, callback) -> url = Api.buildUrl(Api.users_path) - + $.ajax( url: url data: @@ -52,3 +53,18 @@ buildUrl: (url) -> url = gon.relative_url_root + url if gon.relative_url_root? return url.replace(':version', gon.api_version) + + # Return LDAP groups list. Filtered by query + ldap_groups: (query, callback) -> + url = Api.buildUrl(Api.ldap_groups_path) + + $.ajax( + url: url + data: + private_token: gon.api_token + search: query + per_page: 20 + active: true + dataType: "json" + ).done (groups) -> + callback(groups) diff --git a/app/views/groups/edit.html.haml b/app/views/groups/edit.html.haml index 15bbaee6a4..3b1d633af1 100644 --- a/app/views/groups/edit.html.haml +++ b/app/views/groups/edit.html.haml @@ -76,7 +76,7 @@ = f.label :ldap_cn do LDAP Group cn .controls - = f.text_field :ldap_cn, placeholder: "Ex. QA group", class: "xxlarge left" + = f.hidden_field :ldap_cn, placeholder: "Ex. QA group", class: "xxlarge ajax-ldap-groups-select" .control-group = f.label :ldap_access do