Ede123 / greasy-scripts

Firefox add-on which helps you find user scripts for your favorite sites!
https://addons.mozilla.org/addon/greasy-scripts/
GNU General Public License v3.0
18 stars 3 forks source link

Please support Sleazy Fork #7

Open alexolog opened 8 years ago

alexolog commented 8 years ago

https://sleazyfork.org Same API as Greasy Fork

Unfortunately, some scripts moved over (for example https://sleazyfork.org/en/scripts/109-handy-image)

Thank you!

alexolog commented 8 years ago

See https://greasyfork.org/en/forum/discussion/5456/adult-content for reasons. Basically, if a script works on an "adult" sites (even if it's one such site out of a thousand), it cannot be seen on GreasyFork without being logged in.

Ede123 commented 8 years ago

Sounds like a reasonable request...

I hate it a bit that @JasonBarnabe was forced to this step since there are only downsides to this change. Even worse: The necessary adjustments have already cost himself a considerable amount of time that could have been invested better and obviously this now spreads to all dependent projects (let alone other areas like translations).

Anyway I'll get to it as time permits (note it's not the highest priority right now).

alexolog commented 8 years ago

Everybody hates it, but that's capitalism for you

The problem is that non-adult scripts that happen to also work on adult sites are excluded from the listing, which makes greasy-scripts less useful.

For example, Handy Image will not be detected on flickr or imageshack, even though it is arguably one of the most useful scripts for those sites..

Maybe there is a way around it, but it may require @JasonBarnabe to update the API. For example:

  1. The API could return both types of scripts, with the URL pointing to the corresponding site. If the API is not indexable by search engines, the advertisers will not complain.
  2. Same as above, but only if the request contains a valid account/password pair (should not be sent in the open)
  3. Querying both sites
JasonBarnabe commented 8 years ago

If the request contains the session cookies for Greasy Fork, you will get the same list from the JSON feed as if you visited the site normally. In other words, if you choose to see adult content scripts, your JSON will contain adult content scripts. The script list on your user page will also contain all scripts, regardless of settings.

Ede123 commented 8 years ago

If the request contains the session cookies for Greasy Fork, you will get the same list from the JSON feed as if you visited the site normally.

This is useful information. In fact we're already sending the session cookie, and I just verified that adult scripts are included in the query (if enabled in Greasy Fork account settings) as long as one has logged in on Greasy Fork previously.

alexolog commented 8 years ago

I went to http://s260.photobucket.com/user/ambrosia_kisses/media/Sketches/Commission2lineart_zps5818ef45.jpg.html and it showed me 0 scripts.

Then I logged in to GF, but it still shows me 0 scripts even though there are 2 qualifying scripts on https://greasyfork.org/en/scripts/by-site/photobucket.com.

I played with the settings, enabled/disabled the cache, changed the number or scripts retrieval policy, etc. But no matter what I do, it still shows me 0 scripts.

This is not the expected behaviour.

Ede123 commented 8 years ago

On my machine GreasyScripts correctly tells me there are two scripts available for the link you provided.

Are you sure you're logged-in correctly on GreasyFork? Make sure to disable "domain cache" in GreasyScipts settings for testing (otherwise the old value of "0" scripts could be cached).

If it still does not work check the browser console for any problems (if you activate all logging options for "Network" you should see the request being made and it should tell you the cookie data that was sent that should contain your login ID)

alexolog commented 8 years ago

Figured it out:

It does not work when 3rd-party cookies are disabled. Adding an exception for GF fixed it.

However, this is not an intuitive solution, since it requires knowledge of the add-on's implementation.

it would be better if you could show some sort of an indicator that the cookie was not found, with a link to a blurb that suggests logging in and either enabling 3rd-party cookies or making an exception for GF.