You can try the following, but I haven't tested it:
go to media/com_hotspots/js/hotspots.js on line 500:
function expandfootmenu() {
if(typeof footer_opened == 'undefined' || footer_opened == 0) {
slide_address.toggle();
getLatestHotspots();
footer_opened = 1;
} else if(footer_opened == 1) {
slide_address.slideOut();
footer_opened = 0;
}
}
change it to:
function expandfootmenu() {
if(typeof footer_opened == 'undefined' || footer_opened == 0) {
slide_address.toggle();
// getLatestHotspots();
footer_opened = 1;
} else if(footer_opened == 1) {
slide_address.slideOut();
footer_opened = 0;
}
}
then go to line 220 in the hsload function after those lines:
if(show_footer_menu == 1) {
var cat_element = new Element(_cat);
$('newestSpotId').innerHTML = (cat_element.getElement('a').innerHTML).replace(/\(\d+\)/g,'');
}
add
So what does this change?
You see when you click on latest location a javascript effect is started - the hidden panel slides in. And after that a query to the database is started that returns the hotspots.
With the above change the query to the database for all spots will take place when you first load the page or click to a category.
What does this change? When the query for the latest hotspots is executed, the result is placed in the latesthotspots div. Once you click on show latest hotspots the js effect should calculate the div height and since we have the hotspots already loaded in place it should function dynamically. As I said - not tested, but this is the theory.