I had problems when trying to upgrade from 2.0 to 2.1 (all my own fault). My goal at this point was to install all of my album data into a clean install of 2.0 and then upgrade.

To help with this upgrade, I tried to use the export/import module, but this would not work (all my own fault again).

To meet this goal, I created an export/import program that I could call from phpbb. I decided to export into and XML file. I looked into the current import/export code and saw that the objects were serialized. I did not want to take this approach because I wanted the export to be logical. I did not want to preserve any id numbers or foreign key references. In this XML design, I would have <album> sections which could be nested, <photo> tags, a <user_list> section which would map the phpbb to gallery usernames and so on. The photos would be copied in a structure similar to the directory structure used by gallery itself.

The import process was fairly straight forward. Writing a parser for the XML was more difficult that I had anticipated.

After getting everything upgraded, I tested the export of the original import/export module and it worked this time. I examined the code some more, and it seems that it does not attempt to preserve the database keys and such. So, I don't think my approach has much advantage except that the output of the gallery data is in a more readable format. This design would also allow for one to modify data and then import the modified data. (The serialized data was fairly difficult for me to understand.)

Anyway, if you see an advantage to this approach, I would would be happy to share some code with the team and work to develop it into a usable module. I wrote this for my one-time use, and it allowed me to meet my goal. So, I will not be offended if you don't think this is advantageous. I just wanted to offer this if you believe there to be value. Here is an example of the XML file (there are many other fields I support, but I wanted to keep this example short.)

Mike Rollins (rollins@CamoTruck.Net)