mirror of
https://github.com/anatolykopyl/vk-mute.git
synced 2026-03-26 12:55:13 +00:00
Initial commit
This commit is contained in:
15
background.js
Normal file
15
background.js
Normal file
@@ -0,0 +1,15 @@
|
||||
chrome.runtime.onInstalled.addListener(function() {
|
||||
chrome.storage.sync.set({isExtensionOn: true}, function() {
|
||||
console.log('isExtensionOn: '+true);
|
||||
});
|
||||
|
||||
chrome.declarativeContent.onPageChanged.removeRules(undefined, function() {
|
||||
chrome.declarativeContent.onPageChanged.addRules([{
|
||||
conditions: [new chrome.declarativeContent.PageStateMatcher({
|
||||
pageUrl: {hostEquals: 'vk.com'},
|
||||
})
|
||||
],
|
||||
actions: [new chrome.declarativeContent.ShowPageAction()]
|
||||
}]);
|
||||
});
|
||||
});
|
||||
21
hide_element.js
Normal file
21
hide_element.js
Normal file
@@ -0,0 +1,21 @@
|
||||
var idToHide;
|
||||
|
||||
function hidePeer(peer) {
|
||||
chrome.storage.sync.get('idToHide', function(data) {
|
||||
idToHide = data.idToHide
|
||||
});
|
||||
|
||||
chrome.storage.sync.get('isExtensionOn', function(data) {
|
||||
if (data.isExtensionOn) {
|
||||
var x = document.querySelectorAll('[data-peer="'+peer+'"]');
|
||||
|
||||
x.forEach(
|
||||
function(val) {
|
||||
val.style.display = "none";
|
||||
}
|
||||
)
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
var interval = window.setInterval(function(){ hidePeer(idToHide) }, 500);
|
||||
24
manifest.json
Normal file
24
manifest.json
Normal file
@@ -0,0 +1,24 @@
|
||||
{
|
||||
"name": "Hide Cringe",
|
||||
"version": "1.0",
|
||||
"description": "Hides cringe",
|
||||
"permissions": ["activeTab", "declarativeContent", "storage"],
|
||||
"background": {
|
||||
"scripts": [
|
||||
"background.js"
|
||||
],
|
||||
"persistent": false
|
||||
},
|
||||
"page_action": {
|
||||
"default_popup": "popup.html"
|
||||
},
|
||||
"manifest_version": 2,
|
||||
"content_scripts": [
|
||||
{
|
||||
"matches": [
|
||||
"https://*.vk.com/*"
|
||||
],
|
||||
"js": ["hide_element.js"]
|
||||
}
|
||||
]
|
||||
}
|
||||
104
popup.html
Normal file
104
popup.html
Normal file
@@ -0,0 +1,104 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<style>
|
||||
body {
|
||||
min-width: 80px;
|
||||
}
|
||||
/* The switch - the box around the slider */
|
||||
.switch {
|
||||
position: relative;
|
||||
display: inline-block;
|
||||
width: 60px;
|
||||
height: 34px;
|
||||
}
|
||||
|
||||
/* Hide default HTML checkbox */
|
||||
.switch input {
|
||||
opacity: 0;
|
||||
width: 0;
|
||||
height: 0;
|
||||
}
|
||||
|
||||
/* The slider */
|
||||
.slider {
|
||||
position: absolute;
|
||||
cursor: pointer;
|
||||
top: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
background-color: #ccc;
|
||||
-webkit-transition: .4s;
|
||||
transition: .4s;
|
||||
}
|
||||
|
||||
.slider:before {
|
||||
position: absolute;
|
||||
content: "";
|
||||
height: 26px;
|
||||
width: 26px;
|
||||
left: 4px;
|
||||
bottom: 4px;
|
||||
background-color: white;
|
||||
-webkit-transition: .4s;
|
||||
transition: .4s;
|
||||
}
|
||||
|
||||
input:checked + .slider {
|
||||
background-color: #2196F3;
|
||||
}
|
||||
|
||||
input:focus + .slider {
|
||||
box-shadow: 0 0 1px #2196F3;
|
||||
}
|
||||
|
||||
input:checked + .slider:before {
|
||||
-webkit-transform: translateX(26px);
|
||||
-ms-transform: translateX(26px);
|
||||
transform: translateX(26px);
|
||||
}
|
||||
|
||||
/* Rounded sliders */
|
||||
.slider.round {
|
||||
border-radius: 34px;
|
||||
}
|
||||
|
||||
.slider.round:before {
|
||||
border-radius: 50%;
|
||||
}
|
||||
|
||||
.header {
|
||||
background-color: #2196F3;
|
||||
color: white;
|
||||
width: 100vw;
|
||||
position: relative;
|
||||
margin-left: -50vw;
|
||||
left: 50%;
|
||||
margin-top: -20vw;
|
||||
margin-bottom: 10vw;
|
||||
padding-top: 5px;
|
||||
padding-bottom: 5px;
|
||||
}
|
||||
|
||||
input {
|
||||
font-size:13pt;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div class="header">
|
||||
<input id="idToHide" type="text" placeholder="ID человека" />
|
||||
<h3 align="center" id="status"></h3>
|
||||
</div>
|
||||
<!--<button id="disableButton">Toggle</button>-->
|
||||
<div style="text-align: center;">
|
||||
<label class="switch">
|
||||
<input type="checkbox" id="disableCheckbox">
|
||||
<span class="slider round"></span>
|
||||
</label>
|
||||
</div>
|
||||
<script src="popup.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
59
popup.js
Normal file
59
popup.js
Normal file
@@ -0,0 +1,59 @@
|
||||
//let disableButton = document.getElementById('disableButton');
|
||||
let disableCheckbox = document.getElementById('disableCheckbox');
|
||||
let idToHideInput = document.getElementById('idToHide');
|
||||
let status = document.getElementById('status');
|
||||
var isExtensionOn;
|
||||
var idToHide;
|
||||
|
||||
var enableText = "Кринж офф";
|
||||
var disableText = "Кринж он";
|
||||
|
||||
chrome.storage.sync.get('isExtensionOn', function(data) {
|
||||
isExtensionOn = data.isExtensionOn;
|
||||
|
||||
disableCheckbox.checked = isExtensionOn;
|
||||
if (isExtensionOn) {
|
||||
status.innerHTML = enableText;
|
||||
} else {
|
||||
status.innerHTML = disableText;
|
||||
}
|
||||
});
|
||||
|
||||
chrome.storage.sync.get('idToHide', function(data) {
|
||||
idToHide = data.idToHide;
|
||||
idToHideInput.value = idToHide;
|
||||
});
|
||||
|
||||
|
||||
/*disableButton.onclick = function(element) {
|
||||
isExtensionOn = !isExtensionOn;
|
||||
if (isExtensionOn) {
|
||||
status.innerHTML = "Enabled";
|
||||
} else {
|
||||
status.innerHTML = "Disabled";
|
||||
}
|
||||
|
||||
chrome.storage.sync.set({isExtensionOn: isExtensionOn}, function() {
|
||||
console.log('isExtensionOn: '+isExtensionOn);
|
||||
});
|
||||
};*/
|
||||
|
||||
disableCheckbox.addEventListener('change', (event) => {
|
||||
isExtensionOn = event.target.checked;
|
||||
if (event.target.checked) {
|
||||
status.innerHTML = enableText;
|
||||
} else {
|
||||
status.innerHTML = disableText;
|
||||
}
|
||||
|
||||
chrome.storage.sync.set({isExtensionOn: isExtensionOn}, function() {
|
||||
console.log('isExtensionOn: '+isExtensionOn);
|
||||
});
|
||||
});
|
||||
|
||||
idToHideInput.addEventListener('input', (event) => {
|
||||
chrome.storage.sync.set({idToHide: idToHideInput.value}, function() {
|
||||
console.log('idToHide: '+idToHideInput.value);
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user