Wpis z mikrobloga

Czy ktoś z #programowanie #webdev mająćy konto na #stackoverflow mógłby wrzucić mi tamm jedno pytanie? Ewentualnie pomóc tutaj?

#javascript

Hello!

I'm writing a userscript currently, and i wanted to clean my code up.. I've changed this:


if (document.location.href.search("de.example.com") != -1) {
var lng = "de";
var gamepage = ".de.example.com";
var reg = /http:\/\/s(\d+)\.de\.example\.com\/(.*?)\.php(.*)/i;
}

if (document.location.href.search("pl.example.com") != -1) {
var lng = "pl";
var gamepage = ".pl.example.com";
var reg = /http:\/\/s(\d+)\.pl\.example\.com\/(.*?)\.php(.*)/i;
}

to this (I've got a bit more of these, but i wanted to start with small pieces):


var ccode = [["de","de",".de.example.com"],["pl","pl",".pl.example.pl"]];
var lng;
var gamepage;
var reg;

for ( var i = 0; !document.location.href.search(ccode[i][1]+".example.com") != -1; i++) {
lng = ccode[i][1];
gamepage = ccode[i][2];
reg = new RegExp("http://s(\d+)\." + ccode[i][1] + "\.example\.com/(.*?)\.php(.*)", "i");
}

I know that the vars are set properly, but, for some reason the script doesn't execute after this.. To give you a background it is used to change language of my script, it looks for ccode[i][1] in front of the url, it's searching for country code, if it would not find it, i++, and look for the ccode[i+1][1].


Thank you in advance. ;)
  • 22
@TaylorSwiftVerified: jeśli nie znajdzie ccode[i][1]+".example.com" w adresie strony i++ ccode[i][1] to np "pl" chodzi o zmianę jezyka skryptu..

Tamto działało, to chyba i to powinno, a że tamto miało ustawić wartości gdy znajdzie to to ma wartości nie zmieniac na kolejne jesli znajdzie czyli opuścić pętlę. Chyba, że totalnie to popierdzieliłęm ;v
@IreuN: do tego co podałeś będzie pasować xD i wybierze de (bierze literki od a-z także s1 nie pasuje), wszystko zależy jaki będzie adres itp. z magicznej kuli tego nie wywróżę. Ale prędzej tym sposobem bym próbował.
@xcccx: Czekaj, bo chyba wykminiłęm dlaczego nie idzie dalej, i++ i chce czytać z tablicy ccode[2] a takiego czegoś nie ma, dodam ifa i powinno grać, chyba ;v
@xcccx: Za to już wdizę, ze pół skryptu nie działa ;v

Na domenie pl git, na de nic nie działa, i och ironio, z "pl" logout page wraca do "de" XDD
document.location.href = "http://www" + gamepage;

gamepage to ".pl.example.com" a to cofa do .de wytłumacz mi #!$%@? jak ;v
@IreuN: nie document.location tylko window.location, document.location z tego co pamiętam to read-only. Po stronie skryptu php (czy czego tam masz) nie kontroluje czasem?
document.location


@xcccx: w konsoli działa, więc i tu powinno chyba, to jest sam skrypt, do strony która już istnieje, taka modyfikacja po prostu. poradziłem sobie i zrobiłem "http://www." + lang + ".example.com"; Tak działa, to nie pytam już dlaczego ;v
@IreuN: ciężko mi stwierdzić dlaczego tak może być (spróbuj z window.location albo samo location), jak masz to na serwerze albo coś to możesz na PW podrzucić linka to popatrzę.