Changeset 65842 in spip-zone


Ignore:
Timestamp:
Sep 13, 2012, 5:12:35 PM (8 years ago)
Author:
marcimat@…
Message:

Améliorer la rapidité d'exécution de la fonction de création des dates lorsqu'un événement déborde des dates sélectionnées pour l'affichage : on ne crée que les dates dans la plage d'affichage.

Location:
_plugins_/calendrier_mini/trunk
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/calendrier_mini/trunk/calendrier_mini.json_fonctions.php

    r60050 r65842  
    11<?php
    2 
     2/**
     3 * Fichier de fonction du json du calendrier mini
     4 *
     5 * @package SPIP\CalendrierMini\Fonctions
     6**/
    37if (!defined('_ECRIRE_INC_VERSION')) return;
    48
    59include_spip('inc/json');
    610
     11/**
     12 * Transforme un timestamp en date au format SQL
     13 *
     14 * @param int $t Timestamp
     15 * @return string Date au format SQL
     16**/
    717function todate($t){return date('Y-m-d H:i:s',$t);}
    818
  • _plugins_/calendrier_mini/trunk/calendriermini_fonctions.php

    r60354 r65842  
    11<?php
     2
     3/**
     4 * Balises et critères du calendrier mini
     5 *
     6 * @package SPIP\CalendrierMini\Fonctions
     7**/
    28
    39if (!defined("_ECRIRE_INC_VERSION")) return;    #securite
  • _plugins_/calendrier_mini/trunk/javascript/calendrier_mini.js.html

    r62704 r65842  
    4545        set_events: function(me,start,end,data){
    4646                var dates = [];
     47
    4748                if (data.length){
    4849                        var d,datebegin,dateend;
     
    5253                                d = new Date(d[0],d[1]-1,d[2]);
    5354                                dates.push(d);
     55
    5456                                if(data[j].end){
    55                                         datebegin = d.getTime();
     57                                        /* prendre la plus grande date de debut entre debut a afficher et l'interval donne */
     58                                        datebegin = Math.max(start * 1000,d.getTime());
    5659                                        d = data[j].end.split(" ");
    5760                                        d = d[0].split("-");
    5861                                        d = new Date(d[0],d[1]-1,d[2]);
    59                                         dateend = d.getTime();
     62                                        /* prendre la plus petite date de fin entre fin a afficher et l'interval donne */
     63                                        dateend = Math.min(end * 1000, d.getTime());
    6064                                        if (dateend>datebegin){
    6165                                                dates.push(d);
     
    6973                                }
    7074                        }
     75
    7176                        me.multiDatesPicker('addDates', dates);
    7277                        // toujours retirer la classe active qui n'a pas de sens pour l'affichage
  • _plugins_/calendrier_mini/trunk/paquet.xml

    r62704 r65842  
    22        prefix="calendriermini"
    33        categorie="date"
    4         version="2.1.4"
     4        version="2.1.5"
    55        etat="test"
    66        compatibilite="[3.0.0-beta;3.0.99]"
Note: See TracChangeset for help on using the changeset viewer.