Photo Organizer

This is the bug tracker for Photo Organizer.

ID Task Type Severity Category Summary  desc Status Reported In
125Feature RequestLowBackend / CoreXML export should include "human-readable" values.NewStable Task Description

instead of <location id="23" />, we should say something like: <location id="23" name="downtown Nowhere, USA" />

for all non-textual datatypes.

Otherwise, we need to export the database tables for these values to mean anything, and this isn't currently possible.

443Bug ReportLowBackend / CoreWrong user name displayedUnconfirmed2.37 Task Description

In tab My Folders or My Datebook, logged in user name displayed instead of owner user name under 'I am a client of the following users', nevertheless the link is correct. Here is my quick and dirty solution.

--- include/contacts.php.orig
+++ include/contacts.php
@@ -117,7 +117,8 @@
$owner = "";
}

- $all_subscribed_users = pg_query($database, " select identifier, users, last_name, first_name, date_of_creation, value from view_client where client='$my_user_id' and status!='4' $owner ");
+ $all_subscribed_users = pg_query($database, " select view_client.identifier, view_client.users, view_contact_info.last_name, view_contact_info.first_name, view_client.date_of_creation, view_client.value from view_client, view_contact_info where view_client.client='$my_user_id' and view_client.users=view_contact_info.identifier and status!='4' $owner ");
$num_of_subscribed_users = pg_num_rows($all_subscribed_users);

if ($num_of_subscribed_users) {

393Feature RequestLowBackend / CoreUse GPS timestamp when importing, if present.New2.361 Task Description

If we have a GPS tag, the odds are its timestamp is going to be more accurate than what the camera thinks.

Unfortunately, the GPS timestamp is reported in UTC. All dates in PO are stored sans timezone, but the odds are that you're not in GMT. So we'd need to add some sort of local time zone setting and convert the date/times as appropriate.

442Feature RequestLowUser InterfaceUI EnhancementsAssigned2.371 Task Description

This will be a placeholder for the various ideas I have for reworking parts or all of PO's UI. Ideas that are fleshed out can be moved into their own tickets for actual implementation.

* AJAX-ish tabs on the photo page
- instead of a separate page reload for each tab, load all tab info at once and let the UI manage paging.
* Client-side sorting of all tabular data
- eg folder/album listings
* Dynamic client-side pagination of the slide view
- "dump" all slides at once, and let client-side manage their pagination?
- Probably can't sort this way though
* Lightbox-esque view of photos
- Intended for guest access, hiding details of photos.
- Slideshow capabilities
- Easy navigation (eg using left/right arrows)
* Replace ad-hoc toolbars with more coherent ones
* Replace hackish button/checkbox theming script with something saner.
* Replace wz_tooltips and js_calendar with better integrated stuff.
* Modal login/password form
- pops up on top of current page
- Can force current page to reload afterwards
- What to do about 401/403 errors?
* Replace all "confirmation" pages with modal dialogs.

I'm leaning towards Query and jQueryUI for actual implementations.

Initial implementation will probably require current themes to be taken out back and shot.

214Feature RequestLowUser InterfaceSwitch to DHTML "tabs" on main photo page.New2.331 Task Description

To avoid having to do a page load/refresh for each of the sub-photo tabs (ie overview, technical, ratings, etc)

Eventually, I'd love to see the various sub-pages (eg rating.add/del/edit) also become "tabs" of the same master page; the majority of the code (and markup) on each page is duplicated. This may require us to use AJAX-type techniques however.

I'd still prefer basic photo navigation to be okay without javascript enabled.

6Feature RequestLowBackend / CoreSpecify/store RAW image parametersNewDevel1 Task Description

Currently the RAW settings are shared across all images. It would be nice if each image would contain with it the settings used to process the image. The problem is that the decoder often has defaults which change over time, and re-generating the same image can result in differences.

216Feature RequestLowBackend / Coreshow disk usage in folder/album stats.NewDevel Task Description

it would be nice if we could show the disk usage for a given album/folder, including all of its subfolders.

Now that we have the files and their sizes stored in the database, this should be easy enough.

for example, folder #602 contains 363 images, taking up 2133MB of disk space.

175Feature RequestLowUser Interfaceshow defined keywords in suplemental categoryUnconfirmed2.334 Task Description

it would ease handling, if one could see the yet defined keywords: useless creation according to misspelling (landscape versus landscapes) or different words for the same meaning.

420Bug ReportLowUser InterfaceReally Minor Login Page ProbUnconfirmed2.362 Task Description

It doesn't do any harm, it just bugs if it happens.

If you fill in user name and password and then realize, you don't want the preset language... Switching to another language clears out user name and password and you have to write them again.

Of course, this won't happen often to a new user because it trains to look first after the language, but... I would still call it a bug, even if not really major.

Rock on
Eckhard

162Feature RequestLowImportPTLens/clens supportNew2.331 Task Description

Adding support for PTLens would be really nice -- we could automagically correct lens distortion etc as part of the image generation workflow.

PTLens needs the camera and lens model and the focal length to work properly.

I think it can use EXIF data directly.

440Bug ReportMediumBackend / CorePossible to set an album/folder's parent to itself.New2.37 Task Description

We need to enforce that rule to prevent the DB from going nuts.

Either via SQL:

1) Trigger to test that parent != id
2) the (folders|albums)_and_sub(folders|albums) function needs to abort if it sees it

