Support community for TTG plugins and products.
NOTICE
The Turning Gate's Community has moved to a new home, at https://discourse.theturninggate.net.
This forum is now closed, and exists here as a read-only archive.
You are not logged in.
After a (major) LR hiccup, I'm having to rebuild my catalog starting from a catalog backup that's not recent. The CE4 published collections in that backup album are no longer consistent with the albums currently on my CE4 website. I can't figure out how to make them consistent, so would appreciate help. In particular:
(1) How can I delete an album that's on the server but doesn't correspond to a published LR collection? (I had put up the album after the date of the backup catalog I'm starting from.)
(2) How can I create a published collection in LR that corresponds to an existing album on the server. (I need to take control of server albums that I published.)
Note that if (2) is straightforward, I can take that route to accomplish (1). '
Thanks in advance!
js
Offline
1) You'll need to delete the album from the database. Here's how: http://ttg-tips-and-tricks.barbeephoto. … -database/
2) Are the publisher collections still intact in Lightroom? I think you should just have to reconnect Publisher to the top-level gallery using your API Key.
If you're asking how to connect Publisher to an existing album and then have that album's images reflected in a new Publisher collection, then that's not possible.
You'd probably need to just rebuild the album in Publisher.
Rod
Just a user with way too much time on his hands.
www.rodbarbee.com
ttg-tips.com, Backlight 2/3 test site
Offline
Hi Rod Barbee -
Thanks for responding. Much appreciate the info.
js
Offline
Well, owing to what I now realize was serious pilot error, I made things worse - I had been experimenting with new and existing album sets, and did something that corrupted the online structures in some way.
I have a backup LR catalog that still has all of the publisher collections, so I'm wondering if I can delete all of the online albums (e.g., via the method Rod barbee pointed me to), and then just republish everything. Is that possible, and what's the right way to republish everything?
Some additional background, in case it affects how I should go about republishing from scratch:
The published website is http://www.jshorephoto.com/. The home page still works, but very little else does. The Galleries page (http://www.jshorephoto.com/galleries.php )used to have three galleries (album sets) but is now empty - not surprising because I know I screwed up the album sets (I think it started when I ignored a name collision). The album set called "performance" still exists and can be seen via the direct link http://www.jshorephoto.com/galleries/performance, but the links to individual albums (e.g. http://www.jshorephoto.com/galleries/pe … en-anthem/ ) produce a long error message: "Function name must be a string|#0....". Similar errors are displayed if you click on the Contact or Search link.
I include the details in the paragraph above in case they're relevant to my question about deleting all the online collections; i.e., I doubt it's enough information for someone to diagnose and suggest a fix for the underlying problem.
js
Offline
Hi js, the error you're seeing about "Function name must be a string" is unrelated to the Publisher issues you may be having.
What's happened there is that one of the CE4 files, ttg-be/framework/lib/Parsedown.php is no longer compatible with the version of PHP your site is currently running.
The fix is to download TTG BE again, and replace that single file on your server. Have a go at that, and if the problem isn't fixed, please post back so that I can look further into it.
Offline
Thanks so much, Ben. Indeed, I recall a notice from my ISP that PHP would be upgraded. I should have thought more carefully before ignoring that! Bad luck that it apparently happened while I've been struggling on the LR end - otherwise I would have known the problem was likely a server issue. Sure hope I haven't messed up the LR end.
Thanks again; much appreciated.
Offline
Ben - sorry to bother you, but I can't seem to download ttg be.
I have the original order email (order 25897, by [redacted]), but the download link is no longer valid. I also don't see relevant links in the ttg blog sidebar. I do have a customer page that I claimed when I bought Backlight (not yet installed!), but it was ordered via a different email address ([redacted]), and it doesn't show the ce4 order. If try to claim a new customer page (for [redacted]) via the resend-order method, the system doesn't seem to recognize [redacted], and besides I already have the order email and the download link doesn't work.
I've poked around without success. Could you please point me in the right direction?
best,
js
UPDATE: I also sent a message via the support form on the ttg website, so I should get some help soon. I'll update again when resolved.
js
Last edited by johnshorephoto (2018-03-03 11:21:23)
Offline
John, please forward the original order email, with a note referencing this conversation, to my email address and I'll get you sorted out. That's matthew at theturninggate dot net.
I've redacted your email addresses in the previous message to prevent harvesting by spam bots.
Offline
Will do. Thanks so much, Matthew. And thanks for the redactions! I should never have written it that way - too focused on my issue, I guess.
js
Offline
Hi js, the error you're seeing about "Function name must be a string" is unrelated to the Publisher issues you may be having.
What's happened there is that one of the CE4 files, ttg-be/framework/lib/Parsedown.php is no longer compatible with the version of PHP your site is currently running.
The fix is to download TTG BE again, and replace that single file on your server. Have a go at that, and if the problem isn't fixed, please post back so that I can look further into it.
That was it! Thanks! Worked like a charm, except for two loose ends I haven't figured out: (a) I'm still getting the "Function name must be a string" error on the Contact page, and (b) The About page comes up empty. It was so long ago that I set up the initial site that I don't remember how those two pages get populated, and so far haven't been able to pinpoint the relevant bits of the ce4 documentation.
js
Offline
Also, like the About page, the Galleries page is also coming up empty, even after a I create and publish a new album set.
js
Offline
I'm now wondering if there's another problem besides the PHP 7 compatibility. Updating Parsedown.php rejuvenated most of my site, but the problems mentioned in a previous post remained. Since i hadn't updated ce4 in a year or so, I went ahead and did full upgrades, so ttg-be, Publisher, and Pages are now all at 2.0.5. I also regenerated contact.php, about.php, etc.
Nevertheless, I still have these issues with http://www.jshorephoto.com/ :
1. Clicking Galleries results in an empty page; i.e., no thumbnails for my album sets, although the individual galleries are in fact there (e.g., http://www.jshorephoto.com/galleries/performance)
2. Clicking on About results in an empty page
3. Clicking on Contact throws an error just like other ones that existed before I updated Parsedown.php:
"Function name must be a string|#0 /services15/webpages/util/f/v/fv1lu4pjc0j1.site.aplus.net/jshorephoto.com/public/lib/php/Parsedown.php(931): Parsedown->element(Array) #1 ....."
Any ideas for fixing these would be greatly appreciated.
js
Offline
looking at those pages' source code, the entire page isn't loading. There's a lot of code missing.
Did you try re-exporting and re-uploading Pages?
These are the final versions of CE-4:
TTG-BE: 2.0.5a
Autoindex: 7.0.8
Gallery: 6.1.10
Pages: 7.0.15
Publisher: 2.3.3
I'm not sure if you need those latest version to properly work with the final version of ttg-be.
Rod
Just a user with way too much time on his hands.
www.rodbarbee.com
ttg-tips.com, Backlight 2/3 test site
Offline
Thanks Rod.
I did try re-exporting and re-uploading pages - made no difference. I'll double check which versions I'm running, upgrade as needed, and try refreshing pages again.
js
Offline
No joy. But a little more information.
Some of the lrwebengines were indeed out of date, so I updated them and checked that I had updated everything per your list. I then restarted LR and re-exported/re-uploaded pages. Before I did that, I verified that galleries, about, and contact all previewed properly in LR (i.e., with all my custom text, etc.) I also looked at the php files for Galleries/About/Contact - I don't understand the code, but it looked like they reflected my customizations (i.e., the strings were there). I gather that these php scripts generate the source html for the corresponding pages. I noticed a few things about the resulting displayed pages:
The html sources for Galleries and About have exactly 209 lines. (I see what you mean about missing code.)
Contact has 214 lines, but lines 209-214 contain exactly the error message displayed on the contact page. The error message in total is:
Function name must be a string|#0 /services15/webpages/util/f/v/fv1lu4pjc0j1.site.aplus.net/jshorephoto.com/public/lib/php/Parsedown.php(931): Parsedown->element(Array)
#1 /services15/webpages/util/f/v/fv1lu4pjc0j1.site.aplus.net/jshorephoto.com/public/lib/php/Parsedown.php(257): Parsedown->elements(Array)
#2 /services15/webpages/util/f/v/fv1lu4pjc0j1.site.aplus.net/jshorephoto.com/public/lib/php/Parsedown.php(48): Parsedown->lines(Array)
#3 /services15/webpages/util/f/v/fv1lu4pjc0j1.site.aplus.net/jshorephoto.com/public/contact.php(430): Parsedown->text('## Contact\n\nIf ...')
#4 /services15/webpages/util/f/v/fv1lu4pjc0j1.site.aplus.net/jshorephoto.com/public/contact.php(434): includeFragment('contact-main')
#5 {main}|URL: /contact.php
All three pages correctly show the fixed items - banner and navigation - i.e., they show as specified by pages.
None of the three pages show their corresponding customizations that were specified by pages (contact info, about info). And, in all three cases, their html source stops at the same place (line 209). This probably means that the hiccups occur when the scripts hit the point of generating html for the customizations. This is consistent with the error message being displayed on the Contacts page. It's odd that neither Galleries nor About display that error, but perhaps that's another clue.
Finally, it can't be a coincidence that the error seems to be triggered by a call to the notorious Parsedown.php. I double checked, and I had uploaded the new version (1540 lines). Note that in the error message (#3) there's this string: "...contact.php(430): Parsedown->text('## Contact\n\nIf ...')", which indicates processing of my MarkDown-customized text. That's consistent with the conclusion that the errors are being thrown when the scripts start processing the customizations.
Back to contact.php, here are lines 429 and 430:
429: if ($markdown)
430: echo $Parsedown->text($contents);
So it seems clear that the error is being thrown by the new version of parsedown.php, and it looks just like the errors that the new version was supposed to fix. Indeed, numerous other such errors were fixed when I updated parsedown, but not this one. And, just to reiterate something that I mentioned earlier, everything worked properly until my ISP upgraded PHP.
I hope that the above has enough clues for you to suggest what might be going on!
js
Last edited by johnshorephoto (2018-03-04 12:21:53)
Offline
I remember something similar way back when in the CE4 days, but I don’t remember specifics.
You could try searching for “parsedown” in the CE 4 forums or wait and see if Ben or Matt can remember what the solution was.
Rod
Just a user with way too much time on his hands.
www.rodbarbee.com
ttg-tips.com, Backlight 2/3 test site
Offline
I searched for parsedown earlier and didn't turn up anything beyond PHP 7 needs the new version of parsedown.
I believe I can ask my ISP to downgrade me to PHP 5.6. Now that I've completely upgraded CE4, have I introduced an incompatibility wrt 5.6? That is, if they switch me to PHP 5.6, should my site still work (hopefully without the error)?
Also, if they downgrade me to PHP 5.6, would I need to do anything on my end - e.g., would I need to publish certain things before it worked again?
js
Offline
If you go to php 5.6 you shouldn’t have to do anything and it shouldn’t mess up your site.
Rod
Just a user with way too much time on his hands.
www.rodbarbee.com
ttg-tips.com, Backlight 2/3 test site
Offline
It looks like there are two copies of Parsedown that need replacing. The one I first mentioned, at ttg-be/framework/lib/Parsedown.php, and a second copy at lib/php/Parsedown.php. Can you try updating the latter?
Offline
It looks like there are two copies of Parsedown that need replacing. The one I first mentioned, at ttg-be/framework/lib/Parsedown.php, and a second copy at lib/php/Parsedown.php. Can you try updating the latter?
Ben, I'm pretty sure that's it! The second one (lib/php/Parsedown.php) is uploaded by pages, and it comes from CE4-Pages.lrwebengine\lib\resources\php. But (please check) that version of Parsedown.php (in CE4-Pages-7015) is the old one - i.e., the version with 1403 lines that predates the PHP 7 fix.
It makes sense that this is the Parsedown that's called when rendering my pages, which explains the bad behavior I'm seeing.
I said "pretty sure" because last night my ISP did downgrade me to PHP 5.6, upon which everything worked properly as before! And, as Rod predicted, it works properly even though in the meantime I upgraded all CE4 components to the latest.
I went ahead and replaced (lib/php/Parsedown.php) with the new version, and the site still works under 5.6. It took the ISP a day to make the change, so right now I can't verify that the updated Parsedown.php solves my PHP 7 problem. But I can have them switch me back, if only to make sure that the analysis above is correct.
Assuming the site works under 7, should I stay there, or do you think it would be safer to run under 5.6? I think 5.6 goes away in 2019, but by then I should have switched to Backlight. That in turn raises the question: is it better to transition to Backlight while running 5.6 or while running 7?
Ben/Rod - thanks so much for the responsive, informed, and helpful support.
best,
js
Offline