mirror of
https://github.com/anatolykopyl/vk-mute.git
synced 2026-03-26 12:55:13 +00:00
Multiple mutes
This commit is contained in:
2
extension/dist/background.js
vendored
2
extension/dist/background.js
vendored
File diff suppressed because one or more lines are too long
51
extension/dist/dom.js
vendored
51
extension/dist/dom.js
vendored
File diff suppressed because one or more lines are too long
4
extension/dist/popup.html
vendored
4
extension/dist/popup.html
vendored
@@ -14,8 +14,8 @@
|
|||||||
<span class="slider round"></span>
|
<span class="slider round"></span>
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="id_list">
|
<div id="id_list">
|
||||||
<div id="idToHide"></div>
|
<div class="idToHide"></div>
|
||||||
</div>
|
</div>
|
||||||
<script src="popup.js"></script></body>
|
<script src="popup.js"></script></body>
|
||||||
</html>
|
</html>
|
||||||
70
extension/dist/popup.js
vendored
70
extension/dist/popup.js
vendored
File diff suppressed because one or more lines are too long
7057
package-lock.json
generated
7057
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
24
src/dom/controls.js
vendored
24
src/dom/controls.js
vendored
@@ -65,20 +65,26 @@ function setIdToHideHandle(chatBody) {
|
|||||||
return function (event) {
|
return function (event) {
|
||||||
const clickedId = event.target.id.substr(4); // get id of sender from element id
|
const clickedId = event.target.id.substr(4); // get id of sender from element id
|
||||||
|
|
||||||
chrome.storage.sync.set({idToHide: clickedId}, function () {
|
chrome.storage.sync.get('idToHide', function(data) {
|
||||||
hideExistingMessages(clickedId);
|
let idToHide = data.idToHide==='' ? [] : data.idToHide;
|
||||||
console.log('idToHide: ' + clickedId);
|
idToHide.push(clickedId);
|
||||||
|
chrome.storage.sync.set({idToHide: idToHide}, function () {
|
||||||
|
hideExistingMessages();
|
||||||
|
console.log('idToHide: ' + data.idToHide);
|
||||||
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export function hideExistingMessages(id) {
|
export function hideExistingMessages() {
|
||||||
const chatBody = getChatBody();
|
chrome.storage.sync.get('idToHide', function(data) {
|
||||||
for (let item of chatBody.children) {
|
const chatBody = getChatBody();
|
||||||
if (item.dataset.peer === id) {
|
for (let item of chatBody.children) {
|
||||||
item.style.display = "none";
|
if (data.idToHide.includes(item.dataset.peer)) {
|
||||||
|
item.style.display = "none";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// Try to add controls until successful. Needed for page refresh.
|
// Try to add controls until successful. Needed for page refresh.
|
||||||
|
|||||||
@@ -18,11 +18,10 @@ function newMessageHandler(message, idToHide) {
|
|||||||
|
|
||||||
chrome.storage.sync.get('isExtensionOn', function(data) {
|
chrome.storage.sync.get('isExtensionOn', function(data) {
|
||||||
if (data.isExtensionOn) {
|
if (data.isExtensionOn) {
|
||||||
if (message.dataset.peer === idToHide) {
|
if (idToHide.includes(message.dataset.peer)) {
|
||||||
message.style.display = "none";
|
message.style.display = "none";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -13,6 +13,7 @@ function init() {
|
|||||||
if (tryToInitControls()) {
|
if (tryToInitControls()) {
|
||||||
createTryToInitInterval();
|
createTryToInitInterval();
|
||||||
addNewMessageEventListener();
|
addNewMessageEventListener();
|
||||||
|
hideExistingMessages();
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -77,11 +77,15 @@ input:checked + .slider:before {
|
|||||||
padding-bottom: 5px;
|
padding-bottom: 5px;
|
||||||
}
|
}
|
||||||
|
|
||||||
#idToHide {
|
.idToHide {
|
||||||
margin: 10px;
|
margin: 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.id_list {
|
.idToHide:hover {
|
||||||
|
background-color: white;
|
||||||
|
}
|
||||||
|
|
||||||
|
#id_list {
|
||||||
background-color: #dcdfde;
|
background-color: #dcdfde;
|
||||||
color: black;
|
color: black;
|
||||||
width: 100vw;
|
width: 100vw;
|
||||||
|
|||||||
@@ -14,8 +14,8 @@
|
|||||||
<span class="slider round"></span>
|
<span class="slider round"></span>
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="id_list">
|
<div id="id_list">
|
||||||
<div id="idToHide"></div>
|
<div class="idToHide"></div>
|
||||||
</div>
|
</div>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
@@ -2,13 +2,21 @@ import './popup.css'
|
|||||||
|
|
||||||
//let disableButton = document.getElementById('disableButton');
|
//let disableButton = document.getElementById('disableButton');
|
||||||
let disableCheckbox = document.getElementById('disableCheckbox');
|
let disableCheckbox = document.getElementById('disableCheckbox');
|
||||||
let idToHideDisplay = document.getElementById('idToHide');
|
let idToHideDisplay = document.getElementsByClassName('idToHide');
|
||||||
|
let idList = document.getElementById("id_list");
|
||||||
let status = document.getElementById('status');
|
let status = document.getElementById('status');
|
||||||
var isExtensionOn;
|
let isExtensionOn;
|
||||||
var idToHide;
|
let idToHide = [];
|
||||||
|
|
||||||
var enableText = "Кринж офф";
|
let enableText = "Кринж офф";
|
||||||
var disableText = "Кринж он";
|
let disableText = "Кринж он";
|
||||||
|
|
||||||
|
function idBtnHTML(id) {
|
||||||
|
const element = document.createElement('div');
|
||||||
|
element.setAttribute('class', 'idToHide');
|
||||||
|
element.innerHTML = id;
|
||||||
|
return element;
|
||||||
|
}
|
||||||
|
|
||||||
chrome.storage.sync.get('isExtensionOn', function(data) {
|
chrome.storage.sync.get('isExtensionOn', function(data) {
|
||||||
isExtensionOn = data.isExtensionOn;
|
isExtensionOn = data.isExtensionOn;
|
||||||
@@ -23,7 +31,22 @@ chrome.storage.sync.get('isExtensionOn', function(data) {
|
|||||||
|
|
||||||
chrome.storage.sync.get('idToHide', function(data) {
|
chrome.storage.sync.get('idToHide', function(data) {
|
||||||
idToHide = data.idToHide;
|
idToHide = data.idToHide;
|
||||||
idToHideDisplay.innerText = idToHide;
|
for (const id in idToHide) {
|
||||||
|
const row = idBtnHTML(idToHide[id]);
|
||||||
|
idList.appendChild(row);
|
||||||
|
}
|
||||||
|
for (const element of idToHideDisplay) {
|
||||||
|
element.addEventListener('click', function() {
|
||||||
|
const index = idToHide.indexOf(element.innerText)
|
||||||
|
if (index > -1) {
|
||||||
|
idToHide.splice(index, 1);
|
||||||
|
}
|
||||||
|
chrome.storage.sync.set({idToHide: idToHide}, function() {
|
||||||
|
element.innerText = '';
|
||||||
|
console.log('Cleared idToHide');
|
||||||
|
});
|
||||||
|
});
|
||||||
|
};
|
||||||
});
|
});
|
||||||
|
|
||||||
disableCheckbox.addEventListener('change', (event) => {
|
disableCheckbox.addEventListener('change', (event) => {
|
||||||
@@ -38,10 +61,3 @@ disableCheckbox.addEventListener('change', (event) => {
|
|||||||
console.log('isExtensionOn: '+isExtensionOn);
|
console.log('isExtensionOn: '+isExtensionOn);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
idToHideDisplay.addEventListener('click', function() {
|
|
||||||
chrome.storage.sync.set({idToHide: ''}, function() {
|
|
||||||
idToHideDisplay.innerText = '';
|
|
||||||
console.log('Cleared idToHide');
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|||||||
Reference in New Issue
Block a user