Git Product home page Git Product logo

chinaeye's People

Contributors

cqx931 avatar dhowe avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Forkers

cqx931 ebcitron

chinaeye's Issues

Redact-mode but not redacted

To recreate: disable or uninstall extension, do google search, re-enable extension.

Icon shows that search is blocked, as does text, however not redacted.

image

Search Engines sometimes fail the tests on greatfirewallofchina

It is not consistent that yahoo/bing are allowed/blocked...
Currently if the search keyword matches the triggers, the page won't be checked and the menu displays the server info as OK.
However, this would be very strange if the search engine url fails the server tests, which means that the server result displayed is 'ok' if the keywords is blocked, and 'fail' if the keyword is not blocked.

One way to avoid this is to always check server for the webpage.

Add button to menu for disabling CE for entire site

in fact, maybe this should just replace what we have now, as most blocks will be related to sites, rather than specific pages

but, if it is a search, then we should disable only for that search.

so we need lists (in local storage) for whitelistedSites, whitelistedPages (?), and whitelistedSearches

Allow users to use CE without redacting the page

I'm not sure how this should work exactly, but there needs to be an option for users (if they so choose) to keep CE enabled, but still view their favorite websites without redaction, even if they are blocked. This is sort of an info-only mode: CE still checks the page, but only changes the icon if blocked (and if the menu is clicked, shows the various server responses).

Handle 'timeout' fails appropriately

In this case, on Chrome, ChinaEye shows the page redacted, but GFW shows 'timeout'. Is this a valid response?

If so, perhaps it should get a yellow color, but not redacted? Same I think for anytime ANY of the servers is not green.

image

Release testing

Basics Functions:

1.Test blocked keywords on Search Engines: Google/Bing/Yahoo (Both text and image search)

  • Test that webpage is redacted when the keyword is included in the triggers list (grassmudhorse, CCAV, ** )
  • After testing with a blocked keyword, test that webpage returns to normal view when the keyword is changed to something else

2.Test sites that are blocked in China: Facebook,Youtube etc.

  • Make sure they are correctly redacted.

Background:
Please check the following content with background.html opened and

  • Check that ChinaEye gets Triggers from local when installed

  • Check that ChinaEye gets Triggers from local storage when reopened

  • Check that Trigger List can be successfully updated (By changing CheckInterval in background.js )

Features:

  1. Disable for this site
  2. Disable for this search

UI:
Pop up

  • Check the overall layout, image and texts

1.Mode Switch

  • Check that the current mode is correctly indicated with a black background and white text.

2.Servers Info

  • Check that all server tests are failed on blocked sites(facebook, youtube).
  • Check that all server tests are passed on search engines.

2.Buttons

  • If ChinaEye is active and the page is a search result page that ChinaEye supports (Google/Bing/Yahoo): Both "Disable for this site" and "Disable for this search" buttons are visible
  • If ChinaEye is active and the page is blocked by failing visit from servers in China: Only "Disable for this site"button is visible
  • If ChinaEye is not active because the site is whitelisted, "Resume for this site" button is visible
  • If ChinaEye is not active because the search keyword is whitelisted, "Resume for this search" button is visible

Better Design for Pop up menu

  1. Better Button CSS
  2. Wider Pop up
  3. "Disable ChinaEye on this page" / "Resume ChinaEye on this page"
  4. Any other content for the release?

Sites do not stay disabled

High priority as web is pretty unusable with the plugin until this is fixed (continually having to press disable for the same web sites)

For example, visit nytimes.com, click 'disable for site', then return 20 minutes later, and content is blocked again

Also, what about the case where a search engine is blocked (eg Google) and one actually wants to whitelist the site, not the search... This doesn't seem to work, though it may just be the problem above

How is this installed/how does it work?

Hi there,

Is this meant to be an educational tool to emphasize the importance of privacy and an open web? What browser is this for? It sounds fascinating in any case.

Thanks for your time.

[Template] Tests before release

  • Search Engine Google/Bing/Yahoo (Text/Image)
  • Sites that are blocked in China: Facebook
  • Get Triggers from local when installed
  • Get Triggers from local storage when reopened
  • Update List

Design for pages where we don't check servers

E.g., chrome:// pages. Doesn't work to say 'pending' as the wait would be forever...

image

Since we know such pages are not blocked, we might want to just show green for servers, but perhaps with some kind of note?

Another option (below) would be to simply hide (in the content-script) the server options for such pages (I think I like this better, as the other could be misleading).

image

Unable to match the keyword after page refresh

