Lightroom to Gallery (English)

Adobe Lightroom is able since release 1.3 to support plugins. Lightroom to Gallery is a plugin to export photos from Lightroom directly to Gallery.

Lightroom to Gallery

Lightroom to Gallery

Features

This plugin provides the following features:

  • Support for Gallery 1.X, Jallery 1.X and Gallery 2.X.
  • Destination album choice.
  • New album creation.
  • Lightroom to Gallery Medata mapping.
  • English, French and German interface.

Note: Gallery 3 is not yet supported since it uses a new protocol.

Download

Download Lightroom2Gallery 2.0.4 for Lightroom  1.X and Lightroom 2.X
Supported Systems: Mac OS X, Windows XP, Windows Vista

Install

This module must be installed into the following directory:

  • Windows: C:\Program Files\Adobe\Adobe Photoshop Lightroom X.Y\Modules\
  • Mac OS X: /Library/Application Support/Adobe/Lightroom/Modules/

Don’t forget to restart Lightroom so that the module is loaded.

Support

Please leave a comment to report any bug or feature enhancement.

If the module ends with an error, you may want to send me the full log file of the plugin at arnaud(dot)mouronval(at)yahoo(dot)com.

You can activate the logging features within the Lightroom plugin manager.

44 commentaires

  1. Problem during export:
    « An internal error occured: Expected header 1 ‘field’ sub-item to be a string, not nil »

    Lightroom: 2.5

    Gallery-Version = 2.2.5 Kern 1.2.0.7
    PHP-Version = 4.4.9 apache2handler
    Webserver = Apache
    Datenbank = mysql 4.1.22-max-log, lock.system=flock
    Werkzeuge = Exif, Getid3, Thumbnail, Gd, LinkItemToolkit
    Beschleunigung = partial/900, partial/900
    Betriebssystem = Linux dd13608 2.6.25.20-25.1-pae #1 SMP 2009-03-12 13:13:03 +0100 i686
    Standard-Motiv = carbon
    gettext = Aktiviert
    Sprache = de_DE
    Browser = Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_1; de-de) AppleWebKit/531.9 (KHTML, like Gecko) Version/4.0.3 Safari/531.9
    Zeilen in der GalleryAccessMap Tabelle = 33
    Zeilen in der GalleryAccessSubscriberMap Tabelle = 1903
    Zeilen in der GalleryUser Tabelle = 3
    Zeilen in der GalleryItem Tabelle = 1898
    Zeilen in der GalleryAlbumItem Tabelle = 24
    Zeilen in der GalleryCacheMap Tabelle = 7837

  2. Salut!

    Really a great plugin, thanks! The only problem is, that – being on Mac – special characters (umlauts) get crippled when uploading to Gallery. I don’t have this problem on Windows, but get the same effect, when uploading to a Coppermine image gallery. I found this thread http://gallery.menalto.com/node/72147, but the workaround, described there, did not work in my case.

    The problem obviously has to do with the way, on Mac metadata is written to jpg files. It is NOT a Lightroom problem solely, I had the same problem with ViewNX for instance.

    After hours of research I found a workaround myself, which consist in rewriting the tags, which are of interest for me and for the export to Gallery, with the help of exiftool while converting special characters to entities. Here is the code:

    exiftool -r -overwrite_original -E ‘-Description>ImageDescription’ ‘-Description>Caption-Abstract’ ‘-Subject>Keywords’ ‘-Location>Sub-location’ ‘-Country>Country-PrimaryLocationName’ ‘-City>City’ /directory/where/the/image/files/reside

    I created a routine with Macs Automator (called automatically by Lightroom after exporting), which does not only execute the command above, but also uploads the resulting files via ftp to the tmp directiory of Gallery. But from here on, I do the last step the manual way.

    Did you hear about this problem with special characters? And do you have an idea, how possibly fix it in a more elegant way than described above? I would love to use your plugin, but also keep my german umlauts in descriptions, keywords etc.

    Regards

    Tobi

  3. When attempting to contact a server using HTTPS, line 36 throws a ‘An internal error has occurred: [string « GalleryRemoteProtocol.lua »]:36: attempt to concatenate local ‘raw’ (a nil value)’

    I have fallen back to non-encrypted connection with success, although if you can make this wonderful plugin SSL compliant I would be very happy 🙂

    Alternatively, either a warning that HTTPS breaks, or a error that means something to the user would be good.

    Thank you!

  4. Thanks for the feedback!

    I have never tested the plugin with HTTPS, however, it should work.

    There are a few reasons for it not to work :

    the certificate used for the SSL handshake is not signed by a traditionnal CA or maybe that the CA has not been declared in the list of the trusted AC on the OS (if LR refers to this list to check a certificate)
    the site uses HTTPS and HTTP authentication. In the second case, the plugin can not provide any login and password for the HTTP authentication.

    Does any of the previous reasons apply here?

  5. I have the same problem as Amaud.

    An internal error has occurred: [string « GalleryRemoteProtocol »]:36: attempt to concatenate local ‘raw’ (a nil value)

    I am not using https, using 2.0.4 with lightroom 2.6 gallery 2.3

    This happens occasionally – especially when I am uploading many files or one upload session after the other.

    Only had this recently – last 3 months

  6. First of all, thanks for the great plugin, it make the workflow quite easy for me.
    Nevertheless I have two suggestions.

    As I do not upload all pictures to Gallery2 it would be great to be able to filter based on an information, which pictures are already uploaded, eg to be able to reload them to Gallery.
    I saw this function in the plugins ofJeffrey http://regex.info/blog/lightroom-goodies/picasaweb#history .
    During the export a flag in the custom metadata is done, indicating it is uploaded to a certain place.
    Another option, but maybe to complicated would be also beside the upload to Gallery indicator the information in which album it is loaded.

    Nevertheless it is a great tool, so just ideas to make it even better.

    THANKS

  7. Hi,

    Thanks for the feedback.

    I’ve already studied this feature. Bad news : Gallery 2 does not assign any ID to the elements (albums, photos, movies, etc.) so that it is very easy to modify an uploaded elements afterwards. I would also love to be able to reupload a picture after I improve the developments settings.

    The fact is that if I log where an element has been uploaded, I may ran into troubles : Gallery may remove/change the filename (spaces and other characters are replaced with _) which is not notified to the plugin once a picture is uploaded. If a user moves/renames/duplicates a picture, then once again the problem occurs. If I implement such a feature, I expect to receive a lot of complaints from users saying it does not work, so I prefer not to.

    Second bad news is that Gallery 3 will behave the same way… I would have loved to see the Gallery team take a few features from Flickr such as this one…

  8. I am getting this error when I try to export my photos.

    An internal error has occurred: [string « GalleryUploadTask.lua »]:86: attempt to call field ‘versionTable’ (a nil value)

  9. I will.

    Gallery 3 does not use the Gallery Remote API. Instead, the development team is building a brand new REST interface, meaning that I will have to code a totally new API to access G3.
    First, I wait for this API to become « Gold », then I will code the same features that already are available to G1/G2.

    I’ll then check what I can do to make a better use of LR3 new features such as Publishing Services.

  10. Hey, great plugin, works like a charm, I couldn’t possibly use gallery if it weren’t for your plugin. So thanks a lot for your outstanding work.
    One thing keeps bugging me, though. I frequently upload pictures to one of three different albums, always using the same settings. Being able to save configurations as Export Presets would be really, really cool. For now I always get an ‘internal error’ saying that ‘album’ is null and couldn’t be concatenated. No idea if this can be done, I’m still quite useless at LUA, though I’m learning.
    Ah, another thing, while I’m at it .. a super-simple implementation of replacing images already in place would still help lots of people, you could just put a big red « Experimental – use at your own risk » next to such an option to keep problem reports down. In my case, just receiving a prompt « Replace Image Yes/No » when there’s already a photo with the same filename in the current album would do perfectly well. There’d be a lot of cases where this wouldn’t work as intended, but that’s why that option would be unchecked per default and why it’d have a big red warning next to it. This couldn’t possibly work as well as the flickr publishing service, and a lot of people would screw it up, but it would be extremely handy for a lot of us out there.
    As to the first feature request, a two-click-export (one for the context menu, one for the export preset) would just totally rock.

    So long
    Felix

  11. Hi Arnaud,

    thank you for your great work! I am using LtG for a long time. Until today I worked with LR2 and had no problems.

    Unfortunately your plugin does not work together with LR3. I got the following error message while exporting pictures to my G2 (translated from German to English):

    « An internal error occured: LrCatalogDo was marked depreceated in Lightroom 2.0 and is not supported as of Lightroom 3.0. This call is no longer needed. »

    Allthough I am able to create new albums, I am not able to upload the pictures.

    Is there a way to bypass this error?

    A second thing, which I would like to improve is the list of existing albums: Because that I have some hundreds of albums in my Gallery it is annoying to navigate with the current kind of list of existing albums. It would be great to have dropdown list like normal Windows or MacOS dropdown lists with a navigation bar on the right side. This would improve navigation very much!

  12. Hi,

    Thanks for the feedback.

    I did not have time to test completely my plugin with LR3. However I will and if something needs to be fixed, it will.

    Regarding the UI to select the album, I have the same problem. I did not find anything better yet since LR1 and LR2 only offer a subset of the visual widgets we are used to on our machines : there was no « tree » widget, so I had to chose the less bad solution which was a drop-down menu. I’ll check if LR3 came with additional widgets that may solve this issue.

  13. Hey there,

    Thanks very much for this plugin. I have been using it succesfully for a while however, tonight it has stopped allowing me to upload pictures. I am getting two errors:

    [string « GalleryRemoteProtocol »]:36: attempt to concatenate local ‘raw’ (a nil value)

    and

    An internal error has occurred: [string « GalleryRemoteProtocol »]:36: attempt to concatenate local ‘raw’ (a nil value)

    Please let me know if there is something that I can help test with or if there is a work-around.

    Thanks!

  14. Hi,

    I have no idea where it’s coming from. I need to get the full log file in order to understand where the function has been called.

    Please send me the full log file of the plugin (activate the login function within the plugin manager – select the plugin and set the log level to verbose).

  15. Hi there, I have tried to enable logging but now I can’t get anything about the plugin to work. Is there a way to reset the plugin and it’s cache?

  16. Hi Arnaud!

    I saw, that you moved to 2.0.4. So I tried it again with LR3 and now it seems to work fine! Thank you for that!

    Do you have news about the UI widgets in LR3 (DropDown vs. Tree)?

    Thank you for your excellent work!

    Cheers,
    Thomas


  17. Mike:

    [string « GalleryRemoteProtocol »]:36: attempt to concatenate local ‘raw’ (a nil value)
    and
    An internal error has occurred: [string « GalleryRemoteProtocol »]:36: attempt to concatenate local ‘raw’ (a nil value)

    If I switch to HTTPS on my server, I get the same error message. Could it be, that you are using a self-signed webserver certificate or an untrusted certificate as me?

    I tried to enable logging, but cannot find the logfile. Where will it be written?


  18. Thomas:


    Mike:

    [string « GalleryRemoteProtocol »]:36: attempt to concatenate local ‘raw’ (a nil value)
    and
    An internal error has occurred: [string « GalleryRemoteProtocol »]:36: attempt to concatenate local ‘raw’ (a nil value)

    If I switch to HTTPS on my server, I get the same error message. Could it be, that you are using a self-signed webserver certificate or an untrusted certificate as me?
    I tried to enable logging, but cannot find the logfile. Where will it be written?

    Hey Thomas,

    I am not using an https connection so I don’t think that is the problem… something has changed with my install but I can’t figure out what.

    Now lightroom just errors and won’t even try to run the plugin.

  19. The logfile is writen in the « My Documents » directory on Windows, and in the « Home » directory in MacOS X.


  20. Mike:

    Is there a way to reset the plugin and it’s cache?

    The plugin has no cache, however, it relies on Lightroom to manage its preferences. If you want to totally remove the plugin, you have to remove the plugin from its directory and you have to edit Lightroom’s preference file (it’s a text file), look for the block related to the plugin, delete all lines. Be careful : make a backup of this file before editing it.

  21. Hi Arnaud,

    following the logs generated during my try to export to my Gallery using HTTPS (server uses self-signed certificate):

    09/04/2010 07:46:52 INFO Processing GalleryUploadManager.endDialog( properties )
    09/04/2010 07:46:52 INFO Processing GalleryUploadExportDialogSections.startDialog( properties )
    09/04/2010 07:46:52 INFO Processing buildServerItems( properties )
    09/04/2010 07:46:52 INFO Processing buildAlbumItems( properties, albumList )
    09/04/2010 07:46:52 INFO Processing updateServerSelectionStatus( properties )
    09/04/2010 07:46:52 INFO Processing updateServerSelectionStatus( properties )
    09/04/2010 07:46:52 INFO Processing updateAlbumSelectionStatus( properties )
    09/04/2010 07:46:52 INFO Processing updateCaptionStatus( properties )
    09/04/2010 07:46:52 INFO Processing GalleryUploadExportDialogSections.sectionsForTopOfDialog( f, properties )
    09/04/2010 07:46:54 INFO Processing updateServerSelectionStatus( properties )
    09/04/2010 07:46:54 INFO Processing GalleryRemoteProtocol.isRemoteProtocolEnabled( Berge )
    09/04/2010 07:46:54 INFO Processing GalleryRemoteProtocol.getGalleryRemoteURL( https://www.berge.private/gallery )
    09/04/2010 07:46:54 INFO Processing GalleryRemoteProtocol.getGalleryURL( https://www.berge.private/gallery )
    09/04/2010 07:46:54 INFO Processing GalleryRemoteProtocol.parseGalleryResponse( Raw Message )
    09/04/2010 07:47:53 INFO Processing GalleryUploadExportDialogSections.endDialog( properties, why )
    09/04/2010 07:47:53 INFO Processing GalleryUploadManager.startDialog( properties )
    09/04/2010 07:47:53 INFO Processing updateLogLevelStatus( properties )
    09/04/2010 07:47:53 INFO Processing GalleryUploadManager.sectionsForBottomOfDialog( f, properties )
    09/04/2010 07:47:55 INFO Processing updateLogLevelStatus( properties )

    I cannot see a hint why this does not work. There is also no entry in Apache access and error log at this time. Furthermore tcpdump on the server shows no packet arriving at the server from Lightroom.
    A simple telnet to tcp port 443 from the client shows the packets in the dump. So there shouldn’t be a firewall problem…

    Do you have an idea why HTTPS doesn’t work?

    Cheers,
    Thomas

  22. The problem here is that your certificate is self-signed, thus raising a security exception. Lightroom’s SDK does not support that.

    Maybe you can try to add your certifcate to your Windows certificates (through the Internet Options) so that Windows trusts this certificate.

  23. Hi, I have been using the plug-in successfully for several months. Last week I uploaded several images into an album with no problems. This week I am getting a following errror:

    An internal error has occurred: [string « GalleryRemoteProtocol »]:36: attempt to concatenate local ‘raw’ (a nil value)

    My log file shows the following:
    09/12/2010 10:53:25 INFO Processing GalleryUploadManager.endDialog( properties )
    09/12/2010 10:53:25 INFO Processing GalleryUploadManager.startDialog( properties )
    09/12/2010 10:53:25 INFO Processing updateLogLevelStatus( properties )
    09/12/2010 10:53:25 INFO Processing GalleryUploadManager.sectionsForBottomOfDialog( f, properties )
    09/12/2010 10:53:25 INFO Processing GalleryUploadManager.endDialog( properties )
    09/12/2010 10:53:25 INFO Processing GalleryUploadExportDialogSections.startDialog( properties )
    09/12/2010 10:53:25 INFO Processing buildServerItems( properties )
    09/12/2010 10:53:25 INFO Processing buildAlbumItems( properties, albumList )
    09/12/2010 10:53:25 INFO Processing updateServerSelectionStatus( properties )
    09/12/2010 10:53:25 INFO Processing updateServerSelectionStatus( properties )
    09/12/2010 10:53:25 INFO Processing updateAlbumSelectionStatus( properties )
    09/12/2010 10:53:25 INFO Processing updateCaptionStatus( properties )
    09/12/2010 10:53:25 INFO Processing GalleryUploadExportDialogSections.sectionsForTopOfDialog( f, properties )
    09/12/2010 10:53:27 INFO Processing updateServerSelectionStatus( properties )
    09/12/2010 10:53:27 INFO Processing GalleryRemoteProtocol.isRemoteProtocolEnabled( WINSRVR )
    09/12/2010 10:53:27 INFO Processing GalleryRemoteProtocol.getGalleryRemoteURL( http://photoprintpro.com:8080/gallery2 )
    09/12/2010 10:53:27 INFO Processing GalleryRemoteProtocol.getGalleryURL( http://photoprintpro.com:8080/gallery2 )
    09/12/2010 10:53:27 INFO Processing GalleryRemoteProtocol.parseGalleryResponse( Raw Message )

    Thanks in advance for your help.

  24. Sorry for the delayed response. I have managed to get things working again. It seems that every time I open the plugin as a saved export template, I have to change the jpeg compression level before the plugin will allow me to export properly. After changing the compression level I get a working export. Odd indeed.

  25. I added the certitificate and also the CA-certificate, which signed my cert to the certificate store so that IE shows a trusted site when opening the web page in the browser, but in LR I get the error message again 🙁

  26. I have encountered an error using your plugin (2.0.4) under LR3 – while exporting, I get an error message:
    An internal error has occurred: postMultipart: chunk must contain either value or filepath.

    Unfortunately I have no idea where your plugin stores its log, so I can’t provide more detailed info.

    The plugin connected to my Gallery2, downloaded a list of Gallery Albums, but failed when the export was supposed to proceed.

  27. I’m using LR3.3 and Gallery 2. When trying to export out of Lightroom I get this error message « Die Nachbearbeitungsaufgabe dieses Zusatzmoduls konnte nicht erfolgreich abgeschlossen werden.
    postMultipart: chunk must contain either value or filePath »

  28. The HTTPS problem may have nothing to do with the used certificate, as I am using now an official certificate issued by an official CA.

    I just made the following test:
    Added a (Fantasy-) Server « Test » with address https://1.1.1.1 with test as user and test as password. You can imagine that this server does not exist. Although I still get the same error message as above: ‘An internal error has occurred: [string « GalleryRemoteProtocol.lua »]:36: attempt to concatenate local ‘raw’ (a nil value)’

    Are you still working on this issue?
    Thank you for your good work and time, Arnaud!

  29. Hello the software ist great, my french is not too good, so in english. Is there any information available when the plugin is available for Lightroom 3.x? We can’t wait any longer to use LR3 so it would be sad to look for an other tool instead.
    Thanks, Alex

  30. The plugin currently works with LR3 the same way it works with LR2. Some users have reported problems, but those will be ironed out once I find a way to reproduce them.

    I don’t plan to provide any publishing service in LR3 since Gallery does not provide a unique ID to all of its elements so that we can safely link them to LR elements without any fear that the link is broken once an element is moved or renamed in Gallery.

  31. are you sure that Gallery does not provide a unique ID? All elements (including albums) in G2 are referenced by the identifier g2_itemId. As far as I know this value is unique.

    Regarding my HTTPS problem: Do you have any news regarding my post #31? Have you been able to reproduce this issue?

  32. Gallery 2 manages IDs for each and every item. The real problem is that Gallery 2 never got any access protocol of its own. Instead, it relies on the Gallery Remote Protocol that has been designed for Gallery 1, which did not use any unique ID. As a result, the LR2Gallery module can not access the unique ID that Gallery generates for all pictures. A new protocole would have to be designed for Gallery 2, which will never happen.

    Regarding the HTTPS problem, I’ve been very busy for the last months, and still have to track down a much easier problem with G3. I’m sorry but I can not tell when I will be able to figure out what’s wrong with HTTPS.

  33. how do i get to the bottom of my album list quicker? takes me a good 30 secs to hold the down arrow on the dropdown for albums. Other than that, working great!

  34. I know a « tree view » widget would be much more suitable than the scrolldown list to chose an album. The problem is that there is no such widget within Lightroom SDK, at least with Lightroom 2.
    I’ll check if by any chance, Adobe did not include some news widgets to make this operation easier.

  35. I have this error when log in my gallery 2 from LR 3

    [string « GalleryRemoteProtocol »]:36: attempt to concatenate local ‘raw’ (a nil value)

  36. @seal: Are you using HTTPS? Then read a bit deeper in the posts or try +F and type « attempt to concatenate local » and many things will get a bit clearer. There are several posts regarding this issue.
    Unfortunately this will not make you more comfortable 🙂

  37. so version 2.0.0 of this plugin works perfectly for my gallery2 site, but plugin 2.0.4 gives me the error « could not connect to remote server. make sure the login details and the server url are valid »

    im using the same settings. i have no clue how to fix this

  38. Hello Arnaud
    Since some time last autumn the photos I send from Lightroom to Gallery2 have problems with the Umlauts (äöü) and also french characters (éàè). I’m using Your latest updated version 2.0.4, last year I worked with LR3, now with LR4.
    Do You have any suggestion what to do?
    Chears, Dieter

  39. Hi there, thank you so much for the use of this product.

    Unfortunately I just upgraded to lightroom 4.1 64bit on windows 7 64bit and am getting the error « A file failed to upload correctly ». I enabled, then checked the log and found that the jpg file in question (C:\Users\Thrax\AppData\Local\Temp\4C0BDC12-209A-46EF-866A-92531DC26549\bob.JPG) was created correctly but it appears that the Gallery2 server is never sent it, then times out.

    I can still upload correctly using Lightoom 3.x 64 bit on the same machine so the site configuration would appear OK. Can you give any hints as to what may be causing this? I have tried it with firewall disabled.

    Relevant portion of log file is below.

    Regards,
    Thrax
    06/16/2012 13:25:32 DEBUG attaching child #36
    06/16/2012 13:25:32 INFO Processing attachChildren( properties, albumList, 36, | | )
    06/16/2012 13:25:32 INFO Processing updateServerSelectionStatus( properties )
    06/16/2012 13:25:32 INFO Processing updateAlbumSelectionStatus( properties )
    06/16/2012 13:25:39 INFO Processing GalleryUploadExportDialogSections.endDialog( properties, why )
    06/16/2012 13:25:39 INFO Processing GalleryUploadTask.processRenderedPhotos( functionContext, exportContext )
    06/16/2012 13:25:44 INFO Processing GalleryRemoteProtocol.uploadImage( De’s Pics, 7, C:\Users\Thrax\AppData\Local\Temp\4C0BDC12-209A-46EF-866A-92531DC26549\bob.JPG, bob.JPG, )
    06/16/2012 13:25:44 INFO Processing GalleryRemoteProtocol.getGalleryRemoteURL( deana.wreckers.org )
    06/16/2012 13:25:44 INFO Processing GalleryRemoteProtocol.getGalleryURL( deana.wreckers.org )
    06/16/2012 13:27:15 INFO Processing GalleryRemoteProtocol.parseGalleryResponse( Raw Message )
    06/16/2012 13:27:15 TRACE Raw Message:

    408 Request Time-out

    Request Time-out
    Server timeout waiting for the HTTP request from the client.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *