Skip to content

Commit

Permalink
user, stats, search components, fix bug with bulk ops
Browse files Browse the repository at this point in the history
  • Loading branch information
erost committed Apr 1, 2017
1 parent 54c4a33 commit 082ef32
Show file tree
Hide file tree
Showing 10 changed files with 60 additions and 58 deletions.
3 changes: 1 addition & 2 deletions src/main/webapp/app/components/search-input/search-input.js
Original file line number Diff line number Diff line change
Expand Up @@ -252,8 +252,7 @@
}

// NEW AUTOCOMPLETE
function selectedItemChange(item) {
}
function selectedItemChange() {}

function transformChip(chip) {
if (chip.type === 'example') {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@

ctrl.metadatas = {};

ctrl.$onChanges = function (changesObj) {
ctrl.$onChanges = function () {
if (ctrl.found && ctrl.found.length) {
for (var i = 0; i < ctrl.found.length;i++) {
var card = ctrl.found[i];
Expand Down
43 changes: 23 additions & 20 deletions src/main/webapp/app/components/search/search.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,11 @@
project: '<',
user: '<'
},
controller: ['$location', '$http', '$log', '$filter', 'Search', 'User', 'LabelCache', 'Card', 'EventBus', SearchController],
controller: ['$location', '$http', '$log', 'Search', 'User', 'LabelCache', 'EventBus', SearchController],
templateUrl: 'app/components/search/search.html'
});

function SearchController($location, $http, $log, $filter, Search, User, LabelCache, Card, EventBus) {
function SearchController($location, $http, $log, Search, User, LabelCache, EventBus) {
var ctrl = this;

//
Expand All @@ -36,8 +36,9 @@

LabelCache.findByProjectShortName(ctrl.project.shortName).then(function (res) {
ctrl.labels = res;

for (var k in res) {
if (res[k].domain === 'SYSTEM' && res[k].name === 'MILESTONE') {
if (res.hasOwnProperty(k) && res[k].domain === 'SYSTEM' && res[k].name === 'MILESTONE') {
ctrl.milestoneLabel = res[k];
break;
}
Expand Down Expand Up @@ -92,13 +93,13 @@
function selectedCardsCount() {
var cnt = 0;

for (var project in ctrl.selected) {
for (var cardId in ctrl.selected[project]) {
if (ctrl.selected[project][cardId]) {
angular.forEach(ctrl.selected, function (cardIds) {
angular.forEach(cardIds, function (selected) {
if (selected) {
cnt++;
}
}
}
});
});

return cnt;
}
Expand All @@ -114,8 +115,8 @@
}

/* the user can only select the cards where he has the MANAGE_LABEL_VALUE, which is a project level property (or global)*/
for (var proj in projects) {
User.hasPermission('MANAGE_LABEL_VALUE', proj).then((function (idsToSetAsTrue, shortProjectName) {
angular.forEach(projects, function (cardIds, projectShortName) {
User.hasPermission('MANAGE_LABEL_VALUE', projectShortName).then((function (idsToSetAsTrue, shortProjectName) {
return function () {
for (var i = 0;i < idsToSetAsTrue.length;i++) {
if (!ctrl.selected[shortProjectName]) {
Expand All @@ -126,14 +127,16 @@

EventBus.emit('updatecheckbox');
};
})(projects[proj], proj));
}
})(cardIds, projectShortName));
});
}

function deselectAllInPage() {
for (var project in ctrl.selected) {
for (var i = 0;i < ctrl.found.length;i++) {
delete ctrl.selected[project][ctrl.found[i].id];
for (var projectShortName in ctrl.selected) {
if (ctrl.selected.hasOwnProperty(projectShortName)) {
for (var i = 0;i < ctrl.found.length;i++) {
delete ctrl.selected[projectShortName][ctrl.found[i].id];
}
}
}
EventBus.emit('updatecheckbox');
Expand All @@ -142,16 +145,16 @@
function collectIdsByProject() {
var res = {};

for (var projectShortName in ctrl.selected) {
for (var cardId in ctrl.selected[projectShortName]) {
if (ctrl.selected[projectShortName][cardId]) {
angular.forEach(ctrl.selected, function (cardIds, projectShortName) {
angular.forEach(cardIds, function (selected, cardId) {
if (selected) {
if (!res[projectShortName]) {
res[projectShortName] = [];
}
res[projectShortName].push(parseInt(cardId, 10));
}
}
}
});
});

return res;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,9 +36,7 @@
currentlyFetching.then(function () {
User.current().then(function (u) {
StompClient.disconnect(function () {
$http.post('logout/' + u.provider + '/').then(function () {
$window.location.reload();
});
$http.post('logout/' + u.provider + '/').then($window.location.reload);
});
});
});
Expand Down
4 changes: 3 additions & 1 deletion src/main/webapp/app/components/stats/chart/stats-chart.js
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,9 @@
var sortedIndexes = [];

for (var index in array) {
sortedIndexes.push(parseInt(index));
if (array.hasOwnProperty(index)) {
sortedIndexes.push(parseInt(index));
}
}
sortedIndexes.sort();

Expand Down
2 changes: 1 addition & 1 deletion src/main/webapp/app/components/user-avatar/user-avatar.js
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@
Tooltip.user(ctrl.user, $event.target);
}

function handleMouseLeave($event) {
function handleMouseLeave() {
Tooltip.clean();
}
}
Expand Down
2 changes: 1 addition & 1 deletion src/main/webapp/app/components/user-link/user-link.js
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@
Tooltip.user(ctrl.user, $event.target);
}

function handleMouseLeave($event) {
function handleMouseLeave() {
Tooltip.clean();
}
}
Expand Down
10 changes: 5 additions & 5 deletions src/main/webapp/app/components/user/dashboard/dashboard.js
Original file line number Diff line number Diff line change
Expand Up @@ -91,16 +91,16 @@
var groupedByDate = {};
var keyOrder = [];

for (var i in events) {
var dateRepresentation = $filter('date')(events[i].time, 'dd.MM.yyyy');
angular.forEach(events, function (event) {
var dateRepresentation = $filter('date')(event.time, 'dd.MM.yyyy');

if (keyOrder.indexOf(dateRepresentation) == -1) {
if (keyOrder.indexOf(dateRepresentation) === -1) {
keyOrder.push(dateRepresentation);
groupedByDate[dateRepresentation] = [];
}

groupedByDate[dateRepresentation].push(events[i]);
}
groupedByDate[dateRepresentation].push(event);
});

return {groupedByDate: groupedByDate, keyOrder: keyOrder};
}
Expand Down
4 changes: 2 additions & 2 deletions src/main/webapp/app/services/bulk-operation-modal.js
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,9 @@

$mdDialog.show(confirm).then(function () {
angular.forEach(toMove, function (cardIds, columnId) {
Card.moveAllFromColumnToLocation(columnId, toMove[columnId], location);
Card.moveAllFromColumnToLocation(columnId, cardIds, location);
});
}, function () {});
});
}

return {
Expand Down
44 changes: 22 additions & 22 deletions src/main/webapp/app/services/bulk-operations.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@
var labelValue = Label.userVal(user.id);
var r = [];

angular.forEach(idsByProject, function (projectShortName) {
r.push($http.post('api/project/' + projectShortName + '/bulk-op/assign', {value: labelValue, cardIds: idsByProject[projectShortName]}));
angular.forEach(idsByProject, function (cardIds, projectShortName) {
r.push($http.post('api/project/' + projectShortName + '/bulk-op/assign', {value: labelValue, cardIds: cardIds}));
});

return $q.all(r);
Expand All @@ -19,8 +19,8 @@
var labelValue = Label.userVal(user.id);
var r = [];

angular.forEach(idsByProject, function (projectShortName) {
r.push($http.post('api/project/' + projectShortName + '/bulk-op/remove-assign', {value: labelValue, cardIds: idsByProject[projectShortName]}));
angular.forEach(idsByProject, function (cardIds, projectShortName) {
r.push($http.post('api/project/' + projectShortName + '/bulk-op/remove-assign', {value: labelValue, cardIds: cardIds}));
});

return $q.all(r);
Expand All @@ -29,8 +29,8 @@
var labelValue = Label.userVal(user.id);
var r = [];

angular.forEach(idsByProject, function (projectShortName) {
r.push($http.post('api/project/' + projectShortName + '/bulk-op/re-assign', {value: labelValue, cardIds: idsByProject[projectShortName]}));
angular.forEach(idsByProject, function (cardIds, projectShortName) {
r.push($http.post('api/project/' + projectShortName + '/bulk-op/re-assign', {value: labelValue, cardIds: cardIds}));
});

return $q.all(r);
Expand All @@ -39,8 +39,8 @@
var labelValue = Label.userVal(user.id);
var r = [];

angular.forEach(idsByProject, function (projectShortName) {
r.push($http.post('api/project/' + projectShortName + '/bulk-op/watch', {value: labelValue, cardIds: idsByProject[projectShortName]}));
angular.forEach(idsByProject, function (cardIds, projectShortName) {
r.push($http.post('api/project/' + projectShortName + '/bulk-op/watch', {value: labelValue, cardIds: cardIds}));
});

return $q.all(r);
Expand All @@ -49,8 +49,8 @@
var labelValue = Label.userVal(user.id);
var r = [];

angular.forEach(idsByProject, function (projectShortName) {
r.push($http.post('api/project/' + projectShortName + '/bulk-op/remove-watch', {value: labelValue, cardIds: idsByProject[projectShortName]}));
angular.forEach(idsByProject, function (cardIds, projectShortName) {
r.push($http.post('api/project/' + projectShortName + '/bulk-op/remove-watch', {value: labelValue, cardIds: cardIds}));
});

return $q.all(r);
Expand All @@ -59,17 +59,17 @@
var labelValue = Label.dateVal($filter('extractISO8601Date')(dueDate));
var r = [];

angular.forEach(idsByProject, function (projectShortName) {
r.push($http.post('api/project/' + projectShortName + '/bulk-op/set-due-date', {value: labelValue, cardIds: idsByProject[projectShortName]}));
angular.forEach(idsByProject, function (cardIds, projectShortName) {
r.push($http.post('api/project/' + projectShortName + '/bulk-op/set-due-date', {value: labelValue, cardIds: cardIds}));
});

return $q.all(r);
},
removeDueDate: function (idsByProject) {
var r = [];

angular.forEach(idsByProject, function (projectShortName) {
r.push($http.post('api/project/' + projectShortName + '/bulk-op/remove-due-date', {value: null, cardIds: idsByProject[projectShortName]}));
angular.forEach(idsByProject, function (cardIds, projectShortName) {
r.push($http.post('api/project/' + projectShortName + '/bulk-op/remove-due-date', {value: null, cardIds: cardIds}));
});

return $q.all(r);
Expand All @@ -78,17 +78,17 @@
var labelValue = Label.listVal(milestone.id);
var r = [];

angular.forEach(idsByProject, function (projectShortName) {
r.push($http.post('api/project/' + projectShortName + '/bulk-op/set-milestone', {value: labelValue, cardIds: idsByProject[projectShortName]}));
angular.forEach(idsByProject, function (cardIds, projectShortName) {
r.push($http.post('api/project/' + projectShortName + '/bulk-op/set-milestone', {value: labelValue, cardIds: cardIds}));
});

return $q.all(r);
},
removeMilestone: function (idsByProject) {
var r = [];

angular.forEach(idsByProject, function (projectShortName) {
r.push($http.post('api/project/' + projectShortName + '/bulk-op/remove-milestone', {value: null, cardIds: idsByProject[projectShortName]}));
angular.forEach(idsByProject, function (cardIds, projectShortName) {
r.push($http.post('api/project/' + projectShortName + '/bulk-op/remove-milestone', {value: null, cardIds: cardIds}));
});

return $q.all(r);
Expand All @@ -97,8 +97,8 @@
// TODO: -> in reality there can be only one project in this call...
var r = [];

angular.forEach(idsByProject, function (projectShortName) {
r.push($http.post('api/project/' + projectShortName + '/bulk-op/add-label', {value: labelValue, labelId: labelToAdd.id, cardIds: idsByProject[projectShortName]}));
angular.forEach(idsByProject, function (cardIds, projectShortName) {
r.push($http.post('api/project/' + projectShortName + '/bulk-op/add-label', {value: labelValue, labelId: labelToAdd.id, cardIds: cardIds}));
});

return $q.all(r);
Expand All @@ -107,8 +107,8 @@
// TODO: -> in reality there can be only one project in this call...
var r = [];

angular.forEach(idsByProject, function (projectShortName) {
r.push($http.post('api/project/' + projectShortName + '/bulk-op/remove-label', {labelId: labelToRemove.id, value: labelValue, cardIds: idsByProject[projectShortName]}));
angular.forEach(idsByProject, function (cardIds, projectShortName) {
r.push($http.post('api/project/' + projectShortName + '/bulk-op/remove-label', {labelId: labelToRemove.id, value: labelValue, cardIds: cardIds}));
});

return $q.all(r);
Expand Down

0 comments on commit 082ef32

Please sign in to comment.