Hi JavaScript Gurus,

I have a problem due to a bug found in a js used by a Joomla component (Alberghi), now virtually abandoned.

unfortunately, this component is the main one in a site I made time ago for a Tour Operator, with some workaround I created to better satisfy the specific needs of a Tour Operator, managing tour-packets, vs. a simple Hotel.

this is the code:
Code:
<script language="JavaScript">
	var folderimages = new Array;
	<?php	$i = 0;
	foreach ($images as $k=>$items) {
		foreach ($items as $v) {
			echo "\n	folderimages[".$i++."] = new Array( '$k','$v->value','$v->text' );";
		}
	}
	?>
	function updateImageField ()
	{
		var temp = new Array;
		for (var i=0, n=document.adminForm.imagelist.options.length; i < n; i++) {
			temp[i] = document.adminForm.imagelist.options[i].value;
		}
		document.adminForm.images.value = temp.join( '\n' );
	}
</script>
this code works in a js-tabbed admin page with an option list showing a list of available images uploaded on the server, from where is possible to select some files to load on a second option list: once on the second list the images, by saving the page, are loaded into the relevant db table-row field.

I guess the developers didn't test the script in a running site, as the problem was not found at the beginning, with the first creation of the packet items: the problem arises when editing/updating an existing packet provided of an existing image list.

at each further saving, the image list is modified by adding a new blank row, thus creating a mess on the output page, where the blank rows are read as missing images, showing the <alt="click to zoom", instead of a regular column of thumbnails.

I found that the problem is given by the code temp.join( '\n' ), so I changed it in temp.join( ' ' ): the existing file lists are no more filled in by blank rows, but is not possible to get a proper list with a new packet, as the image names are not placed in a stacked list (no way to see them, later, in the newly generated page).

my so poor knowledge of JavaScrpt prevents me to find out a workaround (I know just a little PHP) either to make the script sensitive to an existing file list, without the blank row insertion, or to find out a wiser way to create one-shot only new rows.

thanks in advance for any hint or suggestion that could help me in solving this embarrassing flaw of the original script.