summaryrefslogtreecommitdiffstats
path: root/CHANGES
blob: cf751e13fc3d6b3d5e532960dfc1de99dacf0889 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
==========================================================================

For further information about Photo Organizer, see its web site at:

	http://po.shaftnet.org/

==========================================================================

v2.38 (Unreleased)
 
 [misc] Get rid of "IE7" compatibility library
 [themes] Use CSS3 to style radio buttons and checkboxes
 [themes] Use CSS3 drop-shadows for images
 [themes] Use CSS styling for menus instead of the graphics hack
 [themes] Convert the action buttons to using spans instead of tables
 [misc] Update to tagcloud v3
 [themes] Use CSS3 to style slide selection
 [misc] Better memcache logging
 [misc] Fix some PHP 5.4-related bugs
 [misc] Added systemd unit file for background workers
 [fix]  Newer versions of memcached had issues with our code
 [fix]  Script errors when adding/editing equipment
 [fix]  Fix a couple of straggling warnings
 [misc] Add a script to verify repository checksums
 [fix]  Bulk update was broken due to earlier theme changes
 [fix]  Fix URL on the profile location pages
 [misc] Installer now checks for the 'mbstring' extension
 [add]  Added support for JPEG-XR, WebP, and MJPEG/MJPEG-2000 formats
 [add]  Beginnings of a JSON-RPC implementation
 [add]  Remove some of the roadblocks from serving non-JPEG images
 [misc] Fix handling of if-modified-since header when serving images
 [misc] Use the database's stored file size and timestamps
 [misc] Use '©' instead of '(c)' for default copyright stuff
 [misc] Early support for using darktable to import RAWs
 [misc] Allow photo worker to recover from a failed database connection
 [fix]  Errors upon emptying the trash weren't displayed properly
 [fix]  Unescaped search strings could lead to XSS bugs.
 [add]  Ability to natively print images to a direct-attached printer.
 [fix]  Fix detection of PHP's 'mbstring' extension

