Browse Source

Remise sur pied du trunk qui avait quelques versions de retard sur la branche V2

svn/root/tags/v2.4.4
peetdu@gmail.com 5 years ago
parent
commit
078785b6ba
  1. 1
      .gitattributes
  2. 23
      base/simplecal.php
  3. 10
      json/gis_evenements.html
  4. 4
      lang/simplecal.xml
  5. 2
      lang/simplecal_fr.php
  6. 36
      paquet.xml
  7. 31
      prive/objets/liste/evenements.html
  8. 8
      prive/squelettes/contenu/evenement.html
  9. 2
      prive/squelettes/contenu/evenements.html
  10. 12
      prive/squelettes/inclure/simplecal-rubrique-enfants.html
  11. 2
      prive/squelettes/inclure/simplecal-rubrique-prop.html
  12. 36
      prive/squelettes/navigation/evenements.html
  13. 26
      simplecal_autoriser.php
  14. 11
      simplecal_pipelines.php

1
.gitattributes vendored

@ -18,6 +18,7 @@ inc/simplecal_classement.php -text
inc/simplecal_conf.php -text
inc/simplecal_filtres.php -text
inc/simplecal_utils.php -text
json/gis_evenements.html -text
lang/evenement_en.php -text
lang/evenement_fr.php -text
lang/paquet-simplecal.xml -text

23
base/simplecal.php

