/trunk/jrest/bibliotheque/GestionUtilisateur.php |
---|
93,51 → 93,13 |
$login = false; |
if($token) { |
// On demande à l'annuaire si le jeton est bien valide |
// curl avec les options suivantes ignore le pb de certificat (pour tester en local) |
// @TODO CHANGER ! |
$ch = curl_init(); |
$timeout = 5; |
curl_setopt($ch, CURLOPT_URL, $this->config['identification']['sso_url'].'/verifierjeton?token='.$token); |
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); |
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout); |
// équivalent de "-k" |
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); |
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); |
$valide = curl_exec($ch); |
curl_close($ch); |
//$valide = file_get_contents($this->config['identification']['sso_url'].'/verifierjeton?token='.$token); |
$valide = file_get_contents($this->config['identification']['sso_url'].'/verifierjeton?token='.$token); |
$login = ($valide === "true") ? $this->obtenirLoginParToken($token) : false; |
} |
return $login; |
} |
protected function verifierJeton($jeton) { |
$urlServiceVerification = $this->conteneur->getParametre("urlServiceBaseAuth") . "verifierjeton"; |
$urlServiceVerification .= "?token=" . $jeton; |
// file_get_contents râle si le certificat HTTPS est auto-signé |
//$retour = file_get_contents($urlServiceVerification); |
// curl avec les options suivantes ignore le pb de certificat (pour tester en local) |
$ch = curl_init(); |
$timeout = 5; |
curl_setopt($ch, CURLOPT_URL, $urlServiceVerification); |
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); |
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout); |
// équivalent de "-k" |
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); |
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); |
$data = curl_exec($ch); |
curl_close($ch); |
$retour = $data; |
$retour = json_decode($retour, true); |
return ($retour === true); |
} |
private function decoderToken($token) { |
$token_parts = explode('.', $token); |
return json_decode(base64_decode($token_parts[1]), true); |
/trunk/jrest |
---|
Property changes: |
Modified: svn:mergeinfo |
Reverse-merged /branches/v2.24-sarcloir/jrest:r2844-2845 |
/trunk/src/org/tela_botanica/client/cel2.java |
---|
3,7 → 3,6 |
import org.tela_botanica.client.i18n.Msg; |
import org.tela_botanica.client.modeles.objets.Configuration; |
import org.tela_botanica.client.util.Util; |
import org.tela_botanica.client.util.Analytics; |
import com.google.gwt.ajaxloader.client.AjaxLoader; |
import com.google.gwt.ajaxloader.client.AjaxLoader.AjaxLoaderOptions; |
46,9 → 45,6 |
initialiserLangue(); |
// stats |
Analytics.pageVisitee(); |
Element elem = DOM.getElementById("texte_chargement"); |
elem.setInnerText(Msg.get("chargement")); |
/trunk/src/org/tela_botanica/client/modeles/dao/TransmissionObservationAsynchroneDAO.java |
---|
4,7 → 4,6 |
import org.tela_botanica.client.modeles.objets.Configuration; |
import org.tela_botanica.client.modeles.objets.Utilisateur; |
import org.tela_botanica.client.observation.ObservationModele; |
import org.tela_botanica.client.util.Analytics; |
import com.google.gwt.http.client.Request; |
import org.tela_botanica.client.util.RequestBuilderWithCredentials; |
20,7 → 19,7 |
om = observationModele ; |
} |
public void transmettreObservations(final Rafraichissable r, final String identifiant, final String idsObs, final boolean publier) { |
public void transmettreObservations(final Rafraichissable r, String identifiant, String idsObs, boolean publier) { |
// on envoie le get asynchrone |
String post = "&transmission="; |
46,16 → 45,8 |
} |
@Override |
public void onResponseReceived(Request request, Response response) { |
// stats |
String action = ""; |
if (publier) { |
action = "rendre-publiques"; |
} else { |
action = "rendre-privees"; |
} |
Analytics.evenement("observation", action, "{\"utilisateur\": \"" + identifiant + "\", \"observations\": \"" + idsObs + "\"}"); |
public void onResponseReceived(Request request, |
Response response) { |
// Attention OK n'est pas un terme à traduire ici |
r.rafraichir("OK",true); |
} |
/trunk/src/org/tela_botanica/client/modeles/dao/ObservationAsynchroneDAO.java |
---|
6,7 → 6,6 |
import org.tela_botanica.client.modeles.objets.Observation; |
import org.tela_botanica.client.observation.ObservationModele; |
import org.tela_botanica.client.util.Util; |
import org.tela_botanica.client.util.Analytics; |
import com.google.gwt.http.client.Request; |
import org.tela_botanica.client.util.RequestBuilderWithCredentials; |
14,6 → 13,7 |
import com.google.gwt.http.client.RequestException; |
import com.google.gwt.http.client.Response; |
import com.google.gwt.http.client.URL; |
import com.google.gwt.user.client.Window; |
/** |
44,13 → 44,14 |
} |
/** |
* Envoie une requete au serveur pour ajouter une observation |
* Envoie requete au serveur pour ajouter une observations |
* |
* @param motcle |
* le mot-clé à ajouter avec son parent et son identifiant |
* le mots clés à ajouter avec son parent et son identifiant |
*/ |
public void ajouter(final Rafraichissable r, final String utilisateur, final Observation obs) { |
public void ajouter(final Rafraichissable r, String utilisateur, final Observation obs) { |
RequestBuilderWithCredentials rb = new RequestBuilderWithCredentials(RequestBuilderWithCredentials.POST,Configuration.getServiceBaseUrl()+ "/Inventory/") ; |
rb.setHeader("Content-type", "application/x-www-form-urlencoded"); |
String postData = "ce_utilisateur=" |
89,9 → 90,6 |
if(response.getStatusCode() >= 400) { |
com.google.gwt.user.client.Window.alert(response.getText()); |
} |
// stats |
Analytics.evenement("observation", "creation", "{\"utilisateur\": \"" + utilisateur + "\", \"nom_sci\": \"" + obs.getNomSaisi() + "\", \"referentiel\": \"" + obs.getCodeCourtReferentielTaxo() + "\"}"); |
r.rafraichir(obs,true); |
} |
}) ; |
108,7 → 106,7 |
* le mots clés à ajouter avec son parent et son identifiant |
*/ |
public void modifier(final Rafraichissable r, final String utilisateur, final Observation obs) { |
public void modifier(final Rafraichissable r, String utilisateur, final Observation obs) { |
RequestBuilderWithCredentials rb = new RequestBuilderWithCredentials(RequestBuilderWithCredentials.POST,Configuration.getServiceBaseUrl()+ "/Inventory/" + utilisateur + "/" + obs.getNumeroOrdre()+ "/") ; |
rb.setHeader("Content-type", "application/x-www-form-urlencoded"); |
148,9 → 146,6 |
if(response.getStatusCode() >= 400) { |
com.google.gwt.user.client.Window.alert(response.getText()); |
} |
// stats |
Analytics.evenement("observation", "modification", "{\"utilisateur\": \"" + utilisateur + "\", \"nom_sci\": \"" + obs.getNomSaisi() + "\", \"referentiel\": \"" + obs.getCodeCourtReferentielTaxo() + "\"}"); |
r.rafraichir(obs,true); |
} |
163,7 → 158,7 |
} |
public void supprimer(Rafraichissable r, final String identifiant, final String numeroOrdre) { |
public void supprimer(Rafraichissable r, String identifiant, String numeroOrdre) { |
String postData = ""; |
postData += "&action=DELETE"; |
186,11 → 181,12 |
} |
@Override |
public void onResponseReceived(Request request, Response response) { |
public void onResponseReceived(Request request, |
Response response) { |
if (response.getText().equals("OK")) { |
// stats |
Analytics.evenement("observation", "suppression", "{\"utilisateur\": \"" + identifiant + "\", \"numero_ordre\": \"" + numeroOrdre + "\"}"); |
} else { |
com.google.gwt.user.client.Window.alert(Msg.get("probleme-mise-a-jour-donnees")); |
return ; |
/trunk/src/org/tela_botanica/client/modeles/objets/Configuration.java |
---|
1,10 → 1,18 |
package org.tela_botanica.client.modeles.objets; |
import java.util.ArrayList; |
import java.util.HashMap; |
import java.util.Iterator; |
import java.util.List; |
import java.util.Map; |
import com.google.gwt.i18n.client.Dictionary; |
import com.google.gwt.json.client.JSONObject; |
import com.google.gwt.json.client.JSONParser; |
import com.google.gwt.json.client.JSONValue; |
import com.google.gwt.user.client.Window; |
import com.google.gwt.user.client.Window.Location; |
import com.sun.org.apache.bcel.internal.generic.RETURN; |
/** |
* Classe chargeant certains paramètres de configuration à partir d'un fichier |
38,6 → 46,10 |
private static String lienEfloreBaseUrl; |
private static String refTax; |
private static String refTaxVersion; |
private static String licence =""; |
private static String formatOriginal = ""; |
72,8 → 84,6 |
private static String chorologieAvertissementCourriel = ""; |
private static boolean prod = false; |
/** |
* Constructeur sans argument |
*/ |
157,8 → 167,6 |
chorologieAvertissementCourriel = Dictionary.getDictionary("configuration").get("chorologieAvertissementCourriel"); |
prod = Boolean.parseBoolean(Dictionary.getDictionary("configuration").get("prod")); |
// Pour test, l'activation de l'ajout des champs étendus est activable ou désactivable par |
// l'url |
if(Location.getParameter("activerSaisieChampsEtendus") != null) { |
333,8 → 341,4 |
public static String getChorologieAvertissementCourriel() { |
return chorologieAvertissementCourriel; |
} |
public static boolean isProd() { |
return prod; |
} |
} |
/trunk/src/org/tela_botanica/client/util/Analytics.java |
---|
File deleted |
\ No newline at end of file |
/trunk/war/cel2.html |
---|
54,7 → 54,9 |
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) |
})(window,document,'script','//www.google-analytics.com/analytics.js','ga'); |
ga('create', 'UA-57885-6', 'auto'); |
ga('create', 'UA-20092557-1', 'auto'); |
ga('require', 'displayfeatures'); |
ga('send', 'pageview'); |
</script> |
</head> |
/trunk/war/config.defaut.js |
---|
1,6 → 1,5 |
// à renommer en config.js |
var configuration = { |
prod: false, // si true, enverra notamment des stats à Google Analytics |
identificationBaseUrl:"https://localhost/annuaire/jrest/Auth", |
serviceBaseUrl:"http://localhost/jrest", |
suiviBugUrl:"http://www.tela-botanica.net/suivi/index.php?do=newtask&project=2", |
/trunk/. |
---|
Property changes: |
Modified: svn:mergeinfo |
Reverse-merged /branches/v2.24-sarcloir:r2844-2845 |