Subversion Repositories eFlore/Applications.cel

Rev

Rev 2202 | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2202 Rev 2848
1
$(document).ready(function() {
1
$(document).ready(function() {
2
	// config depuis PHP
2
	// config depuis PHP
3
	var urlWidget = $('#colonne-menu').data('url-widget'),
3
	var urlWidget = $('#colonne-menu').data('url-widget'),
4
		modeUtilisateur = ($('#mode-stats').data('mode-courant') == 'utilisateur');
4
		modeUtilisateur = ($('#mode-stats').data('mode-courant') == 'utilisateur');
5
 
5
 
6
	$('#zone-chargement').hide();
6
	$('#zone-chargement').hide();
7
 
7
 
8
	// écouteurs de clics sur le menu
8
	// écouteurs de clics sur le menu
9
	$('#colonne-menu .nav-sidebar a').click(function() {
9
	$('#colonne-menu .nav-sidebar a').click(function() {
10
		var portion = $(this).data('portion'),
10
		var portion = $(this).data('portion'),
11
			idEmplacement = '#emplacement-resultat-' + portion;
11
			idEmplacement = '#emplacement-resultat-' + portion;
12
 
12
 
13
		// attente
13
		// attente
14
		$('#zone-chargement').show();
14
		$('#zone-chargement').show();
15
		masquerZonesResultat();
15
		masquerZonesResultat();
-
 
16
 
-
 
17
		// stats
-
 
18
		if (prod) {
-
 
19
			ga('send', 'pageview', 'statistiques/' + portion);
-
 
20
		}
16
 
21
 
17
		// rendu du contenu
22
		// rendu du contenu
18
		//alert('déjà chargé? : ' + $(idEmplacement).data('charge') + ' (' + ($(idEmplacement).data('charge') === true) + ')');
23
		//alert('déjà chargé? : ' + $(idEmplacement).data('charge') + ' (' + ($(idEmplacement).data('charge') === true) + ')');
19
		if ($(idEmplacement).data('charge')) {
24
		if ($(idEmplacement).data('charge')) {
20
			postChargement(idEmplacement, portion);
25
			postChargement(idEmplacement, portion);
21
		} else {
26
		} else {
22
			// rendu de la portion par le widget
27
			// rendu de la portion par le widget
23
			urlPortion = urlWidget + '?page=' + portion;
28
			urlPortion = urlWidget + '?page=' + portion;
24
			if (modeUtilisateur) {
29
			if (modeUtilisateur) {
25
				urlPortion += '&mode=utilisateur';
30
				urlPortion += '&mode=utilisateur';
26
			}
31
			}
27
			rendu = $.ajax({
32
			rendu = $.ajax({
28
				url: urlPortion,
33
				url: urlPortion,
29
				type: 'get',
34
				type: 'get',
30
				success: function(data) {
35
				success: function(data) {
31
					$(idEmplacement).html(data);
36
					$(idEmplacement).html(data);
32
					postChargement(idEmplacement, portion);
37
					postChargement(idEmplacement, portion);
33
					$(idEmplacement).data('charge', 'true');
38
					$(idEmplacement).data('charge', 'true');
34
				},
39
				},
35
				error: function() {
40
				error: function() {
36
					$(idEmplacement).html('Erreur: impossible de charger les statistiques');
41
					$(idEmplacement).html('Erreur: impossible de charger les statistiques');
37
					postChargement(idEmplacement, portion);
42
					postChargement(idEmplacement, portion);
38
				}
43
				}
39
			});
44
			});
40
		}
45
		}
41
 
46
 
42
		// interface
47
		// interface
43
		$(this).parent().parent().find('li.active').removeClass('active');
48
		$(this).parent().parent().find('li.active').removeClass('active');
44
		$(this).parent().addClass('active');
49
		$(this).parent().addClass('active');
45
 
50
 
46
		return false;
51
		return false;
47
	});
52
	});
48
 
53
 
49
	function postChargement(idEmplacement, portion) {
54
	function postChargement(idEmplacement, portion) {
50
		$('#zone-chargement').hide();
55
		$('#zone-chargement').hide();
51
		// affichage de la portion demandée et masquage des autres
56
		// affichage de la portion demandée et masquage des autres
52
		masquerZonesResultat();
57
		masquerZonesResultat();
53
		$(idEmplacement).show();
58
		$(idEmplacement).show();
54
	}
59
	}
55
 
60
 
56
	function masquerZonesResultat() {
61
	function masquerZonesResultat() {
57
		$('div.resultat').hide();
62
		$('div.resultat').hide();
58
	}
63
	}
59
 
64
 
60
	// chargement par défaut
65
	// chargement par défaut
61
	$('#colonne-menu a[data-portion="nombres"]').trigger('click');
66
	$('#colonne-menu a[data-portion="nombres"]').trigger('click');
62
});
67
});