searchCatalog=[
{"errorMsg":"No Results"}
];
$(document).ready(function(){
boxData = genreCatalog_getBoxData();
$("#genreCatalog_sortOptions li").click(function()
{
// move selected option to be first
$(this).parent().prepend( $(this));
genreCatalog_sort( $(this).attr("sort") );
genreCatalog_changeHash();
genreCatalog_render();
genreCatalog_loadVisibleImages();
genreCatalog_setupPopup();
});
$("#genreCatalog_sortOptions li").each(function()
{
if( $(this).attr("sort") == genreCatalog_getHashParam("sort") )
{
$(this).parent().prepend( $(this));
}
});
genreCatalog_sort(genreCatalog_getHashParam("sort"));
genreCatalog_render();
genreCatalog_loadVisibleImages();
genreCatalog_setupPopup();
});
function genreCatalog_getBoxData()
{
imageBase = "https://img.exent.com/free/frg/products/%GAME_ID%/boxshot.jpg";
box = $('#genreCatalog');
cols = box.attr("cols");
rows = box.attr("rows");
slideContainer = box.find(".slides_container")[0];
pagination = box.find("div.pagenation")
paginationBulletContainer = $(pagination).find("ul");
games = searchCatalog;
numberOfGames = games.length;
return {imageBase:imageBase,
box:box,
games:games,
slideContainer:slideContainer,
cols:cols,
rows:rows,
numberOfGames:numberOfGames,
pagination:pagination,
paginationBulletContainer:paginationBulletContainer};
}
/**
* Destroys the genreCatalog's content, and rebuild it acording to the gamelist
*/
function genreCatalog_render ()
{
boxData = genreCatalog_getBoxData();
//gameBox_sort()
genreCatalog_reset();
if(boxData.games[0].errorMsg!=null){
$("#genreCatalog").append('
'+boxData.games[0].errorMsg+'
');
$('.pagenation_rib').remove();
return;
}
for(i=0; i')
currentSlide = $(slideContainer).find(".slide:last-child");
}
var defaultSlide = ' \
\
\
\
'+game.gameName+'
\
\
';
var premiumGameSlide = ' \
\
\
\
'+game.gameName+'
\
\
\
';
if(game.gameType == 2){ //if premium game
$(currentSlide).append(premiumGameSlide);
}
else{
$(currentSlide).append(defaultSlide);
}
}
genreCatalog_setPagination();
setTimeout( function(){
$(boxData.pagination).find("a,div").click(function()
{
genreCatalog_loadVisibleImages();
genreCatalog_changeHash();
});
},100);
Utils.fixUnloadImages();
}
function genreCatalog_setPagination (currentPage)
{
boxData = genreCatalog_getBoxData();
if (boxData.numberOfGames > boxData.cols*boxData.rows)
{
$(boxData.box).slides({pagination: true, paginationClass:'paginationGenreCatalog', next:'nextGenreCatalog',prev:'prevGenreCatalog',start:genreCatalog_getHashParam("page")});
$(boxData.pagination).show();
}
else
{
$(boxData.pagination).hide();
}
$(boxData.box).find('.slide').width( $(boxData.box).width()+"px" );
}
function genreCatalog_reset()
{
boxData = genreCatalog_getBoxData();
$(boxData.slideContainer).empty();
$(boxData.paginationBulletContainer).empty();
}
function genreCatalog_sort(type)
{
boxData = genreCatalog_getBoxData();
function sortGamesByRank(a,b)
{
if ( a.gameRank == b.gameRank )
{
return a.gameName.localeCompare(b.gameName);
}
else
{
return a.gameRank - b.gameRank;
}
}
function sortGamesByName(a,b)
{
return a.gameName.localeCompare(b.gameName);
}
if (type == "a-z")
{
boxData.games.sort(sortGamesByName);
}
else if (type == "rank")
{
boxData.games.sort(sortGamesByRank).reverse();
}
else
{
boxData.games.sort(sortGamesByName);
}
}
function genreCatalog_loadVisibleImages ()
{
boxData = genreCatalog_getBoxData();
$(boxData.box).find("img:visible").each(function () {
$(this).attr("src",$(this).attr("image-src"));
});
}
function genreCatalog_changeHash()
{
hash = "";
boxData = genreCatalog_getBoxData();
currentPage = $(boxData.paginationBulletContainer).find("li").index( $(boxData.paginationBulletContainer).find(".current")[0] )+1;
currentSort = $("#genreCatalog_sortOptions li:first").attr("sort");
hash+= ("page="+currentPage);
hash+= ("&sort="+currentSort);
window.location.hash = hash;
}
function genreCatalog_getHashParam(paramName)
{
attributes = window.location.hash.substr(1).split("&");
for (i=0; i 0){ //if the image have the premium styles (class=premiumGameBorder_small)
var premiumTitle = $("");
$("#genreCatalog_popup .inner_container").prepend(premiumTitle);
var playWithoutAdsBtn = $("");
$(playWithoutAdsBtn).insertBefore('#genreCatalog_popup .inner_container .clear');
$("#genreCatalog_popup #genreCatalog_downloadButton .blue_btn_28_left").removeClass("blue_btn_28_left").addClass("yellow_btn_28_left");
$("#genreCatalog_popup #genreCatalog_downloadButton .blue_btn_28_mid").css('color','#0a325f');
$("#genreCatalog_popup #genreCatalog_downloadButton .blue_btn_28_mid").removeClass("blue_btn_28_mid").addClass("yellow_btn_28_middle");
$("#genreCatalog_popup #genreCatalog_downloadButton .blue_download_btn_28_right").removeClass("blue_download_btn_28_right").addClass("yellow_btn_28_right");
}
}
}