[Geoserver-devel] Fiddling with autocomplete drop downs in the UI

Hi,
one of the things that keeps on annoying me with the current UI is how hard it is, sometimes,
to locate an item in dropdown, especially when they get long.

The two major pet-peeves of mine are the “new layer/choose store” and “layer/publishing/default style”
cases, it is not uncommon to have hundreds of entries in there, and locating things in there when
one just remembers the store name but not the workspace, or just part of the name, can be rather
time consuming.

So I wanted to do something about it (without getting nuts and trying to handle the hundreds of
thousands choices cases, that would require a different treatment and more effort).
Looking around I’ve found this wicketstuff-select2 component that provides a autocomplete dropdown
based on https://select2.org/, see https://select2.org/getting-started/basic-usage for examples.

I wanted something that would be a drop-in replacement for the Wicket DropDownChoice, so made
a small bridge class, and something that would not look too much out of place, so worked a bit
on the style too.

I came up with this, here are a couple of videos showing it in action on the default data directory
(which does not have many items, but hope you get the idea anyways):
https://drive.google.com/open?id=1u9Zeb1gs0N3ps-H5SgeGDsbsJ-Sf3zFH

https://drive.google.com/open?id=1nv458H0PbzVMskzqQxaFmWF0l5GqVVq3

The downside of these new combos is that they do not look like native ones in Firefox for example:
https://drive.google.com/open?id=1RCYwfthUb79rhxnRrT0x7AP1hDXeC7i1

Now, we could just replace all dropdowns with autocomplete ones… seems a bit silly for dropdowns
having 3 items in it, but would at least be consistent style and UI experience wise.

Here is a pull request so that you can see how it looks code wise, as you can see most of the time
switching to the autocomplete version of the drop down is a “search and replace” business:
https://github.com/geoserver/geoserver/pull/2716

So… thoughts?

Cheers
Andrea

···

==
GeoServer Professional Services from the experts! Visit http://goo.gl/it488V for more information.

Ing. Andrea Aime
@geowolf
Technical Lead

GeoSolutions S.A.S.
Via di Montramito 3/A
55054 Massarosa (LU)
phone: +39 0584 962313
fax: +39 0584 1660272
mob: +39 339 8844549

http://www.geo-solutions.it
http://twitter.com/geosolutions_it

AVVERTENZE AI SENSI DEL D.Lgs. 196/2003

Le informazioni contenute in questo messaggio di posta elettronica e/o nel/i file/s allegato/i sono da considerarsi strettamente riservate. Il loro utilizzo è consentito esclusivamente al destinatario del messaggio, per le finalità indicate nel messaggio stesso. Qualora riceviate questo messaggio senza esserne il destinatario, Vi preghiamo cortesemente di darcene notizia via e-mail e di procedere alla distruzione del messaggio stesso, cancellandolo dal Vostro sistema. Conservare il messaggio stesso, divulgarlo anche in parte, distribuirlo ad altri soggetti, copiarlo, od utilizzarlo per finalità diverse, costituisce comportamento contrario ai principi dettati dal D.Lgs. 196/2003.

The information in this message and/or attachments, is intended solely for the attention and use of the named addressee(s) and may be confidential or proprietary in nature or covered by the provisions of privacy act (Legislative Decree June, 30 2003, no.196 - Italy’s New Data Protection Code).Any use not in accord with its purpose, any disclosure, reproduction, copying, distribution, or either dissemination, either whole or partial, is strictly forbidden except previous formal approval of the named addressee(s). If you are not the intended recipient, please contact immediately the sender by telephone, fax or e-mail and delete the information in this message that has been received in error. The sender does not give any warranty or accept liability as the content, accuracy or completeness of sent messages and accepts no responsibility for changes made after they were sent or for other risks which arise as a result of e-mail transmission, viruses, etc.

UI improvements are always nice, and this seems like a particularly useful one.

The style differences relative to native drop-downs are a bit annoying, but seem fine. One possible alternate workaround for that would be to style the regular drop-downs so that they are the same between browsers. That should be as simple as adding a bit of CSS (Although most of the methods I could find for this used a background image to replace the select, so this workaround seems a bit finicky).
I think we should probably avoid replacing all drop-downs with the select2 one just for style reasons, seems like it could be a bit annoying/unnecessary where there are only a few options.
One thing I did notice is that the select2 drop-down doesn’t support keyboard navigation (tab + arrow keys), unlike a regular select. That seems like another good reason to only use it where necessary.

