Neatline Time does not install

I’ve been unable to install Neatline Time (2.1.1) in Omeka 2.7.1 (PHP 7.2.24 (fpm-fcgi), OS Linux 4.18.0-193.13.2.el8_2.x86_64 x86_64, MySQL Server 5.5.65, MySQL Client mysqlnd 5.0.12-dev). The base Neatline plugin (2.6.3) installed successfully. The error is:

Omeka has encountered an error

Zend_Db_Statement_Mysqli_Exception

Mysqli statement execute error : Incorrect table definition; there can be only one TIMESTAMP column with CURRENT_TIMESTAMP in DEFAULT or ON UPDATE clause

Zend_Db_Statement_Mysqli_Exception: Mysqli statement execute error : Incorrect table definition; there can be only one TIMESTAMP column with CURRENT_TIMESTAMP in DEFAULT or ON UPDATE clause in /srv/www/beatleyweb.simmons.edu/html/suffrage/application/libraries/Zend/Db/Statement/Mysqli.php:214

Stack trace:

#0 /srv/www/beatleyweb.simmons.edu/html/suffrage/application/libraries/Zend/Db/Statement.php(303): Zend_Db_Statement_Mysqli->_execute(Array)

#1 /srv/www/beatleyweb.simmons.edu/html/suffrage/application/libraries/Zend/Db/Adapter/Abstract.php(480): Zend_Db_Statement->execute(Array)

#2 /srv/www/beatleyweb.simmons.edu/html/suffrage/application/libraries/Omeka/Db.php(80): Zend_Db_Adapter_Abstract->query(‘CREATE TABLE IF…’)

#3 /srv/www/beatleyweb.simmons.edu/html/suffrage/plugins/NeatlineTime/NeatlineTimePlugin.php(64): Omeka_Db->__call(‘query’, Array)

#4 /srv/www/beatleyweb.simmons.edu/html/suffrage/application/libraries/Omeka/Plugin/Broker.php(142): NeatlineTimePlugin->hookInstall(Array)

#5 /srv/www/beatleyweb.simmons.edu/html/suffrage/application/libraries/Omeka/Plugin/Installer.php(126): Omeka_Plugin_Broker->callHook(‘install’, Array, Object(Plugin))

#6 /srv/www/beatleyweb.simmons.edu/html/suffrage/application/controllers/PluginsController.php(95): Omeka_Plugin_Installer->install(Object(Plugin))

#7 /srv/www/beatleyweb.simmons.edu/html/suffrage/application/libraries/Zend/Controller/Action.php(516): PluginsController->installAction()

#8 /srv/www/beatleyweb.simmons.edu/html/suffrage/application/libraries/Zend/Controller/Dispatcher/Standard.php(308): Zend_Controller_Action->dispatch(‘installAction’)

#9 /srv/www/beatleyweb.simmons.edu/html/suffrage/application/libraries/Zend/Controller/Front.php(954): Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Http), Object(Zend_Controller_Response_Http))

#10 /srv/www/beatleyweb.simmons.edu/html/suffrage/application/libraries/Zend/Application/Bootstrap/Bootstrap.php(105): Zend_Controller_Front->dispatch()

#11 /srv/www/beatleyweb.simmons.edu/html/suffrage/application/libraries/Zend/Application.php(384): Zend_Application_Bootstrap_Bootstrap->run()

#12 /srv/www/beatleyweb.simmons.edu/html/suffrage/application/libraries/Omeka/Application.php(73): Zend_Application->run()

#13 /srv/www/beatleyweb.simmons.edu/html/suffrage/admin/index.php(28): Omeka_Application->run()

#14 {main}

Googling “there can be only one TIMESTAMP column with CURRENT_TIMESTAMP” and https://github.com/scholarslab/NeatlineTime/issues/75 suggest that the problem is that the Neatline Time SQL won’t run in my server’s version of MySQL.

Can the Neatline Time code be edited so that this plugin can install and run successfully on the Omeka I’m setting up?

Hi cosine,

If you don’t mind to test, try replacing CURRENT_TIMESTAMP to ‘2000-01-01 00:00:00’ on line 59 of NeatlineTimePlugin.php. I think this should allow you to install on MySQL 5.5. I’ll test this myself once I can get a container running with that version of MySQL.

Cheers,
Jeremy

Hi cosine,

My suggestion does seem to work, at least from testing my own installation. However, it also appears the SIMILE timeline libraries are no longer hosted where they used to be, which means none of the javascript necessary to create a timeline will work. I’m afraid this means we’ll need to deprecate NeatlineTime as currently written, and possibly look into alternative timeline libraries. I’m sorry for the trouble.

(Update: Daniel KM has a fork of NeatlineTime available at https://github.com/Daniel-KM/Omeka-plugin-NeatlineTime that includes an option for the KnightLabs timeline library. I suggest trying Daniel’s plugin out.)

Jeremy,

Thank you very much for troubleshooting my problem installing the Neatline Time plugin, and doing it so quickly as well! I deleted the plugin and successfully installed Daniel KM’s fork of Neatline Time as you suggested, selecting the KnightLabs library. Everything looks good!

That’s great to hear cosine. I did hop on to say, thanks to help from the Omeka team, we have made an updated release that should address the issues you ran into. If you’re happy with Daniel’s version of the plugin, definitely keep using it! But thanks for reporting the issue.

I see the the new version 2.1.2 on the Omeka Classic Plugins page! This is great work – thanks again!