Changeset 65822 in spip-zone


Ignore:
Timestamp:
Sep 12, 2012, 7:19:41 PM (9 years ago)
Author:
marcimat@…
Message:
  • Inclusions manquantes,
  • Liens toujours dans l'espace public, pour l'espace public
Location:
_plugins_/spip-lettres/trunk
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/spip-lettres/trunk/classes/abonne.php

    r64690 r65822  
    2020        include_spip('base/lettres');
    2121        include_spip('classes/lettre');
     22        include_spip('inc/filtres_mini'); // url_absolue()
    2223
    2324        /**
     
    300301
    301302                        $parametres = 'lang='.$lettre->lang.'&rubriques[]=-1&code='.$this->code.'&email='.$this->email;
    302                         $url_action_validation_desabonnements = url_absolue(generer_url_action('validation_desabonnements', $parametres, true));
     303                        $url_action_validation_desabonnements = url_absolue(
     304                                generer_url_action('validation_desabonnements', $parametres, true));
    303305                        $message_html   = str_replace("%%URL_VALIDATION_DESABONNEMENTS%%", $url_action_validation_desabonnements, $message_html);
    304306                        $message_texte  = str_replace("%%URL_VALIDATION_DESABONNEMENTS%%", $url_action_validation_desabonnements, $message_texte);
  • _plugins_/spip-lettres/trunk/classes/lettre.php

    r65800 r65822  
    211211                        return $redirection;
    212212                }
    213                
     213
    214214                function callback_clic_html($matches) {
    215215                        $url = $matches[2];
     216                        $url = $this->preparer_urls($url);
    216217                        if (strcmp($url, '%%URL_VALIDATION_DESABONNEMENTS%%')!=0 AND strncmp($url, 'mailto:',7)!=0 AND strncmp($url, '#',1)!=0 )        {
    217218                                $verification = sql_select('id_clic', 'spip_clics', 'url='.sql_quote(html_entity_decode($url)).' AND id_lettre='.intval($this->id_lettre));
     
    228229                                return 'href="'.$url_clic.'"';
    229230                        }
    230                         else {         
     231                        else {
    231232                                        return 'href="'.$url.'"';
    232233                        }
    233234                }
     235
    234236                function callback_clic_texte($matches) {
    235237                        $url = $matches[0];
     238                        $url = $this->preparer_urls($url);
    236239                        if (strcmp($url, '%%URL_VALIDATION_DESABONNEMENTS%%')!=0 AND strncmp($url, 'mailto:',7)!=0 AND strncmp($url, '#',1)!=0 )        {
    237240                                $verification = sql_select('id_clic', 'spip_clics', 'url='.sql_quote(html_entity_decode($url)).' AND id_lettre='.intval($this->id_lettre));
     
    263266                                        $image = $copie;
    264267                        }
     268                        $image = $this->preparer_urls($image);
    265269                        return 'src="'.$image.'"';
    266270                }
    267271               
    268                
     272
     273                /**
     274                 * Enlever ../ des urls pour partir
     275                 * de la racine du SPIP et non de ecrire
     276                 *
     277                 * Lorsque la globale lien_implicite_cible_public est activée
     278                 * avec 'public' (cf plugin textwheel) tous les liens pointent
     279                 * vers l'espace public, pour afficher des pages publiques.
     280                 *
     281                 * Cela dit, le lien étant créé depuis le privé possède '../'
     282                 * que l'on ne souhaite pas conserver.
     283                 *
     284                 * @param string $url
     285                 *     URL à préparer
     286                 * @param string
     287                 *     URL prête
     288                 */
     289                function preparer_urls($url) {
     290                        $url = trim($url);
     291                        if (substr($url,0,3) == '../') {
     292                                $url = substr($url, 3);
     293                        }
     294                        return $url;
     295                }
     296
    269297                function enregistrer_squelettes($vidange = true) {
    270                         $this->message_html     = recuperer_fond($GLOBALS['meta']['spip_lettres_fond_lettre_html'], array('id_lettre' => $this->id_lettre, 'lang' => $this->lang));
     298                        // definir des liens publics uniquement
     299                        // voir plugin textwheel
     300                        $GLOBALS['lien_implicite_cible_public'] = true;
     301                        $this->message_html  = recuperer_fond($GLOBALS['meta']['spip_lettres_fond_lettre_html'], array('id_lettre' => $this->id_lettre, 'lang' => $this->lang));
    271302                        $this->message_texte = recuperer_fond($GLOBALS['meta']['spip_lettres_fond_lettre_texte'], array('id_lettre' => $this->id_lettre, 'lang' => $this->lang));
    272                        
     303                        // annuler la définition de liens pubics
     304                        unset($GLOBALS['lien_implicite_cible_public']);
     305
    273306                        if ($vidange) {
    274307                                // petite vidange des envois de test
  • _plugins_/spip-lettres/trunk/exec/progression_envoi_lettre.php

    r65814 r65822  
    4848        else {
    4949                include_spip('inc/queue');
    50                 echo queue_afficher_cron();
     50                echo queue_affichage_cron();
    5151        }
    5252
  • _plugins_/spip-lettres/trunk/paquet.xml

    r65812 r65822  
    22        prefix="lettres"
    33        categorie="communication"
    4         version="5.7.0"
     4        version="5.8.0"
    55        etat="dev"
    66        compatibilite="[3.0.0-dev;["
Note: See TracChangeset for help on using the changeset viewer.