fix(utm): заменить публичную chob на banch (#327)
deploy-preland / deploy zoomstage.online (push) Successful in 42s

This commit is contained in:
Panfilov Konstantin committed 2026-10-25 05:09:55 +03:00
1 parent 08febba368
commit 965eb2e6a5
12 files changed
+58 -33

No files matched your search

+7 -5
View File
@@ -2,17 +2,19 @@
const assert = require('node:assert/strict');
const fs = require('node:fs');
const vm = require('node:vm');
const source = fs.readFileSync('/app/components/utm-handoff.php','utf8').split("<<<'JS'\n")[1].split('\nJS;')[0];
const source = fs.readFileSync('/app/components/utm-handoff.php','utf8').replace(/\r\n/g,'\n').split("<<<'JS'\n")[1].split('\nJS;')[0];
const context = {window:{},URLSearchParams,Uint8Array,crypto:require('node:crypto').webcrypto};
vm.runInNewContext(source,context);
const handoff=context.window.ZoomzillaUtmHandoff;
const defaults={indpic:'1',theme:'1',degr:'1',reg:'2',chob:'2',tp:'1',cons:'2',focus:'1'};
const selected={indpic:'2',theme:'2',degr:'2',reg:'1',chob:'1',tp:'2',cons:'3',focus:'2'};
const defaults={indpic:'1',theme:'1',degr:'1',reg:'2',banch:'2',tp:'1',cons:'2',focus:'1'};
const selected={indpic:'2',theme:'2',degr:'2',reg:'1',banch:'1',tp:'2',cons:'3',focus:'2'};
const foreign='utm_source=abcd9same&subid=%D1%82%D0%B5%D1%81%D1%82+%2B+%26&id=42&stage=keep';
for(const meta of [
{redirectUtm:foreign,utmDigits:selected},
{redirectUtm:foreign,utmDigits:{...selected,banch:undefined,chob:'1'}},
{redirectUtm:foreign+'&indpic=abcd2&theme=абвг2&degr=abcd2&reg=abcd1&chob=abcd1&tp=abcd2&cons=abcd3&focus=abcd2'},
{redirectUtm:foreign+'&indpic=2&theme=light&degr=2&registration=before&bchoice=b&tp=2&cons=3&focus=center&chb=a'},
{redirectUtm:foreign+'&indpic=abcd2&theme=абвг2&degr=abcd2&reg=abcd1&chob=abcd1&tp=abcd2&cons=abcd3&focus=abcd2'}
{redirectUtm:foreign+'&indpic=abcd2&theme=абвг2&degr=abcd2&reg=abcd1&banch=abcd1&tp=abcd2&cons=abcd3&focus=abcd2'}
]){
const before=JSON.stringify(meta);
const first=new URLSearchParams(handoff.query(meta,defaults));
@@ -27,7 +29,7 @@ for(const meta of [
assert.equal(query.get('utm_source'),'abcd9same');
assert.equal(query.get('subid'),'тест + &');
assert.equal(query.get('id'),'42'); assert.equal(query.get('stage'),'keep');
for(const legacy of ['registration','bchoice','chb'])assert.equal(query.has(legacy),false);
for(const legacy of ['registration','bchoice','chb','chob'])assert.equal(query.has(legacy),false);
}
assert.equal(JSON.stringify(meta),before);
}