v2.37.1 (December 3, 2012)

 [misc] Pretty image URLs now include an extension.
 [fix]  Mime type not set properly for images.
 [fix]  Spool controls not working on an empty folder.
 [fix]  URLs in the RSS feed were broken with pretty URLs enabled.
 [fix]  Ignore 'Color Balance Unknown' tag.
 [fix]  Parsing camera serial number was off.
 [fix]  Better handle utf-8 encoded emails (Geoffery Lee)
 [fix]  Fix a glitch in the zip import code.
 [lang] Add Chinese Traditional and Chinese Simplified (Geoffrey Lee)
 [fix]  When deleting a user, erase their import results data.
 [fix]  When browsing based on date, restrict to the viewing user.
 [fix]  URLEncode filenames when downloading images.
 [fix]  Fix 'current volume' display in admin interface.
 [fix]  Admin user registration page redirected to wrong place.
 [fix]  Keyword search on the photo page was busted.
 [fix]  Workaround for bug in JustPictures' RSS queries.
 [fix]  Fix thumbnail URI in RSS feeds.
 [fix]  Better handling when importing images in parallel.
 [fix]  Abort import if a DB insert fails [#466] 
 [misc] Replace '@' with '{at}' in copyright blurb to deter spammers.
 [fix]  Fix a couple of undefined variables.

2.37 (September 27, 2010)

 [fix]  Fix umask for files created by PO. [#435]
 [fix]  Treat resource passwords as passwords in the input form. [#437]

2.37-rc3 (August 5, 2010)

 [fix]  Admin password change wasn't working properly. [#429]
 [fix]  "My Settings - Contact info" didn't let you set country [#422] 
 [fix]  "My Settings - Photobrowser" page was broken. [#421]
 [misc] Disable execution limits on export page.
 [misc] Tweak sharpening defaults, and let ImageMagick choose a sane
	sharpening 'radius' value.
 [misc] Make watermark settings per-size.
 [misc] Add UI elements for tweaking all configured image sizes.
 [fix]  Better handle non-UTF8-encoded image metadata [#423]
 [fix]  Auto-importing embedded RAW previews as the 'master' works. [#421]
 [fix]  Use proper random filenames when generating "print" files. [#305]
 [misc] Try to look up cameras based on serial number first.
 [misc] Add a default author preference.
 [misc] Only show the 'misc script' on the photo page.
 [fix]  Sort order and size request in the feed generator were broken.
 [misc] Silence a small pile of warnings.
 [fix]  Possible infinite loop in the import code.
 [fix]  Fix memcache not being cleared when the folder/album name was changed.
 [misc] Get rid of warning when running under php 4.3.x
 [fix]  Switch to the 'memcached' extension (instead of 'memcache')
 [fix]  Newer versions of exiftool changed tagnames slightly. [#432]
 [fix]  Fix duplicate IPTC location creation. [#433]
 [fix]  Deleteing a photo version updates the memcache properly.
 [fix]  Import/Handle non-recognized file types as additional versions.
 [add]  Support using The GIMP to import/flatten its native .xcf format.
 [add]  Support importing 7-Zip and tar.xz archives.
 [add]  Support many video formats by using 'mplayer' to 
        generate thumbnails. [#431]

2.37-rc2 (October 13, 2009)

 [fix]  ensure all input is escaped properly in the RSS feed generator.
 [fix]  Orientation wasn't being respected on bulk updates. 
 [fix]  Typo in the advanced text search page.
 [fix]  Fix auto-registration with external authentication. [#409]
 [fix]  Search folder/album link was broken without pretty URLs. [#409]
 [fix]  Tweak the tests for the POSIX and PCNTL extensions.
 [fix]  Properly clean up temp directories on imports. [#413]
 [fix]  Fix a typo in the IPTC location-matching code.
 [misc] Fix some CSS inefficiences
 [misc] Include the sizecode in the pretty image/photo URLs.
 [fix]  Ensure all exif/iptc/xmp data imported is explicitly escaped.
 [misc] Tweak the pretty URL stuff so that it breaks fewer search engines.
 [fix]  Spurious 'permission denied' error when changing sort order on
	a photo page.
 [sql]  Fix several mis-typed columns in the database.
 [fix]  Don't generate scaled versions "larger" than the original image.
 [add]  Allow admin user to change a user's password [#402]

2.37-rc1 (June 2, 2009)
 
 [misc] Upgrade the IE7 compatibility library to v2.0b3
 [misc] Upgrade wz_tooltip library to v5.2
 [add]  Add 'bulk rotate' support.  [#359] [#373]
 [misc] Further refactor some of the import code.
 [misc] Use SQL 'ILIKE' instead of regexp matching for search strings.
 [add]  Admin user can change a user's email address/username [#347][#196]
 [add]  Basic out-of-band logging support. [#221]
 [add]  Log all memcache operations 
 [lang] Simplify the i18n resources a bit.
 [misc] Add generic "run a simple DB query and cache it" functions.
 [misc] Simplify the photo/version id sanity checks.
 [misc] theme_display_photo() doesn't take image size any more.
 [misc] Clean up the rating code on the main photo page.
 [misc] Move to pg_fetch_all() where possible.
 [del]  Delete all image-based searching code.  Will return one day.
 [sql]  Convert all latitude/longitude fields to numeric types.
 [sql]  Delete a few unused DB views.
 [misc] Location profile page now differentiates between photos you own 
	and all photos in the system.
 [misc] Have the installer test for memcache support.
 [misc] Location add/edit now uses the fancy latitude/longitude parsing 
	code.
 [misc] Hide keywords/views on the photo tooltip info if it's empty.
 [misc] Migrate more queries to take advantage of memcache.
 [fix]  Allow guests/etc to see technical image details. 
 [misc] Consolidated photo and version import into one function.
 [misc] Added a vastly more efficient way of fetching random photos.
 [add]  Serialize out all import jobs to the database, decoupling the
	actual importing from the submissions.  This will let us 
	parallelize imports across multiple processors in the near 
	future.
 [add]  Remember per-folder/album sort order and view type.
 [add]  List available image sizes.  (will improve this later)
 [add]  Generate a full-size image from RAW imports.
 [add]  Initial background image import/processing worker.
 [add]  Pretty-URL the folder search too.
 [misc] Vastly speed up searching for "multi-word matches"
 [fix]  Fix """"excessive"""" quotation in tag searches.
 [add]  Generate additional preview-size images (350,700,1050)
 [fix]  Changing folder order from folder search page now works.
 [misc] Imports are now two-phase; first the metadata is committed then 
	the files are scaled/imported.  This greatly reduces the time
	we hold transactions open, and allows imports to be parallelized
	to a much greater extent.
 [fix]  When using pretty URLs, login redirections broke.
 [fix]  The resource password prompting code has been made more robust.
 [fix]  Tweak the image display code so we avoid compression.
 [add]  Add ability to generate ISO8601 dates.
 [add]  Add ability to insert RSS feeds into page headers.
 [add]  The first RSS feeds added, photo listings by user/folder/album
 [db]   Add indexes on the exposure date and version creation date columns.
 [add]  Background imports log their results for the user to examine later.
 [misc] Display the image number in the slide tooltip.
 [fix]  Ensure any selected slides show it when the page is refreshed.
 [fix]  Fix text on subscription add page. [#404]
 [fix]  Bogus memcache call.
 [fix]  Syntax error when importing single images.
 [fix]  Ensure we always strip the ICM profile out of generated images.
 [add]  Re-add per-album/folder sort order
 [fix]  Better deal with failures resulting from insufficent disk space.
 [fix]  Minor formatting fixes on the folder/album listings.
 [misc] Eliminate code duplication in the folder & album display code.
 [add]  RSS feeds for folders and albums added.
 [add]  Exporting now generates and streams archives on the fly.

2.36.2 (Unreleased)

 [fix]  Wrong field was displayed in the installer's pl/pgsql test.
 [fix]  Adding subscriptions wasn't sending out email notifications [#405]
 [fix]  Logged-in users weren't getting their passwords stored [#406]
 [fix]  Things broke if magic quotes were turned on.
 [fix]  Clean up album contents when deleting a user.

2.36.1 (September 27, 2008)

 [fix]  An incorrect function name in site_display_random_photos() [#374]
 [fix]  Adding new label types failed.
 [fix]  Label/Film/Camera deletion wasn't working.
 [fix]  Localize an overlooked string.  [#375]
 [misc] Unified the permission tests in the export code.
 [fix]  Rotating images could lead to a blank page. [#377]
 [fix]  Two memcache-related bugs.
 [misc] When deleting a photo, return to the folder listing. [#379]
 [fix]  Album/Folder thumbnails respect the global popup flag [#376]
 [fix]  Fix the rating code for PG 8.3.x 
 [misc] When editing a folder/album, return to where you came. [#380]
 [fix]  'replace master' on version uploads was broken. [#383]
 [fix]  Installer suggested an improper cmdline [#384]
 [fix]  We weren't using the original watermark image sometimes. [#388]
 [fix]  A miscalculation on the pretty-printing of lat/long values.
 [misc] Be smarter in how we link to Google Maps.
 [add]  Where possible, automatically detect the flash type used.

2.36 (August 17, 2008)
 
 [add]  Allow the import 'master' prescedence to be configurable. [#368]
 [fix]  Fix trash emptying on postgres 8.3.x [#370]
 [lang] de_DE updated.
 [fix]  A couple of run-time warnings.

2.36-rc2 (June 30, 2008)

 [fix]  Account status messages weren't always including a valid
	'bulk upload' status. [#352]
 [fix]  Editing an existing lens/flash/filter/scanner/support failed. [#350]
 [fix]  Minor tweak to the installer.
 [misc] Display the serial number of equipment, as users may have more 
	multiple cameras, lenses, etc of the same type.
 [add]  Support importing XMP sidecar files. [#292]
 [add]  Make the metadata import order into a preference. [#357]
 [fix]  Don't allow duplicate keywords on import.
 [lang] de_DE updates (Marcus Hinz)
 [fix]  XMP now imports 'Description' field as 'caption' (Marcus Hinz)  
 [fix]  Admin users weren't seeing the full manufacturer, location, and 
 	label lists. [#361]
 [fix]  Tag cloud/search pages now respect the global 'masters_only' 
	preference. [#362]
 [fix]  Error in the Italian translation [#366]
 [add]  Link the location string to Google Maps too [#364]
 [fix]  Minor fix for GraphicsMagick users [#365]
 [misc] Upon successful login, jump to the 'my folders' page unless
	we have a better idea where to return to.
 [add]  Optionally use memcache to cache static data.
 [fix]  Fixed a suboptimal query in photo.php.  Over 30x faster on my system! [#298]

2.36-rc1 (April 26, 2008)

 [misc] Files on disk now include their version id in the filename.
 [misc] Support a second ad script per-page, in the footer.
 [misc] Allow for file count limits on volumes [#246]
 [misc] Allow usernames to be specified instead of userids.
 [add]  Folders/Albums now have an associated 'thumbnail' image.
 [add]  Display the filename instead of 'no title'. [#324]
 [add]  'Blackwater' theme, by Rickard Olsson.  (with modifications)
 [misc] Theme cleanups and fixes/tweaks to CSS rules.
 [misc] Allow for a cookie path to make it easier to share installations 
        on the same host.
 [add]  Allow user to specify default copyright/web statement. [#326]
 [misc] lists of focal lengths, apertures, resolutions, etc are now
        configurable.
 [misc] Support 'pretty URLs' for outward-facing things like images, 
	folders, and albums. [#302]
 [misc] Move folder and user searches to their own pages.
 [fix]  Many bugs relating to external authentication.
 [add]  Another auth backend designed to tie into an external database.
 [misc] Convert the select all/select none button into a 'toggle 
	selection' button.
 [add]  Configurable per-user local filesystem bulk uploads. [#319]
 [misc] Unify lens, filter, flash, scanner, and support equipment 
	tables, allow for multiple of each type. [#171] [#204] [#328]
 [fix]  Made the XML import/export better match the DTD.
 [misc] Removed the rather broken (and useless) XML converter.
 [misc] Consolidated a few php files.
 [fix]  Album adding was broken.  (Scott Petersen)
 [fix]  EXIF Focal Length detection was failing on some digicams. (Scott Petersen)
 [misc] Revamp the keyword set/clear form elements.
 [fix]  Errors in the admin user mangling pages.
 [misc] Unify all photo removal code.  Make user removals two-phase.
 [fix]  External DB auth was getting an extra space.
 [misc] Ensure all forms are submitted using UTF-8 encoding.
 [add]  Datebooks events now have an associated location. [#317]
 [add]  Allow the RAW preview image to beimproted as the master. [#336]
 [fix]  Album deletion was returning to the wrong page at times.
 [misc] Allow guests to view technical details of an image, but not
 	the full exif dumps.
 [misc] Remove the 'front page editor' as it's a security hole.  If the 
        admin user doesn't have write permissions to the PO filesystem,
        they shouldn't be allowed to modify the start page.
 [add]  Display keywords in the tooltips.  [#340]
 [add]  Display link to Google Maps for all geolocation tags.  [#337]
 [fix]  Advanced search on location was broken.
 [add]  Added a crude LDAP authentication backend.  It'll need 
	customization before it's usable. [#331]
 [add]  Added a tag cloud, and easy browsing by tag/keyword. [#133]

2.35b (Aprim 26, 2008)

 [fix]  Photo rotation was broken.
 [fix]  Lower set of navigation buttons wasn't working on advanced 
        search page. [#339]
 [fix]  SelectAll/None button wasn't working on search results. [#338]
 [fix]  Backport fix for date parsing problem on event add page. [#343]
 [fix]  Fix metadata xfer on bulk update regeneration [#342]
 [fix]  Add a warning for users that have the FunWebProducts toolbar 
        installed, as it sends bogus requests to the PO server.
 [fix]  Fix mis-reporting of photos in trash.
 [fix]  IPTC import code was ignoring 'sub-location' field. [#348]

2.35a (Feburary 20, 2008)

 [fix]  The target folder of an import was double-listed.
 [fix]  Fix several bugs relating to version manipulations.
 [fix]  'Install/Upgrade' button in the installer now looks like a button.
 [fix]  Misc HTML Validation errors.
 [fix]  Displayed date when viewing a date range's photos was 
        sometimes incorrect.
 [fix]  Theme logo was hardcoded.
 [fix]  Location was being clobbered on imports.
 [fix]  Transfer Metadata was failing on RAW files.
 [fix]  Photo rating forms were failing due to a quoting error.
 [fix]  non-numeric ISO values (eg 'Hi 3200') were failing.

2.35 (Feburary 5, 2008)

 [fix]  Changing sort order on the folder/album search page was broken.

2.35-rc3 (January 28, 2008)

 [fix]  Users can add other users' images to their albums, if the 
	permissions allow for it.
 [misc] Update the import/export XML DTD url to point to a current copy 
	on the current PO web site.
 [fix]  Installer now tests for the 'xml' extension and refuses to 
	proceed if it's not installed.
 [fix]  Bulk update + regenerate and Photo re-orientations were failing.
 [misc] Consolidate all image regeneration code.
 [fix]  Metadata transfer was failing.
 [fix]  Filenames with quotes were failing imports.
 [fix]  Reworked parts of the UI so that clients can more easily figure 
	out what they have access to see.
 [fix]  SQL permission tests were wrong for protected images.  Now they 
        act as advertised.
 [misc] Eliminated a useless database column.
 [add]  Albums can now be created with the contents of the spool.

2.35-rc2 (January 12, 2008)

 [fix]  Searches now use all specified words (not just the first), and 
	respect the NOT operator.
 [add]	Random sort order.
 [misc] Centralized the "generate a list of photos" queries.
 [fix]  Properly escape the filename passed to exiftool. (Jeff Bearer)
 [fix]  Searches were misbehaving when browsing past the first page 
	of results.	
 [add]  Display the film size on the pulldown in the photo add/edit pages.
 [misc] Reformat the add album/folder pages.

2.35-rc1 (December 27, 2007)

 [lang] Italian translation (Guido Piazzi)
 [lang] Fixed typos in the English translation (Guido Piazzi)
 [misc] Database cleanup and consolidation
 [add]  Additional bitdepths and scanner resolutions. 
 [add]  Folder/Album listings are fully sortable. 
 [add]  Support exporting to .zip files.
 [add]  Support for ufraw/dcraw's wavelet denoiser.
 [add]  Handle very large folders sanely in the navigator. 
 [add]  Store passwords in a hashed (md5+salt) format. 
 [add]  Registration is now a two-step process; Login information is 
        mailed upon signup instead of automatically logging you in. 
 [add]  Support pluggable and external authentication mechanisms.  
 [add]  Default image permissions are now configurable.
 [add]  Allow easy overriding of the php session handler.
 [add]  Advanced search now supports date ranges, and searches can 
	exclude non-master images. 
 [add]  Version edits/adds can now optionally replace master images 
	linked in other albums.
 [misc] Consolidated several groups of related files to eliminate 
	duplicate code.
 [misc] Sped up exports by at least an order of magnitude.
 [add]  Added DB fields to track backup status of image files. 
 [add]  Show what albums a given album is linked into. 
 [add]  Installer has been reworked a bit, to simplify new installations. 
	Support for upgrading very old versions (<2.29) has been removed. 
 [add]  Allow datebook events to span multiple days. 
 [add]  Add workaround for images with corrupted GPS tags. 
 [fix]  Fix a regexp error that caused errors when importing cameras 
	like 'Pentax *ist'.
 [misc] Allow ads to be controlled on a per-user basis.

2.34c (November 30, 2007)

 [fix] The repository volume size test was failing, causing volumes to 
       grow without bound.  (The underlying bug is related to a separate 
       DB insert, and will be fixed in 2.35)
 [fix] Event deletion was broken.
 [fix] Installation error affecting PostgreSQL 8.0.

2.34b (November 23, 2007)

 [fix] Typo in one of the theme files dealing with image borders.
 [fix] Export code had the 'allow access to original' test flipped.
 [fix] Clarified some of the error messages in the installer.
 [fix] Fix the folder/album count on the admin's user delete page.
 [fix] Deleting users with supports was failing.
 [fix] Fix a sql bug that broke upgrades if you had multiple photo dupes 
       in your installation.
 [fix] Regenerating thumbnails on a bulk update had a bug where metadata 
       sometimes failed to copy properly.
 [fix] Bulk update failed to properly notify the user when an invalid 
       update type was selected, and also had no sane default which some 
       browsers didn't handle well.
 [fix] Ensure we pass absolute paths around wherever possible.
 [fix] Better handle navigation through albums.
 [fix] Under some circumstances removing photos from albums was failing.

2.34a (October 1, 2007)

 [fix] Install script broke on some PHP installations.

2.34 (September 20, 2007)

 [fix] Quoting problems with folder passwords.
 [fix] UI regression on registration page.
 [fix] REALLY fix the bug in count_photos_by_album() function; if you 
       are upgrading from 2.34-rc1/-rc2/-rc3, you'll need to manually 
       apply the commands in src/sql/PENDING, or wait until 2.35.
 [fix] Minor string errors.
 [fix] Settings page wasn't storing the 'preview_copy_metadata' setting.
 [fix] Vastly improve the code that computes and checks volume sizes.
 [fix] Disable page timeouts on bulk update/photo import.
 [fix] Bulk update now selects the correct type (folder/album/selection/spool)
 [fix] When the admin registered a user the redirection was incorrect.
 [fix] Minor tooltip formatting error.
 [fix] Admin page wasn't showing the bulk upload preference properly.
 [fix] More errors caused by i18n numeric formatting in incorrect places.
 [fix] Exposure/flash compensation wasn't parsing fractional values properly.
 [fix] 'ISO' setting was never being recorder/displayed.
 [fix] Image count wasn't showing up properly on folder/album delete pages.
 [fix] 'Expires' header for images wasn't being generated properly.
 [fix] 'forgot password' page wasn't working.
 [fix] Work around PHP's inconsistent symlink function.

2.34-rc4 (August 20, 2007)

 [fix] ufraw decode helper wasn't respecting user settings.
 [add] Support ICC profiles when using ufraw. (Robert Hendrickx)
 [fix] Scan parameters display was busted on the tech info screen.
 [fix] Bulk update/Delete Keywords was failing under some circumstances.
 [fix] Incorrect folder link on the 'add photos' page.
 [fix] Printouts were failing due to ambiguious SQL.
 [fix] Formatting regressions on the label/brochure pages.
 [fix] force US locale when printing to ensure correct postscript 
       generation.
 [fix] Several errors relating to custom profile entries.
 [fix] Silenced many warnings.
 [fix] Pop-up calendar wasn't displaying properly.
 [add] Allow user to clear a date.
 [fix] Action buttons weren't showing up on the search pages under the 
       list view.
 [fix] Error in the count_photos_by_album() function, causing the photo 
       count in albums to be incorrect.  *** Requires a manual DB update 
       if you're upgrading from 2.34-rc1/2/3; see src/sql/PENDING ***
 [add] jpgfromraw is now configurable instead of always being enabled.
 [fix] Some preferences weren't saving properly.
 [fix] Camera detection from XMP data was broken.
 [fix] User listing on search page respects 'hide user' preference, and 
       defaults to the logged-in user.
 [fix] Tooltips in list view were broken.
 [fix] A couple of date bugs on the admin user pages.
 [fix] The repository upgrade code was breaking when it couldn't figure 
       out the image dimensions, plus we should ignore .xmp files for now.
 [fix] Fix mis-displayed dates on the profile edit pages.
 [fix] Next/prev buttons were failing under some circumstances.
 [fix] Some Minolta-generated images were failing to import.
 
 [misc] Applied a few patches to jscalendar
 [misc] Manufacturer links open in a new window.
 [misc] Installer now reports more verbose errors when migration fails.
 [misc] Ensure all auto-refresh selectboxes work with no javascript.

 [lang] More i18n fixes.
 [lang] German translation (de_DE) updated.
 [lang] Fixed generation of locale-dependent dates.

2.34-rc3 (August 11, 2007)

 [fix] Photo edit page had a fixed, English title.
 [fix] A couple of typos on the album display page.
 [fix] site_display_random_photos() was still broken for album views.
 [fix] Admin users had problems emptying other users' trash.
 [fix] Work around Nikon NEFs that have slightly bogus metadata.
 [fix] Eliminate a warning when no keywords were specified on an import.
 [fix] Due to an include order error, graphical UI elements weren't 
       getting translated properly.
 [fix] Script errors involving watermarking.  Watermarking works now.
 [fix] Bulk update on ALL images was failing to regenerate thumbnails.
 [fix] Emptying the trash and deleting photos as the admin user broke 
       under some circumstances.
 [fix] Sort order, and images per page are respeced on the settings page.
 [fix] Admin users couldn't empty the trash properly.
 [fix] Exclude 'spool' and 'trash' from lists where appropriate, and 
       prevent users from creating new folders/albums with those names.
 [add] Exclusively use ExifTool to extract IPTC/XMP metadata.
 [fix] When logging in with a non-default language, the first 
       page displayed was in the default language.
 [fix] Client removal page was broken for non-admins.
 [fix] Tweak CSS rules to fix some formatting glitches.
 [fix] Rearranged the config file a little bit.
 [fix] Emptying trash when watermarking enabled now works.
 [fix] Install script was incorrectly migrating old watermark preferences.
 [fix] When no exposure date is associated with an image, an invalid 
       date entry is generated in its exported XML data.
 [fix] Removing a user from the admin interface did not work.
 [fix] 'Bulk Update Enabled' preference was mistyped in some places.

 [lang] Several missing i18n entries. 
 [lang] Auto-refresh the login page when a different language is chosen.
 [lang] German translation updated.

2.34-rc2 (August 5, 2007)

 [fix] Folder name not showing up in info bar on photo add page.
 [fix] Broken URL and other mistakes on copyright page.
 [fix] site_display_random_photos() and site_display_photo() functions
       were broken.
 [fix] When asked to not display photo frames, don't set the CSS image 
       class for framed images.
 [fix] Display the username on the settings page.
 [fix] Export page shouldn't be buffered/compressed.
 [fix] 'select all' on photo listing page now works properly.
 [fix] Blank page when rotating photos.
 [fix] Properly restore the error reporting levels.
 [fix] Fix the periodic preference refresh.  This also fixes the bug 
       where changing the photos-per-page wasn't working for signed-in 
       users.
 [fix] Allow a bulk update to proceed if the only option checked was to
       regenerate thumbs/images.
 [fix] Graphical select buttons and checkboxes were misbehaving.
 [fix] Minor formatting tweaks to ease validation.

2.34-rc1 (August 2, 2007)

  *** License changed to GPLv3
  *** Requires PHP >= 5.0 and PostgreSQL >= 8.0

  - Vastly improved the themability of the UI.  Converted the site 
    layout to use pure CSS, greatly simplifying the generated HTML. 
  - Support multiple languages. German, French, and Dutch translations 
    are available.
  - All internal data is now UTF-8 and is served to the user as such.
  - Switch to PHP's built-in session management, and take advantage of 
    per-session storage.  This opens up many, many possibilities.
  - Rewrote new user preference backend based around a simple 
    key=value paradigm.  In the process, all user preference code was 
    refactored to eliminate many, many database transactions, resulting 
    in much simpler code everywhere else. 
  - The spool has been revamped, making it into a sort of temporary 
    clipboard.  It's much simpler to use and considerably more 
    useful. Exports, Printing, and bulk updates can work against this 
    improved spool.
  - Error reporting centralized and cleaned up.
  - ExifTool is now required, and is used for all image metadata 
    extraction (XMP/IPTC/EXIF)
  - Shopping infrastructure removed, replaced with a simple per-image 
    URL to an external store
  - Sidebar search page removed; it was only semi-working and basically 
     needs a re-think.
  - Individual 'versions' of images can now be added to albums, rated, etc.
  - The backend now supports an unlimited number of image sizes, though 
     the UI does not.
  - All image modifications are now properly transactioned.  Before it 
    was possible for a transform to fail leaving a corrupted image on 
    disk. 
  - Consolidated most permission checks into the database via stored 
    procedures.
  - Datebook events can be associated with clients, and folders/albums 
    can be associated with events.  It is now possible to selectively 
    grant access to individual folders/albums to individual users! 
  - Users can now spool/export any image on the system, permissions 
    notwithstanding. 
  - Internal handling of image selection/checkboxes improved considerably.
  - Sort order, photos per page, and view type are now dynamic, and 
    registered users can set defaults. 
  - GPS Tag support.
  - Support GraphicsMagick for image resizing and processing.
  - Support password protected folders & albums.
  - Albums/Folders/Photos now keep track of when they were last modified.
  - Bulk update can work directly against arbitrary photo selections, 
    including directly from photo listing pages.
  - Bulk update now recursively handles subfolders/subalbums. 
  - Support the UFRaw RAW decoder. 
  - Keep track of when an image was added to the system.  Use this to 
    speed up a lot of SQL.
  - Display the number of photos taken on the datebook week/month/go-to 
    views.
  - Display the number of photos per location/camera/lens/etc on the 
    profile pages.
  - Combined all folder and album actions into a pair of "album actions" 
    and "folder actions" dialogs.
  - Added an explicit 'delete' button to folder/album/photo pages.  
  - Support keyboard navigation for common tasks.
  - Automatically detect lens used based on EXIF data. 
  - Added an option to ignore the 'UserComment' field on specific cameras.
  - Automatically copy image metadata to the preview images.
  - User can now specify the default thumbnail/preview image format.
  - Allow users to hide themselves on the public user listings. 
  - Much better support for DICOM (.dcm) images.
  - Allow guests read-only access the 'version' tab on the photo page.
  - Users can instantly mark other users as their client.
  - Per-image comments that are independent of the title/caption fields.
  - Keep track of watermark images. 
  - RAW images with embedded preview JPEGs will have them automatically 
    imported as an additional version. 
  - Updated the tooltip library.
  - Users can create new accounts for their clients.
  - Many, many minor tweaks and fixes.

2.33e ( Under development )

 [fix] Default image orientation value was bogus, so if we failed to 
       properly parse the image metadata, we broke.
 [fix] File permissions on the EXIFER decoder files.
       Use long php header on the EXIFER decoder files.
 [fix] Ambiguious SQL the IPTC/XMP location header import code.
 [fix] Unknown IPTC locations were failing import.

2.33d (May 1, 2007)

 [add] Code to support banner ads.
 [fix] If a file isn't readable, don't import it.
 [fix] The 'category' field wasn't being saved when editing photos.
 [fix] When exporting, we were discarding additional versions of the 
       first image.
 [fix] Regular users were unable to delete folders.

2.33c (February 15, 2007)

 [fix] Spelling errors in installer.
 [fix] Emptying the trash failed if it held an image with keywords.
       (really fix it this time.  Thank you Anders Jensen-Urstad!)

2.33b (January 21, 2007)

 [fix] use of 'AND' in keyword searches was failing.
 [add] Detect many more RAW formats, including DNG.
 [fix] getallheaders() is apache-specific; don't use it.
 [fix] Deleting a photo version failed due to ambiguious SQL.
 [fix] Don't check for permissions on a non-existant album when removing 
       images from an album.
 [fix] Lens and generic profile edit pages not working for non-admins 
       due to a typo in the SQL.

2.33a (December 20, 2006)

 [fix] Fix incorrect path display on the album edit page.
 [fix] Fix 'my folders' not being highlighted. (From Andy Shellam)
 [fix] Wrong image displayed for 'next photo' link.
 [fix] Fix import of images without EXIF data.
 [fix] Label edit page broken.

2.33 (December 10, 2006)

 [fix] SQL error when viewing user page anonymously.
 [fix] SQL error on the image display page that prevented stats updates.

2.33-rc4 (December 4, 2006)
 
 [security] Don't display the existing user password on the "update 
            password" form.
 [fix] Error when creating a top-level folder or album when you aren't 
       an admin. 
 [fix] Error when moving photos into a different folder when you're not  
       an admin.
 [fix] Increment 'views' counter on the image.display page, not
       the photo info page.  Only count the full and preview images.
 [fix] Allow colorspace to be modified on a per-image-version basis.
 [fix] HTML error on the photo listing display.
 [fix] Cancel buttons on folder & album edit pages weren't 
       returning to the correct place.
 [fix] Photo edit page wasn't setting keywords properly.
 [fix] Random photo function not working due to SQL error.
 [misc] Never use compressed output on the bulk upload or photo add 
        pages, as it can take a long time before you see output.

2.33-rc3 (November 27, 2006)

 [fix] Fix the "invalid login" when we haven't tried to log in.
 [fix] Don't display the memory limit warning if PHP wasn't built with
       memory limits enabled. 
 [fix] Installer was checking the $install_enabled setting before we 
       read the configuration files.

2.33-rc2 (November 26, 2006)

 [fix] Filter view was broken.
 [fix] User was unable to log out.
 [fix] Bulk update should not default to "All Folders." 
 [misc] HTML Validation improvements
 [misc] Add a robots.txt that excludes image.display.php

2.33-rc1 (November 26, 2006)

 [security] User permissions/ownerships weren't checked on many operations.
 [security] PO vulnerable to SQL injection attacks.

 [add] Display thumbnail of next/previous photo.
 [add] XML file now can include hour:min:sec in the timestamps.
 [add] Allow for private locations now.  If a location is not marked 
       private, all users can use it, but only the owner can modify it.
 [add] Allow freeform database connection strings.  This allows things like 
       SSL and local UNIX sockets.
 [add] ExifTool can extract preview images from some RAW types.  This
       can be used in lieu of dcraw when working with RAW images.
 [add] Allow admin users to search across all users' photos.
 [add] Move keyword data into its own table.  Bulk update now takes 
       lists of keywords to add and clear, instead of a wholesale set.
 [add] Store full IPTC/EXIF dumps in database using a generic format.  
 [add] Internal Exifer code is now deprecated.  Please use ExifTool.
 [add] Additional focal lengths (65,95,100,115,125,130,140,145)

 [fix] Display proper image dimensions on the photo version pages.
 [fix] Bulk update failing when updating copyright statements.
 [fix] Default index page should call site_prolog()
 [fix] Bug preventing account creation.
 [fix] ExifTool EXIF import code wasn't properly handling colorspaces 
       and embedded ICC profiles.
 [fix] Include a proper Content-Length header when downloading an image.
 [fix] Exports now deal with large files sanely.
 [fix] Eliminated an accidental (partial) backport of the new spool code.

 [misc] Consolidated many of the profile pages to use common code.
 [misc] Added a "report a bug" link.
 [misc] Complain loudly if administrator has not changed default admin
        account or password.
 [misc] Centralized the session lookup/userid fetch code.
 [misc] Return a proper 404 code when the requested album/folder does 
        not exist.
 [misc] Return proper error codes (eg 404 Not Found or 403 Forbidden)
        when fail to download, export, or print an image.
 [misc] Cleaned up a lot of the generated HTML.
 [misc] Turn off the 'display_errors' option if it's enabled.
 [misc] Explicitly set a default logging level (All but NOTICEs)

2.32b (October 19, 2006)
 - Installer wasn't creating the repository directory properly

2.32a (October 12, 2006)
 - Fix an installation error when using Postgres 8.1
 - Create the archive directory before we create the initial database.

2.32 (September 25, 2006)
 - Don't display trash and orphanage folders if they're empty.
 - Don't let EXIF data overwrite XML-specified image titles.
 - We were inadvertantly striping the time (HH:MM) off of images when 
   editing them.
 - If we fail to copy an image to the repository, don't try to process 
   it further.
 - Eliminate references to jpegtran as it's obselete.
 - Support ExifTool for purposes of EXIF extraction.
 - Site configuration is now kept in a separate file.
 - Convert focal length and aperture to numeric types in the database.
 - Properly detect Canon CR2 RAW files.
 - Code cleanups in the RAW import code.
 - Minor tweaks here and there.
 - Supports dcraw v8.18+
 - Bulk Update overhauled; should be much more usable now.
 - Automagically detect and try to turn off magic_quotes.
 - Installer rewritten.  It's now web-based, and considerably nicer 
   and much less brittle.

2.31b (September 4, 2006)
 - Fixed a bug in the installer that prevented new installations from 
   being able to add folders/albums without modifying the configuration 
   file.

2.31a (June 29, 2006)
 - Fixed a bunch of bugs in exifer that were resulting in garbled parse 
   trees

2.31 (June 29, 2006)
 - Fixed an erroneous error display when manually rotating RAW images
 - Fixed a typo in admin.user.edit.php
 - Stop using predictable filenames for imports and exports
 - Sort files/directories, as off the disk there&rsquo;s no guarantee of order
 - "Folder" search is now a "Folder/Album" search, and now searches 
   descriptions as well as captions
 - Improvements in the EXIF import, especially for Nikon-specific tags
 - Cleanups and speedups for general/advanced searching
 - Consistently use site_prolog() and site_epilog() to open/close database
 - Fix typos in installer that prevented v2.29->v2.30 database update.
 - Bulk import from filesystem 
   (disabled by default due to security implications)
 - Bulk import now imports folder hierarchies
 - Default sort order is now globally configurable
 - Fix a couple of SQL errors triggered by printing when using 
   PostgreSQL >= 8.0
 - Fix blank output when printing using the "creation date" sort order
 - Allow admins to print/export from albums that they don't own
 - Display the location in the tooltip (or 'Unknown')
 - Admin users can directly add users
 - Add 'location' to available fields when printing
 - Tweaked default sharpening settings
 - EXIF strings weren't being properly escaped in the database

2.30 (June 3, 2006)
 **** Photo Organizer has a new maintainer, Solomon Peachy ****
 - Fixed a bug where certian image orientations were mis-detected.
 - Better handling of import errors.
 - Allow admin users to create other admin users, and related fixes.
 - Fixed search engine type not being displayed.
 - Fixed a bug when viewing clients' albums.
 - Remember offset into albums/folders when performing actions.
 - Some HTML validation cleanups.
 - Customizable, site-wide page titles.
 - Suggest a default for 'copyright' and 'author' tags when adding photos.
 - Ignore 'thumbs.db' file during imports.
 - Upated to work with more modern dcraw releases. (tested with v8.15)
 - Fixed a bug where 'orientation' and 'colorspace' would get swapped in the database on imports.
 - Added an 'order added' sort order.
 - Improved the now-unmaintained <i>Exifer</i> EXIF parser to properly 
    handle TIFF and Nikon RAW files, and include colorspace details.
 - Improved keyword-based searches when quoted strings are used.
 - Improved searching when numerical arguments are specified.
 - Fixed bug with moving subalbums.
 - Fixed album hierarchy not showing up on search results pages.
 - Eliminated old, dead search code.

**** 2.29 and older were published by Balint Kis ****

2.29
 - Install script platformization.
 - Separate ICC Profiles for each camera.
 - Sub Albums.
 - Extended ImageMagic sharpening options.
 - Introduced the Orphanage - to store photos that are no longer needed 
   but referenced in a shop transaction.
 - Fixed the Shop Item Generator to allow the removal of shop items 
   that were referenced in a shop transaction.
 - Some Shop Module bug fixes - including the Download Expiry Date date fix.

2.28
 - Rating bug fixed.
 - Photo version upload bug fixed.

2.27
 - Watermakring bug fixed.
 - ISO 64 added.
 - Next-Previous navigator buttons fixed.
 - Storage Location Field is fixed.
 - IPTC DateCreated Field is fixed.

2.26
 - The rule based shop item creator tool.
 - Content Based Image Retrieval search engine interface.
 - Use Photo Organizer's old EXIF parser for TIFF files; (Exifer works 
   only for JPEG images).
 - Colorspace management; AdobeRGB and sRGB in particular, with 
   embedded profiles. [Solomon Peachy]
 - Long description for folders and albums. [Solomon Peachy]
 - Take advantage of browsers which support transparent [de]compression. 
   [Solomon Peachy]
 - Keep track of image orientation so that thumbnail regenerations do 
   the right thing, and tie image rotation into this. [Solomon Peachy]
 - Bufgixes and enhancements to the embedded Exifer EXIF library. 
   [Solomon Peachy]
 - Use persistent database connections. [Solomon Peachy]
 - Added photo sort order options: caption, title. [Solomon Peachy]
 - Don't strip the time of day from the dates we store. [Solomon Peachy]

2.25
 - Jake Olefsky's Exifier library integrated for better EXIF metadata 
   extraction.
 - Original photo download fixed (it trucated photos larger than 2M).

2.24
 - The rule based bulk update fixed - some fields were erased while 
   performing bulk updates.
 - Photo metadata edit fixed for the Transmission Reference.
 - The install script will backup the previous PHP files before installation.

2.23
 - Side bar search.
 - Rule based bulk update.
 - Dates are entered via jscalendar.
 - The XML generator is fixed.
 - Removed the obsolete -g option for DCRAW.
 - Updated wz_tooltip package to the latest version. 
 - Photos are auto-rotated in both directions. 
 - Photos with spaces in the original file name can be exported now. 

2.22
 - Allow to search for photos of a dedicated user or all users.
 - Search for exact matches - excluding embedded matches.
 - Search on a combination of keywords.
 - Perform operations on serarch results (move, print).
 - Photos are auto rotated based on the EXIF metadata.
 - Folders are listed hirerarchically in every control.
 - Display the photo dimensions and size in the version control tab.

2.21
 - Watermarking. Works only with ImageMagick 6.0.6 or better.
 - Full dcraw option support.
 - Fuji RAF (RAW) file previews and thumbnails are turned 45 degrees, 
   you must have the fujiturn utility (part of dcraw) to enable this feature.
 - Browser cache control works properly - thanks to Thomas Wenrich.
 - Additional fields were added to the brochure printer.

2.20
 - Sorting order of Folders and Albums are saved.
 - Photo Display error traces removed - which were displayed if no user 
   was logged in.
 - IPTC special character conversion table created.
 - End of line truncation error fixed - that occured sometimes with 
   IPTC and XMP fields.
 - Keyword list fixed - if keywords contained spaces, they were 
   tokenized into separate keywords.
 - Fix regarding the Hide Original flag.
 - The install script won't clean up the target directory - to prevent 
   accidental deletion of other non Photo organizer related data.

2.19
 - Shop Module Extension to allow the sale of rights and prints. The 
   shop categories and shop items are user defineable.
 - Upon purchase the high resolution master version can be downloaded 
   by the clients once their order was aprooved. There is a donwload 
   controller/monitor so that clients can download an image only the 
   specified times for a limited period.
 - Trusted Client Feature - trusted clients can download the originals 
   after they submitted their orders, whithout the need to wait for 
   orders aprooval.
 - Photos can be ordered based on their original file name.
 - Default search operator changed to AND.
 - Multiple NEF (RAW) file upload failed.
 - Images were not displayed when the PHP was running Solaris.
 - When uploading files with no dot in the file name all photos were 
   added as versions of the first one. 
 - XML Generator and Converter Bug Fixed.
 - XML DTD updated.
 - Company field bug fixed in the Contact Info section of the My 
   Settings tab.
 - IPTC timestamp validation bug fixed.
 - ImageMagick interface bug fixed.

2.18
 - PHP-5.0.0 compatibility issues solved.
 - Shared user accounts - allowing multiple users to be logged into the 
   same account simultaneously.
 - Client Albums.
 - Multiple Photo Version upload at once, allowing to create two or 
   more version of the same photo during upload, useful when uploading 
   the same photo in multiple formats.
 - As a complementary feature the photo versions are also exportable.
 - "Go to folder" buttons added to the photo and the folder view to 
   ease navigation.
 - Folders in all combo boxes are displayed hierarchically.
 - During a bulk upload, in the XMP parser, the keyword field accumated 
   all keywords assigned to already uploaded photos. This bug is fixed.

2.17
 - RDF-XMP metadata import for any image file, making Photo Organizer 
   fully compatible with the Extensible Metadata Platform of Adobe Photoshop CS.
 - Versatile selector that allows the user to specify the order in 
   which the IPTC, EXIF and XMP metadata is extracted. This is useful 
   because some fields are shared between the mentionned metadata 
   formats which are overwritten, and so the user can specify the 
   priority among metadata formats.
 - MS IE rendering problems fixed in the My Settings tab, in the Folder 
   View and some other pages. You should be using Mozilla.   :)

2.16
 - Advanced Search Engine - that allows field specific queries, while 
   providing the usual logic operators.
 - The General Search Engine has been fixed - the AND operator was not 
   working properly when searching on sql fields belonging to different 
   tables.
 - The SQL code was optimized for faster display of the folder, album 
   and search views.
 - The Inline Styles were replaced by a global CSS file that should be 
   specified in each theme. This way the PHP code got simpler, 
   furthermore theme developers have better control over the styles 
   used by the interface.
 - EXIF Timestamp validator was dropping dates where no time was supplied.
 - When displaying photos from an album view, the parent folder is 
   displayed only if the viewer has the rights to visit that folder. 
   This was a security discrepancy, as it disclosed the names of a 
   hidden folder.
 - Calendar paging problem for December fixed.
 - Original file names are now poperly imported - in the 2.15 version 
   when performing single photo uploads, the first character of the 
   original file name was truncated.
 - The controls at the bottom of the folder and album view were misaligned. 

2.15
 - New photo related data fields were added (Author, Title, Keywords) 
   as a result of the improved IPTC data import. In earlier versions, we 
   assumed that the Author of the photos is the owner of the PO account, 
   however this is rarely the case. The Title field was added to 
   complement the existing Caption filed, and the Keyword field will 
   allow you to create photo categories.
 - When uploading photos the software will try to determine the kind of 
   equipment used from the IPTC and EXIF data and will create undefined 
   locations all by itself. This means that you don't have to create 
   your shooting locations, but you still have to define your equipment 
   prior uploading your photos into the system.
 - The big feature in this release is the photo export. You can export 
   original photos, or the original photos accompanied by their shooting 
   data, described via an XML photo description file. In this release 
   only the master version can be exported. After export, the system 
   will provide a link to tar ball, containing the photos with their 
   original file names and the data description file (if this option is 
   selected). These tarballs are not yet compressed.

2.14
 - This version features a new Image Repository layout that is needed 
   by the next release to implement removable media support. The new 
   Image Repository stores each photo format (original, preview, 
   thumbnail) in so called sub-volumes, that can be backed-up or moved 
   to removable medias like DVD.
 - The search engine will ignore all single letter and most two letter 
   keywords. The forbidden keyword set is customizable through a PHP 
   variable. By using quotation marks the user can force the search 
   engine to search on a forbidden keyword.
 - Registration is completely inhibited if the New User Type is set to 
   Disabled in the Admin Tab.
 - A shop module error is fixed. If the shop module option was disabled 
   for a user or client, errors appeared at the bottom of the "My Date 
   Book" page.
 - A second shop module bug was fixed. If a photo was available in 
   multiple formats, one could select the photo from the folder view and 
   try to put it into the basket, but since no explicit format can be 
   specified from the folder view, this operation failed. The only way a 
   customer could purchase a photo was via the photo view, clicking on 
   the shop tab and selecting the desired format.<br>The current 
   implementation will allow shopping from the folder view by selecting 
   automatically an explicit format, while keeping the photo view 
   shopping features unchanged. The customer can change the format from 
   through his/her baskset - a feature that was not available earlier.
 - Next|Previous browsing error fixed. This bug occured when a client 
   was browsing with the Next|Previous buttons a folder that contained 
   private photos. The software tried to load the private photos 
   therefore the client was redirected to the login.
 - Technical Info Tab was unaccessible for administrators. Now the 
   administrator can see all details of all photos in the system.
 - Yet an other installer bug fixed - the image repository path wasn't 
   set if no password was specified.

2.13
 - User quotas. The Administrator can impose upper limits for the 
   number of photos and the storage space assigned to a user. By default 
   quotas are turned off.
 - The system stores the original filenames and supplies them when 
   retrieving the original photos. For the thumbnail and preview, 
   automatically generated filenames are returned.
 - Imagemagick can be replaced with JpegTRAN when rotating and flipping 
   images, since JpegTRAN is lossless. This feature is not enabled 
   because JpegTRAN is making some odd shifts with certain file sizes.
 - Photo upload failure fixed when sharpening with factor 0x0.
 - Lower photo navigator history fixed in the folder, album views.
 - User deletion fixed (dependency on photo ratings failed the removal).



2.12
 - The integration of <a href="http://www.cybercom.net/~dcoffin/">Dave 
   Coffin</a>'s RAW image decoder allows the preview and storage of RAW 
   images.
 - The database error that was introduced in 2.11 is now fixed.

2.11
 - Number of supported image formats extended to 107, including 
   multi-page formats.
 - Photo Upload control improvement - user can specify the gamma 
   correction, compression level, color space, sharpening factors and 
   matting options for the thumbnail and preview generation.
 - Unified file uploading.
 - Owner can hide the high resolution original from the public.
 - Shading fixed in the photo display.
 - Equipment identifiers are displayed in the profile to help compile 
   XML files manually.
 - Some navigation bugs fixed.
 - XML bulk upload documentation added.

2.10
 - Photos can be rotated and flipped
 - Photo upload security leak fixed, many thanks for Thomas's 
   (www.reeler.org) patch.
 - Bulk upload mime type addtions and fixes.
 - All external utility paths are configurable.
 - Photo Ratings tab fixed.
 - Shaded frame in photo view is fixed.
 - Selected photo version highlight fixed.
 - OpenBSD document added, lot's of thanks to Matt (www.underdogma.net)
 - Configuration directions added.

2.9
 - IPTC support
 - EXIF support - the presence of the EXIF extension is detected 
   therefore PO is functional with or whitout the EXIF extension.
 - Active Tab is preseved in photo view while browsing photos with the 
   previous | next buttons
 - Slide display fixed (slides were shrinked sometimes, now they are 
   square all the time; thumbnail was misaligned in Konqueror and in 
   Opera 6.x, now it's all centered)
 - Bug fixed in the search engine which omitted protected photos. This 
   is fixed so that clients can search over protected photos of users 
   they registerd with.
 - Second bug is fixed in the search engine that generated an error 
   trace at the bottom of the search page whenever a user, that wasn't 
   logged in, made a search.
 - Some installer bugs fixed, postgresql password support added.

2.8
 - Shop module
 - Navigation added to the photo view
 - Navigation fixed in the album viewer
 - Bulk upload extended to handle .zip .bzip2 and tar files along gzip 
   and tgz files.
 - Customizable javascript popup tips in the folder, album and search 
   browser for registered users.
 - Folder path is displayed properly in the photo viewer
 - Client settings & preferences fixed
 - Adding custom label fix
 - User & Client delete fix
 - Installer script detects previous PO installations

2.7
 - Image repository management with volume auto fill
 - Photo version control
 - Subfolders

2.6
 - Bulk Upload with XML shooting data import
 - Shooting data converters from NKN, TXT and SDF into XML
 - Search engine now includes stemming
 - Search results can be saved into albums
 - New PS printer module which includes photos into the PS files themselves
 - The brochure printer was redesigned, so photos are proprely scaled 
   and aligned
 - Printed files are automatically opened with helper applications 
   (like Ghostview or Acrobat Reader) if they are installed and 
   configured for the browser.
 - Images aren't located or linked into the HTTP server's 
   document_root, but in the image repository.
 - Improved admin tools
 - The administrator can edit and delete most data belonging to other 
   users (except the user's databook, profile and settings)
 - Automatic login
 - Comments were added to the rating system
 - Exposure compensation values: +0.3, +0.5, +0.7, +1.0, where missing 
   from the 2 database, so they were added in 2.6
 - Photo copyright tab added
 - The install and configuration script can upgrade existing systems or 
   install new ones

2.5
 - Photo albums
 - Photos can be ordered order by different criterias in folders and 
   albums
 - View the photos as a list (rather than slides) in albums and folders
 - Yellow popups for basic photo information in folder and album view
 - Printing in PS and PDF formats
 - Databook with calendar and client management
 - Submission history
 - Rating system
 - Access control
 - Extensible help system
 - Install and configuration script

1.0
 - Multi user support with basic access control
 - Single photo upload with albums and folders
 - Equipment management
 - Basic serach engine
 - Help