Ticket #7 (assigned enhancement)

Opened 3 years ago

Last modified 3 years ago

Empty field handling in IdentifyResultsHTML

Reported by: rwardenier Owned by:
Priority: major Milestone:
Version: 2.0.5 Keywords: hyperlink identify
Cc:

Description

OK, dit is niet nieuw ik weet het (<edit> sterker nog, dit is een FBG Forum post van oktober 2007</edit>) maar ik was benieuwd of iemand er iets op weet.

Een attribuut veld zonder waarde wordt op verschillende manieren getoond door de IdentifyResultsHTML component:

  • tekst: (d.w.z. niks)
  • numeriek: null

Als je te maken hebt met een URL en je config ziet er ongeveer zo uit:

\tProject website\t<a href="[URL]" target="_blank"><u>Klik hier...</u></a>

en het veld is leeg dan krijg je na een klik op de link een nieuw browser window met een foutmelding.

Javascript er in verwerken helpt niet. Waarschijnlijk omdat de HTML wordt verwerkt door de Flash player en niet door de browser.

Heeft iemand een idee hoe hier mee om te gaan. Het is best een probleem want niet alle projecten die in de kaart afgebeeld worden hebben een eigen website en dus stuur je mensen de helft van de tijd vrolijk het bos in.

Change History

comment:1 Changed 3 years ago by rwardenier

  • Owner Roy deleted
  • Status changed from new to assigned

OK, I know, this isn't new (<edit>better still, this comes from a FBG Forum post from October 2007</edit>) but I was curious whether or not someone knows a solution.

Empty attribute fields are handled differently by the IdentifyResultsHTML component depending on the filed type:

  • an empty text field shows nothing at all
  • an empty numeric field shows "null"

When the attribute is a URL and part of your config file looks like:

\tProject website\t<a href="[URL]" target="_blank"><u>Klik hier...</u></a>

and the attribute value is empty, you'll get an error in your browser since the hyperlink is invalid.

Trying to solve this by using some Javascript doesn't help. Probably because the HTML and javascript is handled by the Flash player insted of the browser.

Does anyone have an idea how to deal with this? It's quite a problem because sometimes there simply isn't a page or site to link to.

comment:2 Changed 3 years ago by rbraam

  • Owner set to rbraam

Do something like:
\tProject website\t<a href="#" onclick="openUrl('[URL]')" target="_blank"><u>Klik hier...</u></a>

In the HTML/js:
function openUrl(url){

if(url!=[URL]){

window.open(url);

}

}

comment:3 Changed 3 years ago by rbraam

  • Status changed from assigned to closed
  • Resolution set to fixed

comment:4 Changed 3 years ago by rwardenier

  • Status changed from closed to reopened
  • Resolution fixed deleted

I don't agree with this fix.
It's a workaround which lets the end user experience a non working link. One clicks the link and nothing happens.

When there is no URL there should not be a link. That can't be fixed with a workaround in Javascript I am afraid though.

comment:5 Changed 3 years ago by rbraam

Aaah ok, you have a point! This must be added!

comment:6 Changed 3 years ago by rbraam

  • Owner rbraam deleted
  • Status changed from reopened to assigned
Note: See TracTickets for help on using tickets.