To reproduce

0.switch on showLogs in background.js
1.Go to google and type "23", The status should be detected as "Block"
2.Now refresh the page. In the background console, the qRegex doesn't return a match from the same url.
3.Refresh the page again, the qRegex works again.

screen shot 2016-12-22 at 1 40 17 pm

Cache server checks

Cache server checks so that we never recheck a server unless t seconds have passed

This will probably require a 'recheck now' button on the menu

Issue with "https"

If the testing url is https://developer.chrome.com/extensions/tabs#method-get,
Great Firewall of China returns "An error occured - please try again later. If the error continues to occur, please contact the webmaster."

If I try the same page with http instead of https, the page work.
But when I tried other pages with https (Facebook, gmail...), I don't see this error.

Use "Long-lived connections" for messaging

Not sure if an actual problem:

Uncaught Error: Attempting to use a disconnected port object
    at PortImpl.postMessage (extensions::messaging:60:13)
    at Port.publicClassPrototype.(anonymous function) [as postMessage] (extensions::utils:149:26)
    at responseCallback (extensions::messaging:166:16)
    at Object.success (chrome-extension://bmlfgnkacjnbhefiokiheiohpeiomidk/js/background.js:129:7)
    at i (chrome-extension://bmlfgnkacjnbhefiokiheiohpeiomidk/js/jquery-2.2.3.js:2:27151)
    at Object.fireWith [as resolveWith] (chrome-extension://bmlfgnkacjnbhefiokiheiohpeiomidk/js/jquery-2.2.3.js:2:27914)
    at z (chrome-extension://bmlfgnkacjnbhefiokiheiohpeiomidk/js/jquery-2.2.3.js:4:12120)
    at XMLHttpRequest.<anonymous> (chrome-extension://bmlfgnkacjnbhefiokiheiohpeiomidk/js/jquery-2.2.3.js:4:15680)

v1.0 Pre Release Testing

1.Test blocked keywords on Search Engines: Google/Bing/Yahoo (Both text and image search)

  • Test that webpage is redacted when the keyword is included in the triggers list (grassmudhorse, CCAV, ** )
  • After testing with a blocked keyword, test that webpage returns to normal view when the keyword is changed to something else

2.Test sites that are blocked in China: Facebook,Youtube etc.

  • Make sure they are correctly redacted.

Background:
Please check the following content with background.html opened and

  • Check that ChinaEye gets Triggers from local when installed

  • Check that ChinaEye gets Triggers from local storage when reopened

  • Check that Trigger List can be successfully updated (By changing CheckInterval in background.js )

Features:

  • A redacted page is no more redacted after clicking 'Disable for this site'
  • A redacted search page is no more readacted after clicking 'Disable for this search'
  • Whitelisted pages remain unblocked after refresh.

UI:
Pop up

  • Check the overall layout, image and texts

1.Mode Switch

  • Check that the current mode is correctly indicated with a black background and white text.

2.Servers Info

  • Check that all server tests are failed on blocked sites(facebook, youtube).

2.Buttons

  • If ChinaEye is active and the page is a search result page that ChinaEye supports (Google/Bing/Yahoo): Both "Disable for this site" and "Disable for this search" buttons are visible
  • If ChinaEye is active and the page is blocked by failing visit from servers in China: Only "Disable for this site"button is visible
  • If ChinaEye is not active because the site is whitelisted, "Resume for this site" button is visible
  • If ChinaEye is not active because the search keyword is whitelisted, "Resume for this search" button is visible
  • If ChinaEye is not active and the page is not whitelisted, "Disable for this site" button is visible and the button is disabled

Make clear that a search is blocked in Info-mode

In the result below, the search term is blocked, but there is no indication in the menu (only the icon which is hard to understand). If this is a quick fix, then lets add it to v1.0. If not, then you can push it to v1.1 (mark with 'next-tasks' milestone)

screen shot 2017-03-27 at 12 36 52 pm

Disabled Resume Button After switch to another page

To reproduce:
1.Go to page https://www.google.com.hk/search?q=grass+mud+horse&biw=1076&bih=948&source=lnms&sa=X&ved=0ahUKEwjl5rv7w4LSAhVIpJQKHT5UDJEQ_AUIBygA&dpr=1
2.The page should be in redacted mode. Click "Disable on this page" in menu.
3.The page is back to normal. And the button in menu should be "Resume on this page"
4.Go to another tab and come back to the page, the button in menu is disabled. (Should still be an active "Resume on this page" button)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.