gitlab-org--gitlab-foss/app/assets/javascripts/boards/components/board_blank_state.js.es6

56 lines
1.6 KiB
JavaScript
Raw Normal View History

(() => {
window.gl = window.gl || {};
window.gl.issueBoards = window.gl.issueBoards || {};
gl.issueBoards.BoardBlankState = Vue.extend({
data () {
return {
predefinedLabels: [
2016-08-10 16:41:30 -04:00
new ListLabel({ title: 'Development', color: '#5CB85C' }),
new ListLabel({ title: 'Testing', color: '#F0AD4E' }),
new ListLabel({ title: 'Production', color: '#FF5F00' }),
new ListLabel({ title: 'Ready', color: '#FF0000' })
]
}
},
2016-08-02 04:58:09 -04:00
methods: {
2016-08-15 03:36:37 -04:00
addDefaultLists () {
gl.issueBoards.BoardsStore.removeBlankState();
2016-08-09 05:25:07 -04:00
for (let i = 0, labelsLength = this.predefinedLabels.length; i < labelsLength; i++) {
const label = this.predefinedLabels[i];
gl.issueBoards.BoardsStore.addList({
title: label.title,
position: i,
list_type: 'label',
label: {
title: label.title,
color: label.color
}
});
}
// Save the labels
gl.boardService
.generateDefaultLists()
.then((resp) => {
const data = resp.json();
for (let i = 0, dataLength = data.length; i < dataLength; i++) {
const listObj = data[i],
list = gl.issueBoards.BoardsStore.findList('title', listObj.title);
list.id = listObj.id;
list.label.id = listObj.label.id;
list.getIssues();
}
});
2016-08-02 04:58:09 -04:00
},
clearBlankState () {
gl.issueBoards.BoardsStore.removeBlankState();
2016-08-02 04:58:09 -04:00
}
}
});
})();