or in PHP:

3) Test the values in the php pages [[ (album|folder).(add|edit).2.php ]] and kick back an error.

I don't think there's another way to mangle things.

This can result in a DoS.

411Feature RequestLowBackend / CoreOpenID supportNew2.361 Task Description

PO has hooks for an external authentication mechanism. Once the user is authenticated it creates whatever's needed for local use.

OpenID seems to be a natural offshoot of this; not too useful for a single-user system but it would be quite handy for a site wanting to piggyback onto another user.

245Feature RequestLowDatabaseMove 'access' and 'original' rights into 'files' table.NewDevel3 Task Description

This way individual versions and scaled resolutions can be given appropriate rights; If we have the individual files with fine-grained permissions, then we can do away with the 'original' field altogether, and the 'access' field can be inferred from these settings (via a DB stored procedure)

The original can be granted to be 'private' or 'protected', for example, while the watermarked preview is 'public', the non-watermarked preview is 'protected', and the thumbnail is 'public'.

If we have the individual files with fine-grained permissions, then we can do away with the 'original' field altogether.

If the viewer can access the thumbnails, then they can see the image on the browser list. If the viewer can access *any* of the preview images, the thumb links to the best-quality preview image. (ie resolution &| watermarking..). While looking at the preview, if they have access to the original, let them have it.

446Bug ReportLowBackend / Corelocation search always return nothing in Advanced Searc...Unconfirmed2.37 Task Description

Only location in advanced text is not work, others works fine.

I can't find the meaning of ||| by google. But I change ||| to || in file search.text.advanced.php at line 172

$sql_search_string['location'] = build_sql_search_string($keywords['location'], "(view_location.place||view_location.city||view_location.state||view_location.country)");

and change view_location all columns NULL value (if any) to '' by sql command, then it seems work.

Here is the sql command to change view_location

create view view_location as
select location.identifier, location.place, location.city,
COALESCE ( (select value from state where state.identifier=location.state), '' ) as state,
(select value from country where country.identifier=location.country) as country,
users, last_modified_date,
latitude, longitude, private
from location;

381Feature RequestLowUser Interface'last X photos'Unconfirmed2.362 Task Description

> 'last X photos' could easily be implemented as a wrapper in include/site.php, much like the site_display_random_photos() function already is.

239Feature RequestLowBackend / CoreIntegrate full-text searchNewDevel2 Task Description

http://www.sai.msu.su/~megera/wiki/Tsearch_V2_Readme

It's supposedly been part of the "core contrib" postgresql stuff since v7.4

This would let us perform a search on specific keywords across *all* indexed fields simultaneously.

297Feature RequestLowDocumentationIn code documentation for PHP-Documentor or DoxygenNew2.331 Task Description

It would be great if PO could make use of automated documentation tools such as Doxygen or PHP-Documentor.

It is now a time consuming task to start understanding the inner workings of PO as you need both an overview of the database schema and the logic in the code.

With a bit more documentation about the files and the routines in PO solving bugs or contributing code will become much easier.

397Feature RequestMediumImportImport of metadata from programs like Raw TherapeeUnconfirmed2.367 Task Description

Some programs like Raw Therapee creates a file to store all metadata to convert a raw file to a jpg file. To repeat the convert process (with or without slightly differences) it would be nice if I'm able to store such metadata with variants at the side of the original picture.

From other programs that storing data in a database, it would be possible to read out the data from the DB and storing metadata into xml-files and backwards.

