Subversion Repositories eFlore/Applications.cel

Compare Revisions

Ignore whitespace Rev 3989 → Rev 3990

/trunk/widget/modules/photo/squelettes/popup.tpl.html
160,7 → 160,7
title="Voir plus d'information sur les grades"><i class="fas fa-question-circle"></i></a>
</li>
</ul>
<a id="plus-meta" class="afficher-plus"><i class="fas fa-angle-down"></i>&nbsp;Afficher plus de metadonnées sur l'observation</a>
<a id="plus-meta" class="afficher-plus"><i class="fas fa-angle-down"></i>&nbsp;Afficher plus de métadonnées sur l'observation</a>
<ul id="contenu-meta-plus"></ul>
<ul id="contenu-meta-suite">
<li id="num-photo" class="row">
/trunk/widget/modules/photo/squelettes/css/photo.css
28,7 → 28,7
background: rgba(255,255,255,0.5);
text-align: center;
font-weight: 400 !important;
font-size: 0.5rem;
font-size: 0.7rem;
}
 
.cel-infos,
/trunk/widget/modules/photo/squelettes/css/popup.css
433,6 → 433,10
#bloc-fct {
padding: 0.5rem;
}
 
.carousel-item img {
width: 100%;
}
}
 
 
/trunk/widget/modules/photo/squelettes/photo.tpl.html
330,12 → 330,19
title="Cliquez pour accéder à la fiche eFlore">
<?php echo $item['obs']['nom_sel']; ?>
</a><br />
par
<a class="cel-img-contact"
href="<?php echo $item['urlProfil']; ?>"
title="Afficher le profil" target="_blank">
<?php echo $auteur; ?>
</a>
par <?php
if ($item['is_auteur_tela']) {
?>
<a class="cel-img-contact"
href="<?php echo $item['urlProfil']; ?>"
title="Afficher le profil" target="_blank">
<?php echo $auteur; ?>
</a>
<?php
} else {
echo $auteur;
};
?>
<?php else : ?>
<?php echo $item['titre']; ?>
<?php endif; ?>
/trunk/widget/modules/photo/squelettes/js/WidgetPhotoPopup.js
75,10 → 75,14
this.urlIP = this.obs['url_ip'];
this.tagsImage = this.tagsToArray( this.item['tags_photo'] );
this.tagsObs = this.tagsToArray( this.obs['tags_obs'] );
let auteurMail = this.item['utilisateur']['mail_utilisateur'].split("@")[0];
this.auteur = this.item["utilisateur"]["nom_utilisateur"] ? this.item["utilisateur"]["nom_utilisateur"] : auteurMail;
this.isAuteurTela = this.item['is_auteur_tela'];
let auteurMail = this.item['utilisateur']['mail_utilisateur'].split("@")[0] + '@...';
this.auteur = this.item["utilisateur"]["nom_utilisateur"].trim().length !== 0 ? this.item["utilisateur"]["nom_utilisateur"] : auteurMail;
this.date = this.item['date'];
this.urlTpl = this.item['url_tpl'];
if (!this.urlIP){
this.urlIP = 'www.tela-botanica.org/appli:identiplante#obs~' + this.obs['id_obs'];
}
};
 
WidgetPhotoPopup.prototype.tagsToArray = function( tags ) {
132,7 → 136,7
event = (event || window.event);
// event.keyCode déprécié, on tente d'abord event.key
let sens = ( 'key' in event ) ? determinerSens( event.key, 'ArrowLeft', 'ArrowRight' ) : determinerSens( event.keyCode, 37, 39 );;
console.log(sens);
 
if ( lthis.valOk( sens ) ) {
lthis.defilerImage( sens );
}
160,7 → 164,7
if ( window.matchMedia( '(max-width: 991px)' ).matches ) {
$( '#info-img-galerie' ).addClass( 'hidden' );
$( '#volet, #retour-galerie' ).removeClass( 'hidden' );
$( '#hide-metas-div' ).removeClass( 'hidden' );
$( '#hide-metas-div' ).addClass( 'hidden' );
}
});
};
188,6 → 192,22
}
 