@ -7,7 +7,9 @@
* cf. paquet.xml pour plus d'infos.
*/
if (!defined("_ECRIRE_INC_VERSION")) return;
if (!defined("_ECRIRE_INC_VERSION")) {
return;
}
function simplecal_declarer_tables_interfaces($interfaces) {
@ -27,7 +29,7 @@ function simplecal_declarer_tables_interfaces($interfaces) {
}
function simplecal_declarer_tables_objets_sql($tables){
function simplecal_declarer_tables_objets_sql($tables) {
// Champs de la table spip_evenements
$fields = array(
@ -63,13 +65,6 @@ function simplecal_declarer_tables_objets_sql($tables){
"KEY id_trad" => "id_trad",
"KEY lang" => "lang"
);
// champs candidats a la jointure
$join = array(
"id_evenement" => "id_evenement",
"id_secteur" => "id_secteur",
"id_rubrique" => "id_rubrique"
);
// champ 'statut'
$statut = array(
@ -102,14 +97,12 @@ function simplecal_declarer_tables_objets_sql($tables){
'principale' => 'oui',
'field'=> $fields,
'key' => $key,
'join' => $join,
'titre' => 'titre, lang',
'date' => 'date', // indique le nom du field pour le formulaires_dater_charger_dist
'champs_editables' => array('titre', 'date_debut', 'date_fin', 'horaire', 'descriptif', 'texte', 'lieu', 'adresse', 'lien_titre', 'lien_url', 'type', 'id_objet'),
'champs_versionnes' => array('id_rubrique', 'titre', 'descriptif', 'texte', 'lieu', 'adresse', 'date_debut', 'date_fin', 'lien_titre', 'lien_url', 'jointure_auteurs'),
'champs_versionnes' => array('titre', 'descriptif', 'texte', 'lieu', 'adresse', 'lien_titre', 'lien_url'),
'rechercher_champs' => array('titre'=>8, 'descriptif'=>4, 'texte'=>2),
'rechercher_jointures' => array('document' => array('titre' => 2, 'descriptif' => 1)),
'tables_jointures' => array('id_auteur' => 'auteurs_liens'),
'tables_jointures' => array(),
'statut' => array($statut),
'statut_textes_instituer' => $statut_textes_instituer,
'statut_titres' => $statut_titres,
@ -127,6 +120,4 @@ function simplecal_declarer_tables_objets_sql($tables){
);
return $tables;
}
?>
}

10
json/gis_evenements.html

@ -0,0 +1,10 @@
<BOUCLE_events(EVENEMENTS){gis}{id_evenement ?}{id_rubrique ?}{id_secteur ?}{id_mot ?}{id_auteur ?}{recherche ?}{0, #ENV{limit}}{","}>
{"type": "Feature",
["geometry": (#GEOMETRY|appliquer_filtre{wkt_to_json}|sinon{{"type": "Point", "coordinates": \[#LON, #LAT\]}}),]
"id":"#ID_GIS",
"properties": {
"title":[(#URL_EVENEMENT|extraire_multi|lien_ou_expose{[(#TITRE_GIS*|sinon{#TITRE*}|supprimer_numero)]}|json_encode)],
"description":[(#DESCRIPTIF_GIS|sinon{#DESCRIPTIF}|json_encode)][
(#LOGO_GIS|gis_icon_properties)][,
"styles": (#GEOMETRY_STYLES|appliquer_filtre{geometry_styles_to_json})]
}}</BOUCLE_events>

4
lang/simplecal.xml

@ -1,6 +1,6 @@
<traduction module="simplecal" gestionnaire="salvatore" url="https://trad.spip.net" source="svn://zone.spip.org/spip-zone/_plugins_/simple_calendrier/trunk/lang/" reference="fr">
<langue code="en" url="https://trad.spip.net/tradlang_module/simplecal?lang_cible=en" total="169" traduits="141" relire="0" modifs="5" nouveaux="23" pourcent="83.43">
<langue code="en" url="https://trad.spip.net/tradlang_module/simplecal?lang_cible=en" total="167" traduits="141" relire="0" modifs="5" nouveaux="21" pourcent="84.43">
</langue>
<langue code="fr" url="https://trad.spip.net/tradlang_module/simplecal?lang_cible=fr" total="169" traduits="169" relire="0" modifs="0" nouveaux="0" pourcent="100.00">
<langue code="fr" url="https://trad.spip.net/tradlang_module/simplecal?lang_cible=fr" total="167" traduits="167" relire="0" modifs="0" nouveaux="0" pourcent="100.00">
</langue>
</traduction>

2
lang/simplecal_fr.php

@ -144,7 +144,7 @@ $GLOBALS[$GLOBALS['idx_lang']] = array(
'info_texte_2possibilites' => 'Texte : spécifique (2ème possibilité)',
'info_titre' => 'Titre',
'info_tous_evenements_en_redaction' => 'Tous les évènements en cours de rédaction',
'info_tous_evenements_presents' => 'Tous les évènements publiés dans cette rubrique',
'info_tous_evenements_presents' => 'Tous les évènements à venir publiés dans cette rubrique',
'info_tous_evenements_refuses' => 'Tous les évènements refusés',
'item_mots_cles_association_evenements' => 'aux évènements',

36
paquet.xml

@ -1,9 +1,9 @@
<paquet
prefix="simplecal"
categorie="date"
version="2.2.4"
version="2.2.12"
etat="stable"
compatibilite="[3.0.0;3.1.*]"
compatibilite="[3.0.0;3.2.*]"
logo="prive/themes/spip/images/evenement-32.png"
schema="2.1.5"
documentation="https://contrib.spip.net/Simple-Calendrier-v2"
@ -16,27 +16,29 @@
<licence>GPL</licence>
<credit lien="http://jqueryui.com/themeroller/">Themes CSS (datepicker)</credit>
<pipeline nom="declarer_tables_interfaces" inclure="base/simplecal.php" /> <!-- OK SPIP3 -->
<pipeline nom="declarer_tables_objets_sql" inclure="base/simplecal.php" /> <!-- OK SPIP3 -->
<pipeline nom="configurer_liste_metas" inclure="simplecal_pipelines.php" /> <!-- OK SPIP3 -->
<pipeline nom="autoriser" inclure="simplecal_autoriser.php" /> <!-- OK SPIP3 -->
<pipeline nom="declarer_tables_interfaces" inclure="base/simplecal.php" />
<pipeline nom="declarer_tables_objets_sql" inclure="base/simplecal.php" />
<pipeline nom="configurer_liste_metas" inclure="simplecal_pipelines.php" />
<pipeline nom="autoriser" inclure="simplecal_autoriser.php" />
<pipeline nom="header_prive" inclure="simplecal_pipelines.php" />
<pipeline nom="insert_head_css" inclure="simplecal_pipelines.php" /> <!-- OK SPIP3 -->
<pipeline nom="boite_infos" inclure="simplecal_pipelines.php" /> <!-- OK SPIP3 -->
<pipeline nom="affiche_milieu" inclure="simplecal_pipelines.php" /> <!-- OK SPIP3 -->
<pipeline nom="affiche_gauche" inclure="simplecal_pipelines.php" /> <!-- OK SPIP3 -->
<pipeline nom="affiche_auteurs_interventions" inclure="simplecal_pipelines.php" /> <!-- OK SPIP3 -->
<pipeline nom="rubrique_encours" inclure="simplecal_pipelines.php" /> <!-- OK SPIP3 -->
<pipeline nom="affiche_enfants" inclure="simplecal_pipelines.php" /> <!-- OK SPIP3 -->
<pipeline nom="insert_head_css" inclure="simplecal_pipelines.php" />
<pipeline nom="boite_infos" inclure="simplecal_pipelines.php" />
<pipeline nom="affiche_milieu" inclure="simplecal_pipelines.php" />
<pipeline nom="affiche_gauche" inclure="simplecal_pipelines.php" />
<pipeline nom="affiche_auteurs_interventions" inclure="simplecal_pipelines.php" />
<pipeline nom="rubrique_encours" inclure="simplecal_pipelines.php" />
<pipeline nom="affiche_enfants" inclure="simplecal_pipelines.php" />
<pipeline nom="objet_compte_enfants" inclure="simplecal_pipelines.php" />
<pipeline nom="accueil_encours" inclure="simplecal_pipelines.php" /> <!-- OK SPIP3 -->
<pipeline nom="accueil_informations" inclure="simplecal_pipelines.php" /> <!-- OK SPIP3 -->
<pipeline nom="compter_contributions_auteur" inclure="simplecal_pipelines.php" /> <!-- OK SPIP3 -->
<pipeline nom="optimiser_base_disparus" inclure="simplecal_pipelines.php" /> <!-- OK SPIP3 -->
<pipeline nom="accueil_encours" inclure="simplecal_pipelines.php" />
<pipeline nom="accueil_informations" inclure="simplecal_pipelines.php" />
<pipeline nom="compter_contributions_auteur" inclure="simplecal_pipelines.php" />
<pipeline nom="optimiser_base_disparus" inclure="simplecal_pipelines.php" />
<pipeline nom="propres_creer_chaine_url" inclure="simplecal_pipelines.php" />
<pipeline nom="corbeille_table_infos" inclure="simplecal_pipelines.php" />
<pipeline nom="jqueryui_plugins" inclure="simplecal_pipelines.php" />
<utilise nom="gis" compatibilite="[4.44.2;]" />
<!-- Prendre en compte la table des evenements dans les recherches -->
<pipeline nom="rechercher_liste_des_champs" inclure="simplecal_pipelines.php" />

31
prive/objets/liste/evenements.html

@ -1,36 +1,31 @@
[(#REM)
Note : css automatique dans /prive/themes/spip/lists.css.html
]
<B_liste_evt>
[(#SET{defaut_tri,#ARRAY{
titre,1,
date_debut,1,
id_evenements,1,
points,-1
}})]<B_liste_evt>
#ANCRE_PAGINATION
<div class="liste-objets evenements">
<table class="spip liste">
[<caption><strong class="caption">(#ENV*{titre,#GRAND_TOTAL|singulier_ou_pluriel{simplecal:info_1_evenement,simplecal:info_nb_evenements}})</strong></caption>]
<thead>
<tr class="first_row">
<th class="statut"><span title="<:lien_trier_statut|attribut_html:>">#</span></th>
<th class="titre"><:info_titre:></th>
<th class="auteur"><:auteur:></th>
<th class="date"><:date:></th>
<th class="id"><:info_numero_abbreviation:></th>
<th class="statut" scope="col">[(#TRI{statut,<span title="<:lien_trier_statut|attribut_html:>">#</span>,ajax})]</th>
<th class="titre" scope="col">[(#TRI{titre,<:info_titre:>,ajax})]</th>
<th class="date" scope="col">[(#TRI{date_debut,<:simplecal:dates:>,ajax})]</th>
<th class="id" scope="col">[(#TRI{id_evenement,<:info_numero_abbreviation:>,ajax})]</th>
</tr>
</thead>
<tbody>
<!-- id_auteur + id_mot pose pb ensemble ... -->
<BOUCLE_liste_evt(EVENEMENTS){id_evenement?}{id_auteur?}{id_secteur?}{id_rubrique?}{id_mot?}{statut?}{where?}{recherche?}{par date_debut, date}{pagination 10}>
<BOUCLE_liste_evt(EVENEMENTS){id_evenement?}{id_rubrique?}{id_secteur?}{id_mot?}{id_auteur?}{where?}{statut?}{recherche?}{tri #ENV{par, titre},#GET{defaut_tri}}{par date_debut, date_fin}{pagination 10}>
<tr class="[(#COMPTEUR_BOUCLE|alterner{row_odd,row_even})]">
<td class="statut">[(#STATUT|puce_statut{'evenement',#ID_EVENEMENT,#ID_RUBRIQUE})]</td>
<td class="titre principale">
[(#LOGO_EVENEMENT|image_reduire{20,26})]
<a href="[(#ID_EVENEMENT|generer_url_entite{evenement})]"
title="<:info_numero_abbreviation|attribut_html:> #ID_EVENEMENT"
[hreflang="(#ENV{lang}|=={#LANG}|non|?{#LANG})"]>#TITRE</a>
[(#DATE_DEBUT|affdate_debut_fin{#DATE_FIN,non})][ - (#LIEU)]
</td>
<td class="auteur"><BOUCLE_auteurs(AUTEURS){id_evenement}{', '}><a href="[(#ID_AUTEUR|generer_url_entite{auteur})]">#NOM</a></BOUCLE_auteurs></td>
<td class="date secondaire">[(#DATE|affdate_jourcourt)]</td>
[hreflang="(#ENV{lang}|=={#LANG}|non|?{#LANG})"]>#TITRE</a>[(#LIEU|textebrut)]</td>
<td class="date secondaire">[(#DATE_DEBUT|affdate_debut_fin{#DATE_FIN,non,abbr})]</td>
<td class="id">[(#AUTORISER{modifier,evenement,#ID_EVENEMENT}|?{
<a href="[(#URL_ECRIRE{evenement_edit,id_evenement=#ID_EVENEMENT})]">#ID_EVENEMENT</a>,
#ID_EVENEMENT

8
prive/squelettes/contenu/evenement.html

@ -17,17 +17,23 @@
#FORMULAIRE_DATER{evenement,#ID_EVENEMENT}
</div>
<!--affiche_milieu-->
<div class="ajax">
#FORMULAIRE_EDITER_LIENS{auteurs,evenement,#ID_EVENEMENT}
</div>
<div id="wysiwyg">
<INCLURE{fond=prive/objets/contenu/evenement,id=#ID_EVENEMENT} />
<INCLURE{fond=prive/objets/contenu/evenement,id=#ID_EVENEMENT,id_evenement=#ID_EVENEMENT,virtuel=oui,ajax=wysiwyg,wysiwyg=1}>
</div>
<div class="nettoyeur"></div>
#PIPELINE{afficher_complement_objet,#ARRAY{args,#ARRAY{type,evenement,id,#ID_EVENEMENT},data,'<div class="nettoyeur"></div>'}}
#BOITE_FERMER
[(#EVAL{_AJAX}|oui)
<script type="text/javascript">if (window.jQuery)
jQuery(function(){jQuery('#navigation>div').ajaxReload({args:{exec:'evenement'}});})

2
prive/squelettes/contenu/evenements.html

@ -7,7 +7,7 @@
[(#SET{where,[(#VAL{''}|simplecal_evenements_where{#ENV{mode,''}, #ENV{annee,''},#ENV{mois,''}})]})]
[(#INCLURE{fond=prive/objets/liste/evenements,where=#GET{where},par=date,ajax,env})]
[(#INCLURE{fond=prive/objets/liste/evenements,where=#GET{where},par=date_debut,ajax,env})]
[(#GET{editable})

12
prive/squelettes/inclure/simplecal-rubrique-enfants.html

@ -2,14 +2,16 @@
Les evenements en cours de redaction
]
[(#AUTORISER{publierdans,rubrique,#ID_RUBRIQUE}|?{
#INCLURE{fond=prive/objets/liste/evenements,titre=<:simplecal:info_tous_evenements_en_redaction:>,statut=prepa,id_rubrique,par=date,ajax,env}
#INCLURE{fond=prive/objets/liste/evenements,titre=<:simplecal:info_tous_evenements_en_redaction:>,statut=prepa,id_rubrique,par=date_debut,ajax,env}
,
#INCLURE{fond=prive/objets/liste/evenements,titre=<:simplecal:info_tous_evenements_en_redaction:>,statut=prepa,id_rubrique,id_auteur=#SESSION{id_auteur},par=date,ajax,env}
#INCLURE{fond=prive/objets/liste/evenements,titre=<:simplecal:info_tous_evenements_en_redaction:>,statut=prepa,id_rubrique,id_auteur=#SESSION{id_auteur},par=date_debut,ajax,env}
})
]
[(#REM)
Les evenements publies
Les evenements publies et à venir
]
[(#INCLURE{fond=prive/objets/liste/evenements,titre=<:simplecal:info_tous_evenements_presents:>,statut=publie,id_rubrique,par=date,ajax,env}
|sinon{#INCLURE{fond=prive/objets/liste/evenements,titre=<:simplecal:info_tous_evenements_refuses:>,statut=refuse,id_rubrique,par=date,ajax,env}})]
[(#SET{where, #VAL{''}|simplecal_evenements_where{#ENV{mode,'avenir'}} })]
[(#INCLURE{fond=prive/objets/liste/evenements,titre=<:simplecal:info_tous_evenements_presents:>,where=#GET{where},statut=publie,id_rubrique,par=date_debut,ajax,env}
|sinon{#INCLURE{fond=prive/objets/liste/evenements,titre=<:simplecal:info_tous_evenements_refuses:>,statut=refuse,id_rubrique,par=date_debut,ajax,env}})]

2
prive/squelettes/inclure/simplecal-rubrique-prop.html

@ -1,4 +1,4 @@
[(#REM)
Les evenements proposes
]
[(#INCLURE{fond=prive/objets/liste/evenements,titre=<:simplecal:info_evenements_proposes:>,statut=prop,id_rubrique,par=date,ajax,env})]
[(#INCLURE{fond=prive/objets/liste/evenements,titre=<:simplecal:info_evenements_proposes:>,statut=prop,id_rubrique,par=date_debut,ajax,env})]

36
prive/squelettes/navigation/evenements.html

@ -1,23 +1,25 @@
#BOITE_OUVRIR{'',info center}
[(#CHEMIN_IMAGE{simplecal-logo-96.png}|balise_img|inserer_attribut{alt,<:simplecal:alt_img_logo:>})]
<br />
<:simplecal:description_plugin:>
#BOITE_FERMER
[(#ENV{id_rubrique}|non)
#BOITE_OUVRIR{'',info center}
[(#CHEMIN_IMAGE{simplecal-logo-96.png}|balise_img|inserer_attribut{alt,<:simplecal:alt_img_logo:>})]
<br />
<:simplecal:description_plugin:>
#BOITE_FERMER
]
[(#ENV{id_rubrique}|oui)
#BOITE_OUVRIR{'',raccourcis}
[(#URL_ECRIRE{rubrique,id_rubrique=#ENV{id_rubrique}}|icone_horizontale{<:simplecal:retour_rubrique:>,simplecal_logo,''})]
[(#URL_ECRIRE{evenements,mode=avenir}|icone_horizontale{<:simplecal:raccourcis_tous_evenements:>,simplecal_logo,''})]
#BOITE_FERMER
#BOITE_OUVRIR{'',raccourcis}
[(#URL_ECRIRE{evenements}|icone_horizontale{<:simplecal:raccourcis_tous_evenements:>,evenement-16.png,''})]
#BOITE_FERMER
]
[#BOITE_OUVRIR{'',basic}
(#VAL{#ENV{annee}}|simplecal_classement{#ENV{mois},#ENV{mode},#ENV{id_rubrique}})
#BOITE_FERMER]
[(#ENV{id_rubrique}|non)
[#BOITE_OUVRIR{'',basic}
(#VAL{#ENV{annee}}|simplecal_classement{#ENV{mois},#ENV{mode},#ENV{id_rubrique}})
#BOITE_FERMER]
[(#AUTORISER{demo,simplecal})
#BOITE_OUVRIR{'',raccourcis}
[(#URL_ECRIRE{simplecal_demo}|icone_horizontale{<:simplecal:raccourcis_demo:>,evenement,''})]
#BOITE_FERMER
[(#AUTORISER{demo,simplecal})
#BOITE_OUVRIR{'',raccourcis}
[(#URL_ECRIRE{simplecal_demo}|icone_horizontale{<:simplecal:raccourcis_demo:>,evenement,''})]
#BOITE_FERMER
]
]

26
simplecal_autoriser.php

@ -126,4 +126,30 @@ function autoriser_evenement_modifier($faire, $type, $id, $qui, $opt) {
return $autorise;
}
/**
* Autorisation de créer un événement dans une rubrique
*
* @param string $faire Action demandée
* @param string $type Type d'objet sur lequel appliquer l'action
* @param int $id Identifiant de l'objet
* @param array $qui Description de l'auteur demandant l'autorisation
* @param array $opt Options de cette autorisation
* @return bool true s'il a le droit, false sinon
**/
function autoriser_rubrique_creerevenementdans_dist($faire, $type, $id, $qui, $opt) {
return ($id and autoriser('voir', 'rubrique', $id) and autoriser('creer', 'evenement', $id));
}
/* Compatibilité avec le plugin LIM : restriction par rubrique */
if (!function_exists('autoriser_rubrique_creerevenementdans') AND test_plugin_actif('lim')) {
function autoriser_rubrique_creerevenementdans($faire, $type, $id, $qui, $opt) {
$quelles_rubriques = lire_config('lim_rubriques/evenement');
is_null($quelles_rubriques) ? $lim_rub = true : $lim_rub = !in_array($id,$quelles_rubriques);
return
$lim_rub
AND autoriser_rubrique_creerevenementdans_dist($faire, $type, $id, $qui, $opt);
}
}
?>

11
simplecal_pipelines.php

@ -194,6 +194,17 @@ function simplecal_affiche_gauche($flux) {
$flux['data'] .= $portlet;
}
}
// On se trouve dans une rubrique
if ($exec == 'rubrique'){
$id_rubrique = $flux['args']['id_rubrique'];
$contexte = array(
'id_rubrique' => $flux['args']['id_rubrique'],
'mode' => 'avenir'
);
$nav_evenements = recuperer_fond('prive/squelettes/navigation/evenements', $contexte);
$flux['data'] .= $nav_evenements;
}
return $flux;
}

Loading…
Cancel
Save