Re-arranging Pages in Exhibits

We're using Omeka V 2.0.3, and we've noticed that we can no longer re-order pages in exhibits. Omeka notes that "To reorder pages, click and drag the page up or down to the preferred location." We can no longer click or drag pages. We've been able to do this in the past, and we've tried the drag-and-click on various computers (and we've tried Chrome and Safari), and it's not working currently. Any help would be appreciated: thanks!

When you say "in the past", are there other changes, like an upgrade of Omeka or Exhibit Builder?

And, what version of Exhibit Builder are you using?

Hey Patrick, figured I would jump in on this thread. We are using Exhibit Builder 2.0.3. We are still using Omeka V 2.0.3. We have not upgraded to 2.0.4. yet. When we say "in the past" we mean as recently as a week or two ago. We haven't been manipulating or changing the Exhibit Builder plugin much at all--as far as I know, the only change we have made was changing 'GET' to 'POST' as you suggested to fix the item search within the exhibit builder. In addition to not being able to drag the pages to reorder them, there also seems to be a problem with deleting unwanted pages within these exhibits. When we click the "X" to delete, it just jumps to the top of the Edit Exhibit page. When you scroll back down to the pages, the page has not been deleted.

I hope this clarifies what you are asking and let me know if you have any more questions.

That helps greatly. This looks like a javascript problem, either with it turned off in the browser or some error happening. If you fire up the debugging console in Firefox or Chrome, it might tell you about javascript warnings there.

Hey, sorry for the delay in response. So after running the debugging, it says the problem is in the exhibit.js file in the ExhibitBuilder plugin (ExhibitBuilder/views/admin/javascripts/exhibit.js). It says this: "Uncaught TypeError: Object [object Object] has no method 'nestedSortable" referring to line 263 in the above file. Line 262-263 of this reads:

Omeka.ExhibitBuilder.enableSorting = function () {
    jQuery('.sortable').nestedSortable({

Any ideas?

First thing I'd try then is to take a look at the page source, in the head element, and look for this line:

<script src="http://localhost/Omeka/admin/themes/default/javascripts/vendor/jquery.nestedSortable.js" type="text/javascript"></script>

If it isn't there, then somehow the file isn't getting loaded.

It does appear on the page source in the head element, so it is loading file.

Here is the full error we are getting:

Uncaught TypeError: Object [object Object] has no method
'nestedSortable' exhibits.js:263
1. Omeka.ExhibitBuilder.enableSortingexhibits.js:263
2. Omeka.runReadyCallbacksglobals.js:105
3. (anonymous function)14:301
4. firejquery-1.9.1.js:1037
5. self.fireWithjquery-1.9.1.js:1148
6. jQuery.extend.readyjquery-1.9.1.js:433
7. completed

Just realize that this post got bumped a little while back. We put this problem on hold for a bit, but right now we are trying to address the issue again. I think, after re-checking the error forms that the "nestedSortable.js" actually is not being loaded. I'm just wondering where to start to make sure it it gets loaded on the exhibit builder pages.

Also the delete page function is not working for us either. Is this related or a second problem?

Any thoughts?

The delete page thing sounds like something that's fixed in the release of Exhibit Builder we put up today. So, I'd try grabbing that first to see if it fixes that.

If we're lucky it'll also fix the other thing, but I'll dig around a bit about that, too.

It'd be pretty strange if that script is correctly in the HTML but just it on its own isn't being loaded.

Do you have some other plugin installed that might be loading a different version of jQuery independently? nestedSortable is a jQuery plugin, and loading up jQuery multiple times on a page can mean none of the plugins are still loaded.

It seems to be pulling js from the Exhibit builder

plugins/ExhibitBuilder/views/admin/javascripts/exhibits.js

and from the

admin/themes/javascripts/vendor/jquery.nestedSortable.js

It is also pulling js from

application/views/scripts/javascripts/vendor/tiny_mce/jquery.tiny_mce.js

Would a combination of these javascripts cause the conflict? I was looking at our Navigation page (where nestedSortable does work) and it did not pull anything from the tiny_mce.js file.