/branches/v2.27-secateur/widget/modules/cartopoint/squelettes/carte_defaut.tpl.html |
---|
83,6 → 83,9 |
if (referentiel != null) { |
filtreCommun += '&referentiel=<?=rawurlencode($referentiel)?>'; |
} |
var baseURLServicesAnnuaireTpl = '<?= $baseURLServicesAnnuaireTpl; ?>', |
baseURLServicesCelTpl = '<?= $baseURLServicesCelTpl; ?>'; |
var titreCarte = '<?= ($titre != null) ? addslashes($titre) : "null"; ?>', |
urlLogo = '<?= ($logo != null) ? $logo : "null"; ?>', |
urlSite = '<?= ($url_site != null) ? $url_site : "null"; ?>', |
415,4 → 418,4 |
</form> |
</div> |
</body> |
</html> |
</html> |
/branches/v2.27-secateur/widget/modules/cartopoint/squelettes/scripts/carto.js |
---|
1083,9 → 1083,9 |
if(typeEnvoi == "non-inscrit") { |
// l'envoi au non inscrits passe par le service intermédiaire du cel |
// qui va récupérer le courriel associé à l'obs indiquée |
var urlMessage = "https://api.tela-botanica.org/service:cel:celMessage/obs/"+destinataireId; |
var urlMessage = baseURLServicesCelTpl.replace('%s', 'celMessage/obs/'+destinataireId); |
} else { |
var urlMessage = "https://www.tela-botanica.org/service:annuaire:Utilisateur/"+destinataireId+"/message"; |
var urlMessage = baseURLServicesAnnuaireTpl.replace('%s', 'Utilisateur/'+destinataireId+'/message'); |
} |
var erreurMsg = ""; |
var donnees = new Array(); |
1100,7 → 1100,7 |
champ.value += "\n--\n"+ |
"Ce message vous est envoyé par l'intermédiaire du widget carto "+ |
"du Carnet en Ligne du réseau Tela Botanica.\n"+ |
"https://www.tela-botanica.org/widget:cel:carto"; |
"https://www.tela-botanica.org/widget:cel:cartoPoint"; |
} |
donnees[index] = {'name':cle,'value':champ.value}; |
1440,4 → 1440,4 |
msg = 'La variable vaut null.'; |
} |
console.log(msg); |
} |
} |
/branches/v2.27-secateur/widget/modules/cartopoint/squelettes/carte_defaut_en.tpl.html |
---|
83,6 → 83,9 |
if (referentiel != null) { |
filtreCommun += '&referentiel=<?=rawurlencode($referentiel)?>'; |
} |
var baseURLServicesAnnuaireTpl = '<?= $baseURLServicesAnnuaireTpl; ?>', |
baseURLServicesCelTpl = '<?= $baseURLServicesCelTpl; ?>'; |
var titreCarte = '<?= ($titre != null) ? addslashes($titre) : "null"; ?>', |
urlLogo = '<?= ($logo != null) ? $logo : "null"; ?>', |
urlSite = '<?= ($url_site != null) ? $url_site : "null"; ?>', |
414,4 → 417,4 |
</form> |
</div> |
</body> |
</html> |
</html> |
/branches/v2.27-secateur/widget/modules/cartopoint/squelettes/carte_defaut_nl.tpl.html |
---|
83,6 → 83,9 |
if (referentiel != null) { |
filtreCommun += '&referentiel=<?=rawurlencode($referentiel)?>'; |
} |
var baseURLServicesAnnuaireTpl = '<?= $baseURLServicesAnnuaireTpl; ?>', |
baseURLServicesCelTpl = '<?= $baseURLServicesCelTpl; ?>'; |
var titreCarte = '<?= ($titre != null) ? addslashes($titre) : "null"; ?>', |
urlLogo = '<?= ($logo != null) ? $logo : "null"; ?>', |
urlSite = '<?= ($url_site != null) ? $url_site : "null"; ?>', |
414,4 → 417,4 |
</form> |
</div> |
</body> |
</html> |
</html> |
/branches/v2.27-secateur/widget |
---|
Property changes: |
Modified: svn:mergeinfo |
Merged /trunk/widget:r3077-3083 |
/branches/v2.27-secateur/jrest/bibliotheque/GestionUtilisateur.php |
---|
47,6 → 47,7 |
/** |
* Retourne les informations contenues dans la table cel_utilisateurs_infos, |
* pour un login (adresse courriel) donné |
* @TODO un jour, se baser sur l'ID pour éviter les difficultés de migration de courriel |
*/ |
public function lireCelUtilisateursInfos($login) { |
$requete = 'SELECT * '. |
148,7 → 149,9 |
return false; |
} |
// sinon, si on a affaire à quelqu'un de connecté : |
// sinon, si on a affaire à quelqu'un de connecté : on récupère son profil local |
// Attention, si l'utilisateur a changé d'email depuis la dernière connection, |
// son profil local ne sera pas retrouvé; le cas est traité plus bas |
$infosCUI = $this->lireCelUtilisateursInfos($login); |
$retour = false; |
165,8 → 168,10 |
$retour = $infosCUI; |
} |
} else { |
// première connexion au CeL ! |
// première connexion au CeL ou changement d'email ! Crée le compte ou met à jour l'email |
$this->initialiserInfosUtilisateur(); |
// re-lecture du nouveau profil local (si l'email a changé) |
$retour = $this->lireCelUtilisateursInfos($login); |
$this->affecterDonneesWidgetSaisie($login, $retour); |
} |
// booleanisation des valeurs |
326,7 → 331,12 |
. Cel::db()->proteger($this->token_decode['nom']) . ', ' |
. Cel::db()->proteger($this->token_decode['sub']) . ', ' |
. "'0', '0', NULL, NOW()" |
. ' ) ON DUPLICATE KEY UPDATE date_premiere_utilisation = NOW()' |
. ' ) ON DUPLICATE KEY UPDATE' |
. ' date_premiere_utilisation = NOW(),' |
. ' intitule = ' . Cel::db()->proteger($this->token_decode['intitule']) . ',' |
. ' prenom = ' . Cel::db()->proteger($this->token_decode['prenom']) . ',' |
. ' nom = ' . Cel::db()->proteger($this->token_decode['nom']) . ',' |
. ' courriel = ' . Cel::db()->proteger($this->token_decode['sub']) |
. ' -- '.__FILE__.':'.__LINE__ |
; |
Cel::db()->executer($requete); |
/branches/v2.27-secateur/jrest/bibliotheque/GestionMotsClesChemin.php |
---|
493,7 → 493,7 |
"AND id_utilisateur = $idUtilisateurP ". |
' -- '.__FILE__.':'.__LINE__; |
$resultat = Cel::db()->executer($requete); |
$resultat = Cel::db()->executerRequete($requete); |
return $resultat; |
} |
707,4 → 707,4 |
$migration = ($migration !== false) ? true : false; |
return $migration; |
} |
} |
} |
Property changes: |
Modified: svn:mergeinfo |
Merged /trunk/jrest/bibliotheque/GestionMotsClesChemin.php:r3077-3083 |
/branches/v2.27-secateur/jrest/services/ImportXLS.php |
---|
32,6 → 32,7 |
ini_set('xdebug.cli_color', 2); |
date_default_timezone_set('Europe/Paris'); |
require_once 'lib/PHPExcel/Classes/PHPExcel.php'; |
require_once 'bibliotheque/GestionMotsClesChemin.php'; |
// nombre d'INSERT à cumuler par requête SQL |
// (= nombre de lignes XLS à bufferiser) |
284,7 → 285,7 |
} |
} |
list($enregistrements, $images, $mots_cle, $champs_etendus) = self::chargerLignes($this, $donnees, $this->colonnes_statiques, $dernier_ordre); |
list($enregistrements, $images, $mots_cle, $champs_etendus) = self::chargerLignes($this, $donnees, $this->colonnes_statiques, $dernier_ordre, $config); |
if (! $enregistrements) { |
break; |
} |
307,6 → 308,10 |
$stmt->execute($donnees); |
# @TODO lier les mots-clées de l'arbre à l'obs nouvellement insérée, sinon seuls les mots-clés texte |
# seront à jour, et ils seront écrasés à la prochaine modification de mots-clés pour cette obs... |
# => nécessite d'insérer les obs une par une pour avoir le dernier id inséré |
$dernier_autoinc = Cel::db()->lastInsertId(); |
Cel::db()->commit(); |
531,7 → 536,7 |
/* |
* charge un groupe de lignes |
*/ |
static function chargerLignes($cel, $lignes, $colonnes_statiques, &$dernier_ordre) { |
static function chargerLignes($cel, $lignes, $colonnes_statiques, &$dernier_ordre, $config) { |
$enregistrement = NULL; |
$enregistrements = array(); |
$toutes_images = array(); |
549,7 → 554,7 |
continue; |
} |
if ($enregistrement = self::chargerLigne($ligne, $dernier_ordre, $cel)) { |
if ($enregistrement = self::chargerLigne($ligne, $dernier_ordre, $cel, $config)) { |
// $enregistrements[] = array_merge($colonnes_statiques, $enregistrement); |
if ($enregistrement['latitude'] == NULL && $enregistrement['longitude'] == NULL) { |
if (isset($enregistrement['_champs_etendus']['latitudeDebutRue'])) { |
602,7 → 607,7 |
} |
} |
static function stockerMotsCle($enregistrements, $tous_mots_cle, $lastid) { |
static function stockerMotsCle($enregistrements, $tous_mots_cle) { |
$c = 0; |
// debug: var_dump($tous_mots_cle);die; |
foreach ($tous_mots_cle as $v) { |
650,7 → 655,7 |
car ce tableau est passé à un PDO::preparedStatement() qui applique |
proprement les règle d'échappement. |
*/ |
static function chargerLigne($ligne, $dernier_ordre, $cel) { |
static function chargerLigne($ligne, $dernier_ordre, $cel, $config) { |
// évite des notices d'index lors des trigger_error() |
$ref_ligne = !empty($ligne[C_NOM_SEL]) ? trim($ligne[C_NOM_SEL]) : ''; |
739,7 → 744,7 |
} |
if (@$ligne[C_MOTS_CLES_TEXTE]) { |
self::traiterMotsCle($ligne[C_MOTS_CLES_TEXTE], $cel->id_utilisateur, $enregistrement); |
self::traiterMotsCle($ligne[C_MOTS_CLES_TEXTE], $cel->id_utilisateur, $enregistrement, $config); |
} |
$champs_etendus = self::traiterChampsEtendus($ligne, self::$indexes_colonnes_etendues); |
776,22 → 781,41 |
} |
} |
static function traiterMotsCle($str, $id_utilisateur, &$enregistrement) { |
static function traiterMotsCle($str, $id_utilisateur, &$enregistrement, $config) { |
$liste_mots_cle = $liste_mots_cle_recherche = array_map('trim', array_unique(array_filter(explode(',', $str)))); |
array_walk($liste_mots_cle_recherche, array(__CLASS__, '__anonyme_4')); |
if (self::$gestion_mots_cles == null) { |
$gestion_mots_cles = new GestionMotsCles($this->config, 'obs'); |
#if (self::$gestion_mots_cles == null) { |
if (true) { |
$gestion_mots_cles = new GestionMotsClesChemin($config, 'obs'); |
} |
// Recherche des IDs des mots-cles |
$mots_cles_ids = $gestion_mots_cles->obtenirIdsMotClesPourMotsCles($liste_mots_cle, $id_utilisateur); |
// Y aura-t-il des nouvaux mots-cles |
foreach ($mots_cles_ids as $mot_cle) { |
$resultat[$mot_cle['id_mot_cle']] = $mot_cle['mot_cle']; |
} |
if ($resultat == null) { |
// array_diff() ne gère pas les NULL en entrée |
$nouveaux_mots_cles = $liste_mots_cle; |
} else { |
$nouveaux_mots_cles = array_diff($liste_mots_cle, $resultat); |
} |
// Ajout des mots-cles inexistants dans l'arbre |
if (count($nouveaux_mots_cles) > 0) { |
foreach ($nouveaux_mots_cles as $nmc) { |
$gestion_mots_cles->insererParChemin($nmc, '/', $id_utilisateur); |
} |
// Mise à jour des ids de mots-cles après ajout |
$mots_cles_ids = $gestion_mots_cles->obtenirIdsMotClesPourMotsCles($liste_mots_cle, $id_utilisateur); |
} |
$enregistrement['mots_cles_texte'] = implode(',', $liste_mots_cle); |
$enregistrement['_mots_cle'] = array( |
'existing' => $resultat, |
'to_insert' => array_diff($liste_mots_cle, $resultat)); |
'to_insert' => $nouveaux_mots_cles |
); |
} |
/branches/v2.27-secateur/jrest/services/Modification.php |
---|
10,7 → 10,12 |
* @version SVN: <svn_id> |
*/ |
/** |
* Migre les observations et les images d'un utilisateur, lorsqu'il change d'adresse email |
* (ou les migre d'un utilisateur à l'autre) |
* |
* Utilisation : http://domain/serice:cel/Modification/?mail=ancien_email@x.fr&nouveau_mail=nouvel_email@x.fr |
*/ |
class Modification extends Cel { |
public $table_image = "cel_images"; |
21,12 → 26,11 |
} |
public function getElement($uid) { |
$id_utilisateur = (isset($_GET['id_utilisateur'])) ? $_GET['id_utilisateur'] : false; |
$mail = (isset($_GET['mail'])) ? $_GET['mail'] : false; |
$nouveau_mail = (isset($_GET['nouveau_mail'])) ? $_GET['nouveau_mail'] : false; |
if(!$mail || !$id_utilisateur) { |
if(!$mail) { |
$this->envoyer("false"); |
} |
/branches/v2.27-secateur/jrest/services |
---|
Property changes: |
Modified: svn:mergeinfo |
Merged /trunk/jrest/services:r3077-3079,3081-3083 |
/branches/v2.27-secateur/jrest |
---|
Property changes: |
Modified: svn:mergeinfo |
Merged /trunk/jrest:r3077-3079,3081-3083 |
/branches/v2.27-secateur |
---|
Property changes: |
Modified: svn:mergeinfo |
Merged /trunk:r3077-3079,3081-3083 |