Jak zmenit urcitou funkci v Javascriptu

HackForum

Jak zmenit urcitou funkci v Javascriptu#
Zdravim Vas,
na strance
[link]
bych chtel, aby se pri nacitani stranky nenacetl kod
<script type="text/javascript" src="/OneStopCMS/Core/Script/GoogleMapsSear
ch.js"></script>

Chtel bych ho nahradit vlastnim upravenym.
Pouzivam Firefox.

Zkousel jsem stranku ulozit a pak zmenit normalne na disku tento soubor se scriptem, ale po ulozeni ztrati stranka funkcnost.

Dale jsem zkousel pomoci modulu greasemonkey spustit po nacteni stranky script
function ProcessResults(markerDataStr, statusCode) {
.....
}

ale myslim si, ze nefunguje kvuli tomu, ze funkce processresults je jiz jednou zavedena.
Diky moc za jakoukoliv odpoved, i treba jen nasmerovani.
(odpovědět)
Aoj | 178.255.168.*18.9.2013 14:49
re: Jak zmenit urcitou funkci v Javascriptu#
Doporučuji například skvělý nástroj Fiddler2, kde lze nastavit i taková pravidla, jako je podstrkávání jiného obsahu, viz. [link]

----------
Teprve když vstáváte s hackingem a uléháte s myšlenkou na něj, máte šanci být hackerem.
(odpovědět)
.cCuMiNn. | E-mail | Website | PGP18.9.2013 15:36
re: Jak zmenit urcitou funkci v Javascriptu#
Moc dekuji za odpoved. Ten nastroj vypada zajimave, ale moc s nim samozrejme neumim. Zkousel jsem nahradit tento skript mym timto zpusobem:
do
static function OnBeforeResponse(oSession: Session) {}
jsem vlozil tento kod

if (oSession.url=="/OneStopCMS/Core/Script/Goo
gleMapsSearch.js") {
oSession.url = "file:///C:/TEMP/GoogleMapsSearch.js";
}