390Feature RequestLowBackend / Coregps data in a spatial enabled database?Unconfirmed2.367 Task Description

I think it would be a cool feature to make PO spatial enabled. I mean that it would be possible to use gps data (geolocated images) to search for "photo taken near some point" or "all the photo taken near some street". Or simply to create an interface a la panoramio for look/find for pictures. It should be not to difficult to implement.

184Feature RequestLowUser InterfaceFormat (film size) editingUnconfirmed2.336 Task Description

There is no easy way to add/edit the list of film format sizes appart from editing the database (or using a tool like phpPgAdmin). It would be nice and IMO simple to implement a way to add/edit a Film size option.

327Feature RequestLowBackend / CoreFocal length statisticsUnconfirmed2.342 Task Description

A running statistic of most used focal lengths (can be expanded to any EXIF/IPTC property like most used lens, flash usage and so on).

Something like this: http://billigites.blogspot.com/2005/06/focal-length-statistics.html

Invaluable to decide which lens to buy next. :-)

185Feature RequestLowBackend / CoreDevelopment / printing informationUnconfirmed2.333 Task Description

I capture the majority of photos on film, process it myself, print or scan it myself. A lot of people my do the same. I would like to see an option to note down the way I developed the film. IMO it would be best done in the following fashion:

have a table with development instructions (could have fields like: "id"?, "name", "developer", "dillution", "time", "agitation", "temperature", "notes"). The editing would be done in a similar way as for locations. This info would than be linked (through the id field?) as a technical informaion for the photo.

If there was the possibility to enter these information, I would not have to have a separate database/excel sheets noting this down.

Thanks a lot

Jiri

395Feature RequestLowBackend / CoreConvert more pages to a POST/REDIRECT/GET output.New2.36 Task Description

if all pages are explicit redirects, we can use POSTs everywhere and still have navigability.

100Feature RequestLowBackend / CoreContent-based searching that works. :)NewDevel2 Task Description

What we have now is a decent start, but it needs a backand (and instructions for making it all click together)

The eventual goal is to let us "search for images like this one" and have it JustWork(tm).

Right now GNU GIFT (http://www.gnu.org/software/gift/) looks like the best bet as a backend; I just need to figure out how to make it all work.

Note that we really need search result caching to make this usable with a large image database.

11Feature RequestLowBackend / CoreClean up database conventionsAssignedDevel6 Task Description

Most database results are being indexed by position in a fixed array, rather than by column name. This may be slightly faster, but is hell to program around, especially when there can be twenty fields being returned.

* Convert all fetch_row() calls to fetch_assoc()

Secondly, using prepared statements would make the code a lot cleaner and eliminate the need to escape strings being passed in to the database. Unfortunately, this may require PHP 5.1 to pull off, depending on the maturity of the postgres bindings for earlier versions.

* Use prepared statements and SQL variables instead of inlined data.

180Feature RequestLowDatabaseBreak out the statistics dataNew2.336
160Feature RequestLowImportbetter watermarkingNewStable5
8Feature RequestLowBackend / CoreBetter permission hierarchyAssignedDevel21
285Feature RequestLowUser InterfaceAutomatic slideshowUnconfirmedDevel2
316Feature RequestLowBackend / CoreAllow for sub-albums on the folder listing pages.New2.342
244Feature RequestLowBackend / CoreAllow for custom rendering pathsNew2.334
315Feature RequestLowBackend / CoreAllow filtering/finding photos matching criteria in Pro...Unconfirmed2.341
89Feature RequestLowBackend / Coreallow advanced search on any database fieldAssignedDevel5
464Feature RequestLowBackend / CoreAdd support for "adult" filtersNew2.371
213Feature RequestLowBackend / Coreadd mechanism for tracking models &| model releasesNew2.33
407Feature RequestLowBackend / CoreAdd a 'start/end date' to folder/albumsNew2.361
369Bug ReportLowBackend / Coreadd a 'ignore' field to profile itemsNew2.35
358Feature RequestLowUser InterfaceAdd a 'fast tagging' UI to the listing pages.New2.354
200Feature RequestLowImportAdd a 'copyright notice' and 'Original URL' to thumbnai...NewDevel1
307Feature RequestLowBackend / CoreAdd a 'contact this user' form.NewDevel1
Showing tasks 1 - 40 of 40 Page 1 of 1

Available keyboard shortcuts

Tasklist

Task Details

Task Editing