Item8360: Support images for extensions

Priority: Enhancement
Current State: Closed
Released In: 1.1.0
Target Release: minor
Applies To: Extension
Component: Configure
Reported By: Foswiki:Main.CrawfordCurrie
Waiting For:
Last Change By: KennethLavrsen
At the summit, it was suggested that giving extensions a logo screenshot would help increase their presence.

Most of the work to do this is on the foswiki site, populating the FastReport with image urls.

-- CrawfordCurrie - 09 Dec 2009


It was a screenshot we discussed.

A screenshot that shows the reader what the extension does. E.g. EditTablePlugin showing a table being edited.

ActionTrackerPlugin showing a list of actions, a new action being added with a comment plugin feature, and an existing action being edited.

The problem we have with our extensions is that many are hardly described what they do it it is written in a cryptic language that you have to be a hard code super user to understand.

Some extensions work "under the hood" but quite many are visual in nature and can be demoed with a screenshot. Many do today. But too many don't.

Small logos have no value at all. And commercial logos will start a new logo war. Don't go there.

-- KennethLavrsen - 09 Dec 2009

That's related to the firefox extensions thingy. And I like it. Makes life more colorful.

-- MichaelDaum - 09 Dec 2009

We add more value if we show screenshot thumbnails instead of clippy art. And since configure in trunk is now using jquery, we can easily add a nice working interface to look at large images, have a content slider, and so on.

-- ArthurClemens - 09 Dec 2009

Note that I have raised two issues

  • This logo feature does not add much value and is a misunderstanding of the discussion at the summit. If a majority think it is a nice thing I am not going to fight it too much. I am a bit concern about the download time of fetching soon 300 graphics when listing plugins in configure. That is an awful lot of graphics to download. Arthur has a good idea using the jquery features to selectively show more information and screenshots when the user wants more info. I do however think we are spending the time the wrong place. It is not configure we need to improve for finding plugins. It is Extensions web. We need to brag about the plugins to people that have not even installed Foswiki yet. I think we solve the wrong problem.
  • Some of the pictures have Wikiring logos in them. Wikiring is a marketing vehicle for a group of consultants and we have clear guidelines for where such logos can be present. And I will not work for free on this project if the projects becomes an advertising poster for a small group of people. The fact that legal entity Wikiring does not profit from it makes no difference. The Wikiring members do profit from the Wikiring brand. We do not want to see Greenpeace or UN logos scattered around either. The only logo that is acceptable on the pictures would be the Foswiki logo. But I see no point in doing that. So if this thing is going to stay all the pictures that are shown in configure or any other application on must be replaced by a version without Wikiring logo. Pictures that are only shown on the plugin topic because this is described as an exception in our written guidelines. I left the old project because I would not put up with working for free and being exploited marketingwise by others. And I do not want the same to happen here on Foswiki. We must keep the project clean and free. And I know I am not alone. The SEIBERT discussion showed that very clearly. I hope this is all a mistake and that Crawford did not think about the fact that the Wikiring plugins have tiny small Wikiring logos in the pictures and I expect this problem to be swiftly and volunteerly fixed within a day.

-- KennethLavrsen - 09 Dec 2009

The best spec is an example. I just updated my dear (though near useless) plugin MeetingBingoPlugin. I added a picture at the top and a little intro text so people have a chance to see what the plugin does without having to install it.

That is what Martin and I wanted. Martin even suggested small videos if the plugin cannot present itself with one or more static pictures.

-- KennethLavrsen - 09 Dec 2009

OK, I misunderstood the discussion then. I was under the impression that support was required for displaying whatever image the extension author felt was appropriate for their extension, in the same way as is done for Firefox extensions. The fact that I used the term "logo" should not prevent that image being a screenshot; if the terminology is offensive, it is easy to change (though time consuming).

Note that the initial reaction to "brand logos" is I think more of a reaction to the fact that I was using images from a number of my own extensions, which have brandmarked logos, as test vehicles. If you look at ConfigureImageGallery now, where I have linked a number of other extensions - including MeetingBingoPlugin, you can see that these are very much in the minority.

Screenshots may be appropriate for many extensions, but many others have no visual component, and a screenshot is meaningless. Are they to be denied a chance for a visual presence?

-- CrawfordCurrie - 10 Dec 2009

I know many extensions cannot be visualized with screenshots. And then an alternative graphic is better than nothing.

BuildContrib is a bit difficult to show a screenshot of.

But many plugins enables certain applications. An example is the ExtendedWebListPlugin. It's major reason for existance is that you can use it in WebLeftBar to only show subwebs in the current web. So I am working on a graphic that will show two left bars where current web is different in the two and you can clearly see that the subwebs are only visible for one of the webs. The goal is to put an image in people minds of what the plugin gives you in addition to the text information. Put images on the dreams.

But then make sure the images are free of logos so we follow our own guidelines for this sort of thing.

-- KennethLavrsen - 10 Dec 2009

I changed the language to "Illustration" and "Image" rather than "logo". And did a crude "display on demand" in configure - though it clearly needs something more industrial-strength. Run out of time on this, will come back and do more later (unless Arthur beats me to it)

Awaiting feedback.

-- CrawfordCurrie - 10 Dec 2009

No feedback, so I guess everyone loves the way I did it (surprisingly, because I'm not that keen, myself)

-- CrawfordCurrie - 14 Dec 2009

No, this can be improved:
  • You cannot see which items have a screenshot
  • How would I know I have to roll over a link?
  • The transition is both slow and wobbling all over the page
  • When I, out of surprise, move the mouse, the image has gone

This is a more conventional way. Here only one extension has a screenshot 'attached', the others show placeholder squares:

Extensions screenshots.png

After click:
Extensions screenshots large.png

-- ArthurClemens - 14 Dec 2009

Sure, but to do that you'd have to load all the images "up front" which is what I was trying to avoid.

-- CrawfordCurrie - 17 Dec 2009

You can load them after the page has been loaded.

-- ArthurClemens - 17 Dec 2009

True. I like the idea of using scaled versions of the image; but how can you proportionally scale the images? They are not square.

-- CrawfordCurrie - 18 Dec 2009

By setting the width but not the height of the image. Works in the html img tag and in css.

-- ArthurClemens - 18 Dec 2009

OK, reckon I've done all I'm going to do on this (already far more than I originally intended).

-- CrawfordCurrie - 18 Dec 2009

When clicking on an image the page scrolls to the top. Nicer if it is centered on the page.

Unrelated, there is also a layout issue with the table cells.

I could not get the centered image get to work with the simplemodal plugin, I have replaced it with the (more elaborate) nyroModal plugin.

O, and I have removed the character subsitution in TemplateParser::getFile:

        if ( $resource =~ /\.(js|css)$/ ) {
            $text =~ s#/\*.*?\*/##g;
            $text =~ s#\s*//.*$##gm if ( $resource =~ /\.js$/ ); #
            $text =~ s/\t/ /g;
            $text =~ s/[ ]+$//gm;
            $text =~ s/^\s+//gm;
            $text =~ s/ +/ /g;
            $text =~ s/\s*\n/\n/gs;

With this, the included js was garbled. Without everything seems to work just fine.

-- ArthurClemens - 19 Dec 2009

Topic revision: r30 - 04 Oct 2010, KennethLavrsen
The copyright of the content on this website is held by the contributing authors, except where stated elsewhere. See Copyright Statement. Creative Commons License    Legal Imprint    Privacy Policy