Case Screensaver

http://photos.case.edu

Contents

[edit] Introduction

The Case Screensaver web site is http://photos.case.edu. Use the site to download the screen saver software (for Windows or Linux) and to submit photos for the screensaver.

The screensaver connects to multiple RSS streams which contain links to photos. RSS streams can contain photos from a specific category (such as "Case Campus", "Flyers", or "Greek Life"), photos submitted by a specific person, or all photos recently added to the site.

[edit] Help and FAQ

On our project site.

[edit] Development

The Case Screensaver project has two components, the screensaver itself and the photos.case.edu Web application. The screensaver is written in Java and makes use of the Java SaverBean SDK. The Web site is based on the Ruby on Rails framework.

Interested developers should write to photos-admin@case.edu. Please include any experience you have with Java or Ruby on Rails - but remember that experience is not required!

[edit] Code Repository

All code for the Screensaver project is in a Subversion repository which is located at http://opensource.case.edu/svn/screensaver. You can browse the code and do other nifty things at the trac project page: http://opensource.case.edu/projects/screensaver.

[edit] Developer Environment

For the Screensaver: The Java 5 JDK and Apache Ant are required. You'll also need the SaverBean SDK. In order to create the Windows install executable, you will need NSIS and Wine to run it under Linux. Development is currently being done using Eclipse Java IDE and team synchronization using the Subclipse SVN Plugin.

For the Web Application: To work on the web site on your machine, the following are required: Ruby 1.8.x, Rails, RMagick (which itself requires ImageMagick or GraphicsMagick), and MySQL or SQLite 3.

[edit] Brainstorming

Discussion of future screensaver and web site features has been moved to the talk page: Talk:Screen Saver

[edit] RSS File Format

Feeds are in RSS 2.0 format, with Pheed markup to specify the images. There is also an escaped html img tag in the RSS description field so a thumbnail image will appear in non-Pheed-enabled newsreaders.

Example:

<item>			
  <link>http://photos.case.edu/photos/get/42.jpg</link>
  <guid>http://photos.case.edu/photos/get/42.jpg</guid>
  <title>Hotel view in Maui</title>
  <pubDate>Fri, 30 Sep 2005 16:59:18 -0400</pubDate>
  <category domain="http://photos.case.edu/categories">Nature</category>
  <photo:imgsrc>http://photos.case.edu/photos/get/42.jpg</photo:imgsrc>
  <photo:thumbnail>http://photos.case.edu/photos/thumbnail/42.jpg</photo:thumbnail>
  <description>
    &lt;img src="http://photos.case.edu/photos/thumbnail/42.jpg"
      alt="Hotel view in Maui" /&gt;
    Why can't Case be located here??
  </description>
</item>

The ScreenSaver currently looks at these attributes:

  • <link> -- Will be changed to <photo:imgsrc> in next release

The other tags elements are going to be optionally displayed below the picture in the next release.

[edit] Status

[edit] Recent Code Changes

Case Screen Saver: Timeline

    [edit] Ben Chodroff

    Please request new features in Talk:Screen_Saver#Brainstorming

    [edit] Beta

    • Development Environment setup on Linux: complete.
    • Compiled my first demo screensaver: complete.
    • Successfully Run compiled screenaver on windows: complete.
    • Compile sample Image Gallery screensaver: complete.
    • Using SVN server on opensource.case.edu: complete.
    • Create custom Image Gallery screensaver: complete.
    • Download file via URL stream and display: complete.
    • Read RSS stream: complete. -- Still can be improved
    • Image caching/purging system: complete.
    • Image resizing: complete.
    • NSIS installer: complete.
    • Minimizing CPU time: complete.
    • Temporary Directory Cache user setting: complete.

    Expected: 2005-10-03

    Finished: 2005-10-02

    Released: 2005-10-03

    [edit] Version 1

    • (Optional) Title, description caption: finished.
    • Proper image resizing (bug): finished.
    • URGENT: "Nord Lab" compliance: finished.
    • Multiple image types supported (JPG, jpeg, gif, png, mIxEd CaSe): finished.
    • RSS/Atom stream handling using Rome Java Utilities: finished.
    • (Optional) Yes/no Caption overlay: finished.
    • Max images setting: finished
    • Hardcoded category selection: finished.
    • Testing: finished.

    Expected: 2005-10-20

    Finished: 2005-10-20

    Released: 2005-10-21

    [edit] Version 1.5

    • Local Image Directory support: in progress.
    • Read/display Exif photo data using Drew Noakes exif library: future.
    • Flickr/Del.icio.us RSS/RDF support: maybe.
    • RSS news ticker: maybe.


    Expected: 2005-11-21

    Finished:

    Released:

    [edit] Future

    • Extended "Portal-like" modules: future.
    • Keyboard event capturing (might not be possible): future.
    • Transition support: future.
    • OpenGL transitions: future
    • RSS based Distributed Computing Protocol and client: future.

    [edit] Andrew Witte

    [edit] First Public Release

    • SaverBeans dev environment set up; haven't run one yet.
    • Ruby on Rails development environment set up on OS X
    • Success using CAS for authentication
    • Image uploading
    • Creating thumbnails with RMagick (ImageMagick wrapper)
    • HTML display of recently added photos and related information
    • View by category
    • Ability to delete photos you added
    • User pages
    • RSS feeds for any photo page (recent photos, user pages, category pages)
    • List of all users who have posted photos
    • Pagination of photo views - 10 photos per page
    • Edit own photos (change text only, can't upload new image)
    • User privileges (banned/normal/admin)
    • "Category hiding" - "offensive" photos don't appear on All Photos page

    [edit] Released 17 October 2005

    • Choose own user name when first logging in
    • Photo expiration
    • Switch to CAS 2.0 authentication protocol
    • "Selected Photos" chosen by admins

    [edit] Screen Saver Preferences Layout

    Version 0.1 - Beta

    This page has been accessed 20,931 times.
    This page was last modified 19:10, April 2, 2006 by Andrew Witte.
    About | Disclaimers