a pote i tento
if (oSession.HostnameIs("www.ndna.org.uk") && oSession.oResponse.headers.ExistsAndContain
s("Content-Type","text/html")){
oSession.utilDecodeResponse();
oSession.utilReplaceInResponse('/OneStopCMS
/Core/Script/GoogleMapsSearch.js','file:///
C:/TEMP/GoogleMapsSearch.js');
}


ani jeden vsak nefunguje, kdyz vyprazdnim cookies a cache prohlizece, dam reload stranky, porad se nacita GoogleMapsSearch.js z puvodni stranky ndna.org.uk a ne to moje. Co delam spatne?

(odpovědět)
Aoj | 178.255.168.*18.9.2013 16:44
re: Jak zmenit urcitou funkci v Javascriptu#
Stačí udělat toto:

Rules >> Customize Rules...

Přejít do sekce: static function OnBeforeRequest...

Na konec této sekce přidat:
if (oSession.url=="www.seznam.cz/st/img/2011//
logo.png?3.33.13")
{
oSession.url = "www.soom.cz/images/design/bannerl.jpg";
}

Výsledek je hned viditelný. Pak jen stačí zamějit ta url. Možná zlobí to načítání externího souboru přes file:///, zkus když tak spustit lokálně nějakej webovej server.

----------
Teprve když vstáváte s hackingem a uléháte s myšlenkou na něj, máte šanci být hackerem.
(odpovědět)
.cCuMiNn. | E-mail | Website | PGP18.9.2013 19:19
re: Jak zmenit urcitou funkci v Javascriptu#
Jeste me napadlo, ze by mohl byt problem s tou relativni cestou ve tvem pravidle:

if (oSession.url=="/OneStopCMS/Core/Script/Goo
gleMapsSearch.js")

Zkus ji doplnit na absolutni.

----------
Teprve když vstáváte s hackingem a uléháte s myšlenkou na něj, máte šanci být hackerem.
(odpovědět)
.cCuMiNn. | E-mail | Website | PGP18.9.2013 20:08
re: Jak zmenit urcitou funkci v Javascriptu#
Diky moc, chyba byla v tom, ze jsem kod daval do onBeforeResponse.
Dale jsem nemel zapnuty streaming mod.
Mam na PC spusteny server na testovani php, takze kdyz jsem skript zkopiroval do slozky /home
a pak zadal oSession.url="127.0.0.1:8080/home/googlemap
ssearch.js" vse zacalo fungovat. Alespon se tedy nacetl ten muj skript, i kdyz jeste nefunguje jak bych chtel, ale to je zase jiny problem.
Diky moc za pomoc :)
(odpovědět)
Aoj | 178.255.168.*18.9.2013 22:06
re: Jak zmenit urcitou funkci v Javascriptu#
Jinak pokud nekdo chce nacitat obsah z vlastniho PC a nema server, tak nevim jestli je to mozne, i kdyz jsem upravil cestu na absolutni, skript se stejne nenacetl, mozna je na to nejaky trik, nevim
(odpovědět)
Aoj | 178.255.168.*18.9.2013 22:08
re: Jak zmenit urcitou funkci v Javascriptu#
V tomto kodu:
[link]

jsem vymazal cast:
var numToShow = results.length;
if (numToShow > 20) {
numToShow = 20;
}

Abych dostaval vice vysledku na strance, nez 20.
Ale z nejakeho duvodu je nekde v kodu jeste ukryt dalsi filtr, ktery zabrani zobrazeni vysledku, ktery je vice nez priblizne 50 km od mista hledani.
Pokud zadam Manchester, dostanu opravdu velke mnozstvi vysledku, ale do vzdalenosti pouze 50 km, ne v cele UK.
Pokud zadam Bream (mensi mesto), dostanu opet vice vysledku, nez 20, ne tolik, ale stale jen do vzdalenosti cca 50 km. Takze problem je nekde se vzdalenosti. Nikde ve scriptu vsak nemuzu najit kod, ktery toto omezeni zpusobuje.
Pomuze mi nekdo?
Dekuji
(odpovědět)
Aoj | 178.255.168.*18.9.2013 23:23
re: Jak zmenit urcitou funkci v Javascriptu#
Jeste je nutne doplnit, ze pro vyhledavani pouzivam tuto url:
[link]
(odpovědět)
Aoj | 178.255.168.*18.9.2013 23:25
re: Jak zmenit urcitou funkci v Javascriptu#
Obávám se, že to nepůjde, protože to omezení je nejspíš na straně serveru, který vrací výsledky hledání. Skript odešle například dotaz:

maps.google.com/maps/vp?spn=7.851542,10.986
328&z=6&key=ABQIAAAA1juXCEyZvgeYBqF
fBAThPRSX5DIooTGym0LsyP9OfBP6qHZGCRQFgbuC15
uJdKwfA0PwkC2lHSNr9g&mapclient=jsapi&am
p;vp=53.480877,-2.250953&ev=zo

ve kterém předá souřadnice bodu. Server pak vrátí seznam těch jednotlivých míst, ale ty budou podle mě vždy pouze do těch 50km. Uprava JS ti tedy podle mě nepomůže. Musel bys ten script upravit tak, aby vyslal těchto požadavků více s různými souřadnicemi a ty pak pospojoval do jednoho velkého celku.

----------
Teprve když vstáváte s hackingem a uléháte s myšlenkou na něj, máte šanci být hackerem.
(odpovědět)
.cCuMiNn. | E-mail | Website | PGP19.9.2013 8:12
re: Jak zmenit urcitou funkci v Javascriptu#
Ok, diky moc! Asi si to zkusim predelat :)
Pak sem hodim vysledek, kdyz se mi to povede!
(odpovědět)
Aoj | 178.255.168.*19.9.2013 15:23

Zpět
 
 
 

 
BBCode