Changeset 57308 in spip-zone


Ignore:
Timestamp:
Jan 18, 2012, 7:03:04 PM (8 years ago)
Author:
marcimat@…
Message:

Magnifique... 1 lettre se crée...
Mais il reste de beaux messages «Fichier editer_mots introuvable »

Location:
_plugins_/spip-lettres/trunk
Files:
4 edited

Legend:

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

    r57307 r57308  
    102102                                                "id_rubrique"                   => "BIGINT(21) NOT NULL",
    103103                                                "id_secteur"                    => "BIGINT(21) NOT NULL",
    104                                                 "titre"                                 => "TEXT NOT NULL",
    105                                                 "descriptif"                    => "TEXT NOT NULL",
    106                                                 "chapo"                                 => "MEDIUMTEXT NOT NULL",
     104                                                "titre"                                 => "TEXT NOT NULL DEFAULT ''",
     105                                                "descriptif"                    => "TEXT NOT NULL DEFAULT ''",
     106                                                "chapo"                                 => "MEDIUMTEXT NOT NULL DEFAULT ''",
    107107                                                "texte"                                 => "longtext DEFAULT '' NOT NULL",
    108                                                 "ps"                                    => "TEXT NOT NULL",
     108                                                "ps"                                    => "TEXT NOT NULL DEFAULT ''",
    109109                                                "date"                                  => "DATETIME DEFAULT '0000-00-00 00:00:00' NOT NULL",
    110                                                 "lang"                                  => "VARCHAR(10) NOT NULL",
     110                                                "lang"                                  => "VARCHAR(10) NOT NULL DEFAULT ''",
    111111                                                "langue_choisie"                => "VARCHAR(3) DEFAULT 'non'",
    112112                                                "maj"                                   => "DATETIME DEFAULT '0000-00-00 00:00:00' NOT NULL",
  • _plugins_/spip-lettres/trunk/classes/abonne.php

    r52336 r57308  
    118118                                                                                                array(
    119119                                                                                                        'objet' => $this->objet,
     120                                                                                                        'id_objet' => $this->id_objet,
    120121                                                                                                        'code' => $this->code,
    121122                                                                                                        'format' => $this->format
     
    402403                                $envoyeur = sql_fetsel(
    403404                                        "nom, email",
    404                                         "spip_auteurs LEFT JOIN spip_auteurs_lettres USING(id_auteur)",
    405                                         "id_lettre=".$id_lettre
     405                                        "spip_auteurs AS a LEFT JOIN spip_auteurs_liens AS al",
     406                                        array("al.id_objet=".$id_lettre, "al.objet=".sql_quote('lettre'), 'a.id_auteur=al.id_auteur')
    406407                                        );
    407408                                $nom_envoyeur = $envoyeur['nom'];
     
    427428                                                $auteur = sql_fetsel(
    428429                                                        "email",
    429                                                         "spip_auteurs LEFT JOIN spip_auteurs_lettres USING(id_auteur)",
    430                                                         "id_lettre=".$id_lettre
    431                                                 );
     430                                                        "spip_auteurs AS a LEFT JOIN spip_auteurs_liens AS al",
     431                                                        array("al.id_objet=".$id_lettre, "al.objet=".sql_quote('lettre'), 'a.id_auteur=al.id_auteur')
     432                                                        );
    432433                                                $corps['adresse_erreur'] = $auteur['email'];
    433434                                                break;
  • _plugins_/spip-lettres/trunk/classes/lettre.php

    r57304 r57308  
    8787                function enregistrer() {
    8888                        if ($this->id_lettre == -1 and $this->statut == 'brouillon') {
     89                                $id_secteur = sql_getfetsel('id_secteur', 'spip_rubriques', 'id_rubrique='.intval($this->id_rubrique));
    8990                                $champs = array(
    9091                                                                'id_rubrique' => intval($this->id_rubrique),
    91                                                                 'titre' => $this->titre,
    92                                                                 'descriptif' => $this->descriptif,
    93                                                                 'chapo' => $this->chapo,
    94                                                                 'texte' => $this->texte,
    95                                                                 'ps' => $this->ps,
     92                                                                'id_secteur' => intval($id_secteur),
     93                                                                'titre' => $this->titre ? $this->titre : '',
     94                                                                'descriptif' => $this->descriptif ? $this->descriptif : '',
     95                                                                'chapo' => $this->chapo ? $this->chapo : '',
     96                                                                'texte' => $this->texte ? $this->texte : '',
     97                                                                'ps' => $this->ps ? $this->ps : '',
    9698                                                                'date' => 'NOW()',
    9799                                                                'maj' => 'NOW()'
     
    138140                                unset($GLOBALS['var_mode']);
    139141                        }
    140                         $auteurs = sql_select('A.email', 'spip_auteurs AS A INNER JOIN spip_auteurs_lettres AS AL ON AL.id_auteur=A.id_auteur', 'AL.id_lettre='.intval($this->id_lettre));
     142                        $auteurs = sql_select('A.email', 'spip_auteurs AS A INNER JOIN spip_auteurs_liens AS AL', array('AL.id_objet='.intval($this->id_lettre), 'AL.id_auteur=A.id_auteur', 'AL.objet='.sql_quote('lettre')));
    141143                        while ($auteur = sql_fetch($auteurs)) {
    142144                                $abonne = new abonne(0, $auteur['email']);
     
    287289                        $verif_email = sql_countsel('spip_auteurs', 'id_auteur='.intval($id_auteur).' AND email!=""');
    288290                        if ($verif_email) {
    289                                 sql_replace('spip_auteurs_lettres', array('id_auteur' => intval($id_auteur), 'id_lettre' => intval($this->id_lettre)));
     291                                include_spip('action/editer_liens');
     292                                objet_associer(
     293                                        array("auteur"=>$id_auteur),
     294                                        array("lettre"=>$this->id_lettre));
    290295                                $email = sql_getfetsel('email', 'spip_auteurs', 'id_auteur='.intval($id_auteur));
    291296                                $abonne = new abonne(0, $email);
     
    318323                                $this->enregistrer();
    319324                                // auteurs
    320                                 $auteurs = sql_select('id_auteur', 'spip_auteurs_lettres', 'id_lettre='.intval($lettre_a_copier->id_lettre));
     325                                $auteurs = sql_select('id_auteur', 'spip_auteurs_liens', array('id_objet='.intval($lettre_a_copier->id_lettre), 'objet='.sql_quote('lettre')));
    321326                                while ($arr = sql_fetch($auteurs))
    322327                                        $this->enregistrer_auteur($arr['id_auteur']);
     
    378383                        sql_delete('spip_mots_lettres', 'id_lettre='.intval($this->id_lettre));
    379384                        sql_delete('spip_abonnes_lettres', 'id_lettre='.intval($this->id_lettre));
    380                         sql_delete('spip_auteurs_lettres', 'id_lettre='.intval($this->id_lettre));
     385                        include_spip('action/editer_liens');
     386                        objet_dissocier(
     387                                array("auteur"=>'*'),
     388                                array("lettre"=>$this->id_lettre));
    381389                        // suppression logos
    382390                        $logo_f = charger_fonction('chercher_logo', 'inc');
  • _plugins_/spip-lettres/trunk/lettres_administrations.php

    r57307 r57308  
    184184        sql_drop_table('spip_abonnes_statistiques', true);
    185185        sql_drop_table('spip_articles_lettres', true);
    186         sql_drop_table('spip_auteurs_lettres', true);
    187186        sql_drop_table('spip_documents_lettres', true);
    188187        sql_drop_table('spip_lettres_statistiques', true);
Note: See TracChangeset for help on using the changeset viewer.