Changeset 54433 in spip-zone


Ignore:
Timestamp:
Nov 14, 2011, 11:30:09 AM (8 years ago)
Author:
kent1@…
Message:

On teste les fonctions de nospam comme expliquées dans : http://www.spip-contrib.net/NoSPAM

File:
1 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/tickets/branches/v1.1/formulaires/editer_ticket.php

    r51058 r54433  
    5555        $erreurs = formulaires_editer_objet_verifier('ticket',$id_ticket,array('titre','texte'));
    5656       
    57         $doc = &$_FILES['ajouter_document'];
    58         spip_log($doc,'test');
    59         spip_log($_FILES,'test');
    60         if (isset($_FILES['ajouter_document'])
    61         AND $_FILES['ajouter_document']['tmp_name']) {
    62                 include_spip('inc/ajouter_documents');
    63                 list($extension,$doc['name']) = fixer_extension_document($doc);
    64                 $acceptes = ticket_documents_acceptes();
    65 
    66                 if (!in_array($extension, $acceptes)) {
    67                         # normalement on n'arrive pas ici : pas d'upload si aucun format
    68                         if (!$formats = join(', ',$acceptes))
    69                                 $formats = '-'; //_L('aucun');
    70                         $erreurs['ajouter_document'] = _T('public:formats_acceptes', array('formats' => $formats));
    71                 }
    72                 else {
    73                         include_spip('inc/getdocument');
    74                         if (!deplacer_fichier_upload($doc['tmp_name'], $tmp.'.bin'))
    75                                 $erreurs['ajouter_document'] = _T('copie_document_impossible');
    76 
    77 #               else if (...)
    78 #               verifier le type_document autorise
    79 #               retailler eventuellement les photos
     57        /**
     58         * Utilisation des fonctions de nospam pour filtrer un peu
     59         */
     60        if (include_spip('inc/nospam')) {
     61                include_spip('inc/texte');
     62                $texte = _request('texte');
     63        $caracteres = compter_caracteres_utiles($texte);
     64        // moins de 10 caracteres sans les liens = spam !
     65        if ($caracteres < 10){
     66                $erreurs['texte'] = _T('forum_attention_dix_caracteres');
     67        }
     68        // on analyse le titre
     69        $infos_titre = analyser_spams(_request('titre'));
     70        // si un lien dans le titre = spam !
     71        if ($infos_titre['nombre_liens'] > 0)
     72                $erreurs['titre'] = _T('nospam:erreur_spam');
     73        // on analyse le texte
     74        $infos_texte = analyser_spams($texte);
     75        if ($infos_texte['nombre_liens'] > 0) {
     76                // si un lien a un titre de moins de 3 caracteres = spam !
     77                if ($infos_texte['caracteres_texte_lien_min'] < 3) {
     78                        $erreurs['texte'] = _T('nospam:erreur_spam');
     79                }
     80                // si le texte contient plus de trois lien = spam !
     81                if ($infos_texte['nombre_liens'] >= 3)
     82                        $erreurs['texte'] = _T('nospam:erreur_spam');
     83        }
     84        }
     85        if(count($erreurs) == 0){
     86                $doc = &$_FILES['ajouter_document'];
     87                if (isset($_FILES['ajouter_document'])
     88                AND $_FILES['ajouter_document']['tmp_name']) {
     89                        include_spip('inc/ajouter_documents');
     90                        list($extension,$doc['name']) = fixer_extension_document($doc);
     91                        $acceptes = ticket_documents_acceptes();
     92       
     93                        if (!in_array($extension, $acceptes)) {
     94                                # normalement on n'arrive pas ici : pas d'upload si aucun format
     95                                if (!$formats = join(', ',$acceptes))
     96                                        $formats = '-'; //_L('aucun');
     97                                $erreurs['ajouter_document'] = _T('public:formats_acceptes', array('formats' => $formats));
    8098                        }
    81 
    82                 // si ok on stocke les meta donnees, sinon on efface
    83                 if (isset($erreurs['ajouter_document'])) {
    84                         spip_unlink($tmp.'.bin');
    85                         unset ($_FILES['ajouter_document']);
    86                 } else {
    87                         $doc['tmp_name'] = $tmp.'.bin';
    88                         ecrire_fichier($tmp.'.txt', serialize($doc));
     99                        else {
     100                                include_spip('inc/getdocument');
     101                                if (!deplacer_fichier_upload($doc['tmp_name'], $tmp.'.bin'))
     102                                        $erreurs['ajouter_document'] = _T('copie_document_impossible');
     103       
     104                                #               else if (...)
     105                                #               verifier le type_document autorise
     106                                #               retailler eventuellement les photos
     107                                }
     108       
     109                        // si ok on stocke les meta donnees, sinon on efface
     110                        if (isset($erreurs['ajouter_document'])) {
     111                                spip_unlink($tmp.'.bin');
     112                                unset ($_FILES['ajouter_document']);
     113                        } else {
     114                                $doc['tmp_name'] = $tmp.'.bin';
     115                                ecrire_fichier($tmp.'.txt', serialize($doc));
     116                        }
    89117                }
    90118        }
Note: See TracChangeset for help on using the changeset viewer.