isawnyu / pleiades-gazetteer

This repository provides a home for tickets and other planning documents for the Pleiades gazetteer of ancient places. Code is kept in multiple other repositories.
https://pleiades.stoa.org
11 stars 0 forks source link

improve and streamline time period management and selection #53

Closed paregorios closed 8 years ago

paregorios commented 8 years ago

We'd like to improve several aspects of time period stuff in Pleiades, including:

Note the following related legacy tickets:

Tasks:

paregorios commented 8 years ago

@atomrab will no doubt be interested in this thread

davisagli commented 8 years ago

"Permit users to add new time periods on the basis of PeriodO URIs"

Do you mean that admin users should be able to edit the vocabulary, or that normal contributors should be able to enter a time period that's not in the vocabulary?

paregorios commented 8 years ago

When I wrote that bullet, I was imagining that any authenticated Pleiades user with appropriate role+permission on a relevant content item could add a time-period reference not presently in our vocabulary if said time period was cataloged by PeriodO (even if it wasn't in the Pleiades vocab).

I'd imagine further that we'd want admin users to be able to add such periods (or others) to the time-period vocabulary as well, thus making them appear in pick lists etc.

davisagli commented 8 years ago

So the contributor UI for entering a time period would become a dropdown of the options from the vocabulary, plus a text input to enter a PeriodO URI, and some validation to make sure that you only enter one or the other. Am I understanding right?

paregorios commented 8 years ago

Yes, that's what I'm imagining.

Tom Elliott, Ph.D. Associate Director for Digital Programs and Senior Research Scholar Institute for the Study of the Ancient World (NYU) http://isaw.nyu.edu/people/staff/tom-elliott

On Wed, Feb 17, 2016 at 11:07 AM, David Glick notifications@github.com wrote:

So the contributor UI for entering a time period would become a dropdown of the options from the vocabulary, plus a text input to enter a PeriodO URI, and some validation to make sure that you only enter one or the other. Am I understanding right?

— Reply to this email directly or view it on GitHub https://github.com/isawnyu/pleiades-gazetteer/issues/53#issuecomment-185301984 .

atomrab commented 8 years ago

From the perspective of PeriodO, we'd also welcome additions to the existing Pleiades vocabulary via PeriodO. This will help us keep all the Pleiades assertions in one place (though one of our goals, if we get a next round of funding, is to make it easier to keep track of arbitrary user collections, so that other people could quickly figure out in PeriodO which periods were being used in Pleiades).

Users logged in with ORCIDs can add new definitions to the Pleiades collection from a local indexed database, and then submit them as patches, which I can approve. It's a little more cumbersome than just looking up a URI in PeriodO, but makes it easier for us to keep track of Pleiades usage.

On Wed, Feb 17, 2016 at 11:13 AM, Tom Elliott notifications@github.com wrote:

Yes, that's what I'm imagining.

Tom Elliott, Ph.D. Associate Director for Digital Programs and Senior Research Scholar Institute for the Study of the Ancient World (NYU) http://isaw.nyu.edu/people/staff/tom-elliott

On Wed, Feb 17, 2016 at 11:07 AM, David Glick notifications@github.com wrote:

So the contributor UI for entering a time period would become a dropdown of the options from the vocabulary, plus a text input to enter a PeriodO URI, and some validation to make sure that you only enter one or the other. Am I understanding right?

— Reply to this email directly or view it on GitHub < https://github.com/isawnyu/pleiades-gazetteer/issues/53#issuecomment-185301984

.

— Reply to this email directly or view it on GitHub https://github.com/isawnyu/pleiades-gazetteer/issues/53#issuecomment-185306076 .

paregorios commented 8 years ago

This ticket now has associated stories in scrumdo for development (nos. 26 and 31). Reassigning to @cguardia since he is working on those stories in the current iteration.

paregorios commented 8 years ago

I just encountered the following error on staging, which seems to be related to the code being developed and tested for this enhancement. To recreate, visit /search_form and enter Zucchabar in the search box and execute search:

Traceback (innermost last):

Module ZPublisher.Publish, line 138, in publish
Module ZPublisher.mapply, line 77, in mapply
Module ZPublisher.Publish, line 48, in call_object
Module Products.Five.browser.metaconfigure, line 485, in __call__
Module Products.Five.browser.pagetemplatefile, line 125, in __call__
Module Products.Five.browser.pagetemplatefile, line 59, in __call__
Module zope.pagetemplate.pagetemplate, line 132, in pt_render
Module zope.pagetemplate.pagetemplate, line 240, in __call__
Module collective.newrelic.patches.talinterpreter, line 17, in monkeypatch
Module newrelic.api.function_trace, line 110, in literal_wrapper
Module zope.tal.talinterpreter, line 271, in __call__
Module zope.tal.talinterpreter, line 343, in interpret
Module zope.tal.talinterpreter, line 888, in do_useMacro
Module zope.tal.talinterpreter, line 343, in interpret
Module zope.tal.talinterpreter, line 533, in do_optTag_tal
Module zope.tal.talinterpreter, line 518, in do_optTag
Module zope.tal.talinterpreter, line 513, in no_tag
Module zope.tal.talinterpreter, line 343, in interpret
Module zope.tal.talinterpreter, line 954, in do_defineSlot
Module zope.tal.talinterpreter, line 343, in interpret
Module zope.tal.talinterpreter, line 533, in do_optTag_tal
Module zope.tal.talinterpreter, line 518, in do_optTag
Module zope.tal.talinterpreter, line 513, in no_tag
Module zope.tal.talinterpreter, line 343, in interpret
Module zope.tal.talinterpreter, line 858, in do_defineMacro
Module zope.tal.talinterpreter, line 343, in interpret
Module zope.tal.talinterpreter, line 954, in do_defineSlot
Module zope.tal.talinterpreter, line 343, in interpret
Module zope.tal.talinterpreter, line 533, in do_optTag_tal
Module zope.tal.talinterpreter, line 518, in do_optTag
Module zope.tal.talinterpreter, line 513, in no_tag
Module zope.tal.talinterpreter, line 343, in interpret
Module zope.tal.talinterpreter, line 946, in do_defineSlot
Module zope.tal.talinterpreter, line 343, in interpret
Module zope.tal.talinterpreter, line 852, in do_condition
Module zope.tal.talinterpreter, line 343, in interpret
Module zope.tal.talinterpreter, line 405, in do_startTag
Module zope.tal.talinterpreter, line 482, in attrAction_tal
Module Products.PageTemplates.Expressions, line 225, in evaluateText
Module zope.tales.tales, line 696, in evaluate
URL: /srv/python27-apps/pleiades4/src/pleiades.notredame/pleiades/notredame/browser/templates/search.pt
Line 109, Column 6
Expression: <PythonExpr (search_json(brains=Batch(results, b_size, int(b_start), orphan=1)))>
Names:
{'args': (), 'container': <PloneSite at /plone>, 'context': <PloneSite at /plone>, 'default': <object object at 0x7fc81d62cbb0>, 'here': <PloneSite at /plone>, 'loop': {}, 'nothing': None, 'options': {}, 'repeat': <Products.PageTemplates.Expressions.SafeMapping object at 0x7fc7f2aae2b8>, 'request': <HTTPRequest, URL=http://pleiades.jazkarta.com/search>, 'root': <Application at >, 'template': <Products.Five.browser.pagetemplatefile.ViewPageTemplateFile object at 0x7fc7f2c38890>, 'traverse_subpath': [], 'user': <PloneUser 'thomase'>, 'view': <Products.Five.metaclass.SimpleViewClass from /srv/python27-apps/pleiades4/src/pleiades.notredame/pleiades/notredame/browser/templates/search.pt object at 0x7fc7f2e58490>, 'views': <Products.Five.browser.pagetemplatefile.ViewMapper object at 0x7fc7f2c38b10>}
Module zope.tales.pythonexpr, line 59, in __call__
__traceback_info__: (search_json(brains=Batch(results, b_size, int(b_start), orphan=1)))
Module <string>, line 1, in <module>
Module pleiades.json.browser, line 723, in data_uri
Module pleiades.json.browser, line 312, in value
Module plone.memoize.instance, line 51, in memogetter
Module pleiades.json.browser, line 697, in _data
Module pleiades.kml.browser, line 365, in snippet
Module pleiades.kml.browser, line 415, in timeSpanAD
Module pleiades.kml.browser, line 398, in timeSpan
Module Products.PleiadesEntity.time, line 29, in periodRanges
AttributeError: 'NoneType' object has no attribute 'items'
paregorios commented 8 years ago

Reviewing on staging, I found an issue with the pick widget: #160

paregorios commented 8 years ago

The Zucchabar aspect of this is fixed.

paregorios commented 8 years ago

Final review on this is blocked for #164