Looking at the code, it seems pretty straightforward and easy to use. Overall, +1.

Torben

···

On Sun, Jan 14, 2018 at 2:52 AM, Andrea Aime <andrea.aime@anonymised.com> wrote:

Hi,
one of the things that keeps on annoying me with the current UI is how hard it is, sometimes,
to locate an item in dropdown, especially when they get long.

The two major pet-peeves of mine are the “new layer/choose store” and “layer/publishing/default style”
cases, it is not uncommon to have hundreds of entries in there, and locating things in there when
one just remembers the store name but not the workspace, or just part of the name, can be rather
time consuming.

So I wanted to do something about it (without getting nuts and trying to handle the hundreds of
thousands choices cases, that would require a different treatment and more effort).
Looking around I’ve found this wicketstuff-select2 component that provides a autocomplete dropdown
based on https://select2.org/, see https://select2.org/getting-started/basic-usage for examples.

I wanted something that would be a drop-in replacement for the Wicket DropDownChoice, so made
a small bridge class, and something that would not look too much out of place, so worked a bit
on the style too.

I came up with this, here are a couple of videos showing it in action on the default data directory
(which does not have many items, but hope you get the idea anyways):
https://drive.google.com/open?id=1u9Zeb1gs0N3ps-H5SgeGDsbsJ-Sf3zFH

https://drive.google.com/open?id=1nv458H0PbzVMskzqQxaFmWF0l5GqVVq3

The downside of these new combos is that they do not look like native ones in Firefox for example:
https://drive.google.com/open?id=1RCYwfthUb79rhxnRrT0x7AP1hDXeC7i1

Now, we could just replace all dropdowns with autocomplete ones… seems a bit silly for dropdowns
having 3 items in it, but would at least be consistent style and UI experience wise.

Here is a pull request so that you can see how it looks code wise, as you can see most of the time
switching to the autocomplete version of the drop down is a “search and replace” business:
https://github.com/geoserver/geoserver/pull/2716

So… thoughts?

Cheers
Andrea

==
GeoServer Professional Services from the experts! Visit http://goo.gl/it488V for more information.

Ing. Andrea Aime
@geowolf
Technical Lead

GeoSolutions S.A.S.
Via di Montramito 3/A
55054 Massarosa (LU)
phone: +39 0584 962313
fax: +39 0584 1660272
mob: +39 339 8844549

http://www.geo-solutions.it
http://twitter.com/geosolutions_it

AVVERTENZE AI SENSI DEL D.Lgs. 196/2003

Le informazioni contenute in questo messaggio di posta elettronica e/o nel/i file/s allegato/i sono da considerarsi strettamente riservate. Il loro utilizzo è consentito esclusivamente al destinatario del messaggio, per le finalità indicate nel messaggio stesso. Qualora riceviate questo messaggio senza esserne il destinatario, Vi preghiamo cortesemente di darcene notizia via e-mail e di procedere alla distruzione del messaggio stesso, cancellandolo dal Vostro sistema. Conservare il messaggio stesso, divulgarlo anche in parte, distribuirlo ad altri soggetti, copiarlo, od utilizzarlo per finalità diverse, costituisce comportamento contrario ai principi dettati dal D.Lgs. 196/2003.

The information in this message and/or attachments, is intended solely for the attention and use of the named addressee(s) and may be confidential or proprietary in nature or covered by the provisions of privacy act (Legislative Decree June, 30 2003, no.196 - Italy’s New Data Protection Code).Any use not in accord with its purpose, any disclosure, reproduction, copying, distribution, or either dissemination, either whole or partial, is strictly forbidden except previous formal approval of the named addressee(s). If you are not the intended recipient, please contact immediately the sender by telephone, fax or e-mail and delete the information in this message that has been received in error. The sender does not give any warranty or accept liability as the content, accuracy or completeness of sent messages and accepts no responsibility for changes made after they were sent or for other risks which arise as a result of e-mail transmission, viruses, etc.


Check out the vibrant tech community on one of the world’s most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot


Geoserver-devel mailing list
Geoserver-devel@anonymised.com.366…sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel

+1

···

