{"id":888,"date":"2008-07-29T10:09:28","date_gmt":"2008-07-29T01:09:28","guid":{"rendered":"https:\/\/regex.info\/blog\/lightroom-goodies\/zenfolio"},"modified":"2008-08-27T14:00:01","modified_gmt":"2008-08-27T05:00:01","slug":"zenfolio","status":"publish","type":"page","link":"https:\/\/regex.info\/blog\/lightroom-goodies\/zenfolio","title":{"rendered":"Jeffrey&#8217;s &#8220;Export to Zenfolio&#8221; Lightroom Plugin"},"content":{"rendered":"\n\n<style>\n  .with_lhs li { margin-left: 212px }\n\n  div.post_header { margin-left: 216px }\n  #navtab-holder {\n        color: #84F;\n        float:left;\n        position: relative;\n        background-color: black;\n        border-right: solid 2px #888888;\n        top: -44px;\n\n        width: 250px;\n        right: 60px;\n        margin-right: -30px; \/* the main page layout is based upon the unshifted width of the navtab-holder, so this compensates for the right:60px shift *\/\n\n  }\n  #navtab-holder a[href]:visited { color: #84F; text-decoration:none  }\n  #navtab-holder a[href]:link    { color: #84F; text-decoration:none }\n  div.navtab-topbottom {\n       width: 207px;\n       margin-left: 43px;\n       height: 10px;\n  }\n  #navtab-bottom {\n      border-bottom: solid 2px #888888;\n  }\n  div.navtab-list {\n    border: 3px solid #0B0;\n    background-color: #040;\n    padding-left: 10px;\n    margin-right: 10px;\n    -moz-border-radius:    15px;\n    -webkit-border-radius: 15px;\n  }\n\n  div.nav-header {\n      color:white;\n      padding-top: 15px;\n      padding-bottom: 3px;\n      text-align: left;\n      font-weight: bold;\n  }\n  div.sel {\n      margin: 0;\n      padding: 1px;\n  }\n  div.N {\n  }\n  div.post_container {\n    background-color: #181818;\n  }\n\n  div.Y {\n      border: solid 2px #888888;\n      border-right: none;\n      background-color: #181818;\n      font-weight: bold;\n      color: red;\n      overflow:visible;\n      position: relative;\n      z-index: 3;\n      width: 235px;\n      -moz-border-radius:    15px 0 0 15px;\n      -webkit-border-radius: 15px 0 0 15px;\n  }\n  div.sel + div.I { padding-top: 20px }\n  div.sel > div {\n      -moz-border-radius:    15px 0 0 15px;\n      -webkit-border-radius: 15px 0 0 15px;\n      padding: 2px 0 2px 10px;\n      margin: 0 0 5px 0;\n  }\n  div.N > div {\n      border: 2px solid black;\n  }\n  div.N > div {\n      margin-right: 20px;\n      background-color: #222;\n  }\n\n  div.Y + div.N > div { margin-top: 10px }\n\n  div.logo { width: 30px; display: inline-block }\n\n  #arrow {\n    display: inline-block;\n    width: 0px;\n    position:relative;\n    top:5px;\n    left:10px\n  }\n\n<\/style>\n\n\n<div id='navtab-holder'>\n<div class='navtab-topbottom' id='navtab-top'><\/div>\n\n<div class='nav-header' style='text-align:center; color:white'>My Lightroom Plugin for Adobe Photoshop Lightrooms&nbsp;<\/div>\n<div class='navtab-list'>\n<div class='nav-header'>Export &amp; Publish<\/div>\n<div class='sel Y' onmouseover=\"this.style.borderColor=document.getElementById('post_guts').style.borderColor=document.getElementById('navtab-holder').style.borderColor=document.getElementById('navtab-top').style.borderColor=document.getElementById('navtab-bottom').style.borderColor= 'red'; this.style.backgroundColor = document.getElementById('post_guts').style.backgroundColor = '#333'\" onmouseout =\"this.style.borderColor=document.getElementById('post_guts').style.borderColor=document.getElementById('navtab-holder').style.borderColor=document.getElementById('navtab-top').style.borderColor=document.getElementById('navtab-bottom').style.borderColor= '#888888'; this.style.backgroundColor = document.getElementById('post_guts').style.backgroundColor = '#181818';\"><div><div class='logo'><img noindex='1' width='24' height='19' style='margin-left: 0' class='raw' src='\/i\/lr\/sm\/small_zenfolio.png'\/><\/div> Zenfolio <div id='arrow'><img noindex='1' class='raw'  src='\/i\/s\/red-arrow-right.png' width='48' height='25'\/><\/div><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/smugmug'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><div class='logo'><a href='\/blog\/lightroom-goodies\/smugmug'><img noindex='1' width='14' height='15' style='margin-left: 5px' class='raw' src='\/i\/lr\/sm\/small_smugmug.png'\/><\/a><\/div> <a href='\/blog\/lightroom-goodies\/smugmug'>SmugMug<\/a><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/flickr'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><div class='logo'><a href='\/blog\/lightroom-goodies\/flickr'><img noindex='1' width='24' height='12' style='margin-left: 0' class='raw' src='\/i\/lr\/sm\/small_flickr.png'\/><\/a><\/div> <a href='\/blog\/lightroom-goodies\/flickr'>Flickr<\/a><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/google-drive'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><div class='logo'><a href='\/blog\/lightroom-goodies\/google-drive'><img noindex='1' width='19' height='19' style='margin-left: 3px' class='raw' src='\/i\/lr\/sm\/small_googledrive.png'\/><\/a><\/div> <a href='\/blog\/lightroom-goodies\/google-drive'>Google Drive<\/a><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/ipernity'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><div class='logo'><a href='\/blog\/lightroom-goodies\/ipernity'><img noindex='1' width='14' height='18' style='margin-left: 0' class='raw' src='\/i\/lr\/sm\/small_ipernity.png'\/><\/a><\/div> <a href='\/blog\/lightroom-goodies\/ipernity'>ipernity<\/a><\/div><\/div>\n<div class='nav-header'>Export Plugins<\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/google-photos'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><div class='logo'><a href='\/blog\/lightroom-goodies\/google-photos'><img noindex='1' width='18' height='19' style='margin-left: 0' class='raw' src='\/i\/lr\/sm\/small_gphotos.png'\/><\/a><\/div> <a href='\/blog\/lightroom-goodies\/google-photos'>Google Photos<\/a><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/tumblr'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><div class='logo'><a href='\/blog\/lightroom-goodies\/tumblr'><img noindex='1' width='19' height='19' style='margin-left: 0' class='raw' src='\/i\/lr\/sm\/small_tumblr.png'\/><\/a><\/div> <a href='\/blog\/lightroom-goodies\/tumblr'>Tumblr<\/a><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/twitter'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><div class='logo'><a href='\/blog\/lightroom-goodies\/twitter'><img noindex='1' width='23' height='16' style='margin-left: 0' class='raw' src='\/i\/lr\/sm\/twitter_small.png'\/><\/a><\/div> <a href='\/blog\/lightroom-goodies\/twitter'>Twitter<\/a><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/photobucket'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><div class='logo'><a href='\/blog\/lightroom-goodies\/photobucket'><img noindex='1' width='20' height='15' style='margin-left: 0' class='raw' src='\/i\/lr\/sm\/small_photobucket.png'\/><\/a><\/div> <a href='\/blog\/lightroom-goodies\/photobucket'>Photobucket<\/a><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/order-prints-locally'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><a href='\/blog\/lightroom-goodies\/order-prints-locally'>Order Prints Locally<\/a><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/expono'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><a href='\/blog\/lightroom-goodies\/expono'>Expono<\/a><\/div><\/div>\n<div class='nav-header'>Other Publish Plugins<\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/collection-publisher'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><div class='logo'><a href='\/blog\/lightroom-goodies\/collection-publisher'><img noindex='1' width='24' height='19' style='margin-left: 0' class='raw' src='\/i\/lr\/sm\/collection_publisher_small_icon.png'\/><\/a><\/div> <a href='\/blog\/lightroom-goodies\/collection-publisher'>Collection Publisher<\/a><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/folder-publisher'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><div class='logo'><a href='\/blog\/lightroom-goodies\/folder-publisher'><img noindex='1' width='24' height='19' style='margin-left: 0' class='raw' src='\/i\/lr\/sm\/folder-publisher-icon-small.png'\/><\/a><\/div> <a href='\/blog\/lightroom-goodies\/folder-publisher'>Folder Publisher<\/a><\/div><\/div>\n<div class='nav-header'>Export Add-Ons<\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/metadata-wrangler'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><a href='\/blog\/lightroom-goodies\/metadata-wrangler'>Metadata Wrangler<\/a><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/creative-commons'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><a href='\/blog\/lightroom-goodies\/creative-commons'>Creative Commons<\/a><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/run-any-command'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><a href='\/blog\/lightroom-goodies\/run-any-command'>Run Any Command<\/a><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/snapshot-on-export'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><a href='\/blog\/lightroom-goodies\/snapshot-on-export'>Snapshot on Export<\/a><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/smart-preview-support'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><a href='\/blog\/lightroom-goodies\/smart-preview-support'>Smart-Preview Support<\/a><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/crop-for-ipad'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><a href='\/blog\/lightroom-goodies\/crop-for-ipad'>Crop for iPad and other Devices<\/a><\/div><\/div>\n<div class='nav-header'>Geoencoding Plugins<\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/gps'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><a href='\/blog\/lightroom-goodies\/gps'>Geoencoding Support<\/a><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/gps-proximity'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><a href='\/blog\/lightroom-goodies\/gps-proximity'>Proximity Search<\/a><\/div><\/div>\n<div class='nav-header'>Utility Plugins<\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/data-explorer'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><a href='\/blog\/lightroom-goodies\/data-explorer'>Data Explorer<\/a><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/smart-collection-sync'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><a href='\/blog\/lightroom-goodies\/smart-collection-sync'>Smart Collection Sync<\/a><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/people-support'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><a href='\/blog\/lightroom-goodies\/people-support'>People Support<\/a><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/folder-status'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><a href='\/blog\/lightroom-goodies\/folder-status'>Folder Status<\/a><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/photosafe'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><div class='logo'><a href='\/blog\/lightroom-goodies\/photosafe'><img noindex='1' width='18' height='19' style='margin-left: 6px' class='raw' src='\/i\/lr\/sm\/photosafe-small.png'\/><\/a><\/div> <a href='\/blog\/lightroom-goodies\/photosafe'>PhotoSafe<\/a><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/collection-mechanic'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><a href='\/blog\/lightroom-goodies\/collection-mechanic'>Collection Mechanic<\/a><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/bag-o-goodies'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><a href='\/blog\/lightroom-goodies\/bag-o-goodies'>Bag-o-Goodies<\/a><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/timelapse-support'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><a href='\/blog\/lightroom-goodies\/timelapse-support'>Timelapse Support<\/a><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/workflow-delete-options'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><div class='logo'><a href='\/blog\/lightroom-goodies\/workflow-delete-options'><img noindex='1' width='15' height='19' style='margin-left: 6px' class='raw' src='\/i\/lr\/sm\/workflow-delete-options-small.png'\/><\/a><\/div> <a href='\/blog\/lightroom-goodies\/workflow-delete-options'>Workflow Delete Options<\/a><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/metadata-viewer'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><a href='\/blog\/lightroom-goodies\/metadata-viewer'>Metadata Viewer<\/a><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/bulk-develop'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><a href='\/blog\/lightroom-goodies\/bulk-develop'>Bulk Develop Settings<\/a><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/metadata-presets'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><a href='\/blog\/lightroom-goodies\/metadata-presets'>Metadata-Viewer Preset Builder<\/a><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/layers'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><a href='\/blog\/lightroom-goodies\/layers'>Photoshop Layers<\/a><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/export-quality-tester'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><a href='\/blog\/lightroom-goodies\/export-quality-tester'>JPEG Quality Tester<\/a><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/folder-watch'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><a href='\/blog\/lightroom-goodies\/folder-watch'>Folder Watch<\/a><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/megapixel-sort'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><a href='\/blog\/lightroom-goodies\/megapixel-sort'>Megapixel Sort<\/a><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/focal-length-sort'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><a href='\/blog\/lightroom-goodies\/focal-length-sort'>Focal-length Sort<\/a><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/data-plot'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><a href='\/blog\/lightroom-goodies\/data-plot'>Data Plot<\/a><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/extended-search'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><a href='\/blog\/lightroom-goodies\/extended-search'>Extended Search<\/a><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/video-assets'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><a href='\/blog\/lightroom-goodies\/video-assets'>Video-Asset Management<\/a><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/preview-extraction'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><a href='\/blog\/lightroom-goodies\/preview-extraction'>Preview-Cache Image Extraction<\/a><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/sysinfo'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><a href='\/blog\/lightroom-goodies\/sysinfo'>System Info<\/a><\/div><\/div>\n<div class='sel N'><div onclick=\"document.location='https:\/\/regex.info\/blog\/lightroom-goodies\/iphoto-collection-fixer'\" onmouseover=\"this.style.borderColor='white'\" onmouseout=\"this.style.borderColor='black'\"><a href='\/blog\/lightroom-goodies\/iphoto-collection-fixer'>iPhoto Collection Fixer<\/a><\/div><\/div>\n<\/div>\n<div style='margin-top:20px; margin-left:15px; margin-bottom:10px'>\n<b>Other Plugin Sources:<\/b>\n<br\/>&nbsp;&middot;&nbsp;<a href='http:\/\/www.photographers-toolbox.com\/products\/'>Photographer's Toolbox<\/a>\n<br\/>&nbsp;&middot;&nbsp;<a href='http:\/\/alloyphoto.com\/plugins\/'>alloy photo<\/a>\n<br\/>&nbsp;&middot;&nbsp;<a href='http:\/\/www.beardsworth.co.uk\/lightroom\/'>John Beardsworth<\/a>\n<br\/>&nbsp;&middot;&nbsp;<a href='http:\/\/www.capturemonkey.com\/'>Capture Monkey<\/a>\n<br\/>&nbsp;&middot;&nbsp;<a href='http:\/\/www.lightroom-plugins.com\/'>lightroom-plugins.com<\/a>\n<br\/>&nbsp;&middot;&nbsp;<a href='https:\/\/creative.adobe.com\/addons?pp=PSLR'>Adobe Addons<\/a>\n\n<\/div>\n\n<div class='navtab-topbottom' id='navtab-bottom'><\/div>\n<\/div>\n\n<div itemscope itemtype='http:\/\/schema.org\/SoftwareApplication'>\n<meta itemprop='creator' content='Jeffrey Friedl'\/>\n<meta itemprop='copyrightHolder' content='Jeffrey Friedl'\/>\n<meta itemprop='applicationCategory' content='Photography'\/>\n<meta itemprop='applicationSubCategory' content='Plugin for Adobe Photoshop Lightroom'\/>\n<meta itemprop='applicationSuite' content='Adobe Creative Cloud'\/>\n<meta itemprop='operatingSystem' content='Apple Mac OS X, Microsoft Windows'\/>\n<meta itemprop='about' content=\"Plugin for Adobe Photoshop Lightroom to allow export of photos and videos directly to Zenfolio.\"\/>\n\n\n<div class='ic tight'><img loading=\"lazy\" decoding=\"async\" src=\"\/i\/lr\/Export-to-Zenfolio2.png\" width=\"598\" height=\"199\"\nclass=\"raw\"\nid=\"iExport_to_Zenfolio2\"\/><\/div>\n\n\n<div style='float:right; position:relative; border: solid 1px #444; margin: 0 auto; margin-left:2em; padding:20px; padding-top:5px; background-color: #000'>\n<center style='font-weight:bold; font-size:120%'>Quick Links<\/center>\n     &middot; <b>Latest Download<\/b>:\n<br\/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a class='quiet' href='https:\/\/regex.info\/LightroomPlugins2\/releases\/zenfolio-20220510.344.zip'><span style='padding:1px 3px; border:solid 1px orange; color:#888'>zenfolio-<span style='color:orange; font-weight:bold'>20220510.344<\/span>.zip<\/span><\/a>\n<br\/>&middot; <a class='quiet' href='https:\/\/regex.info\/blog\/lightroom-goodies\/faq'>FAQ<\/a>\n<br\/>&middot; <a class='quiet' href='#history'>Version History<\/a>\n<br\/>&middot; <a class='quiet' href='https:\/\/regex.info\/LightroomPlugins2\/feeds\/zenfolio.rss'>Update Log via RSS <img class='raw' src='https:\/\/regex.info\/i\/s\/feed-icon-14x14.png' width='14' height='14' style='position:relative;top:3px'\/><\/a>\n<br\/>&middot; <a class='quiet' href='https:\/\/regex.info\/blog\/lightroom-goodies\/plugin-installation\/'>Installation instructions<\/a>\n<br\/>&middot; <a class='quiet' href='https:\/\/regex.info\/blog\/lightroom-goodies\/register'>&#8220;Donationware&#8221; Registration Info<\/a>\n<br\/>&middot; <a class='quiet' href='https:\/\/regex.info\/blog\/lightroom-goodies\/' style='color:#F55'>More Lightroom Goodies<\/a>\n<br\/>&middot; <a class='quiet' href='https:\/\/regex.info\/LightroomPlugins2\/feeds\/all.rss'>All-Plugin Update Log via RSS <img class='raw' src='https:\/\/regex.info\/i\/s\/feed-icon-14x14.png' width='14' height='14' style='position:relative;top:3px'\/><\/a>\n<br\/>&middot; <a class='quiet' href='https:\/\/regex.info\/blog\/photo-tech\/'>My Photo-Tech Posts<\/a>\n<br\/>&middot; <a class='quiet' href='https:\/\/regex.info\/blog'>My Blog<\/a>\n<\/div>\n\n\n<p>This plugin for Adobe Lightroom Classic allows you to export images from Lightroom directly to your\n<a href='http:\/\/zenfolio.com\/' class='quiet'>Classic Zenfolio<\/a>\naccount.<\/p>\n\n<p style='background-color:black; color:white'>Note: this plugin is <i style='color:red'>not compatible<\/i> with Zenfolio accounts on their\n<b>ProSuite<\/b>, <b>PortfolioPlus<\/b>, and <b>Portfolio<\/b> plans. This plugin is compatible only with <span class='QO'>&#8220;<\/span>Classic Zenfolio<span class='QC'>&#8221;<\/span> plans.<\/p>\n\n<p>This plugin works in Lightroom Classic, and older versions as far back as\n<span class='nobr'>Lightroom 3<\/span>, though some features depend on the\nversion of Lightroom.<\/p>\n\n<p>The same download works for both Windows and Mac. <span class='nobr'>See the box<\/span> to the upper right for the download link (in orange) and installation instructions.<\/p>\n\n\n<!-- <p><b>How to use:<\/b> Zenfolio has <a href='http:\/\/www.youtube.com\/watch?v=DxE4k7ckyXc'>an instructional video<\/a> on how to use the Publish aspects of this plugin.<\/p> -->\n\n\n<p>Please see the <a\nhref='\/blog\/lightroom-goodies\/faq'>FAQ<\/a> and <a\nhref='\/blog\/lightroom-goodies\/issues\/'>known issues<\/a>\nbefore reporting bugs. <span class='nobr'>If this is<\/span> your first look at my export plugins,\nplease see <a href='\/blog\/2008-07-29\/891'>the announcement\npost<\/a> for an overview and some important information.<\/p>\n\n<p>When run in Lightroom 3 or later, there is full support for Lightroom's new Publish feature.\nSee the <a href='\/blog\/lightroom-goodies\/zenfolio\/publish'>manual for <b>Publish to Zenfolio<\/b><\/a> for details.<\/p>\n\n\n\n<p class='h'>Availability<\/p><p>This plugin is distributed as &#8220;donationware&#8221;. I have chosen to make it available for free &mdash; everyone can use\nit forever, without cost of any kind &mdash; but unless registered, its functionality is somewhat reduced after six weeks.<\/p>\n\n<p>Registration is done via PayPal, and if you choose to register, it costs the minimum 1-cent PayPal fee; any amount you'd like\nto add beyond PayPal's sliding fees as a gift to me is completely optional, and completely appreciated.<\/p>\n\n<p id='majorupgrade'><b>Note<\/b>: a Lightroom <i>major<\/i> upgrade, such as from Lr10 to Lr11 de-registers the plugin in the\nupgraded version, so if you want to maintain registration, a new ($0.01 if you like) registration code is needed in the upgraded\nversion. It makes for a hassle every couple of years, I know. Sorry. See <a\nhref='\/blog\/lightroom-goodies\/register#major-upgrade'>this note<\/a> for details.<\/p>\n\n<p>For details on plugin registration and on how I came into this hobby of Lightroom plugin development, see my <a\nhref='\/blog\/lightroom-goodies\/register'>Plugin Registration page<\/a>.<\/p>\n\n\n<style type=\"text\/css\">\n   table.h td:first-child   { font-weight: bold; padding-right:1em }\n   table.h td p:first-child { margin-top: 0 }\n   table.h td               { padding-bottom: 10px }\n   p.h                      { font-weight:bold; font-size:130%; margin-top:50px }\n   span.h                   { font-weight:bold; font-size:130%; margin-top:50px }\n   table.h pre              { font-size: 70% }\n<\/style>\n<p id='history' style='margin-top:50px'><span class='h'>Version History<\/span>\n<br\/>\n(\n<a style='font-size:small'\n   class='quiet'\n   href='https:\/\/regex.info\/LightroomPlugins2\/feeds\/zenfolio.rss'>Update Log via RSS\n   <img class='raw' src='https:\/\/regex.info\/i\/s\/feed-icon-14x14.png' width='14' height='14' style='position:relative;top:3px'\/><\/a>\n)<\/p>\n<table class='h'><tr valign='baseline'><td><a id='20220510.344' name='344'>20220510.344<\/a><\/td><td>\n<p>Maybe fixed a collection double-creation bug.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20220309.343' name='343'>20220309.343<\/a><\/td><td>\n<p>Work around a bug in Lightroom 11.2 that causes publishing to get stuck. The workaround is to switch the view away from the collection being published. If the user does that switch manually, the bug goes away. This plugin update notices if the bug is being triggered, and if so, momentarily switches the view to the quick collection and back.<\/p>\n                <p>Removed a bunch of debug logging that was slowing down the LUA token.<a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template#Newline'>Newline<\/a> <\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20220224.342' name='342'>20220224.342<\/a><\/td><td>\n<p>Work around a Lightroom \"lua_gettop( L ) == 1\" bug.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20220120.341' name='341'>20220120.341<\/a><\/td><td>\n<p>Added the <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template#WEEKNUM'>WEEKNUM<\/a> token, along with DAYNUM, weeknum, and daynum.<\/p>\n                <p>Whack-a-mole with PayPal's random changes.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20211219.340' name='340'>20211219.340<\/a><\/td><td>\n<p>Warn when PayPal seems to have given a bogus code in the web-confirmation page.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20211213.339' name='339'>20211213.339<\/a><\/td><td>\n<p>Replacing videos sometimes actually added instead of replacing.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20211122.338' name='338'>20211122.338<\/a><\/td><td>\n<p>It seems that Zenfolio can handle PNG uploads now.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20211020.337' name='337'>20211020.337<\/a><\/td><td>\n<p>Ensure all calls to Zenfolio use HTTPS -- some had been missed.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20210625.336' name='336'>20210625.336<\/a><\/td><td>\n<p>Enforce Zenfolio's limit on keyword length (200 characters or 400 bytes).<\/p>\n                <p>Fixed an issue with the {Newline} token, and added {Comma}, {Hyphen}, and {Space} for good measure.<\/p>\n                <p>Fixed a problem with filters on the {Keyword} token.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20210522.335' name='335'>20210522.335<\/a><\/td><td>\n<p>Things I learned today. <b>1)<\/b> a recent change broke the plugin on Lightroom Version 2. <b>2)<\/b> People still use Lightroom Version 2 (?!).   <b>3)<\/b> It's still possible to find a Lr2 installer download.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20210520.334' name='334'>20210520.334<\/a><\/td><td>\n<p>On certain network failures, report the \"RayID\" (a transaction ID) to the user, so that they can report it to Zenfolio.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20210515.333' name='333'>20210515.333<\/a><\/td><td>\n<p>Zenfolio has moved to all HTTPS connections.<\/p>\n               <p>Fixed that the <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template#Province'>Province<\/a> template token did not respect the plugin-specific geo-privacy settings.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20210415.332' name='332'>20210415.332<\/a><\/td><td>\n<p>Added 'separated by' to the <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/people-support#token'>People<\/a> token.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20210312.331' name='331'>20210312.331<\/a><\/td><td>\n<p>Added some special debug logging to help track down a keyword issue.<\/p>\n                <p>Reworked the <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template#Newline'>Keywords<\/a> token to better accept filters.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20210108.330' name='330'>20210108.330<\/a><\/td><td>\n<p>Added the ability to fetch image views at Zenfolio and display in a Publish collection<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20210103.329' name='329'>20210103.329<\/a><\/td><td>\n<p>Added some extra debug logging to try to track down a problem.<\/p>\n                <p>working around 'constant table overflow' error<\/p>\n                <p>Added the <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template#ImageViewDirection'>ImageViewDirection<\/a> and ImageViewBearing tokens.<\/p>\n\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20201103.328' name='328'>20201103.328<\/a><\/td><td>\n<p>Added the <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template#PF'>PF filter<\/a> to turn typographic fractions into plain-ASCII fractions.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20201017.327' name='327'>20201017.327<\/a><\/td><td>\n<p>Updates for Lr10.<\/p>\n                <p>Added the <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template#SpeedKnots'>SpeedKnots<\/a> token.<\/p>\n                <p>Worked around an \"unknown key captureTime\" error.<\/p>\n                <p>Added the {PlusCode} and {GeoHash} <a href=\"https:\/\/regex.info\/blog\/lightroom-goodies\/template\">tokens<\/a>.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20200529.326' name='326'>20200529.326<\/a><\/td><td>\n<p>Handle the \"All Except Camera &amp; Camera Raw Info\" metadata option WRT geoprivacy.<\/p>\n                <p>Some of the filename-related tokens could be incorrect in rare situations.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20200212.325' name='325'>20200212.325<\/a><\/td><td>\n<p>Fixed (I hope) a problem where republishing certain old photos would result in two copies at Zenfolio.<\/p>\n                <p>Work around a Windows bug related to canceling out of the registration dialog.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20191203.324' name='324'>20191203.324<\/a><\/td><td>\n<p>Added some extra debug logging to note whether the plugin is enabled.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20191112.323' name='323'>20191112.323<\/a><\/td><td>\n<p>Update for Lr9. I'm pretty sure that I had support for it in the previous version, but I'm pushing this out just to make sure.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20191011.322' name='322'>20191011.322<\/a><\/td><td>\n<p>Added the <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template#LensInfo'>LensInfo<\/a> template token.<\/p>\n\n                <p>Updated the <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template#Exposure'>Exposure<\/a> token to allow customization.<\/p>\n\n                <p>More <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template'>token<\/a> work: added {Urls}, and updated {ISO} and {Copyright} to allow customization.<\/p>\n\n                <p>Added the <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template#RelativeFolder'>{RelativeFolder}<\/a> token.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20190810.321' name='321'>20190810.321<\/a><\/td><td>\n<p>Fixed the <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template#SST1'>SST1<\/a> and SST2 tokens.<\/p>\n\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20190731.320' name='320'>20190731.320<\/a><\/td><td>\n<p>Updated the <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template#PublishCollectionName'>PublishCollectionName<\/a> token (and <tt>CollectionNames<\/tt> and <tt>CollectionFullNames<\/tt>) to remove the MIRROR: prefix from the name that mirrored collections within <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/collection-publisher'>my Collection Publisher plugin<\/a> automatically get.<\/p>\n\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20190722.319' name='319'>20190722.319<\/a><\/td><td>\n<p>The plugin was incorrectly reporting a vague catch-all error when it could have been reporting a more-specific reason.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20190708.318' name='318'>20190708.318<\/a><\/td><td>\n<p>Added <b>TempC<\/b> and <b>TempF<\/b> to the <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template'>template tokens<\/a> that my plugins understand.<\/p>\n\n                <p>Added the <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template#TempC'>TempC<\/a> and <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template#TempF'>TempF<\/a> tokens.<\/p>\n\n                <p>Updated the keyword-related <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template'>tokens<\/a> to accept standard filters.<\/p>\n\n                <p>Work around a bug that sometimes causes plugins to be disabled when starting Lightroom via clicking on a catalog file.<\/p>\n\n                <p>Fix an \"Unknown key: captureTime\" crash.<\/p>\n\n                <p>Added the <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template#GPSCoords'>GPSCoords<\/a> token.<\/p>\n\n                <p>Fixed a problem related to template tokens and photos without capture times.<\/p>\n\n                <p>Added functions <tt>uc()<\/tt>, <tt>ucFirst()<\/tt>, <tt>lc()<\/tt>, and <tt>lcFirst()<\/tt> to the <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template#lua'>LUA<\/a> token.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20181209.317' name='317'>20181209.317<\/a><\/td><td>\n<p>Added the <tt>PEOPLE<\/tt> variable to the <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template#lua'><tt>LUA<\/tt> token<\/a>.<\/p>\n\n\t            <p>When not logged in, make it more clear what you're not logged into, and how to fix it.<\/p>\n\n                <p>Updated the alphabetical sort to be \"sorta-smart alphabetical sort\", whereby names that differ only by a number are sorted numerically.\n                For example, \"album2\" properly falls between \"album1\" and \"album3\", but \"album20\" falls after. The former straight-up alphabetical sort\n                put \"album20\" before \"album3\", which is ugly and unpractical.<\/p>\n\n                <p>Fixed a problem with the <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template#SpeedKPH'>SpeedKPH<\/a> token.<\/p>\n\n                <p>Finally figured out the \u201cAssertion failed: packed\u201d error.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20181020.316' name='316'>20181020.316<\/a><\/td><td>\n<p>Created a way to completely disable the fetching of photo comments from Zenfolio. Lightroom normally does this\n                for <i>every<\/i> photo in a publish collection after every publish operation, and that overhead can be <i>significant<\/i> if you\n                have many photos in your collection. If you never care about photo comments, you can now visit the Plugin Manager to completely\n                disable the fetching and the overhead.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20181017.315' name='315'>20181017.315<\/a><\/td><td>\n<p>Make the template-editing window a big bigger in the caption editor.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20181015.314' name='314'>20181015.314<\/a><\/td><td>\n<p>Updates for Lr8 (Lightroom Classic CC Version 8).<\/p>\n                <p>Added <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template#PP'>the special <tt>PP()<\/tt> function<\/a> to the {LUA} token.<\/p>\n                <p>Added hierarchical options to <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template#Keywords'>the <tt>Keywords<\/tt> token<\/a>.<\/p>\n                <p>Try to work around a Lightroom bug related to photo timezones and how Lightroom handles accessing plugin data.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20181004.313' name='313'>20181004.313<\/a><\/td><td>\n<p>Added the <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/people-support#nicknames'>'nicknames' modifier<\/a> to the {People} token.<\/p>\n\n                <p>Added the SST1, SST2, and SS3 tokens to the <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template'>template tokens<\/a> that\n                the plugin understands.<\/p>\n\n                <p>Sometimes Lightroom loses the \"Visit At... \" link for a publish collection; dig harder to come up with it anyway.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20180905.312' name='312'>20180905.312<\/a><\/td><td>\n<p>Input fields that accept a location can now handle a What3Words code and a Plus Code.<\/p>\n                <p>Minor update for some error messages.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20180804.311' name='311'>20180804.311<\/a><\/td><td>\n<p>Try to avoid having unexpectedly-long error messages create too-big a dialog.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20180623.310' name='310'>20180623.310<\/a><\/td><td>\n<p>Note: this update doesn't address the \"Service Unavailable\" errors that many folks have encountered lately.\n                That error is on Zenfolio's side, and seems to be unrelated to the plugin.<\/p>\n\n                <p>Fixed the album-create stuff to respect the \"leaf-name only\" setting.<\/p>\n\n                <p>Clicking on the version number in the Plugin Manager now copies version info to the clipboard<\/p>\n\n                <p>Updated the <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template#PublishCollectionName'>PublishCollectionName<\/a> token to allow numeric arguments along the lines of the CollectionName token.<\/p>\n\n                <p>Added the folowing <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template'>template tokens<\/a>: <tt>{home}<\/tt>,  <tt>{desktop}<\/tt>, <tt>{temp}<\/tt>, <tt>{pictures}<\/tt>, <tt>{documents}<\/tt>, <tt>IptcDateTaken<\/tt><\/p>\n\n                <p>Added the 'PCH' variable to <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template#LUA'>the {LUA} tag<\/a>.<\/p>\n\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20180420.309' name='309'>20180420.309<\/a><\/td><td>\n<p>Fixed a bug when 'Token Examples' invoked in certain situations.<\/p>\n\n                <p>Added a bunch of <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template#filters'>token filters<\/a>: F2D F2S F2X B2D B2S B2X S2X A2D A2S A2X<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20180121.308' name='308'>20180121.308<\/a><\/td><td>\n<p>When encountering catalog corruption, present a better error message.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20171229.307' name='307'>20171229.307<\/a><\/td><td>\n<p>Added the <tt>{CollectionNames}<\/tt> and <tt>{CollectionFullNames}<\/tt> tokens to <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template'>the data templates<\/a> that my plugins understand.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20171207.306' name='306'>20171207.306<\/a><\/td><td>\n<p>Updated <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template#Keywords'>the Keywords token<\/a>, and added the <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template#KWf'>KWf function<\/a> to the {LUA} token.<\/p>\n                <p>Updated Twitter support to allow 280 characters.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20171112.305' name='305'>20171112.305<\/a><\/td><td>\n<p>Lightroom on OSX 10.10 and prior can't work with web sites that enforce modern minimum security support.\n                Zenfolio is starting to require that minimum support, so give affected users a more-informative error message.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20171019.304' name='304'>20171019.304<\/a><\/td><td>\n<p>Oops, more Lr7 stuff.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20171019.303' name='303'>20171019.303<\/a><\/td><td>\n<p>Updates for Lightroom 7<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20170925.302' name='302'>20170925.302<\/a><\/td><td>\n<p>Better handle some character-encoding issues related to\n                   <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template'>template tokens<\/a>.<\/p>\n                <p>Allow the \"If Exists\" feature of template tokns to work with the PluginProperty token.<\/p>\n                <p>Update registration support to handle a stupid bug at PayPal that PayPal refuses to fix )-:<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20170705.301' name='301'>20170705.301<\/a><\/td><td>\n<p>Better error reporting when trying to do something at Zenfolio that you don't have permission to do.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20170630.300' name='300'>20170630.300<\/a><\/td><td>\n<p>Fixed a bug introuded the other day in template tokens, related to Windows filenames.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20170621.299' name='299'>20170621.299<\/a><\/td><td>\n<p>Added the <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template#Newline'>Newline<\/a> template token.<\/p>\n\n                <p>Enhanced the <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template#FolderName'>FolderName token<\/a><\/p>\n\n                <p>Added the <a href=\"https:\/\/regex.info\/blog\/lightroom-goodies\/template#optional\">\"only if it has a value\" feature<\/a> to template tokens.<\/p>\n\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20170407.298' name='298'>20170407.298<\/a><\/td><td>\n<p>When running into issues with Zenfolio, present more info that can be passed along to their support staff.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20170309.297' name='297'>20170309.297<\/a><\/td><td>\n<p>Added the following tokens to the <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template'>template tokens that my plugins understand<\/a>: Artworks, ArtworkTitle, ArtworkCopyright, ArtworkSource, ArtworkCreator, ArtworkDateCreated, ArtworkInventoryNum<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20170211.296' name='296'>20170211.296<\/a><\/td><td>\n<p>When running into errors at Zenfolio, present some info that can be passed along to Zenfolio support.<\/p>\n\t            <p>Added \"ISO8601Date\" to the <a href=\"https:\/\/regex.info\/blog\/lightroom-goodies\/template\"> template tokens<\/a> that my plugins understand.<\/p>\n\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20170117.295' name='295'>20170117.295<\/a><\/td><td>\n<p>Yikes, previous \"fix\" made some uploads fail.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20170117.294' name='294'>20170117.294<\/a><\/td><td>\n<p>Track changes in Zenfolio's third-party API.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20170109.293' name='293'>20170109.293<\/a><\/td><td>\n<p>Oops, yesterday's update caused all photos sent to Twitter to be marked as sensitive.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20170108.292' name='292'>20170108.292<\/a><\/td><td>\n<p>Retooled to use a new Twitter API, allowing photos not to take up any characters in a tweet.<\/p>\n                <p>Switch the log-sending mechanism to https.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20161207.291' name='291'>20161207.291<\/a><\/td><td>\n<p>When Zenfolio is having issues, try to report that more clearly.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20161128.290' name='290'>20161128.290<\/a><\/td><td>\n<p>Publish deletes were getting hung up.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20161116.289' name='289'>20161116.289<\/a><\/td><td>\n<p>If Zenfolio's servers had a meltdown and returned to the plugin a web page instead of the requested data,\n                displaying the web-page code as the error message could cause Lightroom to crash, so don't do that anymore.<\/p>\n\n\t            <p>Got around a situation where Lighroom would crash duing an export of large images.<\/p>\n\n\t            <p>Better dialog real-estate managment for the meatadata section.<\/p>\n\n\t            <p>Added Weekday, Wday, weekday, and wday to the list of <a href=\"https:\/\/regex.info\/blog\/lightroom-goodies\/template\">template tokens<\/a> that my plugins understand.<\/p>\n\n\t            <p>Fixed a bug with the keyword tables in the <tt>LUA<\/tt> token.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20160730.288' name='288'>20160730.288<\/a><\/td><td>\n<p>Still battling some insidious errors hiding in there.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20160729.287' name='287'>20160729.287<\/a><\/td><td>\n<p>Try to get around some publish-collection corruption I've seen popping up.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20160728.286' name='286'>20160728.286<\/a><\/td><td>\n<p>Fixed the album-creation problem.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20160728.284' name='284'>20160728.284<\/a><\/td><td>\n<p>Added some debug logging to track down an album-creation problem.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20160715.283' name='283'>20160715.283<\/a><\/td><td>\n<p>Added the following tokens to <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template'>the templates that my plugins understand<\/a>: <tt>FileModYYYY<\/tt>, <tt>FileModYY<\/tt>, <tt>FileModMM<\/tt>, <tt>FileModDD<\/tt>, <tt>FileModHH<\/tt>, <tt>FileModMIN<\/tt>, <tt>FileModSS<\/tt>, <tt>FileYYYY<\/tt>, <tt>FileYY<\/tt>, <tt>FileMM<\/tt>, <tt>FileDD<\/tt>, <tt>FileHH<\/tt>, <tt>FileMIN<\/tt>, <tt>FileSS<\/tt>, {FilenameNumber}.<\/p>\n\n                <p>Some updates to support Lr2. Lr2 is sufficiently old that I will drop support for it soon.<\/p>\n\n                <p>Added the ability to repopulate smart collections.<\/p>\n\n                <p>Added Russian-langauge support for the People-Support <code>{People}<\/code> tag.<\/p>\n                <p>Fix to get around a Mac display issue with Lr6 on OSX.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20160307.282' name='282'>20160307.282<\/a><\/td><td>\n<p>Allow for username changes at Zenfolio. Also make sure that the \"view at Zenfolio\" link\n                is correct for each published collection.<\/p>\n\n                <p>Added <b>ChildOf<\/b> and <b>DescendantOf<\/b> filters to the <b>{Keywords}<\/b> and\n                <b>{KeywordsAll}<\/b> <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template'>template tokens<\/a> that\n                my plugins understand.<\/p>\n\n                <p>Fixed a bug with the 'edit saved credentials' dialog.<\/p>\n\n                <p>Fixed how custom {People} formatting works with people keywords that have no birthday associated with them.<\/p>\n\n                <p>Try to avoid yet another place where Lightroom gets hung because it can't handle certain kinds of\n                dialogs at the same time.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20151105.281' name='281'>20151105.281<\/a><\/td><td>\n<p>Update the status messages presented when creating a group from the Tools section of the dialog, to actually\n                use the word \"group\" instead of \"gallery\".<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20151019.280' name='280'>20151019.280<\/a><\/td><td>\n<p>Updated the Caption part of the dialog to show up to three lines of text, and the full text in the tooltip.<\/p>\n\n                <p>Added {SpeedKPH} and {SpeedMPH} to the list of <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template'>template tokens supported by my plugins<\/a>.<\/p>\n\n                <p>The <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/people-support#token'>{People} token<\/a> wasn't working properly for some keywords without a registered birthday.<\/p>\n\n                <p>Updated Twitter support to better count lengths of tweets that include URLs.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20150818.279' name='279'>20150818.279<\/a><\/td><td>\n<p>Added the ability to have collections named just for the leaf album name at Zenfolio, rather than\n                with the full hierarchical name.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20150529.278' name='278'>20150529.278<\/a><\/td><td>\n<p>Zenfolio changed how some of their back-end stuff works, and so the plugin needs to update Publish\n                Services to match. This one-time change is done automatically the first time you edit a publish service,\n                and should be invisible unless you have a lot of collections, in which case a dialog may pop up letting\n                you know what's going on....<\/p>\n\n                <p>Don't report as an error if the network is down and you're just viewing a Publish Collection. When\n                you view a collection, Lightroom asks the plugin whether the remote service is up, so as to make the\n                comment-input box available or not. The plugin used to report a \"retrying...\" error if the network was\n                down, but it should just do its check quietly in the background, so now it does.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20150517.277' name='277'>20150517.277<\/a><\/td><td>\n<p>Fixed the \"SpecPeople:259: attemt to index al nil value\" error.<\/p>\n\n                <p>Try harder to detect when Zenfolio is down for maintenance and report that instead of a generic error.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20150414.276' name='276'>20150414.276<\/a><\/td><td>\n<p>Video upload was broken for some users.<\/p>\n                <p>UI fix for OSX 10.9<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20150223.275' name='275'>20150223.275<\/a><\/td><td>\n<p>Fixed an assert-failure bug that could happen when editing a collection's settings.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20150205.274' name='274'>20150205.274<\/a><\/td><td>\n<p>Adding the raw-upgrade option in the previous version\n                caused a side effect of breaking most everything else for certain users. )-:<\/p>\n\n               <p>In the POODLE-vunerability dialog, display a raw URL of a\n               page on my site that discusses the issue, so that folks can\n               be independently sure that the dialog is indeed from me and\n               not malware.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20150203.273' name='273'>20150203.273<\/a><\/td><td>\n<p>Add the ability to upload the master original along with an exported copy.<\/p>\n\n                <p>Updated the camera-name code to try to guess the actual\n                camera model of Hasselblad H5D files, since in their\n                infinite wisdom Hasselblad decided to encode three distinct\n                models with the same internal code, making it impossible to\n                know for sure what camera produced a given image file.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20150106.272' name='272'>20150106.272<\/a><\/td><td>\n<p>Fix to the date_diff() function supported by the LUA\n                <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template'>template token<\/a>.<\/p>\n\n                <p>The Plugin-Extras dialog to resend metadata could allow the [Resend] button to be\n                pressed when no metadata was selected, resulting in confusion.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20141211.271' name='271'>20141211.271<\/a><\/td><td>\n<p>Unlucky timing during an upload could cause an \"Unexpected HTTP reply\" error.<\/p>\n\n                <p>Added an \"Export Location Override\" section to the Publishing Manager dialog (when editing an existing\n                publish service) that allows you to change the Export Location. I don't know why Adobe doesn't let you change it...\n                it seems arbitrary.<\/p>\n\n                <p>Add a help dialog to the publish-services edit dialog to make it clear how to delete a publish-services collection.<\/p>\n\n\t            <p>Use a compressed view on the Plugin Extras dialog if the screen is not very tall.<\/p>\n\n                <p>When associating a previously-uploaded image to an entry in Lightroom, note the actual upload time\n                (instead of the time the association was made) in the \"Uploaded to Zenfolio\" metadata.<\/p>\n\n                <p>Registration was broken on Lr2.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20141104.270' name='270'>20141104.270<\/a><\/td><td>\n<p>Plugin could block export with a \"tweet text too long\" even if the Twitter option was disabled.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20141030.269' name='269'>20141030.269<\/a><\/td><td>\n<p>Better debug logging of Twitter interaction.<\/p>\n                <p>Very long tweet text could break the dialog display.<\/p>\n                <p>Don't allow expert when we know ahead of time that the tweet is too long.<\/p>\n                <p>If twitter rejects a tweet (e.g. because it's too large), show the tweet and offer to allow the user to edit\/resend at twitter.com<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20141023.268' name='268'>20141023.268<\/a><\/td><td>\n<p>Added extra logging to debug why Lightroom might fail to render for export<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20141019.267' name='267'>20141019.267<\/a><\/td><td>\nWindows Only: Add a one-time check for the POODLE security vulnerability, and alert the user if it exists.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20141010.266' name='266'>20141010.266<\/a><\/td><td>\nBetter error reporting with the visit-collection item in Publish.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20140923.265' name='265'>20140923.265<\/a><\/td><td>\nAdded the <b>LrMD5<\/b>, <b>LrLocalization<\/b>, <b>LrSystemInfo<\/b>, and <b>LrMath<\/b> packages to the {LUA} <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template'>template token<\/a>.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20140922.264' name='264'>20140922.264<\/a><\/td><td>\nWhen deleting from a publish collection, properly maintain the 'Uploaded to...' metadata field.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20140917.263' name='263'>20140917.263<\/a><\/td><td>\nIf we've got to bail on an upload due to a too-long title or the like, do so before the pixels are uploaded to\n                avoid leaving an orphan at Zenfolio.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20140902.262' name='262'>20140902.262<\/a><\/td><td>\nNew build system\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20140802.261' name='261'>20140802.261<\/a><\/td><td>\n<p>Updated the Twitter support to allow <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template'>my plugins' template tokens<\/a>\n                in the tweet text.<\/p>\n\n                <p>Made the {GPSAltitude}, {Altitude}, and {GPSCoordinates} tokens subject to the geo-privacy settings like the other geo-related tokens.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20140731.260' name='260'>20140731.260<\/a><\/td><td>\nRegistration fix for Lr5.6\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20140731.259' name='259'>20140731.259<\/a><\/td><td>\nAdded some debugging to track down some registration issues.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20140729.258' name='258'>20140729.258<\/a><\/td><td>\nPrevious updates broke support on Lightroom 2\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20140720.257' name='257'>20140720.257<\/a><\/td><td>\nMore Creative-Cloud support.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20140715.256' name='256'>20140715.256<\/a><\/td><td>\n<p>Fixed an issue with Creative-Cloud revalidation.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20140712.255' name='255'>20140712.255<\/a><\/td><td>\n<p>Lr5.5 and later Creative-Cloud installs can now revalidate themselves if needed.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20140710.254' name='254'>20140710.254<\/a><\/td><td>\nSigh, had a bug in the Creative-Cloud support.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20140709.253' name='253'>20140709.253<\/a><\/td><td>\nOops, restore the create-a-gallery menu item lost in a recent update \n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20140708.252' name='252'>20140708.252<\/a><\/td><td>\n<p>Now supports Lr5.5+ Creative-Cloud Installs.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20140704.251' name='251'>20140704.251<\/a><\/td><td>\nSigh, introduced an error for some folks with the rebuild the other day.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20140630.250' name='250'>20140630.250<\/a><\/td><td>\nBuild-system update\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20140613.249' name='249'>20140613.249<\/a><\/td><td>\n<p>Added date_diff() and raw_time_diff() functions to <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template#lua'>the special {LUA} token<\/a> understood by the plugin.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20140605.248' name='248'>20140605.248<\/a><\/td><td>\n<p>Add a note to the Keyword options to highlight that only exportable keywords are considered<\/p>\n                <p>Set up the ability to reauthenticate to your Zenfolio account from the Publishing Manager dialog.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20140510.247' name='247'>20140510.247<\/a><\/td><td>\nA missing 'automatic destination' could cause the plugin to crash.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20140509.246' name='246'>20140509.246<\/a><\/td><td>\n<p>Added new tokens to the <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template'>template language<\/a> the plugin understands:\n                LrVersion, LrVersionMajor, LrVersionMinor, LrVersionRevision, LrVersionBuild, Location, CatalogName, CatalogPath, OperatingSystem, OS<\/p>\n                <p>Added new token filters: NS and LO<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20140422.245' name='245'>20140422.245<\/a><\/td><td>\n<p>Fixed a bug in the \"smoother revalidation\" stuff recently added.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20140417.244' name='244'>20140417.244<\/a><\/td><td>\n<p>The {Empty} template token wasn't working properly.<\/p>\n\n                <p>Added a new \"Location Privacy\" section to the Exprt\/Publish dialogs.<\/p>\n\n                <p>Updated the location-based tokens in the <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template'>template language<\/a>\n                the plugin uses &mdash; City, State, Country, Location, Latitude, Longitude &mdash; to respect new privacy options in the Export\/Publish\n                dialogs, and in the resend-metadata dialog. You can override those options on a case-by-case basis with the <tt>evenIfPrivate<\/tt> filter.<\/p>\n\n                <p>Added <tt>locationIsPrivate<\/tt> variable to the environment available to the <tt>LUA<\/tt> token.<\/p>\n\n                <p>Added the \"Recent Zenfolio Comment\" custom metadata item, which holds the date of the most recent comment for a Published photo,\n                in YYYY-MM-DD format. While in the \"Published Photos\" section of the Library Grid, you can set the Filter to \"Recent Zenfolio Comment\"\n                and then scroll down to the end to see the most recent dates, and via that see the most-recently commented photos.\n                It's a bit unelegant, but it's the best I can think of within the severe limits of Lightroom's plugin infrastructure.<\/p>\n\n                <p>Make the revalidation process smoother, especially for folks using Lr5.4 and later.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20140204.243' name='243'>20140204.243<\/a><\/td><td>\n<p>Enable a new feature internal to Lr5 for large exports that keeps the CPU from running too far ahead of the upload.\n                Prior to this, Lightroom would go ahead and peg the CPU to pre-render all the images even if they weren't being uploaded\n                at nearly the same speed. Now Lightroom pauses the behind-the-scenes rendering if it has gotten too far ahead of the upload.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20131106.242' name='242'>20131106.242<\/a><\/td><td>\n<p>A complete overhaul of the \"Associate Images Automatically\" code (in <b>File &gt; Plugin Extras &gt; Zenfolio Extras<\/b>).\n                It's still a fragile process, but it might work a bit better now.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20131023.241' name='241'>20131023.241<\/a><\/td><td>\n<p>Added (to File &gt; Plugin Extras) the ability to check the remote status to see whether uploaded photos are still there, and clear out\n                data from the catalog when they are not.<\/p>\n\n                <p>Added keywords to the list of metadata that can be imported back from Zenfolio.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20131011.240' name='240'>20131011.240<\/a><\/td><td>\nGave the Publishing Manager UI some attention on Windows.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20130927.239' name='239'>20130927.239<\/a><\/td><td>\n<p>Added the &#8220;:EMBED&#8221; token filter to the <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template'>template language<\/a>.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20130926.238' name='238'>20130926.238<\/a><\/td><td>\nOops, fix a bug introduced in the previous update\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20130925.237' name='237'>20130925.237<\/a><\/td><td>\n<p>Added a bunch of tokens to the <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template'>preset templates<\/a> supported:\n                <tt>ExportFormat<\/tt>, <tt>ExportColorSpace<\/tt>, <tt>ExportBitDepth<\/tt>, <tt>ExportQuality<\/tt>, <tt>ExportSharpeningLevel<\/tt>,\n                <tt>ExportSharpeningMedia<\/tt>, <tt>IpernityUrl<\/tt>, <tt>GoogleDriveUrl<\/tt>, and <tt>TumblrUrl<\/tt>.<\/p>\n\n                <p>The token-examples dialog had been broken.\n                Also deprecated <tt>Folder<\/tt> and <tt>Path<\/tt> tokens in preference to <tt>FolderName<\/tt> and <tt>FolderPath<\/tt> tokens.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20130909.236' name='236'>20130909.236<\/a><\/td><td>\n<p>Work around a Lightroom bug concerning the determination of whether a photo is offline.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20130822.235' name='235'>20130822.235<\/a><\/td><td>\n<p>Added the ability to import titles and captions from Zenfolio back into Lightroom.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20130820.234' name='234'>20130820.234<\/a><\/td><td>\n<p>Made big updates to the \"Export with Smart Previews?\" section; you can now pick to be asked whether to export via Smart Previews,\n                and can differentiate between when the Smart Previews are \"good enough\" for an export and when they are not. Moved to a more logical\n                place in the dialog.<\/p>\n\n                <p>Fixed the KW\/KWE tables in <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template'>template tokens<\/a>;\n                they had been broken when using load for the script.<\/p>\n\n                <p>Moved the \"Export with Smart Previews?\" dialog section to a more-logical place in the order.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20130701.233' name='233'>20130701.233<\/a><\/td><td>\n<p>Work around a bug that causes the export-related progress bar to not show up right away.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20130629.232' name='232'>20130629.232<\/a><\/td><td>\nAdded an error report to aid in debugging why publish association might fail.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20130613.231' name='231'>20130613.231<\/a><\/td><td>\nBetter support for plugin revalidation.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20130612.230' name='230'>20130612.230<\/a><\/td><td>\nCreating a new publish album could sometimes fail\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20130611.229' name='229'>20130611.229<\/a><\/td><td>\nSigh, previous update for Lr5 broke things for the Lr5 beta.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20130611.228' name='228'>20130611.228<\/a><\/td><td>\nYet another Lr5 update\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20130610.227' name='227'>20130610.227<\/a><\/td><td>\nBetter logging to try to understand catalog-write-access contention under Lighroom's hood\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20130524.226' name='226'>20130524.226<\/a><\/td><td>\nApparently, a recent change broke things on Lr2, which some folks apparently still use.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20130520.225' name='225'>20130520.225<\/a><\/td><td>\n<p>Added the ability in Lr5 to export images even if the master image file is not available, so long as there's a smart preview available.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20130511.224' name='224'>20130511.224<\/a><\/td><td>\nWhen creating a publish collection from the context menu, respect the publish service's flat vs. hierarchial naming setting.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20130501.223' name='223'>20130501.223<\/a><\/td><td>\nUpdate for Lr5\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20130412.222' name='222'>20130412.222<\/a><\/td><td>\nFix to the Twitter fix.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20130412.221' name='221'>20130412.221<\/a><\/td><td>\n<p>Can now have Publish collections renamed to match album names changed at Zenfolio.<\/p>\n\n                <p>Sigh, Twitter yet again made an unannounced undocumented change to their API that immediately breaks\n                apps that have worked for years, and doesn't even bother alerting developers after the fact. Lord knows\n                how many developers wasted how many hours trying to debug something that should have been announced\n                on the developer's blog. Days later, it's still not announced there. Twitter is not worse than Facebook,\n                but seems to be trying.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20130328.220' name='220'>20130328.220<\/a><\/td><td>\nFix for the registration system.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20130319.219' name='219'>20130319.219<\/a><\/td><td>\n<p>Export could crash if a too-big-for-the-remote-service video upload was attempted.<\/p>\n                <p>Fixed a possible plugin crash in Lr2 that might happen if the remote site's servers are failing.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20130311.218' name='218'>20130311.218<\/a><\/td><td>\nTry to address a gallery-sorting bug.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20130220.217' name='217'>20130220.217<\/a><\/td><td>\n<p>Added support for some new <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template'>template tokens<\/a>:\n                <b>FlagStatus<\/b> (requires Lr4.1 or later), and for Lr3 and later, a bunch of IPTC extended metadata:\n                <b>AdditionalModelInfo<\/b>,\n                <b>CodeOfOrgShown<\/b>,\n                <b>DigImageGUID<\/b>,\n                <b>Event<\/b>,\n                <b>ImageSupplierImageId<\/b>,\n                <b>MinorModelAge<\/b>,\n                <b>ModelAge<\/b>,\n                <b>ModelReleaseID<\/b>,\n                <b>ModelReleaseStatus<\/b>,\n                <b>NameOfOrgShown<\/b>,\n                <b>PersonShown<\/b>,\n                <b>PlusVersion<\/b>,\n                <b>PropertyReleaseID<\/b>,\n                <b>PropertyReleaseStatus<\/b>, and\n                <b>SourceType<\/b>.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20130214.216' name='216'>20130214.216<\/a><\/td><td>\nSmall fix for Lr2\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20130209.215' name='215'>20130209.215<\/a><\/td><td>\nUpdate to handle new Twitter url-length settings.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20130206.214' name='214'>20130206.214<\/a><\/td><td>\nUpdate the Twitter-related code to handle their new API. Their old API goes away next month.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20130129.212' name='212'>20130129.212<\/a><\/td><td>\n<p>Update to reflect Zenfolio's video-length limit of 20 minutes (it had been 15).<\/p>\n                <p>Abort on an attempt to create a gallery with a name more than Zenfolio's limit of 200 characters long.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20130119.211' name='211'>20130119.211<\/a><\/td><td>\nAdded the ability to set the gallery cover photo via Lightroom keyword.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20130115.210' name='210'>20130115.210<\/a><\/td><td>\n<p>Added the ability to use \"automatic destinations\" (the naming of target galleries based upon image metadata) in Publish.\n                It's been in Export for years (as illustrated in\n                   <a href='https:\/\/regex.info\/blog\/2008-10-06\/956'>this 2008 article on backing up to Zenfolio<\/a>), and you must create\n                the destination presets from Export, but you can now access them in Publish.<\/p>\n\n                <p>A lot of work on the upload datapath, making it more efficient and restoring the ability to retry the attempt on certain errors.<\/p>\n\n\t            <p>Added the ability to set the caption on a one-off basis by just typing it in, avoiding the need to make a preset each time.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20121203.208' name='208'>20121203.208<\/a><\/td><td>\nAdd a link to the FAQ for the \"missing destination cookies\" error.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20121109.207' name='207'>20121109.207<\/a><\/td><td>\nNote when Zenfolio is down for system maintenance.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20121030.206' name='206'>20121030.206<\/a><\/td><td>\nCould run into catalog contention while fetching new comments.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20121020.205' name='205'>20121020.205<\/a><\/td><td>\nA recent optimization for Lr4 broke support for Lr2.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20121017.204' name='204'>20121017.204<\/a><\/td><td>\nPlugin was blocking export due to DPX-video format in some cases where Lightroom didn't allow the format to be changed.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20121014.203' name='203'>20121014.203<\/a><\/td><td>\nAdded a help dialog when encountering the mysterious 'handle in the wrong state' error.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20121010.202' name='202'>20121010.202<\/a><\/td><td>\nFixed Twitter authentication.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20121009.201' name='201'>20121009.201<\/a><\/td><td>\n<p>Enhance the <b>{EMPTY}<\/b> <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template'>template token<\/a> so that it\n                interrupts the <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template#joining'>squelching of superfluous joining characters<\/a>.<\/p>\n\n                <p>Workaround for an \"<i>attempt to call field 'getProgressScope'<\/i>\" bug introduced in Lr4.2.<\/p>\n\n                <p>Disallow DPX-format video export, since that totally breaks things.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20121002.200' name='200'>20121002.200<\/a><\/td><td>\nFixed some UI-cuttoff in the Publish upload-destination dialog section, on Windows.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20120905.199' name='199'>20120905.199<\/a><\/td><td>\n<p>Added the ability to create new galleries directly from the Publish Service context menu.<\/p>\n\n                <p>Disable the \"Also automatically add as collection\" checkbox in the Publish-Dialog \"Zenfolio Tools\" section, when the\n                type of thing being created is a group instead of a gallery. You can't publish to groups.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20120821.198' name='198'>20120821.198<\/a><\/td><td>\n<p>Updates to the environment in the <tt>{LUA}<\/tt> token (in the <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template'>template tokens<\/a>\n                in my plugins) to include <b>photoTime()<\/b> and <b>currentTime()<\/b>, and other changes to match the updated docs at that link.<\/p>.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20120820.197' name='197'>20120820.197<\/a><\/td><td>\n<p>Responding to further Zenfolio error-message changes.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20120808.196' name='196'>20120808.196<\/a><\/td><td>\n<p>Fixed a resend-keyword bug.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20120805.195' name='195'>20120805.195<\/a><\/td><td>\n<p>Zenfolio seems to be changing how they report errors, so this update tries to respond in kind, as far as I can tell.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20120706.194' name='194'>20120706.194<\/a><\/td><td>\n<p>Wow, it seems some people using Lr2 are still using very old versions of Lr2 that aren't up to snuff feature\/bugfix wise.\n                I don't want to support gratuitously old stuff, so I put a minimum of Lr2.6 to use the plugin.<\/p>\n\n                <p>Oops, a side-effect of recent changes caused the log to bloat with a binary dump of exported images. Fixed.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20120614.193' name='193'>20120614.193<\/a><\/td><td>\n<p>Twitter support now allows suppressing \"Private\" geoencoded locations in Lr4.1+<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20120607.192' name='192'>20120607.192<\/a><\/td><td>\nVery slow uploads in Lr4.1 could cause the new progress bar stuff to blow up.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20120602.191' name='191'>20120602.191<\/a><\/td><td>\n<p>New upload engine in Lr4.1 that <i>greatly<\/i> increases the efficiency of large uploads. In Lr4.0 and older versions,\n                upload handling is inefficient and large uploads can crash Lightroom, but from Lr4.1 you can easily upload up to your Zenfolio account\n                maximum.<\/p>\n\n                <p>With Lr4.1 and later, you also get an upload percent-complete report in the task progress bar, and the ability for upload cancels\n                to take effect immediately.<\/p>\n\n                <p>Update to handle the Mac App Store version of Lightroom.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20120508.190' name='190'>20120508.190<\/a><\/td><td>\nYikes, Lr2 registrations were broken again.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20120430.189' name='189'>20120430.189<\/a><\/td><td>\n<p>Tweak for Lr4.1RC2.<\/p>\n                <p>Fixed the &#8220;photo too large to tweet&#8221; dialog message, which had been all garbled up.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20120426.188' name='188'>20120426.188<\/a><\/td><td>\n<p>Fixed a potential crash when processing some captions.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20120418.187' name='187'>20120418.187<\/a><\/td><td>\n<p>Handle a change to Zenfolio's API. According to Zenfolio, earlier versions of the plugin will cease to work on July 1, 2012.<\/p>\n\n                <p>Add the ability to reauthenticate Zenfolio credentials from within a publish service.<\/p>\n\n                <p>Enhanced the send-log dialog to hopefully make reports more meaningful to me, yielding, I hope,\n                the ability to respond more sensibly to more reports.<\/p>\n\n                <p>Added to the <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template'>template tokens<\/a> supported by the plugin:\n                <b>{FullMasterFile}<\/b>,\n                <b>{FullMasterFolder}<\/b>,\n                <b>{FullExportedFile}<\/b>, and\n                <b>{FullExportedFolder}<\/b>.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20120418.186' name='186'>20120418.186<\/a><\/td><td>\n(this version had an assert in Publish)\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20120417.185' name='185'>20120417.185<\/a><\/td><td>\n(this version had a \"This file format is not supported or the file is corrupt.\" bug\")\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20120330.184' name='184'>20120330.184<\/a><\/td><td>\nUpdate to handle 4.1RC\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20120327.183' name='183'>20120327.183<\/a><\/td><td>\nMore graceful handling of videos whose pixel size is not known.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20120309.182' name='182'>20120309.182<\/a><\/td><td>\nHad broken registrations in Lr2; Update to the debug logging to better track down timing issues that might arise.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20120303.181' name='181'>20120303.181<\/a><\/td><td>\nOne more update with the large-upload thing.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20120302.180' name='180'>20120302.180<\/a><\/td><td>\nThe recently-added \"Lightroom doesn't handle large uploads well\" check\/dialog didn't play nice. Does now.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20120301.179' name='179'>20120301.179<\/a><\/td><td>\nOops, broke new logins in the previous big update... doh! Sorry. Fixed.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20120229.178' name='178'>20120229.178<\/a><\/td><td>\n<p>Lots more preparation for Lr4 (but still works in Lr2 and Lr3).<\/p>\n\n                <p>Lightroom's internal infrastructure doesn't handle large uploads well, and will most likely crash when trying to upload\n                huge videos, so I've not added a warning and the ability for the user to decide when it kicks in.<\/p>\n\n                <p>Files that are offline are now detected before an export\/publish begins, and if there are any, offers the option to abort the export,\n                or just skip the offline ones. This is a lot more clear than the \"dng_error_file_not_found\" error you get from Lightroom if you follow through\n                with an export attempt of an offline image.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20120218.177' name='177'>20120218.177<\/a><\/td><td>\nZenfolio seems to have changed how they handle image deletion... not sure whether they're having issues or it's\n                an intentional change, but the plugin now handles it gracefully.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20120217.176' name='176'>20120217.176<\/a><\/td><td>\n<p>Discovered why \"metadata that triggers a republish\" wasn't reliable, and fixed it.<\/p>\n\n                <p>Attempt to prepare for <a href='https:\/\/dev.twitter.com\/blog\/making-api-responses-match-request-content-type'>changes\n                Twitter has announced<\/a> will take place in how they return information about server errors.<\/p>\n\n\n                <p>More on the march toward Lr4, including upheaval in the code to handle  Lightroom APIs being discontinued in Lr4.<\/p>\n\n                <p>Bumped up the minimum Lr3 version to Lr3.5, to ensure we've got those bug fixes. Lr2 and Lr4 are still supported, of course.<\/p>\n\n                <p>Added the <b>{AspectRatio}<\/b> token to the <a\n                href='https:\/\/regex.info\/blog\/lightroom-goodies\/template'>token templates<\/a> understood by the plugin,\n                and added the <b>Length=<\/b><i>num<\/i> filter.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20120114.175' name='175'>20120114.175<\/a><\/td><td>\nMore tweaks for Lr4b\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20120112.174' name='174'>20120112.174<\/a><\/td><td>\n<p>Removed the &#8220;Re-mark as Published&#8221; button from the plugin-extras dialog in Lr4, because Lr4 now supports this natively.<\/p>\n\n                <p>Moved the Twitter code over to a new style of Twitter authentication, in hopes that it cures the\n                authentication problems some people have been having.<\/p>\n                <p>Moved all access of Twitter to HTTPS.<\/p>\n                <p>Removed an obsolete reference to bit.ly from the Twitter help dialog.<\/p>\n\n        \t    <p>Update for Lr4 beta: explain in the plugin manager that the plugin can't be registered in the beta.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20120106.173' name='173'>20120106.173<\/a><\/td><td>\n<p>The Lightroom bug referenced in the version note for <b><a href='#148'>20110623.148<\/a><\/b> was fixed in Lr3.5, so\n                I've removed the special workaround processing for that version and later.<\/p>\n\n                <p>Enabled export snapshot creation in Publish.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20111214.172' name='172'>20111214.172<\/a><\/td><td>\n<p>Zenfolio added video-upload support today, so I've updated the plugin to allow video.<\/p>\n                <p>Better error handling for video export, and for when images\/videos exceed upload limits.<\/p>\n                <p>Warn about the need to update the list of albums if it's not been updated for a long time.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20111210.171' name='171'>20111210.171<\/a><\/td><td>\n<p>Updated how the Manual-association dialog is sized.<\/p>\n\t            <p>Had issues with the registration button sometimes not showing.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20111202.170' name='170'>20111202.170<\/a><\/td><td>\n<p>Added a system-clock check and reports to the user if the system clock is more than a minute out of\n                date. An incorrect system clock can cause problems with various kinds of communication and authentication\n                with some of my plugins, so I've just gone ahead and added this to every plugin.<\/p>\n\n\t            <p>When doing a plugin upgrade, offer the ability to flush all the old copies of the plugin.<\/p>\n\n\t            <p>Fix an \"attempt to concatenate field 'user_id_string'\" error that pops up at rare times.<\/p>\n\n                <p>Added some debug logging to try to track down a sizing problem with the manual-association dialog.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20111017.170' name='170'>20111017.170<\/a><\/td><td>\n<p>Include the account id (in addition to the full name that's already there) in the Publishing Manager login\n                section, to allow multiple accounts associated with the same real name to be easily differentiated.<\/p>\n\n                <p>Also report how much storage quota is remaining, if on exists.<\/p>\n\n                <p>Reporting some errors can create a huge dialog box that can be difficult to close on OSX,\n                so this update adds a [X] button in the upper right of the dialogs.<\/p>\n\n                <p>Gracefully report when Zenfolio replies with a \"storage quota exceeded\" error.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20111010.169' name='169'>20111010.169<\/a><\/td><td>\nAdded the ability to resend copyright when resending metadata.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20111008.168' name='168'>20111008.168<\/a><\/td><td>\nPublish repopulation could fail with write-gate timeouts.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20111004.167' name='167'>20111004.167<\/a><\/td><td>\nPlugin would crash in some cases while trying to process Twitter-related settings.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20110918.166' name='166'>20110918.166<\/a><\/td><td>\nNow I'm seeing \"Server Error\" responses, so trying to handle that more gracefully as well.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20110914.165' name='165'>20110914.165<\/a><\/td><td>\nZenfolio seems to be having a spate of \"service is unavailable\" errors, which the plugin wasn't handling\n                well. Now these errors are reported more clearly when the plugin encounters them.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20110910.164' name='164'>20110910.164<\/a><\/td><td>\n<p>Handle errors more gracefully when attempting to update online comments for photos that no longer exist.<\/p>\n                <p>Better general debug logging to help track down errors when reported.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20110903.163' name='163'>20110903.163<\/a><\/td><td>\nAdded {PluginProperty} to the <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template'>template tokens<\/a> used by my plugins.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20110901.162' name='162'>20110901.162<\/a><\/td><td>\n<p>Some internal optimizations to handle large number of sets.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20110819.161' name='161'>20110819.161<\/a><\/td><td>\n<p>Gave the Twitter tweet input UI some attention.<\/p>\n\n                <p>Twitter automatically replaces URLs with their own <code>t.co<\/code> urls, and the tweet-text\n                character-counter now takes that into account, so pasting in urls of any length now \"costs\" a fixed amount\n                (currently 19 characters for an HTTP url; 20 characters for an HTTPS url). The plugin no longer\n                uses <a href='http:\/\/bit.ly'>bit.ly<\/a>.<\/p>\n\n                <p>Made it so that hitting ENTER while entering a tweet does not actually launch the\n                export. This is a maddeningly-frustrating aspect of the Lightroom plugin infrastructure,\n                but I've worked around it in a way that seems to work.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20110817.160' name='160'>20110817.160<\/a><\/td><td>\n<p>Updates the yesterday's changes to that Lr2 works as well.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20110816.159' name='159'>20110816.159<\/a><\/td><td>\n<p>Added the ability to include a photo when issuing a tweet via Twitter.<\/p>\n                <p>Gracefully handle when Zenfolio rejects HTML captions with a non-validation error.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20110814.158' name='158'>20110814.158<\/a><\/td><td>\nThe \"resend metadata\" operation, if not resending all data, could cause unsent fields to\n                be wiped out at Zenfolio.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20110807.157' name='157'>20110807.157<\/a><\/td><td>\nFixed \"attempt to compare nil with number\" error that some users might have gotten in Publish.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20110729.156' name='156'>20110729.156<\/a><\/td><td>\n<p>Better reporting of networking timeouts.<\/p>\n                <p>The 'refresh list' button was missing from the upload-destination list when it was configured to be a popup menu.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20110712.155' name='155'>20110712.155<\/a><\/td><td>\nHad a minor plugin-crashing boo-boo in the previous update\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20110711.154' name='154'>20110711.154<\/a><\/td><td>\nReally long captions could cause a stack overflow.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20110708.153' name='153'>20110708.153<\/a><\/td><td>\nFix the \"Export:663\" error some have gotten.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20110706.152' name='152'>20110706.152<\/a><\/td><td>\nStill struggling with catalog-access issues that seemed to have materialized out of the blue (with a bug in Lr3.4??).\n                This update addresses creating a new publish collection.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20110706.151' name='151'>20110706.151<\/a><\/td><td>\n<p>The manual-association dialog was too big for some screens... now it auto-adjusts depending on the screen size.<\/p>\n                <p>More on the catalog-access errors that some are getting with Lr3.<\/p>\n             \n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20110703.150' name='150'>20110703.150<\/a><\/td><td>\nFor Lr2, fixes a 'must be called inside withReadAccessDo' error I'd recently introduced. For Lr3, tries to address a similar error that seems to pop up in rare cases.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20110624.149' name='149'>20110624.149<\/a><\/td><td>\nPresent a better error message if image metadata (title, caption, etc.) exceeds Zenfolio limits.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20110623.148' name='148'>20110623.148<\/a><\/td><td>\n<p>There's a bug in Lightroom that causes it to sometimes include private keywords in exported copies. The plugin now detects these situations and alerts you to them, allowing you to avoid a privacy blunder.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20110614.147' name='147'>20110614.147<\/a><\/td><td>\nFixed the &#8220;Associate Images Manually&#8220; functionality.\n                Tweaked the authentication stuff to avoid having to re-upload the first image after a long absence\n                by pre-testing the cached authentication token, and refreshing it if need be.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20110611.146' name='146'>20110611.146<\/a><\/td><td>\nWorkaround for a problem one user experienced.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20110607.144' name='144'>20110607.144<\/a><\/td><td>\nDue to a mistake on my part, the plugin started building invalid urls for galleries at Zenfolio.\n                This version of the plugin fixes it, but to make it manifest, you've got to click the \"refresh list\" button\n                next to the list of galleries (in either the Export Dialog or the Publishing-Manager Dialog).\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20110524.143' name='143'>20110524.143<\/a><\/td><td>\n<p>Better handle long album names by truncating at the beginning with '...', and having the tooltip be the full name.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20110521.142' name='142'>20110521.142<\/a><\/td><td>\n<p>Fixing some problems with Lr2 that the comment-refresh thing the other caused.<\/p>\n\t            <p>Fixed a bug that caused the export destination to not properly refresh in response to selecting a preset in the export dialog.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20110519.141' name='141'>20110519.141<\/a><\/td><td>\n<p>Added a new section to the Publish Service settings dialog, on whether to refresh remote comments (at Zenfolio back into Lightroom)\n                automatically or only manually.<\/p>\n\n                <p>Fixed an obscure bug that caused new album creation to fail if it's your first interaction with the plugin in more than a day.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20110518.140' name='140'>20110518.140<\/a><\/td><td>\n<p>It seems Zenfolio dropped (or never had?) support for Width-related gallery sorting, so I've dropped that\n                option.<\/p>\n                <p>Be more robust to errors during the gallery-creation process. Added more logging to try to debug a gallery-creation error.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20110511.139' name='139'>20110511.139<\/a><\/td><td>\nYikes, when I upgraded to a new Zenfolio API in March, I broke the image-association feature. Sorry. Fixed.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20110426.138' name='138'>20110426.138<\/a><\/td><td>\nFixed a bug in how some export errors are reported.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20110419.137' name='137'>20110419.137<\/a><\/td><td>\nWasn't properly issuing an error message when used with Lr3.0 and Lr3.2.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20110409.136' name='136'>20110409.136<\/a><\/td><td>\n<p>Fixed some plugin-crash asserts that some new users might get.<\/p>\n\n\t            <p>Added \"select all\" button to Publish collection list.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20110329.135' name='135'>20110329.135<\/a><\/td><td>\nOops, the button to refresh the list of galleries had inadvertently disappeared.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20110324.134' name='134'>20110324.134<\/a><\/td><td>\n<p>Added the ability to select which metadata items cause a Publish republish.<\/p>\n\n                <p>Added the ability to sort the album list in the Publishing Manger<\/p>\n\n                <p>Previous build was broken under Lr2, and some Lr3 installs.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20110322.133' name='133'>20110322.133<\/a><\/td><td>\n<p>Giving a try to a manual option to associate images already at Zenfolio with catalog photos.\n                See &#8220;Associate Images Manually&#8220; in the Plugin-Extras\n                dialog <span class='nobr'>(&#8220;File &gt; Plugin Extras &gt; Zenfolio Extras&#8221;)<\/span>.<\/p>\n\n                <p>Added the ability to create new Zenfolio galleries from within the publish manager.<\/p>\n\n                <p>Added a progress dialog to the &#8220;Re-mark as Published&#8221; operation, so that it can be canceled,\n                and to make it clear that something is going on under the hood.<\/p>\n\n                <p>Fixed a bug whereby one couldn't export via preset to an account different from the currently-logged in account.<\/p>\n\n                <p>The list of upload destinations was sometimes getting cut off.<\/p>\n\n                <p>Internally, upgraded to the latest Zenfolio API.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20110125.132' name='132'>20110125.132<\/a><\/td><td>\nSome ares of the code that talked to Zenfolio didn't properly handle reauthentication requests, but\n                I think I've caught them all now.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20110121.131' name='131'>20110121.131<\/a><\/td><td>\n<p>Added &#8220;Re-Mark as Published&#8221; to the Plugin-Extras dialog <span class='nobr'>(&#8220;File &gt; Plugin Extras &gt; Zenfolio Extras&#8221;)<\/span>.\n                If you have published photos in the &#8220;Modified Photos to Re-Publish&#8221; grid segment, this moves them back to &#8220;Published Photos&#8221;\n                without actually uploading anything to Zenfolio. You might use this after making what you know to be a metadata-only change that\n                won't affect how the image is shown at Zenfolio.<\/p>\n\n                <p>Fixed a problem such that long album names caused buttons to become inaccessible in the export dialog.<\/p>\n\n                <p>Not sure what happened to the export dialog since I last checked it in Windows, but it was in need of some UI love.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20110116.130' name='130'>20110116.130<\/a><\/td><td>\nAdded Twitter support to Publish.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20110113.129' name='129'>20110113.129<\/a><\/td><td>\n<p>This version no longer works in Lr3.0 and Lr3.2 because many bugs have been fixed in Lr3.3: if you're using Lr3.0 or Lr3.2,\n                please visit Lightroom's <span class='nobr'>&#8220;<b>Help &gt; Check for Updates<\/b>&#8221;<\/span> to download the\n                free update from Adobe. (The plugin also continues to work in Lr2.)<\/p>\n\n                <p>Added {CroppedWidth} and {CroppedHeight} to the <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template'>template tokens<\/a>\n                used by my plugins.<\/p>\n\n                <p>Add a note of instruction to handle a (rare) situation where one needs to reauthenticate in the normal Export Dialog in order\n                to get a Publish Service working again.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20101217.128' name='128'>20101217.128<\/a><\/td><td>\nUpdated Twitter support for Twitter's new API endpoints\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20101124.127' name='127'>20101124.127<\/a><\/td><td>\n<p>Fixed a crash sometimes encountered while updating remote-account data in the plugin, fixing correctly the fix I added incorrectly in 20101112.125.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20101116.126' name='126'>20101116.126<\/a><\/td><td>\n<p>Check whether galleries at Zenfolio have been renamed from when publish-service collections were created, and prompt\n                the user with a note that the renaming can be incorporated into Lightroom by enabling the &#8220;Forcefully rename current collections&#8221;\n                option.<\/p>\n\n                <p>Replaced an ugly debug message that popped up when the plugin detected that a publish-service collection's related\n                gallery at Zenfolio has been removed from Zenfolio, with a more user-friendly message.<\/p>\n\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20101112.125' name='125'>20101112.125<\/a><\/td><td>\nSome users were suddenly getting an &#8220;Assertion failed(!)&#8221; error (it would happen in some situations when the internal\n                Zenfolio access token would time out and the plugin would need to reauthenticate on your behalf).\n                I haven't been able to reproduce the error myself, but this should fix it.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20101104.124' name='124'>20101104.124<\/a><\/td><td>\n<p>Publish was sometimes getting stuck in a 'not logged in' state, if you hadn't refreshed your account data\n                in the plugin for too long a time. Not sure why I might have built it that way, but I took off the time limit\n                so now it shouldn't get stuck anymore. Wish I understood why I'd put it in in the first place, though. )-:<\/p>\n\n               <p>Warn about the loss of metadata if the &#8220;resize to megapixels&#8221; option is used.<\/p>\n\n\t           <p>Fixes &#8220;<i>Spec:343: attempt to index field '?' (a nil value)<\/i>&#8221; error some were getting<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20100829.123' name='123'>20100829.123<\/a><\/td><td>\nMade the revalidation process much simpler, doing away with the silly need for a revalidation file.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20100820.122' name='122'>20100820.122<\/a><\/td><td>\nDiscovered a bug in my plugin build system that caused horribly difficult-to-track-down errors in one plugin,\n                so am pushing out rebuilt versions of all plugins just in case.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20100814.121' name='121'>20100814.121<\/a><\/td><td>\n<p>Added an interactive filter to the gallery list in Publish; it'll show up if there are more than 10 galleries.\n                Only galleries whose names match all the (space-separated) terms in the filter are shown.<\/p>\n\n                <p>Added code to allow plugin revalidation after having been locked due to a bad Lightroom serial number.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20100726.120' name='120'>20100726.120<\/a><\/td><td>\n<p>Added the {KeywordsAll} template tag.<\/p>\n\n                <p>A few users found some photos to always be &#8220;stuck&#8221; as Modified photos in a Publish collection. I'm\n                still not 100% what might be going on and can't replicate the issue myself, but this version of the\n                plugin tries some things to hopefully alleviate the problem.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20100715.119' name='119'>20100715.119<\/a><\/td><td>\nThere was a bug on Windows that caused the warning about potentially-excessive JPEG quality settings to\n                lock up Lightroom for an indeterminate amount of time. Only way I could fix it was to move the warning to\n                the metadata management section (where it doesn't belong as much as it doesn't belong where it was\n                before, but Lightroom doesn't let me put it where it should go, next to the jpeg-quality slider).\n                This also allowed me to put it back into Publish.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20100715.118' name='118'>20100715.118<\/a><\/td><td>\nYikes, the JPEG-quality thing I added didn't play well with Publish. Removing it from Publish 'till I figure\n                out a better way.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20100714.117' name='117'>20100714.117<\/a><\/td><td>\n<p>Egads, the list of albums in the Publish Service dialog was not sorted.<\/p>\n\n                <p>Did a lot of work to revamp the ability to tie in photos already at Zenfolio into your Lightroom\n                catalog (and hence to populate a Zenfolio publish service), working around bugs in Lightroom.\n                See the <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/zenfolio\/publish#maintenance'>new publish docs<\/a>\n                for details.<\/p>\n\n                <p>The plugin has long remembered your export settings from Zenfolio export session to Zenfolio export\n                session, overriding Lightroom's desire to always bring your recent export settings from non-Zenfolio\n                exports. However, I had neglected to update the list of settings for Lightroom 3, so this is now\n                corrected, and so the plugin now also remembers watermarking settings, file-renaming and photo-stacking,\n                and DNG compatibility.<\/p>\n\n                <p>Clarified that the &#8220;delete all copies previously uploaded&#8221; option applies to, well, all copies\n                previously uploaded, as opposed to some magic subset of copies previously uploaded that you might have\n                fixed in mind.<\/p>\n\n                <p>Added a warning that blocks export when the JPEG quality is set needlessly high, referring users to my <a\n                href='https:\/\/regex.info\/blog\/lightroom-goodies\/jpeg-quality'>Analysis of Lightroom JPEG Export Quality\n                Settings<\/a>. You can bypass the warning if you like, and hide it forever, of course.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20100702.116' name='116'>20100702.116<\/a><\/td><td>\n<p>Discovered some rare and complex bugs related to collection renaming, and (I hope) fixed them.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20100630.115' name='115'>20100630.115<\/a><\/td><td>\n<p>Finally pushing the new version out of plugin beta (<a\n                href='https:\/\/regex.info\/blog\/2010-06-08\/1539'>where it has been<\/a> for a couple of weeks), after eight\n                months of oft-painful development. It's extremely complex under the hood, so now that it's getting wider\n                user and additional bugs are shaken out, there will likely be frequent updates... please keep an eye on\n                the version history when you update.<\/p>\n\n                <p>Here are the update details from when it was in beta:<\/p>\n\n                <div class='bg-B' style='padding:0.7em; font-size:94%'>\n\n                   <p><b>20100614.107<\/b> &mdash; This version can be <a href='https:\/\/regex.info\/blog\/2010-06-08\/1539'>registered in\n                   Lightroom 3<\/a>. It can run in Lightroom 2 or Lightroom 3; it does not work in the Lr3 betas.<\/p>\n\n                   <p>It uses my new registration system when run on Lightroom 3,\n                   which avoids some of the silly issues of the old one. Please take care to note\n                   the details on <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/register'>the registration\n                   page<\/a>: use of this version (or later) of the plugin in Lightroom 3 requires a new\n                   registration code, even if you had registered some older version of the plugin.<\/p>\n\n                   <p>This version has no Publish support... I hope to push that out soon, but I wanted to get out\n                   something that works in Lr3 ASAP.<\/p>\n\n                   <p>Many, <b>many<\/b> changes under the hood.<\/p>\n\n                   <p>Added some options to the Twitter <b>&lt;dest <i>options<\/i>&gt;<\/b> special code: add <b>simple<\/b>\n                   as an option to have it become just the name without quotes or other adornment; add <b>short<\/b> to par\n                   down the gallery name to just the leaf name. They can be combined, e.g. <b>&lt;dest short\n                   simple&gt;<\/b>.<\/p>\n\n                   <p>Added some stuff to the <b>LUA<\/b> <a\n                   href='https:\/\/regex.info\/blog\/lightroom-goodies\/template'>template token<\/a>: a version of the standard\n                   <b>os<\/b> table (with <i>date<\/i>, <i>difftime<\/i>, <i>getenv<\/i>, es and <i>time<\/i>), and the standard\n                   Lightroom STK tables <i>LrDate<\/i>, <i>LrPathUtils<\/i>, and <i>LrStringUtils<\/i>). Also added a new\n                   functions <b>TBL()<\/b> (returns an empty table), <b>ne(<i>item<\/i>)<\/b> (returns true if the item is not\n                   empty), and <b>nb(<i>item<\/i>)<\/b> (returns true if the item is not blank; \" \" is blank but not empty,\n                   while \"\" and nil are both blank and empty).<\/p>\n\n\n                   <p><b>20100624.108<\/b> &mdash; Discovered a nasty build bug; pushing a new version in case it affects this plugin.<\/p>\n\n                   <p><b>20100625.109<\/b> &mdash; Yikes, shaking out some more build issues.<\/p>\n\n                   <p><b>20100627.110<\/b> &mdash; Giving <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/zenfolio\/publish'>publish for Zenfolio<\/a> a try.<\/p>\n\n                   <p><b>20100628.111<\/b> &mdash; Had broken auto destinations.<\/p>\n\n                   <p><b>20100628.112<\/b> &mdash; Various fixes, including handling virtual copies (created on images uploaded with this version or later).<\/p>\n\n                   <p><b>20100629.113<\/b> &mdash; Lots of changes. Bolstered the separation between Publish and non-Publish exports.\n                   You can now publish comments.<\/p>\n\n                   <p><b>20100629.114<\/b> &mdash; Lots more changes, especially related to auto destinations and replacing images.\n                   Identified that &#8220;Import Smart Collection Settings&#8221; does not work for Publish,\n                   and corrupts things. Don't use it.<\/p>\n\n\n\n               <\/div>\n\n\n\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20100323.106' name='106'>20100323.106<\/a><\/td><td>\n<p>Removed some LR3-related debugging stuff that's showing up now that <a\n                href='https:\/\/regex.info\/blog\/2010-03-23\/1479'>LR3b2 is out<\/a>. All plugin-related things should work in\n                LR3b2 except Publish, which will likely change drasticly between now and when LR3 is actually released.<\/p>\n\n                <p>New when running LR3b2 is a new &#8220;Snapshots on Export&#8221; section, which is basically a built-in\n                version of <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/snapshot-on-export'>this new plugin<\/a>.<\/p>\n\n                <p>Added new tokens to the templates used in my plugins: <b>IfKeyword<\/b> and\n                <b>IfExportedKeyword<\/b> are supported for LR2 and later. For LR3b1 and later the very powerful\n                <b>LUA<\/b> token, and for LR3b2 and later, a bunch of new localized date\/time tokens. See the <a\n                href='https:\/\/regex.info\/blog\/lightroom-goodies\/template'>templates page<\/a> for details.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20100315.105' name='105'>20100315.105<\/a><\/td><td>\n<p>Wholesale changes that attempt to honor the user's locale settings for numeric display (e.g. Europeans\n                writing 3,14156 for pi). I've probably missed some spots, so let me know if you find some.<\/p>\n\n                <p>Added three new tokens to the templates that my plugins use, <b>CameraName<\/b>,\n                <b>IfGeoencoded<\/b>, and <b>Keywords<\/b>. See the <a\n                href='https:\/\/regex.info\/blog\/lightroom-goodies\/template'>templates page<\/a> for details.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20100226.104' name='104'>20100226.104<\/a><\/td><td>\n<p>Title presets weren't getting saved across LR restarts in some cases (for definitions of &#8220;some&#8221;\n                meaning &#8220;all&#8221;, sorry).<\/p>\n\n                <p>Changed the semantics of the <tt>Places<\/tt> filter (in the tokens understood by the <a\n                href='https:\/\/regex.info\/blog\/lightroom-goodies\/template'>preset templates<\/a> of my plugins) in two\n                ways: if applied to a string value rather than a number, it works on the first number found in the\n                string. Another is that you can now use something like <tt>Places=-1<\/tt> to round to the 10s,\n                <tt>Places=-2<\/tt> to round to the 100s, etc.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20100205.103' name='103'>20100205.103<\/a><\/td><td>\n<p>Completely changed how the one-click upgrade applies the newly-downloaded zip file, in the hopes that\n                it'll work for more people. Rather than unzipping over the old copy, it now unzips to a temporary\n                folder, then moves the old folder out of the way and the new folder into place. Prior versions' folders\n                are now maintained (with the version number in the folder) in case you want to revert a version; you\n                may want to clear them out from time to time. Of course, it won't take affect until you try to upgrade\n                <i>after<\/i> having upgraded to or beyond this version.<\/p>\n\n                <p>Caught a few more LR3b issues.<\/p>\n\n                <p>Fixed the {GPSAltitude} template token so that it should now actually work.<\/p>\n\n                <p>Oops, the upload date\/time custom metadata items were swapped. Doh! With this new version, each\n                catalog will auto-update to correct the issue the first time it's loaded. The format used for the date\n                and time are restricted in LR2 to whatever I've chosen, but the first time you load the plugin in the\n                real LR3 (whenever it comes out), the catalog will update itself again to write the dates\/times in your\n                user-customized, localized format.<\/p>\n\n                <p>Lots of updates to the Twitter support:<\/p>\n                <ul>\n\n                <li>Better tweet-size estimates in line with recent processing changes at Twitter.<\/li>\n\n                <li>Added &lt;title&gt; and &lt;caption&gt; tags to the tweet-text template (they use the\n                title\/caption from the first image exported).<\/li>\n\n                <li>Added the ability to control whether to send a Twitter tweet with photo keywords.<\/li>\n\n                <li>Added the ability to geotag tweets with a static location, or with the geoencoded location of the\n                first image. A static location can be specified with a <i>latitude, longitude<\/i> pair, a <a\n                href='http:\/\/geohash.org\/'>geohash<\/a>, or a url from a mapping service like Google, Yahoo, or Bing. On\n                the encoded side, geodata embedded in the image can be used, or the geodata maintained by <a\n                href='https:\/\/regex.info\/blog\/lightroom-goodies\/gps'>my geoencoding-support plugin<\/a>).<\/li>\n\n                <li>You can now configure the plugin to shorten URLs via your own <a href='http:\/\/bit.ly'>bit.ly<\/a>\n                account, in case you want to track click-throughs yourself.<\/li>\n\n                <li>You can now specify that you want <i>all<\/i> URLs shortened. The default remains to shorten them\n                only when required to get under the 140-character limit. You might, for example, want to forcefully\n                shorten them all in conjunction with your own bit.ly account, for click-through tracking.<\/li>\n\n                <li><p>The plugin now goes to great lengths to report whether a tweet is accepted by Twitter. In their\n                infinite wisdom, the folks at Twitter suddenly decided to start ignoring long tweets instead of\n                truncating them, but (here's the brilliant part) <i>they still report back to the plugin that the tweet\n                was successful<\/i>. Sigh.<\/p>\n\n                <p>Furthermore, they might also ignore (yet report as successful) other kinds of tweets, such as those\n                that are a repeat of a &#8220;too recent&#8221; tweet. Those crafty folks at Twitter implemented these changes more\n                than three months ago, but in a truly cunning move, <i>they still detail the old behavior in their API\n                documentation, making no mention whatsoever about how their service now actually works.<\/i><\/p>\n\n                <p>Only by doing a bunch of extra work can the plugin detect whether a tweet was accepted or ignored. If\n                ignored, there's no way for the plugin to know why, so at this point it merely reports that the tweet\n                didn't go through.<\/p><\/li>\n\n                <\/ul>\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20100118.102' name='102'>20100118.102<\/a><\/td><td>\nAdded two new <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template'>template tokens<\/a>,\n                <b>{<a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template#DaysSince'>DaysSince<\/a>}<\/b>\n                and\n                <b>{<a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template#PhotoDaysSince'>PhotoDaysSince<\/a>}<\/b>.\n                They're a bit tricky, but could be useful.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20091230.101' name='101'>20091230.101<\/a><\/td><td>\nAdded a &#8220;Repopulate URLs&#8221; button to the Plugin Extras dialog, to allow correcting for the bug fixed in\n                the previous push, and to correct for photos uploaded with old versions of the plugin.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20091230.100' name='100'>20091230.100<\/a><\/td><td>\nSigh, it seems 30,000+ lines of code are getting to be hard to keep track of, and I unintentionally\n                removed the exported url from the custom metadata (from the 'At Zenfolio' item) a few versions back.\n                This should fix it, at least for images uploaded from now. There are some more updates for Publish in\n                LR3b, but it's very much a work in progress.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20091222.99' name='99'>20091222.99<\/a><\/td><td>\nFixed some issues with the metadata resend (in the Plugin-Extras dialog) when images had been exported to\n               multiple Zenfolio accounts.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20091216.98' name='98'>20091216.98<\/a><\/td><td>\nFigured out when the &#8220;AgExportSession.photoExportSequence is obsolete; use photoIdExportSequence instead&#8221;\n               error was coming from. A bug in LR3 beta. I had to disable the export filter for the beta to avoid this.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20091215.97' name='97'>20091215.97<\/a><\/td><td>\nAllow changing the font size of list of upload destinations. Those with long names might want to choose a\n               smaller size to allow more text to fit on each row.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20091215.96' name='96'>20091215.96<\/a><\/td><td>\nDebugging-log tweak.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20091214.95' name='95'>20091214.95<\/a><\/td><td>\nAdded the special <b>{NOJOINERS}<\/b> token to the <a\n               href=\"https:\/\/regex.info\/blog\/lightroom-goodies\/template\">Template Language<\/a> understood by my plugins.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20091209.94' name='94'>20091209.94<\/a><\/td><td>\nA few small fixes for LR3b, and tweaks to the extra-keywords stuff do tidy up repeated keywords in the display.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20091205.93' name='93'>20091205.93<\/a><\/td><td>\nMinor internal debugging tweaks.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20091118.92' name='92'>20091118.92<\/a><\/td><td>\nAdded an <tt>{Altitude}<\/tt> item to the <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template'>templates<\/a> understood\n               by the plugin. It's the numeric altitude in meters, as opposed to the <tt>{GPSAltitude}<\/tt> item which is\n               a description of the altitude along the lines of <span class='nobr'>&#8220;<b>32.7 m<\/b>&#8221<\/span>.\n               Also updated the <tt>Places<\/tt> filter so that it can be used on fields that merely begin with a number.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20091118.91' name='91'>20091118.91<\/a><\/td><td>\nAdded the ability to resend keywords\/captions\/titles via the\n               <b class='nobr'>File &gt; Plugin Extras &gt; Zenfolio Extras<\/b> dialog.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20091023.90' name='90'>20091023.90<\/a><\/td><td>\nA bunch of UI fixes for LR3b, such as fixing the scrollbar and the token-examples dialog.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20091022.89' name='89'>20091022.89<\/a><\/td><td>\nAdded a <b>first draft<\/b> of some rudimentary support for <i>Lightroom 3 Beta<\/i>.\n               See <a href='https:\/\/regex.info\/blog\/2009-10-22\/1339' class='quiet'>this important note about\n               plugin support in <i>Lightroom 3 Beta<\/i> and <i>Lightroom 3<\/i><\/a>, including future plans for\n               features and my registration system.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20090916.88' name='88'>20090916.88<\/a><\/td><td>\nSome UI tweaks earlier in the month had an unintended side effect of breaking the &#8220;choose destination\n               at export time&#8221; feature. Sorry... fixed! Also, added some prose to make it more clear that the &#8220;create\n               gallery&#8221; part of the choose-destination-at-export-time dialog is not part of the export process, but\n               merely a tool placed there for the convenience of those wishing to create a new gallery just prior\n               to exporting.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20090915.87' name='87'>20090915.87<\/a><\/td><td>\nFixed some keyword-related issues. First, due to a silly bug on my part, there had been an artificial\n               limit on the number of keywords sent.  Second, also due to a bug on my part, the keyword order was\n               scrambled. The plugin now sends them in the order Lightroom provides them (which seems to be alphabetic).\n               (Sorry to everyone who couldn't contact my server for the last few days... it had &#8220;issues&#8221;,\n               that are now fixed.)\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20090716.86' name='86'>20090716.86<\/a><\/td><td>\nSigh, Twitter engineers treat developers like a bunch of twits. Twitter just made a sudden, unannounced,\n               and undocumented change to how they allow external applications like this plugin to connect to Twitter,\n               breaking every external application out there. If a plugin follows the Twitter documentation, it will not\n               work. I couldn't believe Twitter engineers could be so inexperienced or hostile (which?) the first time\n               they pulled a stunt like this, but again? This is ridiculous... are there kids running the shop over\n               there? If they do this again, I may just yank Twitter support from the plugins... it's not worth the\n               frustration. For the time being, this push should fix things.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20090701.84' name='84'>20090701.84<\/a><\/td><td>\n<p>Enhanced the one-click upgrade stuff quite a bit, now\n               detecting ahead of time when it will fail because the plugin is installed where Lightroom\n               can't write (if Lightroom can't write to it, it can't update itself). I\n               also added a progress bar, and now download in smaller chunks to avoid 'out\n               of memory' errors on the larger plugins. Do remember that this new functionality becomes\n               available <i>after<\/i> you upgrade to or past this version, when you then upgrade <i>with<\/i> it.<\/p>\n\n               <p>Fixed that during an upload of a single image, the progress-bar status didn't reflect when the\n               image was being uploaded (it said &#8220;rendering...&#8221; the whole time).<\/p>\n\n               <p>Added a defensive error check: try to detect some of the weird error messages that the OS returns\n               when a firewall blocks Lightroom from using the Internet. You'd be shocked to hear how much time I spend\n               telling people &#8220;check your firewall and enable an exception for Lightroom...&#8221;. Hopefully this'll stem\n               that stream.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20090616.83' name='83'>20090616.83<\/a><\/td><td>\nSigh, this upload-destination fiasco is a real pain. Maybe have it nailed down this time.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20090615.82' name='82'>20090615.82<\/a><\/td><td>\nSome people are still having images uploaded to the wrong album, and I'm starting to think\n               that it's a case of corrupt Lightroom preferences. I've looked at some logs and it seems to\n               be a case of &#8220;this can't possibly happen&#8221; happening. I've added something in this version that\n               kills some old information with prejudice.... if this doesn't take care of it, please send\n               a log again (via the &#8220;Send to Jeffrey&#8221; button in the upper-right of the plugin manager), but I\n               suspect my reply will be to ask you to blast your LR preferences file and start over.\n\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20090614.81' name='81'>20090614.81<\/a><\/td><td>\n<p>Sigh, it turns out that a few days ago, Twitter suddenly changed authentication methods in a\n               way that was guaranteed to break every strong-authentication application (such as this plugin).\n               <i>Sigh<\/i>.\n               This update handles the new authentication style, and includes better error reporting\n               for the next time they pull a stunt like this.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20090605.80' name='80'>20090605.80<\/a><\/td><td>\nTwo bug fixes... fixed progress bar during upload, and fixed an &#8220;Access to undefined global&#8221;\n               error that popped up when trying to clear uploaded-to-Zenfolio data via the Zenfolio-Extras menu.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20090605.79' name='79'>20090605.79<\/a><\/td><td>\n<p>Fixed the urls in Twitter tweets to be the public version of the url, not the private owner's version.<\/p>\n\n               <p>Added a couple of new custom metadata fields, &#8220;Zenfolio Upload Date&#8221;, and &#8220;Upload Time&#8221;. The former can\n                be used in the Library Grid Filter to sort\/select\/filter by the date you uploaded to Zenfolio.<\/p>\n\n                <p>Because the new custom fields mean a change to the database, the first time you load this new\n                version, Lightroom will pop up a dialog asking &#8220;Update catalog for plug-in?&#8221; to which you'll want\n                to answer yes (&#8220;Update&#8221;). Then a progress bar will show up and, if you have a lot of photos in your\n                catalog that had been uploaded to Zenfolio, will just sit there for potentially several minutes,\n                looking stuck. Just let it work. For my catalog with 48,000 photos, it took about 5 minutes.<\/p>\n                \n                <p>I'll add these to my <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/metadata-presets'\n                class='quiet'>Metadata-Viewer Preset Editor plugin<\/a> soon, but for those maintaining their own viewer\n                tagsets, these can be found at <tt>info.regex.lightroom.export.zenfolio2.uploadDate<\/tt> and\n                ...<tt>.uploadTime<\/tt>.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20090602.78' name='78'>20090602.78<\/a><\/td><td>\n<p>Well, here's something new: Twitter support. It may be a bit iffy, mostly because I don't use Twitter\n               myself, so perhaps I've missed something about the culture in which it's used, but I've added something\n               that allows you to send a tweet after a successful upload, with a mini template language that allows you\n               to include a photo url or destination-set url in the tweet.<\/p>\n\n               <p>The plugin uses Twitter's new strong secure authentication, so you don't even have to tell the plugin\n               your username or password. You authenticate\n               at Twitter and grant the plugin application permission to send tweets on your behalf.<\/p>\n\n               <p>A note to fellow developers, who will feel my pain: in order to get this strong-secure authentication\n               support working, I had to code up <a href='http:\/\/en.wikipedia.org\/wiki\/SHA_hash_functions#SHA-0_and_SHA-1'\n               class='quiet'>SHA-1 Secure Hash<\/a> computation from scratch, in pure Lua... a horrid language, I'll remind\n               you, that has absolutely no bitwise operations, or even integer support. No masks, no bitwise xors, no way\n               to test bits or shift words or any of that stuff. As I coded it, I felt as if I were chiseling NAND gates\n               from rough blocks of silicon.<\/p>\n\n               <p>I felt quite the achievement once I got it working, but only then realized that I also need to code\n               up my own <a href='http:\/\/en.wikipedia.org\/wiki\/HMAC-SHA1'>HMAC-SHA1<\/a> secure signature routine. It's\n               less involved than the original SHA-1 stuff, but again, filled with bytewise xors. Fun stuff, in a very\n               old-school way.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20090521.77' name='77'>20090521.77<\/a><\/td><td>\nSorry, another quick bugfix. It seems an internal change I made to try to get around a bug in Lightroom\n               wasn't quite ready for prime time. Hope it is now.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20090521.76' name='76'>20090521.76<\/a><\/td><td>\n<p>Fixed a &#8220;loadstring&#8221; error some users got.<\/p>\n\n               <p>You can now use the scroll wheel with the scrollable lists (such as for the gallery list)...\n               sort of. It works while the mouse is actually hovering over the scroll bar. That's the best I can figure\n               out so far... it's better than nothing if you're a scroll-wheel user.<\/p>\n\n               <p>Added some new <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template#filters'>token filters<\/a>\n               to the preset templates used for things like extra keywords and image captions: They're listed in the\n               docs, but include new items like <b>UCFirst<\/b> capitalize first character of the item, or <b>LC<\/b> to\n               lower-case the entire item. For example, if you want to include the city as an extra tag, but prefer\n               your tags to be all lower case, you might use <tt><b>{City:LC}<\/b><\/tt> in the extra-tag dialog.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20090519.75' name='75'>20090519.75<\/a><\/td><td>\nFixed an album-creation bug I introduced in a previous version.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20090518.74' name='74'>20090518.74<\/a><\/td><td>\nSomewhere along the way the plugin stopped updating the progress bar as it worked. I've restored it, so\n               now you can see it inch along as the uploads complete. I also included some stuff to communicate with\n               the next version of\n               <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/metadata-wrangler' class='quiet'>my Metadata Wrangler\n               plugin<\/a> help coordinate a canceled export. Unfortunately, if you cancel an export, Lightroom does not\n               tell filters like the Metadata Wrangler, so it blindly continues trying to process images that will not\n               show up. I've added some hooks here to help the next version of the Metadata Wrangler detect a canceled\n               export and not complain. It's imperfect, but I'm hoping it'll help.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20090510.73' name='73'>20090510.73<\/a><\/td><td>\nAdded a link in the Plugin Manager to the plugin's update-log RSS feed.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20090509.72' name='72'>20090509.72<\/a><\/td><td>\n<p>Added items to the title\/description presets: <b>SmugMugUrl<\/b>, <b>FlickrUrl<\/b>,\n               and <b>PicasawebUrl<\/b>. If you have previously uploaded this image to one of those sites with my plugin that\n               uploads to those sites, you can refer to that copy of the image by reference. Using the tag alone, e.g.\n               <b>{FlickrUrl}<\/b>, it becomes the raw url, or nothing if the image wasn't previously uploaded. Using\n               a <b>=<i>text<\/i><\/b> argument inside the tag turns it into a link with the given text, e.g.<\/p>\n<pre>\n    See the {FlickrUrl=photo at Flickr}.\n<\/pre>\n\n               <p>becomes:<\/p>\n<pre>\n    See the &lt;a href<i>='...'<\/i>&gt;photo at Flickr&lt;\/a&gt;.\n<\/pre>\n\n               <p>if the url is known. If the url is not known, the tag is replaced with nothingness,\n               so you might want to include an \"<b>|...<\/b>\" fallback section, such as:<\/p>\n\n<pre>\n    See the {FlickrUrl=photo at Flickr|<b>\"photo at &lt;a href='http:\/\/myname.flickr.com'&gt;my Flickr site&lt;\/a&gt;\"<\/b>}.\n<\/pre>\n\n               <p>The entire double-quoted part after the \"<b>|<\/b>\" is used when what comes before ends up being empty.\n               In this case, that double-quoted part is some text that includes a link to a Flickr user's home page\n               (you'd want to put yours, of course). So, if the url isn't known, the entry becomes<\/p>\n\n<pre>\n    See the photo at &lt;a href='http:\/\/myname.zenfolio.com'&gt;my Flickr site&lt;\/a&gt;.\n<\/pre>\n\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20090429.71' name='71'>20090429.71<\/a><\/td><td>\nFixed a bug that could potentially crashed the plugin while\n               editing caption\/title and auto-destination presets.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20090425.70' name='70'>20090425.70<\/a><\/td><td>\nTweaked how the plugin tries to update itself during the one-click upgrade process,\n               to hopefully get things working for those few Windows users that have never had it work. Crossing\n               fingers. We'll see.\n              \n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20090422.69' name='69'>20090422.69<\/a><\/td><td>\nFixed the caption preset stuff to disallow editing of the built-in caption presets,\n               and added a note to that effect in the preset editor. I also reset the 'None' preset to an empty\n               value, just in case it had gotten edited in a prior version of the plugin. Sorry it took so long to\n               get around to this fix.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20090422.68' name='68'>20090422.68<\/a><\/td><td>\nA few minor housekeeping updates: the 'enable enhanced debugging' checkbox in the\n               Plugin Manager now turns on logging of all web traffic. It'll be useful if I ask you to send a log,\n               but you probably want to leave it turned off during general use. I also added an icon to the\n               registration page to reinforce what plugin is being registered.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20090403.67' name='67'>20090403.67<\/a><\/td><td>\n<p>Corrected the photo-date related items in the <a\n               href='https:\/\/regex.info\/blog\/lightroom-goodies\/template'>preset templates<\/a> to properly use the\n               <b>dateTimeOriginal<\/b> metadata field, rather than the edit-time <b>dateTime<\/b> field. It now uses the\n               first of the following that it finds with a value: <b>dateTimeOriginal<\/b>, <b>dateTimeDigitized<\/b>, and\n               <b>dateTime<\/b>. This bug was reported to me long ago, but I let it slip through the cracks, sorry.<\/p>\n\n               <p>Added scroll-one-line arrows to the top and bottom of the scrollbars, to allow fine-grained\n               control of scrolling very long lists. (I've been programming for almost 30 years, but this\n               is the first time I've ever built a graphical scrolling system from scratch, so I may\n               be a bit slow on the uptake at times \ud83d\ude42 )<\/p>\n\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20090329.66' name='66'>20090329.66<\/a><\/td><td>\n<p>Turns out that there's a bug in Lightroom that causes login names to be rejected\n               if they can't actually fit in the input box that's presented when trying to log into\n               a second account. To get around this bug for the few who run into it, I've made the box as\n               wide as I can... I hope it's sufficient.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20090325.65' name='65'>20090325.65<\/a><\/td><td>\n<p>Big UI changes in some areas. I've cobbled together a way to add\n               what appears to be a real scrollbar, so I've replaced the kludgey\n               scrolling solution I had before. It seems to work okay.<\/p>\n\n               <p>I also changed the &#8220;Token Examples&#8221; dialog from paging to\n               use the new scroll stuff.<\/p>\n\n               <p>It now reports a proper error if you try to upload an image with a\n               copyright that's longer than Zenfolio's 100-character limit. I really should\n               do this in a pre-export scan so that it's issued right away (prior to LR rendering\n               all the images), but I doubt many will actually run into this, so I'll not bother\n               with it for the time being.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20090313.63' name='63'>20090313.63<\/a><\/td><td>\n<p>It seems that PayPal doesn't give everyone a &#8220;Unique\n               Transaction ID&#8221; in the registration confirmation mail; some people get a\n               &#8220;Receipt Number&#8221;. So, the registration dialog now accepts that as well.<\/p>\n\n               <p>I also removed the &#8220;Resolution value to record in\n               metadata&#8221; control in the Metadata Management section. That\n               had dated back to a time when the resolution setting was not\n               available in the standard &#8220;Image Sizing&#8221; section of the\n               export dialog, and I forgot to remove my custom one when the\n               standard setting appeared. It was sort of silly having two\n               controls for the same thing, sorry.<\/p>\n\n               <p>The resolution setting is still utterly meaningless\n               unless you use it to actually compute the pixel size of the\n               image (that is, if you have the &#8220;resize to&#8221; setting to\n               something other than &#8220;pixels&#8221;). Once the image has been\n               created, it's just a hint about how you intend it to be\n               rendered when printed, but it has exactly zero impact on\n               the quality that can or can't be achieved when printing.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20090310.62' name='62'>20090310.62<\/a><\/td><td>\nI've added a popup dialog that appears the first time you\n               install this plugin that explains how to activate it from the Export\n               Dialog. It's currently not very &#8220;discoverable&#8221; (in UI lingo),\n               and it leaves a lot of people befuddled. I hope this helps to stem the flow\n               of &#8220;I can't get it to work&#8221; messages I get each day. I've\n               begged Adobe to tweak the UI to make it more clear in the future.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20090305.61' name='61'>20090305.61<\/a><\/td><td>\nFixed a bug that caused the plugin to crash (and stay\n               crashed across Lightroom restarts, even!) when deleting the caption preset\n               that was actually chosen for the caption.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20090303.60' name='60'>20090303.60<\/a><\/td><td>\nIf there's an error calculating the automatic destination\n               for a photo, now actually reports that error instead of just crashing\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20090302.59' name='59'>20090302.59<\/a><\/td><td>\nFixed a bug that could cause the plugin to crash when using the <b>File &gt; Plugin Extras<\/b>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20090228.58' name='58'>20090228.58<\/a><\/td><td>\nUpdated the caption stuff to handle newlines and &lt;br&gt; better.\n               Also fixed a bug that caused a plugin crash if my server couldn't be reached during\n               registration.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20090224.57' name='57'>20090224.57<\/a><\/td><td>\n<p><b>NOTE: you may need to restart Lightroom after installing to this (or\n               a later) version from the previous (or an earlier) version. Please try a\n               restart if you get an error the first time you try to use the\n               plugin.<\/b><\/p>\n\n               <p>As per the ongoing discussion on my blog, with this version this plugin moves over to\n               a &#8220;donationware&#8221; model, in which the plugin remains free, but registration eventually becomes\n               required (and an eventual donation hoped for \ud83d\ude42 ).<\/p>\n\n               <p>For details, see <a class='quiet'\n               href='https:\/\/regex.info\/blog\/2009-02-15\/1148'><i>Lightroom Plugin\n               Development: Now With Added Encouragement<\/i><\/a>. (For info about what\n               drove this decision, see <a class='quiet'\n               href='https:\/\/regex.info\/blog\/2009-02-03\/1134'><i>What To Do When a Hobby\n               Becomes Work?<\/i><\/a>)<\/p>\n               \n               <p>The plugin no longer expires, and correspondingly, I will not pay much attention to reports\n               of bugs that have already been fixed, so please check your version and\n               the version history before submitting bugs or feature requests.<\/p>\n\n               <p>There was a lot of internal upheaval in the code, so I expect that some boo-boos my\n               surface. If something breaks for you with this version, please let me know, but\n               until I fix it, feel free to revert to <a\n               href='http:\/\/regex.info\/LightroomPlugins2\/releases\/zenfolio-20090129.56.zip'>the\n               previous version<\/a>.<\/p>\n\n               <p><b>Several fixes and enhancements in this release<\/b>: It can now track multiple Zenfolio\n               logins, and you can easily switch between and among them. There have been a lot of UI tweaks\n               to make things look more natural (but Lightroom's plugin infrastructure still places great\n               restrictions on what can be done, so it's not like it's smoothly polished yet). It now has\n               more robust error reporting in the face of network problems.\n               Also, caption handling has been fixed... it use to break when there were ampersands in the caption.<\/p>\n\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20090129.56' name='56'>20090129.56<\/a><\/td><td>\nSmall housekeeping update for the new locales supported by Lightroom 2.3.\n               Added more info to the debugging log when an export operation begins, to help diagnose any\n               subsequent problems with the export.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20090126.55' name='55'>20090126.55<\/a><\/td><td>\nThe new scrollable-list stuff didn't deal with ampersands very well... things should be better now. Also added tooltips to the list items so that the full text can be read even if the display is cut short, although ampersands may appear in duplicate (or quadruplicate, depending on the OS)... it just wasn't worth the effort to get ampersands right in the tooltip.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20090119.54' name='54'>20090119.54<\/a><\/td><td>\n<p>Okay, so I spent the entire weekend working on my own scrollable-list control from scratch, because the built-in popup menu is just not very easy to work with when one has a lot of galleries. I didn't have much to work with, and the result is a bit wonky, but it's <i>much<\/i> more usable when the list is long, so I'm throwing it out there. If you don't have a long list of export destinations, you can revert back to the original via the &#8220;configure list appearance&#8221; button. With that button you can also change how much of the list is shown at once, to suit your personal preference.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20090116.53' name='53'>20090116.53<\/a><\/td><td>\nIt turns out that the automatic upgrade stuff doesn't work if the plugin folder has been renamed from its original. That should generally not happen, but it's possible, so the plugin now checks its own location reports the issue to the user if it finds it.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20090115.52' name='52'>20090115.52<\/a><\/td><td>\nAdded more debugging-log stuff to the 'Upgrade Now' button action, to try to understand why it doesn't work for some people.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20090115.51' name='51'>20090115.51<\/a><\/td><td>\nAdded a 'click here to change the export destination' note to the masthead image, because some new users are confused how to change export destinations.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20090110.50' name='50'>20090110.50<\/a><\/td><td>\nAdded a checkbox in the Plugin Manager to turn on enhanced debugging (more stuff in the plugin's debugging log), and added a button in the same place that sends your log to me. Particularly for &#8220;the upgrade button doesn't work&#8221; and &#8220;error while uploading&#8221; type issues, this should be useful for debugging.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20081228.49' name='49'>20081228.49<\/a><\/td><td>\nMy preset dialog (for caption presets) was a bit wonky and didn't update itself when a preset was added. Fixed that. Also, in the export dialog proper, the example text next to the preset dropdown didn't auto-expand as the preset was changed. Fixed that, too.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20081224.48' name='48'>20081224.48<\/a><\/td><td>\nThe &#8220;Extras&#8221; item in the File menu had stopped working. Works now.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20081223.47' name='47'>20081223.47<\/a><\/td><td>\nBumping back the expiration date.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20081208.46' name='46'>20081208.46<\/a><\/td><td>\nFixed a problem that sometimes caused errors during login\/authentication, or after logging out.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20081204.45' name='45'>20081204.45<\/a><\/td><td>\nTry to work around a fairly rare Lightroom bug that sometimes causes large exports to fail with the note <i>Whoa, exported image doesn't exist after waitForRender<\/i> by pausing for a few seconds to see whether the image shows up. If not, then you still get the error and the export fails.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20081127.44' name='44'>20081127.44<\/a><\/td><td>\nThe counting of previous uploads (for the All\/Update\/New of the Upload Destination section) was not working right.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20081125.43' name='43'>20081125.43<\/a><\/td><td>\nAnother fix for a bug that had disabled plugin presets (for captions, etc.)\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20081124.42' name='42'>20081124.42<\/a><\/td><td>\nPerhaps fixed a problem whereby the &#8220;Upgrade Now&#8221; button didn't work for some Windows users. We'll see whether it works when those users upgrade from this version to whatever version is next.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20081123.41' name='41'>20081123.41<\/a><\/td><td>\nFixed a plugin crash when using the plugin's built-in preset system.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20081122.40' name='40'>20081122.40<\/a><\/td><td>\nNo problems from the upheaval recently, so pushing back the expiration a bit.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20081117.39' name='39'>20081117.39<\/a><\/td><td>\nOops, wouldn't let you log in \/ authenticate if you weren't already. Doh. Fixed.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20081117.38' name='38'>20081117.38<\/a><\/td><td>\nNo new functionality in this version, but a huge upheaval in the underlying code to repair an unfortunate design choice I made early on\n               in the development that had limiting consequences I'd not foreseen. There are likely bugs introduced in this version, and as such, it\n               has a short expiration date to encourage updates as those bugs are reported and fixed. If you do run into an error, please send (via <a\n               href='mailto:jfriedl@yahoo.com'>email<\/a>) the log referenced in the upper-right of the Plugin Manager. Thanks.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20081113.37' name='37'>20081113.37<\/a><\/td><td>\nFixed yet another list-of-upload-destinations bug. There are sure a lot of edge cases here.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20081111.36' name='36'>20081111.36<\/a><\/td><td>\nFixed a crash that happened sometimes when there are not yet any preexisting destinations at Zenfolio.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20081104.35' name='35'>20081104.35<\/a><\/td><td>\nPerhaps squelch a spurious error dialog\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20081103.34' name='34'>20081103.34<\/a><\/td><td>\nI don't know what's causing the slew of networking problems that have been reported, but I've gone ahead and added a retry mechanism. It'll retry operations that failed due to network problems indefinitely, but you can cancel out of the retrys if you like. If the problems are some kind of flakiness on the machine (somehow introduced in LR2.1???) this may allow operations to complete.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20081031.33' name='33'>20081031.33<\/a><\/td><td>\nNow works properly with the shadow GPS data maintained by my <a href=\"https:\/\/regex.info\/blog\/lightroom-goodies\/gps\/\">geoencoding plugin<\/a>.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20081024.32' name='32'>20081024.32<\/a><\/td><td>\nAdded an option to not add Lightroom keywords as metadata when uploading images. This allows you to not send any keywords if you also have them stripped from the image itself, such as when enabling the &#8220;Minimize Embedded Metadata&#8221; option, or when stripping keywords with my <a href=\"https:\/\/regex.info\/blog\/lightroom-goodies\/metadata-wrangler\/\">Metadata Wrangler<\/a>.  This applies only to keywords in the Lightroom library that are marked for export; those not marked for export are never sent. (Also related, recall that due to a Lightroom bug, images in a catalog upgraded from Lightroom 1.x with Lightroom 2.0 lost the ability to export keywords until <a href=\"http:\/\/kb.adobe.com\/selfservice\/viewContent.do?externalId=kb405074&sliceId=2\">a fix<\/a> is applied.)\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20081022.31' name='31'>20081022.31<\/a><\/td><td>\nAddressed (and perhaps even fixed) a bug introduced in the previous build.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20081021.30' name='30'>20081021.30<\/a><\/td><td>\nSmall update so that a stuck background version check does not disable the plugin.\n               Added the ability to put the &#8220;select at time of export&#8221; item at the top of the destination list, as had been requested a few times.\n               Added some items to the <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template\/'>template language<\/a> that had inexplicably been missing: {HH}, {MIN}, {hh}, {min}, {ss}.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20081015.29' name='29'>20081015.29<\/a><\/td><td>\nInternal change to the user-agent string that the plugin sends when uploading, to better conform to web standards.\n               Added back the ability to set the print size via DPI and inches\/cm. I think it's more confusing than anything (because it has nothing to do with what size something gets printed at unless you take care to set the printer DPI the same), but someone asked for it and I should really leave it up to the user.\n               The plugin now allows you to use any color space registered on your computer when generating images to upload. I don't think this will be useful for very many people, but perhaps it might be a benefit when combined with some printing services(?)\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20080924.28' name='28'>20080924.28<\/a><\/td><td>\n<p>I created a &#8220;Metadata Management&#8221; section in the dialog, and moved some things into that from other sections.<\/p>\n               <p>Fixed a race condition that sometimes caused the export destination to not appear in the synopsis of a closed &#8220;Upload Destination&#8221; dialog section.<\/p>\n               <p>Also fixed an issue whereby doing a &#8220;replace&#8221; would abort when the image previously uploaded to Zenfolio was no longer present at Zenfolio.\n               Now, if the image isn't there anymore, the &#8220;replace&#8221; turns into a simple upload. (A &#8220;replace&#8221; goes to whatever the gallery the original was in;\n               but a replace that turns into an upload goes to the export's destination gallery.)<\/p>\n               <p>Moved the items in the &#8220;Upload Management&#8221; section into the &#8220;Upload Destination&#8221; section, since they are really quite related.<\/p>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20080923.27' name='27'>20080923.27<\/a><\/td><td>\nSigh, just realized that the &#8220;check for new version&#8221; stuff <i>did<\/i> break in 2.1. Totally my fault, sorry. Fixed.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20080921.26' name='26'>20080921.26<\/a><\/td><td>\nOops, the ability to use my template tokens in the 'extra keyword\/tags' area, that I added last week, didn't actually recompute the tags on a per-image basis, applying the tags computed for the first image to all the others. That's now fixed, and tags are recomputed with each image.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20080920.25' name='25'>20080920.25<\/a><\/td><td>\nEnhanced the <tt>{Rating}<\/tt> token to allow <tt>{Rating=*}<\/tt> to create \"*****\" through \"\". You can put most anything instead of the asterisk, so you might consider <tt class=\"nobr\">{Rating=great&nbsp;}<\/tt> to end up with \"great great great\". Since these forms result in nothing for an unrated photo, you can use the \"|\" pipe to provide a default &#8220;when empty&#8221; value, such as &#8220;rating&#8221;:   <tt>{Rating=*|\"unrated\"}<\/tt>\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20080918.24' name='24'>20080918.24<\/a><\/td><td>\nAdded the ability to use template tokens like {Filename} in the &#8220;extra tags&#8221; input box.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20080916.23' name='23'>20080916.23<\/a><\/td><td>\nUpdate an error message to reflect an apparent bug in LR that causes LR to hand off a file to my plugin for upload before the file is actually available. This seems to happen when using LR\/Mogrify or other filters.\n               Updated the url shown in the &#8220;status&#8221; section of the plugin manager\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20080916.22' name='22'>20080916.22<\/a><\/td><td>\n<i>Finally<\/i> have the upgrade button working on both Win and Mac. Since I <a href='https:\/\/regex.info\/blog\/2008-09-09\/929'>returned home<\/a> last week, I now have access to both kinds of machine for the first time since LR2 was released. I can sum up the 5 hours I spent wrestling with the unzip code in three word: <b>I hate Windows<\/b>. Microsoft owes me five hours of my life back.   Note that you may have to install this one by hand in order to get the newly working upgrade button... it's the <i>next<\/i> upgrade that should be easy-as-click.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20080914.21' name='21'>20080914.21<\/a><\/td><td>\nAdded a few more descriptive tooltips to the example-token dialog\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20080914.20' name='20'>20080914.20<\/a><\/td><td>\nOops, fixed a boo-boo introduced in the previous version.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20080914.19' name='19'>20080914.19<\/a><\/td><td>\nRemember (again) the upload-destination across exports. It used to work, and I'm not sure when it stopped working, but it must have been really annoying while it was broken, sorry.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20080914.18' name='18'>20080914.18<\/a><\/td><td>\nFixed tokens &#8220;OriginalWidth&#8221; and &#8220;OriginalHeight&#8221; in templates.\n               Added a bunch of new <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template\/'>template tokens<\/a> and a\n               new token filter. Added a token-examples button, which brings up a dialog listing all tokens and their value for\n               an example photo (the first photo in the export list).\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20080905.17' name='17'>20080905.17<\/a><\/td><td>\nFixed an &#8220;undefined global: DestinationSynopsis&#8221; error that could happen when using a preset with a &#8220;select at export time&#8221; upload-destination setting\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20080831.16' name='16'>20080831.16<\/a><\/td><td>\nHandle a race condition in the upgrade logic that sometimes results in a superfluous &#8220;You have version XYZ, but version XYZ is now available&#8221; message\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20080829.15' name='15'>20080829.15<\/a><\/td><td>\nAdded a bunch of new items to the <a href=\"https:\/\/regex.info\/blog\/lightroom-goodies\/template\/\">template language<\/a>.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20080829.14' name='14'>20080829.14<\/a><\/td><td>\nOops, left some debugging cruft that results in an &#8220;empty&#8221; dialog if the logged-in-user has no galleries or the like. Fixed.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20080828.13' name='13'>20080828.13<\/a><\/td><td>\nMinor tweaks\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20080828.12' name='12'>20080828.12<\/a><\/td><td>\nA few more tweaks to report a failed upgrade attempt a bit more clearly\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20080828.11' name='11'>20080828.11<\/a><\/td><td>\nWhoo-hoo, finally figured out the &#8220;assert&#8221; problem that some people without galleries were having.\n\n               When upgrading, ignore a status of &#8220;50&#8221; (which means &#8220;out of\n               disk space&#8221;) from the unzip the plugin performs. It seems Windows often\n               reports this status even when there's plenty of disk space left, so until I\n               can understand it better, I'll just ignore that code.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20080827.10' name='10'>20080827.10<\/a><\/td><td>\nFixed the Caption {Filetype} token (was broken for DNGs).\n               Made some Layout tweaks in my preset dialogs.\n               Added titles to the tools sections (were missing on OSX)\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20080817.9' name='9'>20080817.9<\/a><\/td><td>\nLots of little tweaks as I cleaned things up. Added a bunch of stuff to the Plugin Manager, including\n              a &#8220;What's New&#8221; button that shows up next to the &#8220;Upgrade Now&#8221; button when a new version is available.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20080814.8' name='8'>20080814.8<\/a><\/td><td>\nFixed infinite cycle of 'assert' messages one might get in odd situations\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20080812.7' name='7'>20080812.7<\/a><\/td><td>\nFixes (I hope) a &#8220;bad argument #1 to '?' (table expected, got nil)&#8221; error\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20080811.6' name='6'>20080811.6<\/a><\/td><td>\nMoved and renamed the debugging logs to a temporary folder, and added log Show\/Delete buttons to the plugin's custom section of the Plugin Manager.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20080806.5' name='5'>20080806.5<\/a><\/td><td>\nFixed {State} and {Rating} in <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/template\/'>preset templates<\/a>.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20080805.4' name='4'>20080805.4<\/a><\/td><td>\nOops, the Windows versions had lost the ability to upgrade themselves. Once this version is installed manually, subsequent versions should be able to upgrade <a href='https:\/\/regex.info\/blog\/lightroom-goodies\/plugin-installation\/#upgrade'>as discussed here<\/a>.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20080804.3' name='3'>20080804.3<\/a><\/td><td>\nFixed &#8220;Access to undefined global: LrError&#8221; error that happens when trying to report a login-related problem.\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20080804.2' name='2'>20080804.2<\/a><\/td><td>\nFixed a couple of internal errors related to the &#8220;choose destination at time of export&#8221; feature\n\n<\/td><\/tr><\/table>\n<table class='h'><tr valign='baseline'><td><a id='20080729.1' name='1'>20080729.1<\/a><\/td><td>\nInitial public release. (The version of this plugin for Lr1 is <a href='https:\/\/regex.info\/blog\/photo-tech\/lightroom1-zenfolio'>here<\/a>; its initial release was &#8220;20071121.1&#8221;)\n\n\n<\/td><\/tr><\/table>\n\n<\/div>\n\n\n\n","protected":false},"excerpt":{"rendered":"<p>This plugin for Adobe Lightroom Classic allows you to export images from Lightroom directly to your Classic Zenfolio account.<\/p> <p style='background-color:black; color:white'>Note: this plugin is not compatible with Zenfolio accounts on their <b>ProSuite<\/b>, <b>PortfolioPlus<\/b>, and <b>Portfolio<\/b> plans. This plugin is compatible only with \"Classic Zenfolio\" plans.<\/p> <p>This plugin works in Lightroom Classic, and older versions as far back as Lightroom 3, though some features depend on the version of Lightroom.<\/p> <p>The same download works for both Windows and Mac. See the box to the upper right for the download link (in orange) and installation instructions.<\/p> <p>Please see the FAQ and [...]","protected":false},"author":1,"featured_media":0,"parent":864,"menu_order":0,"comment_status":"open","ping_status":"open","template":"","meta":{"footnotes":""},"_links":{"self":[{"href":"https:\/\/regex.info\/blog\/wp-json\/wp\/v2\/pages\/888"}],"collection":[{"href":"https:\/\/regex.info\/blog\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/regex.info\/blog\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/regex.info\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/regex.info\/blog\/wp-json\/wp\/v2\/comments?post=888"}],"version-history":[{"count":0,"href":"https:\/\/regex.info\/blog\/wp-json\/wp\/v2\/pages\/888\/revisions"}],"up":[{"embeddable":true,"href":"https:\/\/regex.info\/blog\/wp-json\/wp\/v2\/pages\/864"}],"wp:attachment":[{"href":"https:\/\/regex.info\/blog\/wp-json\/wp\/v2\/media?parent=888"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}