Git Product home page Git Product logo

fuskr's Introduction

Join the chat at https://gitter.im/DanAtkinson/Fuskr Build Status

IMPORTANT! PLEASE READ!

This extension was unpublished from the Google Chrome extensions webstore in February 2020 as Google decided that some of the permissions used in this extension (such as opening new tabs, and being able to download images as a zip) were not necessary for an image gallery extension that supported downloads.

I fundamentally disagreed with their decision and therefore preemptively unpublished the extension. At this time I will not be re-publishing it without having to make major changes to the underlying source code. For one, it was re-written for Angular.js which I no longer actively use (I have moved to Angular professionally).

Please see a more detailed explanation here:
#44 (comment)

If you wish to continue using the extension (not supported!) and feel that you are technically literate, you can follow the below steps, somewhat covered here:

  1. Clone/download this repository to your local machine.
  2. Open the Extension Management page by navigating to chrome://extensions.
    The Extension Management page can also be opened by clicking on the Chrome menu, hovering over More Tools then selecting Extensions.
  3. Enable Developer Mode by clicking the toggle switch next to Developer mode.
  4. Click the LOAD UNPACKED button and select the extension directory.

How to use

  1. Go ahead and install Fuskr from the Google Chrome extensions gallery.
  2. On your desired image, right click and choose 'Fusk'.
  3. Choose which direction:
    • '+/-' will return a gallery with images that come before and after it.
    • '+' will return a gallery with images that only come after it.
    • '-' will return a gallery with images that only come before it.
  4. Now choose how large you want your gallery to be - 10/20/50/100/200/500 or 'Other' (you choose!).
  5. Your gallery will appear in the tab next to your current one. If an image isn't returned (404 or some other error), it will be hidden from view, but you can toggle that too!

Version History

  • 4.0.75
    • Omnibox and history should now be working correctly again.
  • 4.0.61
    • Fix issues with the context menus not working correctly in Chrome. Firefox was unaffected but the solution is cross-browser compatible.
  • 4.0.20
    • Create dark mode option.
    • Tidy up code and improve some speed issues, specifically around context menu creation.
    • New version numbering. Minor version is incremented and we also include a longer version name indicating the build date/time.
  • 3.2
    • Download images as a zip file and retain the structure if it's a nested fusk!
    • Options page change to support Chrome's preferred options layout.
    • Improvements to the way many urls are handled.
  • 3.1
    • Fixed an issue with the fusk option not showing on links.
  • 3.0
    • Application templating rewritten using AngularJS.
  • 2.7
    • Reduced the permissions level greatly. Previously, Fuskr required that you give us access to all websites and all browsing activity, but we only care about your current tab. Google Chrome now has that ability, so we’ve reduced the permissions needed accordingly!
    • Fixed an annoying bug where Fuskr wouldn’t work on some links that didn’t have numbers, and wouldn’t revert to the image url.
  • 2.6
    • You can now download images directly from the gallery page!
    • You can now view the page in a slideshow!
    • Beginning to internationalize (l18n). If you want to help, let us know!
    • Updated to jQuery and jQuery UI.
  • 2.5
    • Updated to jQuery v2.1.3 and jQuery UI 1.11.2.
  • 2.4
    • Updated to jQuery v2 and jQuery UI 1.10.3.
    • Minor styling changes to the image gallery page.
  • 2.3
    • Fixed some template issues and added more information and credits to the options page.
  • 2.2
    • Added the ability to create a fusk by typing 'fuskr' in the omnibox, followed by your fusk url!
    • Updated libraries used by Fuskr.
  • 2.1
    • Updated Fuskr with new icon/image goodness kindly provided by Richard Stelmach of Creative Binge!
  • 2.0
  • 1.9.1
    • Some changes to the application in order to take into account recent security update to Google Chrome which will be enforced shortly.
  • 1.9
    • Fuskr wasn't working on Macs.
  • 1.8
    • Change of name to Fuskr.
    • Jonathon Bolster has put a lot of work into making Fuskr modular, and there are now a few unit tests around to make sure everything's hunky dory!
    • Fixed some issues with previous/next functionality not working when there are images missing. It also scrolls smoothly as well.
  • 1.7
    • Added linkage below images.
  • 1.6
    • A few bug fixes. Incognito works properly now, but only in v9 as there are some Chrome bugs outstanding.
  • 1.5
    • Fixing a bug with the '+' icon showing up unnecessarily.
    • Galleries created in incognito mode are no longer stored.
    • Added the ability to scale images to the current window size.
    • Added some information about the current gallery (number of images and broken images).
  • 1.4
    • Clicking a created image will jump the user to the next one. Manual fusks are a little more difficult so maybe that's one for later...
    • Added an options page! Currently the only two options are below.
    • Added recent fusks history. This allows you to keep track of and, if desired, go back to a previous one that you may have closed. This feature will only store 10 at maximum, can be disabled completely, or the history can be wiped.
    • Added an option for opening a gallery in the foreground.
  • 1.3
    • Fixed a bug where having a nested gallery meant that the images were returned in the wrong order. - Kudos Jonathon!
    • Fixed an issue where the ChromeFusk option appears, even when the image is not 'fusk-able' - Kudos Jonathon!
    • Fixed an issue where choosing a manual gallery and not entering a url would still try to create a new tab. Kudos Jonathon!
    • Provided an 'option' for having the new gallery show on creation, or open in the background (default is open in the foreground).
  • 1.2
    • Fixed a bug where the horizontal scrollbar was not visible for galleries where the images were bigger than the page.
    • Added the ability to use create a gallery based on a thumbnail, which will go to the linked image instead.
  • 1.1
    • About 5 minutes after I released 1.0, I realised that Chrome had finally allowed extensions to create context menus, so I ripped my application apart and rebuilt it in thirty minutes to use the context menus.
  • 1.0
    • Initial release.

fuskr's People

Contributors

danatkinson avatar dependabot[bot] avatar jbolster avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

fuskr's Issues

'This extension may have been corrupted' error when clicking on options

Steps:

  1. Install Fuskr from chrome webstore
  2. Right click and go to 'Options' on Fuskr (This also applied when going to options through chrome://extensions)

Result: Chrome throws a message of 'This extension may have been corrupted.' beside the extension. Clicking repair re-installs Fuskr and everything is fine.

This only applies when Fuskr is downloaded from the webstore. Loading it unpacked or loading a local packed version doesn't result in the same way. Only the 'Options' page causes this. Actual use of Fuskr doesn't cause the same issue.

Fusks with urls containing a hash are broken

This is definitely a longer term issue that needs some consideration because of the implications for existing users, and also because of the edge-case nature of it.

I subscribe to a few web comics whose authors have taken it upon themselves to put hashes in the filenames. For example:

http://www.example.com/comic-hall/Destructon-Issue-#03/03.jpg

If you try and 'fusk' this url, let's say 01-18, It will result in the following url in Chrome:

chrome-extension://glieaboaghdnlglpkekghloldikefofo/Html/images.htm#/fusk/http://www.example.com/comic-hall/Destructon-Issue-#03%2F%5B00-10%5D.jpg

And the url we try and work on is:

image

Unfortunately, there's no nice way of handling this in the address bar because if we try and url encode the hash, the server can (and does) decide that it doesn't match because it expects '#', rather than '%23'. Further, if we then try and url-decode the path, we might find that there are also urls that are supposed to contain url-encoded strings that are also treated as not found by the server.

Therefore, the only nice way of resolving this issue is to move the fusk url out of the address bar and into the page itself.

As part of this, I suggest that we consider allowing the url on the page to be editable so that the user can change their parameters to suit their needs.

Fusks with parameters in the querystring throw error

Hi Jonny,

I noticed an issue when looking at video implementation where the id is in the querystring.

For example, take the following url - http://example.com/images?image=[1-10].jpg.

When you attempt to Fusk that url, it tells me that it's invalid, but there's no reason why it should be.

I think that the issue is in the $stateProvider in images.js where it's taking the stateparams.path, but is missing off the query params. This would also cause a problem on sites where a token/session id is passed in the url as, when the gallery is generated, the querystring is missing.

Is it possible for you to have a look and identify what the problem with it is?

Many thanks, Dan

Option to download images in original format instead of packed in a ZIP

Please, add an option to download all the fusked images as separate JPG files (or GIFs, PNGs or whatever they are) instead of packed in a single ZIP file.

I have tried to download them using the add ons Simage (https://addons.mozilla.org/es/firefox/addon/simage) and Image Picka (https://addons.mozilla.org/es/firefox/addon/image-picka/) but neither of them can catch the images from the generated page.

Also, if I try to right click and download an image, I get a generic name (Same for all images) instead of the original name.

I agree a ZIP file is usually a convenient way of downloading a set of files, but sometimes the user just want to save them as separate files and don't want to have to extract them from the ZIP file.

If you add this option, You could implement a selection method (Just click on thumbnail to select/unselect and show a colour border around the selected ones or something) so the user can choose what images to download before clicking the download button (This is useful for both Download as ZIP and Download in original format). Image Picka has this implemented so maybe you want to have a look at it. You will also need buttons for select/unselect all images

Allow other formats to be displayed in fusks

Currently images are the only type of content displayed in fusks, but it seems odd that other formats could not be supported either.

Therefore, I propose that, at the very least, videos would be enabled also.

In order to ensure that most video formats are catered for, it's best that HTML 5 isn't used, and therefore a Flash player is looked into instead.

I've looked at a few different types, and FlowPlayer - flowplayer.org - looks pretty cool. There's also VideoJS which uses HTML5, but also falls back to a Flash player if all else fails. The latter seems like a pretty cool way to handle video.

In order to do this, we'll need to ensure that we can reliably capture the MIME type of the first successful response and use that as the basis for the other requests.

Context menus stop working

This is currently on my local but I'm raising a ticket in case it's something else.

Steps:

  • Open page with images
  • Right click on an image and fusk
  • Close newly opened tab
  • Try to right click and fusk again

Result:

  • Clicking a menu item doesn't seem to do anything

Use npm/bower

My personal preference is to use bower but I'm going to need to use grunt so I'll just use npm right now.

I'd also like to make use of grunt to perform a variety of functions:

  • Build a single, compressed JS file.
  • Build release zip file.
  • Perform unit tests.

Fuskr not showing any images

I'm running the latest version of fuskr (1.8) on the latest version of Chrome (13.0.782.107) on Mac OSX 10.6.8v2. I had to reinstall Mac OSX from scratch on my laptop to get past an unrelated issue and restored my home directory (and ~/Library with it) but manually reinstalled applications.

Ever since then, when I try to use fuskr, it will not pull up any images at all, including the one I launched it from. I'm sure it's something to do with my config because it works fine on other Macs with the same setup but even uninstall/reinstall of both Chrome and fuskr has not resolved the issue.

Here is an example of what I'm seeing. I right click on this image "http://7art-screensavers.com/screens/ocean-fish-3d/ocean-fish-01.jpg" and select +10. I manually verified that an "ocean-fish-02.jpg" does exist on this webserver. The new tab opens with the following content:

0 Images | 0 Loaded | 0 Failed

Show broken images

Resize images to fit on page

http://7art-screensavers.com/screens/ocean-fish-3d/ocean-fish-[01-11].jpg

0 Images | 0 Loaded | 0 Failed

Show broken images

Resize images to fit on page

http://7art-screensavers.com/screens/ocean-fish-3d/ocean-fish-[01-11].jpg

It does this for any image file I choose.

Any ideas?

not in contextual menu in incognito mode

I have the latest version (v4.0.84 built at: 2019-07-11 16:36:15) installed in Chrome 76.0.3809.132. I have the extension's options set to allow use in incognito mode. However, when I open a contextual menu on an image in incognito mode, Fuskr doesn't appear in the menu. If I do the same in a "normal" window, Fuskr is in the menu. I've tried uninstalled and reinstalling the extension and restarting the browser, but nothing seemed to make a difference.

Fusks are iterating links with numbers in, rather than the images inside them

Support email from user:

I am having an odd issue when using Fuskr in Chrome. When I right click and fusker an image that also has a hyperlink it fuskers the link and not the image url. For example:

<a href="somepage1.html"><img src="somepic1.jpg"></a> will fusker:

somepage[1-10].html instead of somepic[1-10].jpg

Allow customizing URL seed

I was going to write a text about allowing the user to customize the regular expression in order to allow fetching galleries where the index is not the rightmost number but then I realized the regular expression at the top of the generated page is editable so I would suggest you to make more visually apparent that this text can be edited by the user. Currently it is a black plain text without a box around it or any indication that it can be edited.

Create YouTube video tutorial

A bit of a fun project, but there's also some really good applications for it!

I'd like to create a YouTube video which goes through the motions of creating different types of 'fusk'.

This would be used on the help page and also be shown on the Chrome extension page as well.

Remove Grunt

Grunt is increasingly becoming outdated and its dependant packages are not being updated. In some cases, these packages contain vulnerabilities that I have had to remove from the project.

Moving to an alternative like gulp is an increasingly attractive proposition.

Implement Chrome Options v2 and chrome.storage.sync

So Chromium got off their arses and implemented some standard options functionality. I'm happy to implement it, but personally I think it's pretty poor.

It was first introduced in the back end of 2014 and I had hoped that it would get better or more refined but that sadly hasn't happened. Effectively, the options page has become an iframe popup on the extensions page and doesn't appear to allow for AngularJS injection. Perhaps understandable, but regrettable nonetheless. Suffice to say that I am seriously disappointed with Chromium's efforts on the crx options. The issues they have 25317 and 386830 detail their implementation and other users' efforts to implement better, standardised options pages.

I'd also like to take this opportunity to make use of the chrome.storage.sync functionality.

More information on Options v2:
https://developer.chrome.com/extensions/optionsV2
https://developer.chrome.com/extensions/options

Options shows blank page

I only just noticed this when I was working on Fuskr (had some time, started doing some angular goodness on it). Thought it was my local but a clean install of Fuskr pops it up too.

Does this happen for you too, @DanAtkinson ?

Uncaught SyntaxError: missing ) after argument list options.htm:3

Chrome: Version 49.0.2623.112 m

Task: Fix build to run with linters

Currently grunt --force needs to be runin order to pass the linting.

SASS/HTML/JS files all have issues at the moment.

When complete, ensure that travis config isn't running with --force

Download images as zipped file

Currently, images are downloaded to the user's download directory as 1 file per image.

I propose the images get downloaded as a zipped file with all images inside it.This would piggy back on top of the work done in #20, as we now have the blob data for the image

Make use of keyboard to navigate a fusk gallery

As a user, I should be able to press the right arrow, and be taken to the next image. This would be helped by creating a box around the current image, in order to help the user determine where they are right now.

Other accessibility functions should be looked at as well.

Allow keyboard shortcuts

The following was left as feedback on the extension:

If the current web page is a picture url I would like to suggest a simple shortcut, programmable, the would perform a default fuskr action (for example, +50) on that picture.

At first glance, this appears to be possible as Chrome offers the chrome.commands API to enable keyboard shortcuts.

Any implementation should allow the user to customise:

  • Keyboard shortcut.
  • Fusk direction (+ or -).
  • Fusk count (10/20/50/etc/ user defined).
  • Whether to automatically download the fusk as a zip (and perhaps the name).

The user should be able to set as many shortcuts up as they wish.

Fuskr needs internationalisation/localisation (i18n/l10n)

I did a cursory check on the costs for translating Fuskr into regional variants and they're ludicrous. Translating the extension into Spanish would cost several hundred pounds. I have a reasonable grasp of several languages to be able to do it myself with the aid of Google/Bing translators, but I'd like to do it properly.

So, I either don't value the work of translators enough, or they're charging exorbitant prices. In any case, it'd be nice to get Fuskr localised into the following languages (ordered by highest usage):

  1. Spanish
  2. French
  3. Japanese
  4. German
  5. Portuguese (Brazilian)
  6. Polish
  7. Russian
  8. Chinese
  9. Italian
  10. Hindustani
  11. Arabic

The order of the list above is based on the top non-English language hits for the Fuskr Chrome extension page.

The bottom info container has disappeared

I'll probably look at it myself, but I'm currently testing the extension and noticed that the bottom info container has disappeared.

@jbolster Is there a reason it's no longer there or was it just removed. I don't mind if it's a deliberate action, but would like to know either way as I can't see any mention of it in the commits.

Thanks, Dan

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.