Exhibit Builder bug?

I have a very specific issue. Regarding exhibits created prior to v. 2.0 (which have been upgraded via the 2.0.1 script), I'm noticing some odd behavior. I'll call these legacy exhibits.

If I take a legacy exhibit and change around the order of the pages, two things happen:

  • all of the images cease to appear in the public theme, but the text and titles stay the same (and the admin view still shows the images). This only happens when using a lightly edited version of the ExhibitBuilder/views/exhibits/show.php template (in my active theme dir).
  • the exhibit_builder_page_summary function ceases to function, returning empty results.
  • If I take the same content and create a new (non-legacy) exhibit, neither of these bugs occur.

    UPDATE: Actually, I just looked again and it seems the pages have all been deleted (or have otherwise disappeared) from the legacy exhibit (verified in admin view, but not in DB). Not sure when or why this happened. I'm sure I didn't accidentally delete 14 pages one by one; likewise, I doubt my front-end fiddling would have caused this. They were just there and now they're gone.*

    *non-production site, by the way

So you're saying this is a problem you see only when editing an old exhibit after an upgrade?

Well, I guess I'm saying it happened to this one old exhibit after an upgrade.

Here's everything I can tell you:

This was an exhibit that was upgraded (as in running the ExhibitBuilder upgrade script) first with ExhibitBuilder 2.0 and was affected by the "duplicate slugs" bug (or something similar in that release). It was upgraded again when I grabbed the working master from GitHub right around this forum post: http://omeka.org/forums/topic/exhibit-builder-20-upgrade-script-is-not-functional#post-20987. At this point I moved around some pages. It was upgraded yet again when I downloaded ExhibitBuilder 2.0.1 this morning. Again, I moved the pages, this time adding two more and nesting the new ones.

The second error described above (re: exhibit_builder_page_summary) was probably related to the disappearing content, which I hadn't yet noticed.

But the first one was confusing to me because some content was appearing (e.g. page titles) while the images were not. At first I thought I'd just screwed up the $exhibitPage object while fiddling with a custom navigation function (thus, the problem was only happening with my custom exhibit template), but I would think 1) messing up the exhibit page object would affect all the content on the page and 2) would not be specific to only "legacy" exhibits.

In any case, the more disturbing issue is the disappearing exhibit pages, which unlike the other issue described above I am almost completely certain I couldn't have caused myself, unintentionally.

I just tried a fresh upgrade to see if I could reproduce the problem you're describing and I couldn't.

Moving pages around and nesting/re-nesting them isn't causing any problems as far as I can see.

Can you see what the exhibit_pages table in your database looks like? It's possible that you're seeing some problem with setting the page parents or the exhibit the page belongs to. That would have the effect of making the page disappear while not actually deleting it (though I can't get that to happen in my testing either).

Looking at the database, they appear to be gone completely. Again, I can't think of any way I could have deleted all the pages inadvertently. Really strange.

We've finally figured this out, thanks to a bug report from another user. Deleting one exhibit resulted in deleting all pages in all exhibits.

This bug is fixed in version 2.0.2 of the Exhibit Builder, released today.

I have the version 2.0.1 of Exhibit Builder and omeka 2.0.1..
Change to version 2.0.2 or not?


Yes, you should upgrade to the newest Exhibit Builder, version 2.0.2.

Ok- so is there no way to retrieve all those pages that were deleted when one exhibit was deleted?

I would point out that this means that due to the bug, I have just lost an entire quarter's worth of pages made by students because I deleted one old exhibit. How unfortunate.

We understand, and apologize for the data loss. Unfortunately, there is not a way to retrieve the data unless you have a backup available. It might be worth checking with your hosting company or system administrator to see if they have backups of the database.