-
Notifications
You must be signed in to change notification settings - Fork 0
/
script.js
50 lines (44 loc) · 2.1 KB
/
script.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
var menuButton = `<div>
<button type="button" id="me" class="kanbanFilter">Me</button>
<button type="button" id="Coworker" class="kanbanFilter">Coworker</button>
<button type="button" id="Cat" class="kanbanFilter">Cat</button>
<button type="button" id="showAll" class="kanbanFilter">All</button>
`;
function addMenuButton() {
var people = $('.Facepile.Facepile--compact.projectHeaderFacepile-clarifiedNavigationFacepileClickable').children()
var menuButton = "<div id='memberFilterButtons' class='extra-buttons'></div>";
$(menuButton).prependTo('div.BoardHeader.Board-header');
var container = $("#memberFilterButtons");
container.append("<span class='prefix'>Filter by: </span>");
for (var person of people) {
var bgImage = $(person).css('background-image');
var bg = bgImage.replace('url(','').replace(')','').replace(/\"/gi, "");
var content = "";
// var content = `<img src="${bg}" />`;
var child = $(`<button type="button" data-style="${bg}" class="kanbanFilter kanbanFilterMember Avatar Avatar--small">${content}</button>`);
child.css('background-image', bgImage);
container.append(child);
}
var allChild = $(`<button type="button" id="showAll" class="kanbanFilter Avatar Avatar--small">All</button>`)
allChild.css('background-image', "http://via.placeholder.com/27x27/ccc/010101?text=All");
container.append(allChild);
}
$(function() {
console.log("ready!");
addMenuButton();
//coworker
$('button.kanbanFilterMember').click(function() {
var dataStyle = $(this).attr('data-style');
var dataStyleTrim = dataStyle.replace('_27x27.png','').replace('_60x60.png','');
console.log('filtered Coworker!', dataStyle);
//hide everything
$('div.BoardCardWithCustomProperties-leftMetadata').closest('.SortableItem').hide();
//show coworker
$('[style*="'+dataStyleTrim+'_27x27.png"]').closest('.SortableItem').show();
$('[style*="'+dataStyleTrim+'_60x60.png"]').closest('.SortableItem').show();
});
$('#showAll').click(function() {
console.log('showing all!');
$('div.BoardCardWithCustomProperties-leftMetadata').closest('.SortableItem').show();
})
});