Autocomplete on document title edition

This commit is contained in:
jendib 2013-08-02 23:59:00 +02:00
parent 210f0dcc27
commit 05683ef81e
3 changed files with 23 additions and 3 deletions

View File

@ -1,4 +1,3 @@
- Autocomplete on document title (client/server)
- List opened sessions and ability to close them (client/server)
- Display logs (client)
- Reordering files and add new files to the end (server)

View File

@ -14,6 +14,23 @@ App.controller('DocumentEdit', function($scope, $q, $http, $state, $stateParams,
$scope.alerts.splice(index, 1);
};
/**
* Returns a promise for typeahead title.
*/
$scope.getTitleTypeahead = function($viewValue) {
var deferred = $q.defer();
Restangular.one('document')
.getList('list', {
limit: 5,
sort_column: 1,
asc: true,
search: $viewValue
}).then(function(data) {
deferred.resolve(_.pluck(data.documents, 'title'));
});
return deferred.promise;
};
/**
* Returns true if in edit mode (false in add mode).
*/
@ -38,6 +55,8 @@ App.controller('DocumentEdit', function($scope, $q, $http, $state, $stateParams,
$scope.edit = function() {
var promise = null;
var document = angular.copy($scope.document);
// Transform date to timestamp
if (document.create_date instanceof Date) {
document.create_date = document.create_date.getTime();
}
@ -57,7 +76,6 @@ App.controller('DocumentEdit', function($scope, $q, $http, $state, $stateParams,
// Upload files after edition
promise.then(function(data) {
var promises = [];
$scope.fileProgress = 0;
// When all files upload are over, move on

View File

@ -2,7 +2,10 @@
<div class="control-group" ng-class="{ error: !documentForm.title.$valid }">
<label class="control-label" for="inputTitle">Title</label>
<div class="controls">
<input required ng-maxlength="100" class="input-block-level" type="text" id="inputTitle" placeholder="Title" name="title" ng-model="document.title" />
<input required ng-maxlength="100" class="input-block-level" type="text" id="inputTitle"
placeholder="Title" name="title" ng-model="document.title" autocomplete="off"
typeahead="document for document in getTitleTypeahead($viewValue) | filter: $viewValue"
typeahead-wait-ms="200" />
</div>
</div>
<div class="control-group" ng-class="{ error: !documentForm.description.$valid }">