CodingForums.com

CodingForums.com (http://www.codingforums.com/index.php)
-   JavaScript programming (http://www.codingforums.com/forumdisplay.php?f=2)
-   -   Noob needs help (chrome extension) (http://www.codingforums.com/showthread.php?t=285488)

HelpMeOut 01-08-2013 09:10 PM

Noob needs help (chrome extension)
 
Hey. To be perfectly honest, i don't know ANY JS coding what so ever.
I know some C#, so i understand the basic behind the JS coding...

My problem is probably simple (for those of you who knoe JS).

Since youtube updated theyre UI, i have been constantly annoyed with all the "recommended for you" videos appearing.
So i downloaded a chrome extension wich redirects you from "youtube.com" to "youtubecn.com" (youtube for countries where normal youtube is blocked).
I thought i could simply change "youtubecn.com" to "youtube.com/feed/subscriptions".

Turns out it wasnt that easy as the extension detects that the only thing between "www." and ".com" is "youtube" in both cases instead of "youtubecn"
Can someone please make this redirect me from "youtube.com" to "youtube.com/feed/subscriptions"? :)

Code:

var l=location.href;
if(l.match("youtube")){        l=l.replace("www.youtube.com","youtube.com/feed/subscriptions");
        location.href=l;
}


HelpMeOut 01-08-2013 09:21 PM

Did this. Solved the problem (slitely... cant watch videos without going to youtube.com/feed/subscriptions)
Code:

var l=location.href;
if(l.match("youtube.com/feed/subscriptions")){        return;}
if(l.match("youtube")){        l=l.replace("www.youtube.com","youtube.com/feed/subscriptions");        location.href=l;}

please help me :P

007julien 01-09-2013 06:13 PM

You have to use a regular expressions (defined with to / delimiters or new RegExp(string)) with the methods : replace, match or test (which simply return a boolean on success).

Some caution is needed with addresses that contain special characters such as dots (which represents any characters in regular expressions and must be preceded by a backslash to regain their initial sense) and slashes (the delimiters which must too be preceded by a backslash).
Then the right syntax could be
Code:


// To replace youtube.com by youtube.com/feed/subscriptions

var url="http://www.youtube.com/foobar";
var newUrl=url.replace(/youtube\.com/,'youtube.com/feed/subscriptions');
alert(newUrl)
// To test for youtube.com/feed/subscriptions"
var url="youtube.com/feed/subscriptions/foobar"
alert(/youtube\.com\/feed\/subscriptions/.test(url))

EDIT : With the constructor var rgx=new RegExp("myString") there is an other problem with backslashes (which mean in a string : the following characters is a control character). Then they should be doubled !

HelpMeOut 01-10-2013 07:55 PM

Quote:

Originally Posted by 007julien (Post 1305103)
You have to use a regular expressions (defined with to / delimiters or new RegExp(string)) with the methods : replace, match or test (which simply return a boolean on success).

Some caution is needed with addresses that contain special characters such as dots (which represents any characters in regular expressions and must be preceded by a backslash to regain their initial sense) and slashes (the delimiters which must too be preceded by a backslash).
Then the right syntax could be
Code:


// To replace youtube.com by youtube.com/feed/subscriptions

var url="http://www.youtube.com/foobar";
var newUrl=url.replace(/youtube\.com/,'youtube.com/feed/subscriptions');
alert(newUrl)
// To test for youtube.com/feed/subscriptions"
var url="youtube.com/feed/subscriptions/foobar"
alert(/youtube\.com\/feed\/subscriptions/.test(url))

EDIT : With the constructor var rgx=new RegExp("myString") there is an other problem with backslashes (which mean in a string : the following characters is a control character). Then they should be doubled !

For some reason it didn't work...
If you are using google chrome and would like to try out to find a code that works:
Download: https://chrome.google.com/webstore/d...hecaiacd?hl=en

then go to: C:\Users\[Your user name]\AppData (may be a hidden folder)\local\google\Chrome\User Data\Default\Extensions

Then find the folder wich contains the youtube mirror extension.
For me its: ffnjkadalnonednoaalcmebihecaiacd

Edit "ytm.js" until the extension works :P
(Everytime you have edited ytm.js you need to restart chrome).


All times are GMT +1. The time now is 07:18 PM.

Powered by vBulletin®
Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.