Opened 12 years ago

Closed 12 years ago

#997 closed defect (invalid)

Invalid value in date for advanced search not handled properly

Reported by: ianwallen Owned by: geonetwork-devel@…
Priority: major Milestone: v2.8.0 RC1
Component: General Version: v2.8.0RC0
Keywords: Cc:

Description

Entering an invalid date in the advance search breaks the form.

To reproduce.

-- Go to advanced search

-- Enter invalid date for "Metadata change Date / From". I entered "1234"

-- Click "search"

Expected no result or an search error with proper message.

Got a popup with the title "search error" but nothing in it. Clicked the "X" to close the popup. Then when I go to modify the date I cannot because now all the date input boxes seem to have doubled. The only way to correct this is to restart from scratch.

Using today's nightly build on windows XP (geonetwork-install-branch-2012-07-25.jar)

Change History (4)

comment:1 by ianwallen, 12 years ago

I found out that the MB_frame which is used for the error handling contains and inline web page. In there it calls "initCalendar()" a second time which causes it to reparse all the "div.cal" elements a second time adding a second datefield.

The fix could be

-- to update initCalendar() to break out if if detects that it was executed twice. -- or ensure that initCalendar() is not called twice. (possibly the better fix?)

Any suggestions?

comment:2 by ianwallen, 12 years ago

I found that this issues seems to be related to cookies. I cleared my browser cookies and now I'm unable to reproduce the issue. So one of the cookie has the potential to cause issues with the search?

comment:3 by ianwallen, 12 years ago

Correction: in the steps to produce the error I specified to used "1234" as an invalid date. This should be "123" since 1234 will be converted to "2013-01-03"

comment:4 by ianwallen, 12 years ago

Resolution: invalid
Status: newclosed

Since I have cleared my cookies, I have not been able to reproduce the error - so I'm marking it as invalid as I'm not sure how to duplicate the error.

Note: See TracTickets for help on using tickets.