mirror of
https://github.com/anticensority/runet-censorship-bypass.git
synced 2024-11-27 20:03:45 +03:00
Add replaceRedirectWith modifier in own proxies, see #62
This commit is contained in:
parent
a6fd4d44f1
commit
12db4afe55
|
@ -130,6 +130,14 @@
|
|||
desc: 'Проксировать особые домены. Необходима поддержка со стороны СВОИХ прокси.',
|
||||
order: 8,
|
||||
},
|
||||
replaceDirectWith: {
|
||||
ifDisabled: true,
|
||||
dflt: false,
|
||||
category: 'ownProxies',
|
||||
label: 'подменять DIRECT на',
|
||||
desc: 'Использовать в PAC-скрипте указанную строку для запросов напрямую (вместо директивы DIRECT). Данная строка не проверяется на требования к шифрованию связи до прокси! Строка должна соответствовать формату возвращаемого значения PAC-скрипта, который подобен <a href="https://rebrand.ly/ac-own-proxies#user-content-Формат">формату своих прокси</a>.',
|
||||
order: 9,
|
||||
},
|
||||
|
||||
});
|
||||
|
||||
|
@ -327,7 +335,7 @@
|
|||
/******/ "use strict";
|
||||
/******/
|
||||
/******/ const originalFindProxyForURL = FindProxyForURL;
|
||||
/******/ const tmp = function(url, host) {
|
||||
/******/ let tmp = function(url, host) {
|
||||
/******/
|
||||
${
|
||||
function() {
|
||||
|
@ -465,7 +473,16 @@ ${ pacMods.filteredCustomsString
|
|||
}
|
||||
|
||||
/******/ };
|
||||
|
||||
${
|
||||
!pacMods.replaceDirectWith
|
||||
? ''
|
||||
: `
|
||||
/******/ const oldTmp = tmp;
|
||||
/******/ tmp = function(url, host) {
|
||||
/******/ return oldTmp.call(this, url, host).replace(/(;|^)\\s*DIRECT\\s*(?=;|$)/g, "$1${pacMods.replaceDirectWith}");
|
||||
/******/ };
|
||||
`
|
||||
}
|
||||
/******/ if (global) {
|
||||
/******/ global.FindProxyForURL = tmp;
|
||||
/******/ } else {
|
||||
|
|
|
@ -25,6 +25,9 @@ export default function getInfoLi() {
|
|||
.infoRow {
|
||||
position: relative;
|
||||
}
|
||||
.infoRow a {
|
||||
text-decoration: underline;
|
||||
}
|
||||
.infoRow > input[type="checkbox"] {
|
||||
position: relative;
|
||||
top: -0.08em;
|
||||
|
|
|
@ -31,6 +31,7 @@ export default function getMain(theState) {
|
|||
const Notifications = getNotifications(theState);
|
||||
|
||||
const checksName = 'pacMods';
|
||||
let selection = [0, 0]; // TODO: dirty hack but seems ok.
|
||||
|
||||
return class Main extends Component {
|
||||
|
||||
|
@ -161,6 +162,26 @@ export default function getMain(theState) {
|
|||
orderedConfigs: this.state.catToOrderedMods['ownProxies'],
|
||||
childrenOfMod: {
|
||||
customProxyStringRaw: ProxyEditor,
|
||||
replaceDirectWith: ({ conf, onNewValue, ifInputsDisabled }) =>
|
||||
(<input
|
||||
style="width: 100%; margin: 0.5em 0"
|
||||
disabled={ifInputsDisabled}
|
||||
value={conf.value || ''}
|
||||
onInput={(event) => {
|
||||
|
||||
const t = event.target;
|
||||
selection = [t.selectionStart, t.selectionEnd];
|
||||
onNewValue(true, t.value);
|
||||
}}
|
||||
ref={(input) => {
|
||||
|
||||
if (input) {
|
||||
input.focus();
|
||||
input.selectionStart = selection[0];
|
||||
input.selectionEnd = selection[1];
|
||||
}
|
||||
}}
|
||||
/>),
|
||||
},
|
||||
name: checksName,
|
||||
}, modsHandlers)
|
||||
|
|
Loading…
Reference in New Issue
Block a user