On 01/14/2018 10:52 AM, Andrea Aime wrote:

Hi,
one of the things that keeps on annoying me with the current UI is how hard it is, sometimes,
to locate an item in dropdown, especially when they get long.

The two major pet-peeves of mine are the “new layer/choose store” and “layer/publishing/default style”
cases, it is not uncommon to have hundreds of entries in there, and locating things in there when
one just remembers the store name but not the workspace, or just part of the name, can be rather
time consuming.

So I wanted to do something about it (without getting nuts and trying to handle the hundreds of
thousands choices cases, that would require a different treatment and more effort).
Looking around I’ve found this wicketstuff-select2 component that provides a autocomplete dropdown
based on https://select2.org/, see https://select2.org/getting-started/basic-usage for examples.

I wanted something that would be a drop-in replacement for the Wicket DropDownChoice, so made
a small bridge class, and something that would not look too much out of place, so worked a bit
on the style too.

I came up with this, here are a couple of videos showing it in action on the default data directory
(which does not have many items, but hope you get the idea anyways):
https://drive.google.com/open?id=1u9Zeb1gs0N3ps-H5SgeGDsbsJ-Sf3zFH

https://drive.google.com/open?id=1nv458H0PbzVMskzqQxaFmWF0l5GqVVq3

The downside of these new combos is that they do not look like native ones in Firefox for example:
https://drive.google.com/open?id=1RCYwfthUb79rhxnRrT0x7AP1hDXeC7i1

Now, we could just replace all dropdowns with autocomplete ones… seems a bit silly for dropdowns
having 3 items in it, but would at least be consistent style and UI experience wise.

Here is a pull request so that you can see how it looks code wise, as you can see most of the time
switching to the autocomplete version of the drop down is a “search and replace” business:
https://github.com/geoserver/geoserver/pull/2716

So… thoughts?

Cheers
Andrea

== GeoServer Professional Services from the experts! Visit http://goo.gl/it488V for more information. == Ing. Andrea Aime @geowolf Technical Lead GeoSolutions S.A.S. Via di Montramito 3/A 55054 Massarosa (LU) phone: +39 0584 962313 fax: +39 0584 1660272 mob: +39 339 8844549 http://www.geo-solutions.it http://twitter.com/geosolutions_it

AVVERTENZE AI SENSI DEL D.Lgs. 196/2003

Le informazioni contenute in questo messaggio di posta elettronica e/o nel/i file/s allegato/i sono da considerarsi strettamente riservate. Il loro utilizzo è consentito esclusivamente al destinatario del messaggio, per le finalità indicate nel messaggio stesso. Qualora riceviate questo messaggio senza esserne il destinatario, Vi preghiamo cortesemente di darcene notizia via e-mail e di procedere alla distruzione del messaggio stesso, cancellandolo dal Vostro sistema. Conservare il messaggio stesso, divulgarlo anche in parte, distribuirlo ad altri soggetti, copiarlo, od utilizzarlo per finalità diverse, costituisce comportamento contrario ai principi dettati dal D.Lgs. 196/2003.

