
$(document).ready(function()
{
    startPagination('#dev_spe ul', '#hidden_liste_ref ul.ref_anc_inge');

    $('#dev_netassoc .lst_ref li:eq(0)').addClass('selected');

    $("#dev_netassoc .lst_ref li a").click(function(){

	//si click sur l'élément sélectionné, on selectionne le premier
	var click_sel_go_first = false;

	if($(this).parent().hasClass('selected'))
	{
	    if(!click_sel_go_first)
		return false;
	    var first =  $('#dev_netassoc .lst_ref li a:eq(0)');
	    if(first.parent().attr('ref') == $(this).parent().attr('ref'))
		return false;
	    first.click();
	    return false;
	}
	
	$('#dev_netassoc .lst_ref li.selected').switchClass('selected', '', 'fast');
	$('#dev_spe').fadeOut(400, function(){
	    startPagination('#dev_spe ul', '#hidden_liste_ref ul.' + $('#dev_netassoc .lst_ref li.selected').attr('ref'));
	    $('#dev_spe').fadeIn('slow');
	    
	});
	$(this).parent().switchClass('', 'selected', 'fast');

	return false;
    });
    $("#content_admin .btn_pos").hide();
    $('#tab_ref tbody').sortable({
	items: 'tr',
	handle: 'td',
	update: function() {$("#content_admin .btn_pos").show();}
    });
    $('#tab_ref tr').disableSelection();
    
});

function clearSearch(tag)
{
    $(tag).children('input[type=text]').attr('value', '').focus();
    return false;
}

function save_positions(item)
{
    $.post("ajax_saveRefPositions.php", item.closest('form').serialize(), function(html) {
	$("#content_admin .btn_pos").hide();
    });
}


function explode(cut, chaine, fin)
{
    if(!chaine || chaine.search(cut) == -1)
	return -1;
    var str = chaine.split(cut);
    var str_tmp = '';
    var res = new Array();
    var i = 0;
    
    for(i = 0; i < str.length; i++)
    {
	/*
	 * la chaine peut contenir des espaces et des tabulations, sans
	 * avoir de contenu affichable, a cause de la mise en page.
	 */
	str_tmp = str[i].replace(/\s|\t/g, '');
	if(str_tmp == '')
	    continue;
	if(fin == true)
	    res[res.length] = str[i] + cut;
	else
	    res[res.length] = cut + str[i];
    }
    return res;
}

//pagination
function switchPage(container, page_index, liste)
{
    var item = $(liste).html();
    var items = explode('<li>', item);

    //pour IE 8
    if(items == -1)
	items = explode('<LI>', item);

    //pour IE 7
    //on utilise </li> car ie7 rajoute des parametres dans les <li> (ex <LI cachesize=2> ... </LI>)
    if(items == -1)
	items = explode('</LI>', item, true);
    
    var html = '';
    var start = page_index * 4;

    //affichage des pages
    var nb_pages = items.length / options.items_per_page;
    if(nb_pages > 1)
    {
	for(var i = 0; i < nb_pages; i++)
	{
	    if(i == page_index)
		html += '<a href="#" class="selectedpage">' + (i + 1) + '</a> ';
	    else
		html += '<a href="#" onclick="switchPage(\'' + container +'\', ' + i +', \'' + liste + '\'); return false;">' + (i + 1) + '</a> ';
	}
	$('#dev_spe .pages_container').html(html);
    }

    html = '';

    for(i = start; i < start + 4 && i < items.length; i++)
    {
	html += items[i];
    }
//    $(container).fadeOut('slow', function(){
//	$(container).html(html);
//	$(container).fadeIn('slow');
//    })

    $(container).hide(options.anim, options.speed, function(){
	$(container).html(html);
	$(container).show(options.anim, options.speed);
    })
    
    return false;
}

function startPagination(container, liste)
{
    options = {
	items_per_page: 4,
	anim: 'slide',
	speed: ''
    };
    var count = $(liste + ' li').size();
    if(count <= options.items_per_page )
    {
	$('#dev_spe .pages_container').html('');
	switchPage(container, 0, liste);
	//affichage direct
	//$(container).html($(liste).html());
	return false;
    }

    switchPage(container, 0, liste);

    return false;
}