WidgetPhotoPopup.prototype.initEvtsTagsPF = function() {
// Récupération des tags PF
let url = lthis.urlServiceDel + 'mots-cles?image=' + this.idImage;
this.envoyerVersService('GET', url, null, null, function (erreur, data) {
if (erreur) {
console.error("Erreur lors de la requête :", erreur);
} else {
lthis.item['tags_pf']= [];
let tags = Object.values(data['resultats']);
tags.forEach(tag => {
lthis.item['tags_pf'].push({'id_mot_cle' : tag.id_mot_cle, 'mot_cle' : tag.mot_cle})
})
lthis.tagsPf();
lthis.tagsPfCustom();
}
});
 
const tagsPfDiv = $('#tags-pf');
tagsPfDiv.html('');
tagsPfDiv.append('<a id="port" class="btn tag">Port</a>' +
200,12 → 220,7
'<a id="rosette" class="btn tag">Rosette</a>' +
'<a id="pousse" class="btn tag">Pousse</a>');
 
this.tagsPf();
this.tagsPfCustom();
 
$( '#bloc-tags' ).off('click');
 
$( '#bloc-tags' ).on( 'click', '.tag', function( event ) {
$( '#bloc-tags' ).off('click').on( 'click', '.tag', function( event ) {
event.preventDefault();
$( this ).toggleClass( 'actif' );
 
247,56 → 262,6
});
}
});
/* //@TODO est-ce qu'on garde cette croix?
$( '#bloc-tags' ).on( 'click', '.custom-tag.actif .fermer', function( event ) {
event.preventDefault();
// Supprimer un custom-tag
// _OPTIONS
// https://api-test.tela-botanica.org/service:del:0.1/mots-cles/38368
// _paramètres
// L'id du tag à la fin de l'url
// _DELETE
// https://api-test.tela-botanica.org/service:del:0.1/mots-cles/38368
// _réponse:
// ""
// Mettre à jour les mots cles
// _OPTIONS
// https://api-test.tela-botanica.org/service:del:0.1/mots-cles?image=197938
// _GET
// https://api-test.tela-botanica.org/service:del:0.1/mots-cles?image=197938
$( this ).parent( '.custom-tag' ).remove();
});
*/
/*
$( '#bloc-tags' ).on( 'keyup', '.custom-tag.actif', function( event ) {
let supprimerTag = false;
 
event = ( event || window.event );
// event.keyCode déprécié, on tente d'abord event.key
if ( 'key' in event ) {
supprimerTag = ( 'Delete' === event.key || 'Backspace' === event.key );
} else {
supprimerTag = ( 46 === event.keyCode || 8 === event.keyCode );
}
if ( supprimerTag ) {
// Supprimer un custom-tag
// _OPTIONS
// https://api-test.tela-botanica.org/service:del:0.1/mots-cles/38368
// _paramètres
// L'id du tag à la fin de l'url
// _DELETE
// https://api-test.tela-botanica.org/service:del:0.1/mots-cles/38368
// _réponse:
// ""
// Mettre à jour les mots cles
// _OPTIONS
// https://api-test.tela-botanica.org/service:del:0.1/mots-cles?image=197938
// _GET
// https://api-test.tela-botanica.org/service:del:0.1/mots-cles?image=197938
$( this ).parent( '.custom-tag' ).remove();
}
});
*/
};
 
WidgetPhotoPopup.prototype.defilerImage = function( sens ) {
331,12 → 296,22
lienContact += '&popup_url=' + encodeURIComponent( this.popupUrl );
}
 
$( '#bloc-infos-img' ).html(
this.afficherLien( this.urlLienEflore, this.obs['nom_sel'] )+
' par '+
'<a class="lien_contact" href="' + this.item['urlProfil'] + '" target="_blank" title="Afficher le profil">' + this.auteur + '</a> '+
' le ' + this.date + ' - ' + this.obs['localisation']
);
if (this.isAuteurTela){
$( '#bloc-infos-img' ).html(
this.afficherLien( this.urlLienEflore, this.obs['nom_sel'] )+
' par '+
'<a class="lien_contact" href="' + this.item['urlProfil'] + '" target="_blank" title="Afficher le profil">' + this.auteur + '</a> '+
' le ' + this.date + ' - ' + this.obs['localisation']
);
} else {
$( '#bloc-infos-img' ).html(
this.afficherLien( this.urlLienEflore, this.obs['nom_sel'] )+
' par '+
this.auteur +
' le ' + this.date + ' - ' + this.obs['localisation']
);
}
 
};
 
WidgetPhotoPopup.prototype.actualiserPopupUrl = function( queryString, remplacement ) {
360,6 → 335,7
$( '.nettoyage-volet.haut' ).text( $( '#bloc-infos-img' ).text() );
$( '#boutons-footer, #info-img-galerie' ).removeClass( 'col-lg-8' );
$( '#bloc-infos-img, #volet' ).removeClass( 'col-lg-4' );
$( '#hide-metas-div' ).addClass( 'hidden' );
} else {
$( '#volet, #info-img-galerie' ).removeClass( 'hidden' );
if ( this.valOk( $( '.bloc-volet:not(.hidden)' ) ) ) {
369,6 → 345,7
$( '#boutons-footer, #info-img-galerie' ).addClass( 'col-lg-8' );
$( '#bloc-infos-img, #volet' ).addClass( 'col-lg-4' );
$( '#retour-galerie' ).addClass( 'hidden' );
$( '#hide-metas-div' ).removeClass( 'hidden' );
}
};
 