The information in this message and/or attachments, is intended solely for the attention and use of the named addressee(s) and may be confidential or proprietary in nature or covered by the provisions of privacy act (Legislative Decree June, 30 2003, no.196 - Italy’s New Data Protection Code).Any use not in accord with its purpose, any disclosure, reproduction, copying, distribution, or either dissemination, either whole or partial, is strictly forbidden except previous formal approval of the named addressee(s). If you are not the intended recipient, please contact immediately the sender by telephone, fax or e-mail and delete the information in this message that has been received in error. The sender does not give any warranty or accept liability as the content, accuracy or completeness of sent messages and accepts no responsibility for changes made after they were sent or for other risks which arise as a result of e-mail transmission, viruses, etc.

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! [http://sdm.link/slashdot](http://sdm.link/slashdot)
_______________________________________________
Geoserver-devel mailing list
[Geoserver-devel@lists.sourceforge.net](mailto:Geoserver-devel@lists.sourceforge.net)
[https://lists.sourceforge.net/lists/listinfo/geoserver-devel](https://lists.sourceforge.net/lists/listinfo/geoserver-devel)

-- 
Regards,
Nuno Oliveira
==
GeoServer Professional Services from the experts! Visit [http://goo.gl/it488V](http://goo.gl/it488V) for more information.
==

Nuno Miguel Carvalho Oliveira
@nmcoliveira
Software Engineer

GeoSolutions S.A.S.
Via di Montramito 3/A
55054  Massarosa (LU)
Italy
phone: +39 0584 962313
fax:      +39 0584 1660272

[http://www.geo-solutions.it](http://www.geo-solutions.it)
[http://twitter.com/geosolutions_it](http://twitter.com/geosolutions_it)

-------------------------------------------------------
AVVERTENZE AI SENSI DEL D.Lgs. 196/2003
Le informazioni contenute in questo messaggio di posta elettronica e/o nel/i file/s allegato/i sono da considerarsi strettamente riservate. Il loro utilizzo è consentito esclusivamente al destinatario del messaggio, per le finalità indicate nel messaggio stesso. Qualora riceviate questo messaggio senza esserne il destinatario, Vi preghiamo cortesemente di darcene notizia via e-mail e di procedere alla distruzione del messaggio stesso, cancellandolo dal Vostro sistema. Conservare il messaggio stesso, divulgarlo anche in parte, distribuirlo ad altri soggetti, copiarlo, od utilizzarlo per finalità diverse, costituisce comportamento contrario ai principi dettati dal D.Lgs. 196/2003.
 
The information in this message and/or attachments, is intended solely for the attention and use of the named addressee(s) and may be confidential or proprietary in nature or covered by the provisions of privacy act (Legislative Decree June, 30 2003, no.196 - Italy's New Data Protection Code).Any use not in accord with its purpose, any disclosure, reproduction, copying, distribution, or either dissemination, either whole or partial, is strictly forbidden except previous formal approval of the named addressee(s). If you are not the intended recipient, please contact immediately the sender by telephone, fax or e-mail and delete the information in this message that has been received in error. The sender does not give any warranty or accept liability as the content, accuracy or completeness of sent messages and accepts no responsibility  for changes made after they were sent or for other risks which arise as a result of e-mail transmission, viruses, etc.

On Mon, Jan 15, 2018 at 7:06 PM, Torben Barsballe <
tbarsballe@anonymised.com> wrote:

UI improvements are always nice, and this seems like a particularly useful
one.

The style differences relative to native drop-downs are a bit annoying,
but seem fine. One possible alternate workaround for that would be to style
the regular drop-downs so that they are the same between browsers. That
should be as simple as adding a bit of CSS (Although most of the methods I
could find for this used a background image to replace the select, so this
workaround seems a bit finicky).

Indeed... I looked around but could not find an approach that would scale
well along the the base system font size changes... (there are some
bootstrap based examples that might work, but we don't use bootstrap in
GeoServer so...).

Can you think of any other case in the UI that would benefit from having
the select2 list?

I think we should probably avoid replacing all drop-downs with the select2
one just for style reasons, seems like it could be a bit
annoying/unnecessary where there are only a few options.

Yeah, I was wondering myself. Personally I'd prefer visual consistency but
I have no strong opinion on this one, happy to leave it as is.

One thing I did notice is that the select2 drop-down doesn't support
keyboard navigation (tab + arrow keys), unlike a regular select. That seems
like another good reason to only use it where necessary.

That is indeed annoying (although not sure how keyboard friendly the UI is
to start with).
Hmmm... seems like it may be fixable, I'll have a look into it:
https://github.com/select2/select2/issues/3472

Looking at the code, it seems pretty straightforward and easy to use.

Overall, +1.

Thanks!

Cheers
Andrea

==

GeoServer Professional Services from the experts! Visit http://goo.gl/it488V
for more information.

Ing. Andrea Aime
@geowolf
Technical Lead

GeoSolutions S.A.S.
Via di Montramito 3/A
55054 Massarosa (LU)
phone: +39 0584 962313
fax: +39 0584 1660272
mob: +39 339 8844549

http://www.geo-solutions.it
http://twitter.com/geosolutions_it

AVVERTENZE AI SENSI DEL D.Lgs. 196/2003

Le informazioni contenute in questo messaggio di posta elettronica e/o
nel/i file/s allegato/i sono da considerarsi strettamente riservate. Il
loro utilizzo è consentito esclusivamente al destinatario del messaggio,
per le finalità indicate nel messaggio stesso. Qualora riceviate questo
messaggio senza esserne il destinatario, Vi preghiamo cortesemente di
darcene notizia via e-mail e di procedere alla distruzione del messaggio
stesso, cancellandolo dal Vostro sistema. Conservare il messaggio stesso,
divulgarlo anche in parte, distribuirlo ad altri soggetti, copiarlo, od
utilizzarlo per finalità diverse, costituisce comportamento contrario ai
principi dettati dal D.Lgs. 196/2003.

The information in this message and/or attachments, is intended solely for
the attention and use of the named addressee(s) and may be confidential or
proprietary in nature or covered by the provisions of privacy act
(Legislative Decree June, 30 2003, no.196 - Italy's New Data Protection
Code).Any use not in accord with its purpose, any disclosure, reproduction,
copying, distribution, or either dissemination, either whole or partial, is
strictly forbidden except previous formal approval of the named
addressee(s). If you are not the intended recipient, please contact
immediately the sender by telephone, fax or e-mail and delete the
information in this message that has been received in error. The sender
does not give any warranty or accept liability as the content, accuracy or
completeness of sent messages and accepts no responsibility for changes
made after they were sent or for other risks which arise as a result of
e-mail transmission, viruses, etc.

On Sun, Jan 21, 2018 at 10:07 AM, Andrea Aime <andrea.aime@anonymised.com>
wrote:

On Mon, Jan 15, 2018 at 7:06 PM, Torben Barsballe <
tbarsballe@anonymised.com> wrote:

UI improvements are always nice, and this seems like a particularly
useful one.

The style differences relative to native drop-downs are a bit annoying,
but seem fine. One possible alternate workaround for that would be to style
the regular drop-downs so that they are the same between browsers. That
should be as simple as adding a bit of CSS (Although most of the methods I
could find for this used a background image to replace the select, so this
workaround seems a bit finicky).

Indeed... I looked around but could not find an approach that would scale
well along the the base system font size changes... (there are some
bootstrap based examples that might work, but we don't use bootstrap in
GeoServer so...).

Ah, forgot about scaling; yeah that would make things rather more difficult.

Can you think of any other case in the UI that would benefit from having
the select2 list?

Hmm... List of requests on the Demo requests page. Likewise, list of WPS
processes on the WPS request builder demo. Preview format on Layer Preview
page.

You could maybe change the CRS fields on the Layer / Layer group edit page
to use it, but that seems like a bit more work.

I think we should probably avoid replacing all drop-downs with the
select2 one just for style reasons, seems like it could be a bit
annoying/unnecessary where there are only a few options.

Yeah, I was wondering myself. Personally I'd prefer visual consistency but
I have no strong opinion on this one, happy to leave it as is.

One thing I did notice is that the select2 drop-down doesn't support
keyboard navigation (tab + arrow keys), unlike a regular select. That seems
like another good reason to only use it where necessary.

That is indeed annoying (although not sure how keyboard friendly the UI is
to start with).

From what I have seen / tried, navigating by keyboard is a bit finicky, but

still technically doable.

Hmmm... seems like it may be fixable, I'll have a look into it:
Arrow keys do not change value of select · Issue #3472 · select2/select2 · GitHub

If a viable fix comes out of that, then I wouldn't see an issue with

replacing all select boxes with the select2 one. As-is, I think the
accessibility improvement of the regular select boxes outweighs the style
consistency.

Cheers,

Torben

Hi folks,
pull request updated and now in a stable that I’d be comfortable merging:
https://github.com/geoserver/geoserver/pull/2744

Updates:

  • Simplified the code significantly, relying mostly on select2 auto-magic conversion on an existing select
  • The Select2DropDownChoice is now a DropDownChoice subclass, so removed the extra special testing code
  • Added code to mimick native drop down keyboard behavior. It’s not 100% the same, but got as close as possible (the one deviation that I’m aware of, if you type in a closed native select it will take into account all chars you typed to select the best match, this version only looks for the first one, e.g., has no state).
  • Added more select2 based drop downs around, but only for long lists (mostly based on Torbens’ suggestions, but could not easily migrate the preview one)
    I did not do a full migration, as I don’t have time to test all pages one by one, but I guess we can switch pages a bit at a time, also based on actual need?

The code is fully javascript in the end, so not testable in WicketTester. I’ve done my best to test by hand, other testers more than welcomed :slight_smile:

Cheers
Andrea

···

On Mon, Jan 22, 2018 at 8:05 PM, Torben Barsballe <tbarsballe@anonymised.com> wrote:

On Sun, Jan 21, 2018 at 10:07 AM, Andrea Aime <andrea.aime@anonymised.com…> wrote:

Ah, forgot about scaling; yeah that would make things rather more difficult.

Hmm… List of requests on the Demo requests page. Likewise, list of WPS processes on the WPS request builder demo. Preview format on Layer Preview page.

You could maybe change the CRS fields on the Layer / Layer group edit page to use it, but that seems like a bit more work.

From what I have seen / tried, navigating by keyboard is a bit finicky, but still technically doable.

If a viable fix comes out of that, then I wouldn’t see an issue with replacing all select boxes with the select2 one. As-is, I think the accessibility improvement of the regular select boxes outweighs the style consistency.

Cheers,

Torben

On Mon, Jan 15, 2018 at 7:06 PM, Torben Barsballe <tbarsballe@anonymised.com> wrote:

UI improvements are always nice, and this seems like a particularly useful one.

The style differences relative to native drop-downs are a bit annoying, but seem fine. One possible alternate workaround for that would be to style the regular drop-downs so that they are the same between browsers. That should be as simple as adding a bit of CSS (Although most of the methods I could find for this used a background image to replace the select, so this workaround seems a bit finicky).

Indeed… I looked around but could not find an approach that would scale well along the the base system font size changes… (there are some
bootstrap based examples that might work, but we don’t use bootstrap in GeoServer so…).

Can you think of any other case in the UI that would benefit from having the select2 list?

I think we should probably avoid replacing all drop-downs with the select2 one just for style reasons, seems like it could be a bit annoying/unnecessary where there are only a few options.

Yeah, I was wondering myself. Personally I’d prefer visual consistency but I have no strong opinion on this one, happy to leave it as is.

One thing I did notice is that the select2 drop-down doesn’t support keyboard navigation (tab + arrow keys), unlike a regular select. That seems like another good reason to only use it where necessary.

That is indeed annoying (although not sure how keyboard friendly the UI is to start with).

Hmmm… seems like it may be fixable, I’ll have a look into it: https://github.com/select2/select2/issues/3472

Regards,

Andrea Aime

==
GeoServer Professional Services from the experts! Visit http://goo.gl/it488V for more information.

Ing. Andrea Aime
@geowolf
Technical Lead

GeoSolutions S.A.S.
Via di Montramito 3/A
55054 Massarosa (LU)
phone: +39 0584 962313
fax: +39 0584 1660272
mob: +39 339 8844549

http://www.geo-solutions.it
http://twitter.com/geosolutions_it

AVVERTENZE AI SENSI DEL D.Lgs. 196/2003

Le informazioni contenute in questo messaggio di posta elettronica e/o nel/i file/s allegato/i sono da considerarsi strettamente riservate. Il loro utilizzo è consentito esclusivamente al destinatario del messaggio, per le finalità indicate nel messaggio stesso. Qualora riceviate questo messaggio senza esserne il destinatario, Vi preghiamo cortesemente di darcene notizia via e-mail e di procedere alla distruzione del messaggio stesso, cancellandolo dal Vostro sistema. Conservare il messaggio stesso, divulgarlo anche in parte, distribuirlo ad altri soggetti, copiarlo, od utilizzarlo per finalità diverse, costituisce comportamento contrario ai principi dettati dal D.Lgs. 196/2003.

The information in this message and/or attachments, is intended solely for the attention and use of the named addressee(s) and may be confidential or proprietary in nature or covered by the provisions of privacy act (Legislative Decree June, 30 2003, no.196 - Italy’s New Data Protection Code).Any use not in accord with its purpose, any disclosure, reproduction, copying, distribution, or either dissemination, either whole or partial, is strictly forbidden except previous formal approval of the named addressee(s). If you are not the intended recipient, please contact immediately the sender by telephone, fax or e-mail and delete the information in this message that has been received in error. The sender does not give any warranty or accept liability as the content, accuracy or completeness of sent messages and accepts no responsibility for changes made after they were sent or for other risks which arise as a result of e-mail transmission, viruses, etc.