Commit 6354e736 authored by Pierre's avatar Pierre

modele_webmail

parent d6fdcff1
<div class="formulaire_modele_webmail">
<form action="[(#ENV{action})]" method="post" class="navbar-search" id="formulaire_webmail" style="position: absolute;">
#ACTION_FORMULAIRE{#ENV{action}}
[<input type="hidden" name="lang" value="(#ENV{lang})" />]
[<input type="hidden" name="serveur" value="(#ENV{serveur})" />]
<div class="">
<input type="[(#HTML5|?{search,text})]" class="search text search-query span2" name="webmail" id="webmail"[ value="(#ENV{webmail}|?{#ENV{webmail},<:webmail_domaine:>})"] accesskey="4" autocapitalize="off" autocorrect="off" title="<:webmail_domaine:>" style="width: 180px;"/>
[<label class='erreur_message'>(#ENV**{erreurs}|table_valeur{webmail})</label>]
</div>
</form>
</div>
<?php
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
* Copyright (c) 2001-2014 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
* Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. *
\***************************************************************************/
if (!defined('_ECRIRE_INC_VERSION')) return;
/**
* chargement des valeurs par defaut des champs du #FORMULAIRE_RECHERCHE
* on peut lui passer l'url de destination en premier argument
* on peut passer une deuxième chaine qui va différencier le formulaire pour pouvoir en utiliser plusieurs sur une même page
*
* @param string $lien URL où amène le formulaire validé
* @param string $class Une class différenciant le formulaire
* @return array
*/
function formulaires_modele_webmail_charger_dist(){
$valeur["webmail"] = _request('webmail');
$valeur["serveur"] = _request('serveur');
// spip_log("liencharger ".$lien,'test'._LOG_AVERTISSEMENT);
return $valeur;
}
function formulaires_modele_webmail_verifier_dist(){
$erreurs = array();
$webmail =_request('webmail');
$serveur = explode("@",$webmail);
// pas de @ ? = invalide
if(!isset($serveur[1]))
$erreurs['webmail'] = "Adresse invalide";
// OK
else{
$domaine = $serveur[1]; // juste le nom de domaine
$serveur = webmail_dp($domaine); // serveur MX ?
spip_log("domaine ".$domaine,'test'._LOG_AVERTISSEMENT);
spip_log("serveur ".$serveur,'test'._LOG_AVERTISSEMENT);
if ($serveur != "mx.domainepublic.net")
set_request("serveur", "https://mail.".$domaine."?_user=".$webmail);
else
set_request("serveur", "https://mail.domainepublic.net?_user=".$webmail);
spip_log("serveur mail "._request("serveur"),'test'._LOG_AVERTISSEMENT);
}
// si la fonction php mx_chez_dp ne retourne rien
if(!$serveur){
$erreurs['webmail'] = "Adresse invalide";
}
// CHEZ DP ?
if(!$erreurs['webmail'] AND !match($serveur,'domainepublic.net')){
$erreurs['webmail'] = "Cette adresse email n'est pas hébergée par domainepublic";
}
return $erreurs;
}
function formulaires_modele_webmail_traiter_dist(){
$webmail = _request('webmail');
$serveur = _request('serveur');
// spip_log("lien ".print_r($serveur,1),'test'._LOG_AVERTISSEMENT);
// on redirige
header("Location: ".$serveur);
exit;
}
?>
......@@ -15,20 +15,20 @@
</div>
<script type="text/javascript">
$(document).click(function(event) {
if (!$(event.target).closest('.navbar-dp').length) {
$(".navbar-dp").hide();
if (!$(event.target).closest('.navbar .navbar-dp').length) {
$(".navbar .navbar-dp").hide();
}
});
$("#bouton_webmail").click(function(event) {
if(!$('#formulaire_webmail').is(':visible')) {
$(".navbar #bouton_webmail").click(function(event) {
if(!$('.navbar #formulaire_webmail').is(':visible')) {
// cacher tout webmail, bureau, etc ...
$(".navbar-dp").hide();
$(".navbar .navbar-dp").hide();
}
$("#formulaire_webmail").toggle();
$(".navbar #formulaire_webmail").toggle();
event.stopPropagation();
});
$( "#webmail" ).focus(function() {
if ($("#webmail").val() == "<:webmail_domaine:>")
$("#webmail").val("");
$( ".navbar #webmail" ).focus(function() {
if ($(".navbar #webmail").val() == "<:webmail_domaine:>")
$(".navbar #webmail").val("");
});
</script>
......@@ -2,5 +2,5 @@
]
<div class='formulaire_multi_etape modele_webmail ajax'>
#FORMULAIRE_WEBMAIL
#FORMULAIRE_MODELE_WEBMAIL
</div>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment