<?xml version="1.0" encoding="UTF-8"?>
<!--
  Copyright 2002-2004 The Apache Software Foundation or its licensors,
  as applicable.
  
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
  You may obtain a copy of the License at
  
  http://www.apache.org/licenses/LICENSE-2.0
  
  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
-->
<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "http://forrest.apache.org/dtd/document-v20.dtd">
<document> 
  <header> 
    <title>Features</title> 
  </header> 
  <body> 
    
    <section>
      <title>Features in version 0.3</title>
      <ul>
        <li>
          User management is now done through the database. This makes it possible to add and
          remove users and groups at runtime. No user interface is provided
          yet so users and groups must be managed using direct database queries. 
        </li>
      </ul>
    </section>
    
    
    <section id="version-0.2">
      <title>Features in version 0.2</title>
      <ul>
        <li><p>Authentication is done using standard J2EE security and the user identity 
               is made available everywhere in the application using JAAS.</p></li>
        <li><p>Logout is  possible.</p></li>
      </ul>
      <section id="version-0.2-notes">
        <title>Notes</title>
        <p>
          This is a step towards a version that supports groups. Users can then be part of 
          one or more groups and participate in either a read-only or read-write fashion 
          the groups they are part of. 
        </p>
      </section>
      
    </section>
  
  
    <section id="features">
      <title>Features in version 0.1</title>
      <ul>
        <li><p> Upload of individual photos in JPEG format
        </p></li>
        <li><p>Upload of zip archives of photos in JPEG format. Non-JPEG files are ignored. </p></li>
        <li><p>Creation of new albums</p></li>
        <li><p>Independent navigation through albums in different browser windows.</p></li>
      </ul>
      
      <section>
        <title>Notes</title>
        <p>Authentication is done declaratively in the web application or by Apache with mod_proxy and
          security configuration. This means that once a user is logged in, the user can see all 
          albums. </p>
      </section>
      
    </section>
    
    
    <section id="nextrelease">
      <title>Next Release</title>
      
      <p>
        Authorization based on the group(s) a user 
        belongs to. A user will only be able to see the albums of the group(s) to which
        he belongs. Only an administrator will be able to modify, add, or remove 
        users and groups. 
      </p>
    </section>
    
    
    <section id="future">
      <title>Future features</title>
      <ul>
        <li><p>Support for user groups. Users an be part of one or more groups and participate
          in either a read-only of read-write fashion in the groups they are part of. </p></li>
        <li><p>Downloads of multiple photos in batch, also specifying scaling such as 
          maximum size in bytes or maximum resolution. </p></li>
        <li><p>Deletion of photos and/or albums based on certain rules</p></li>
        <li><p>Addition of metadata to photo albums like descriptions. </p></li>
        <li><p>Extraction of metadata from photos</p></li>
        <li><p>Sorting of photos based on several criteria.</p></li>
        <li><p>Automatic adaptation to the browser type (e.g. mobile use).</p></li>
        <li><p>View new photos since last visit or photos uploaded in a given time frame</p></li>
        <li><p>Automatic registration of users and groups.</p></li>
        <li><p>View size for normal browsing 
          should be smaller than the full size to save bandwidth. </p></li>
      </ul>
    </section>
    
    
  </body>
</document>
