(refs #8)Merge user name proposal API to IndexController.

This commit is contained in:
takezoe
2013-07-23 15:37:59 +09:00
parent e61bde1415
commit c86bf1d68b
5 changed files with 33 additions and 21 deletions

View File

@@ -5,10 +5,12 @@ import service._
import jp.sf.amateras.scalatra.forms._
class IndexController extends IndexControllerBase
with RepositoryService with AccountService with SystemSettingsService with ActivityService
with RepositoryService with SystemSettingsService with ActivityService with AccountService
with UsersAuthenticator
trait IndexControllerBase extends ControllerBase { self: RepositoryService
with SystemSettingsService with ActivityService =>
trait IndexControllerBase extends ControllerBase {
self: RepositoryService with SystemSettingsService with ActivityService with AccountService
with UsersAuthenticator =>
get("/"){
val loginAccount = context.loginAccount
@@ -20,4 +22,14 @@ trait IndexControllerBase extends ControllerBase { self: RepositoryService
)
}
/**
* JSON API for collaborator completion.
*/
// TODO Move to other controller?
get("/_user/proposals")(usersOnly {
contentType = formats("json")
org.json4s.jackson.Serialization.write(Map("options" -> getAllUsers.filter(!_.isGroupAccount).map(_.userName).toArray))
})
}

View File

@@ -57,14 +57,14 @@ trait RepositorySettingsControllerBase extends ControllerBase with FlashMapSuppo
settings.html.collaborators(getCollaborators(repository.owner, repository.name), repository)
})
/**
* JSON API for collaborator completion.
*/
// TODO Merge with UserManagementController
get("/:owner/:repository/settings/collaborators/proposals")(usersOnly {
contentType = formats("json")
org.json4s.jackson.Serialization.write(Map("options" -> getAllUsers.filter(!_.isGroupAccount).map(_.userName).toArray))
})
// /**
// * JSON API for collaborator completion.
// */
// // TODO Merge with UserManagementController
// get("/:owner/:repository/settings/collaborators/proposals")(usersOnly {
// contentType = formats("json")
// org.json4s.jackson.Serialization.write(Map("options" -> getAllUsers.filter(!_.isGroupAccount).map(_.userName).toArray))
// })
/**
* Add the collaborator.

View File

@@ -126,13 +126,13 @@ trait UserManagementControllerBase extends AccountManagementControllerBase {
} getOrElse NotFound
})
/**
* JSON API for collaborator completion.
*/
// TODO Merge with RepositorySettingsController
get("/admin/users/_members"){
contentType = formats("json")
org.json4s.jackson.Serialization.write(Map("options" -> getAllUsers.filter(!_.isGroupAccount).map(_.userName).toArray))
}
// /**
// * JSON API for collaborator completion.
// */
// // TODO Merge with RepositorySettingsController
// get("/admin/users/_members"){
// contentType = formats("json")
// org.json4s.jackson.Serialization.write(Map("options" -> getAllUsers.filter(!_.isGroupAccount).map(_.userName).toArray))
// }
}

View File

@@ -45,7 +45,7 @@
$(function(){
$('#memberName').typeahead({
source: function (query, process) {
return $.get('@path/admin/users/_members', { query: query },
return $.get('@path/_user/proposals', { query: query },
function (data) {
return process(data.options);
});

View File

@@ -26,7 +26,7 @@
$(function(){
$('#userName').typeahead({
source: function (query, process) {
return $.get('@url(repository)/settings/collaborators/proposals', { query: query },
return $.get('@path/_user/proposals', { query: query },
function (data) {
return process(data.options);
});