414,7 → 391,6
tagElement.classList.add('actif');
} else {
$('#tags-pf-supp').append('<a id="'+tag['mot_cle']+'" class="btn tag custom-tag actif">' + tag['mot_cle'] + '&nbsp;' +
// '<i class="fas fa-times-circle fermer"></i>' +
'</a>')
}
});
444,7 → 420,6
$( '#tags-pf-supp' ).append(
'<a id="' + nouveauTagAttr + '" class="btn tag custom-tag actif">' +
nouveauTag + '&nbsp;' +
// '<i class="fas fa-times-circle fermer"></i>' +
'</a>'
);
 
465,7 → 440,6
}
});
 
// $( '#form-tags-auteur' )[0].reset();
$( this ).val( '' );
}
}
481,6 → 455,9
 
WidgetPhotoPopup.prototype.afficherMetas = function() {
const lthis = this;
if (!this.obs['fiabilite']){
this.obs['fiabilite'] = 'impossible de récupérer le grade';
}
const META_CONTENUS = {
'nom' : this.afficherLien( this.urlLienEflore, this.obs['nom_sel'] ),
'localisation' : this.obs['localisation'],
511,7 → 488,14
$( '.bouton', $metaContainer ).attr( 'href', lthis.urlLienEflore );
break;
case 'auteur' :
$( '.bouton', $metaContainer ).attr( 'href', lthis.item['urlProfil'] );
if (lthis.isAuteurTela) {
$('.bouton', $metaContainer).attr('href', lthis.item['urlProfil']);
$( '#bloc-meta #auteur i').removeClass('hidden');
$('.bouton', $metaContainer).removeClass('hidden');
} else {
$('.bouton', $metaContainer).addClass('hidden');
$( '#bloc-meta #auteur i').addClass('hidden');
}
default:
$( '.contenu', $metaContainer ).text( contenu );
break;
569,8 → 553,8
'url_ip' : 'url identiplante',
'abondance' : 'abondance',
'phenologie' : 'phénologie',
'spontaneite' : 'spontaneite',
'type_donnees' : 'type de donnees',
'spontaneite' : 'spontanéite',
'type_donnees' : 'type de données',
'biblio' : 'bibliographie',
'source' : 'source',
'herbier' : 'herbier',
817,8 → 801,7
// On récupère tous les votes de l'image depuis pictoflora
lthis.votes = lthis.getVotes(lthis.protocole)
 
// Si l'utilisateur est connect, on vérifie s'il a déjà voté pour cette image et on affiche les étoiles
// correspondantes
// Si l'utilisateur est connect, on vérifie s'il a déjà voté pour cette image et on affiche les étoiles correspondantes
if(lthis.userId){
lthis.checkUserVote(lthis.userId, lthis.protocole, lthis.votes);
} else {
961,7 → 944,6
 
if (userVote){
this.displayVote(userVote['vote']);
// this.traiterVote()
this.voteId = userVote['vote.id'];
 
return true
983,13 → 965,10
url = "";
lthis.pivoter('droite');
url = newCel + "-90";
// lthis.envoyerVersService('GET', url, lthis.token )
 
lthis.envoyerVersService('GET', url, lthis.token, null, function (erreur, cb) {
lthis.forcerMajImage(lthis.urlThisImage, lthis.urlTpl);
});
 
// lthis.forcerMajImage(lthis.urlThisImage);
});
 
$( '#pivoter-gauche' ).off( 'click' ).on( 'click', function( event ) {
/trunk/widget/modules/photo/Photo.php
448,7 → 448,7
} else {
$tableau = json_decode($json, true);
// print_r($tableau);
 
if (empty($tableau['total']) || empty($tableau['images'])) {
$this->messages[] = 'Aucune photo ne correspond à vos critères';
} else {
490,7 → 490,12
if ($key == $max_photo) {
break;
}
// On vérifie si l'auteur de la photo est un utilisateur tela
$courriel = [$image['utilisateur']['mail_utilisateur']];
$auteurId = $this->recupererUtilisateursIdentite($courriel)[$courriel[0]]['id'];
$auteurId ? $isTelaUser = true : $isTelaUser = false;
$auteurTruncatedEmail = $this->tronquerCourriel($image['utilisateur']['mail_utilisateur']);
 
$auteur = trim($image['utilisateur']['nom_utilisateur']) ? $image['utilisateur']['nom_utilisateur'] : $auteurTruncatedEmail;
$item = $image;
500,7 → 505,8
$item = $this->formaterTitre($item, $image, $auteur);
$item['tag_eflore'] = $tag;
 
$item['is_auteur_tela'] = $isTelaUser;
// Ajout aux items et si première photo à extra
if ($key == 0) {
$widget['donnees']['extra'] = $item;
511,7 → 517,7
$image_size = getimagesize($url_galerie_popup);
$item['width'] = $image_size[0];
$item['height'] = $image_size[1];
 
// Récupération des votes pictoflora
$item['votes'] = $this->getVotes($item);