Browse Source

Abstraction de UPDATE

2.0
Committo,Ergo:sum 16 years ago
parent
commit
71b1372d8b
  1. 2
      ecrire/action/copier_local.php
  2. 2
      ecrire/action/editer_article.php
  3. 2
      ecrire/action/editer_message.php
  4. 18
      ecrire/inc/ajouter_documents.php
  5. 2
      ecrire/inc/auth.php
  6. 2
      ecrire/inc/modifier.php
  7. 28
      ecrire/inc/rubriques.php

2
ecrire/action/copier_local.php

@ -61,7 +61,7 @@ function action_copier_local_post($id_document) {
// or, dans la table documents, IMG doit etre exclu.
$fichier = set_spip_doc($fichier);
spip_log("convertit doc $id_document en local: $source => $fichier");
spip_query("UPDATE spip_documents SET fichier="._q($fichier).", distant='non', taille='$taille', descriptif="._q($row['descriptif'])." WHERE id_document=".$id_document);
sql_updateq('spip_documents', array('fichier' =>$fichier, 'distant'=>'non', 'taille'=>$taille, 'descriptif'=> $row['descriptif']),"id_document=".$id_document);
} else {
spip_log("echec copie locale $source");

2
ecrire/action/editer_article.php

@ -137,7 +137,7 @@ function revisions_articles ($id_article, $c=false) {
$c);
if ($r) {
spip_query("UPDATE spip_articles SET date_modif=NOW() WHERE id_article="._q($id_article));
sql_update("spip_articles", array("date_modif" => "NOW()"), "id_article="._q($id_article));
}
return ''; // pas d'erreur

2
ecrire/action/editer_message.php

@ -108,7 +108,7 @@ function action_editer_message_post_choisir($id_message) {
function action_editer_message_post_envoyer($id_message, $statut) {
sql_updateq("spip_messages", array("statut" => $statut), "id_message=$id_message");
spip_query("UPDATE spip_messages SET date_heure=NOW() WHERE id_message=$id_message AND rv<>'oui'");
sql_update("spip_messages", array("date_heure" => "NOW()"), "id_message=$id_message AND rv<>'oui'");
}
// http://doc.spip.org/@action_editer_message_post_nouveau

18
ecrire/inc/ajouter_documents.php

@ -242,16 +242,26 @@ function ajouter_un_document($source, $nom_envoye, $type_lien, $id_lien, $mode,
$mode = 'document';
// Inserer le nouveau doc et recuperer son id_
$id_document = sql_insert("spip_documents", "(extension, titre, date, distant, mode, taille, largeur, hauteur, fichier)", "("._q($ext).", " . _q($titre) . ", NOW(), '$distant', '$mode', "._q($taille).", "._q($largeur).", "._q($hauteur)."," . _q($chemin) .")");
if ($id_lien
$id_document = sql_insertq("spip_documents",
array(
'extension'=> $ext,
'titre'=> $titre,
'date' => 'NOW()',
'distant' => $distant,
'mode' => $mode,
'taille' => intval($taille),
'largeur' => intval($largeur),
'hauteur' => intval($hauteur),
'fichier' => $chemin));
if ($id_lien AND $id_document
AND preg_match('/^[a-z0-9_]+$/i', $type_lien) # securite
) {
sql_insert("spip_documents_".$type_lien."s",
"(id_document, id_".$type_lien.")",
"($id_document, $id_lien)"
);
}
} else spip_log("Pb d'insertion $id_lien $type_lien");
} else // Mise a jour des descripteurs d'un vieux doc
spip_query("UPDATE spip_documents SET taille="._q($taille).", largeur="._q($largeur)."', hauteur="._q($hauteur).", fichier="._q($chemin) ." WHERE id_document=$id_document");

2
ecrire/inc/auth.php

@ -193,7 +193,7 @@ function inc_auth_dist() {
$connect_quand = strtotime($connect_quand);
if ((time() - $connect_quand) >= 60) {
spip_query("UPDATE spip_auteurs SET en_ligne=NOW() WHERE id_auteur=$connect_id_auteur");
sql_update("spip_auteurs", array("en_ligne" => "NOW()"), "id_auteur=$connect_id_auteur");
}
return ''; // i.e. pas de pb.

2
ecrire/inc/modifier.php

@ -255,7 +255,7 @@ function revision_forum($id_forum, $c=false) {
if ($r) {
spip_query("UPDATE spip_forum SET ip="._q($GLOBALS['ip']).", id_auteur="._q($GLOBALS['auteur_session']['id_auteur'])." WHERE id_forum="._q($id_forum));
spip_query("UPDATE spip_forum SET date_thread=NOW() WHERE id_thread=".$t['id_thread']);
sql_update("spip_forum", array("date_thread" => "NOW()"), "id_thread=".$t['id_thread']);
}
}

28
ecrire/inc/rubriques.php

@ -55,7 +55,7 @@ function publier_branche_rubrique($id_rubrique)
while ($r = sql_getfetsel('id_parent', 'spip_rubriques AS R', "R.id_rubrique=$id_pred AND R.statut != 'publie'")) {
spip_query("UPDATE spip_rubriques SET statut='publie', date=NOW() WHERE id_rubrique=$id_pred");
sql_updateq('spip_rubriques', array('statut'=>'publie', 'date'=>'NOW()'), "id_rubrique=$id_pred");
if (!($id_pred = $r)) break;
}
# spip_log(" publier_branche_rubrique($id_rubrique $id_pred");
@ -144,22 +144,22 @@ function calculer_rubriques_publiees() {
$r = sql_select("rub.id_rubrique AS id, max(fille.date) AS date_h", "spip_rubriques AS rub, spip_articles AS fille", "rub.id_rubrique = fille.id_rubrique AND fille.statut='publie' $postdates ", "rub.id_rubrique");
while ($row = sql_fetch($r))
spip_query("UPDATE spip_rubriques SET statut_tmp='publie', date_tmp='".$row['date_h']."'WHERE id_rubrique=".$row['id']);
sql_updateq("spip_rubriques", array("statut_tmp" => 'publie', "date_tmp" => $row['date_h']), "id_rubrique=".$row['id']);
// Publier et dater les rubriques qui ont une breve publie
$r = sql_select("rub.id_rubrique AS id, max(fille.date_heure) AS date_h", "spip_rubriques AS rub, spip_breves AS fille", "rub.id_rubrique = fille.id_rubrique AND rub.date_tmp <= fille.date_heure AND fille.statut='publie' ", "rub.id_rubrique");
while ($row = sql_fetch($r))
spip_query("UPDATE spip_rubriques SET statut_tmp='publie', date_tmp='".$row['date_h']."' WHERE id_rubrique=".$row['id']);
sql_updateq('spip_rubriques', array('statut_tmp'=>'publie', 'date_tmp'=>$row['date_h']), "id_rubrique=".$row['id']);
// Publier et dater les rubriques qui ont un site publie
$r = sql_select("rub.id_rubrique AS id, max(fille.date) AS date_h", "spip_rubriques AS rub, spip_syndic AS fille", "rub.id_rubrique = fille.id_rubrique AND rub.date_tmp <= fille.date AND fille.statut='publie' ", "rub.id_rubrique");
while ($row = sql_fetch($r))
spip_query("UPDATE spip_rubriques SET statut_tmp='publie', date_tmp='".$row['date_h']."' WHERE id_rubrique=".$row['id']);
sql_updateq('spip_rubriques', array('statut_tmp'=>'publie', 'date_tmp'=>$row['date_h']),"id_rubrique=".$row['id']);
// Publier et dater les rubriques qui ont un *document* publie
$r = sql_select("rub.id_rubrique AS id, max(fille.date) AS date_h", "spip_rubriques AS rub, spip_documents AS fille, spip_documents_rubriques AS lien", "rub.id_rubrique = lien.id_rubrique AND lien.id_document=fille.id_document AND rub.date_tmp <= fille.date AND fille.mode='document' $postdates ", "rub.id_rubrique");
while ($row = sql_fetch($r))
spip_query("UPDATE spip_rubriques SET statut_tmp='publie', date_tmp='".$row['date_h']."' WHERE id_rubrique=".$row['id']);
sql_updateq('spip_rubriques', array('statut_tmp'=>'publie', 'date_tmp'=>$row['date_h']),"id_rubrique=".$row['id']);
// Les rubriques qui ont une rubrique fille plus recente
@ -168,7 +168,7 @@ function calculer_rubriques_publiees() {
$continuer = false;
$r = sql_select("rub.id_rubrique AS id, max(fille.date_tmp) AS date_h", "spip_rubriques AS rub, spip_rubriques AS fille", "rub.id_rubrique = fille.id_parent AND (rub.date_tmp < fille.date_tmp OR rub.statut_tmp<>'publie') AND fille.statut_tmp='publie' ", "rub.id_rubrique");
while ($row = sql_fetch($r)) {
spip_query("UPDATE spip_rubriques SET statut_tmp='publie', date_tmp='".$row['date_h']."' WHERE id_rubrique=".$row['id']);
sql_updateq('spip_rubriques', array('statut_tmp'=>'publie', 'date_tmp'=>$row['date_h']),"id_rubrique=".$row['id']);
$continuer = true;
}
} while ($continuer);
@ -193,7 +193,7 @@ function propager_les_secteurs()
$continuer = false;
$r = sql_select("fille.id_rubrique AS id, maman.id_secteur AS secteur", "spip_rubriques AS fille, spip_rubriques AS maman", "fille.id_parent = maman.id_rubrique AND fille.id_secteur <> maman.id_secteur");
while ($row = sql_fetch($r)) {
spip_query("UPDATE spip_rubriques SET id_secteur=".$row['secteur']." WHERE id_rubrique=".$row['id']);
sql_update("spip_rubriques", array("id_secteur" => $row['secteur']), "id_rubrique=".$row['id']);
$continuer = true;
}
} while ($continuer);
@ -202,12 +202,12 @@ function propager_les_secteurs()
$r = sql_select("fille.id_article AS id, maman.id_secteur AS secteur", "spip_articles AS fille, spip_rubriques AS maman", "fille.id_rubrique = maman.id_rubrique AND fille.id_secteur <> maman.id_secteur");
while ($row = sql_fetch($r)) {
spip_query("UPDATE spip_articles SET id_secteur=".$row['secteur']." WHERE id_article=".$row['id']);
sql_update("spip_articles", array("id_secteur" => $row['secteur']), "id_article=".$row['id']);
}
// reparer les sites
$r = sql_select("fille.id_syndic AS id, maman.id_secteur AS secteur", "spip_syndic AS fille, spip_rubriques AS maman", "fille.id_rubrique = maman.id_rubrique AND fille.id_secteur <> maman.id_secteur");
while ($row = sql_fetch($r))
spip_query("UPDATE spip_syndic SET id_secteur=".$row['secteur']." WHERE id_syndic=".$row['id']);
sql_update("spip_syndic", array("id_secteur" => $row['secteur']), "id_syndic=".$row['id']);
}
//
@ -219,7 +219,7 @@ function calculer_langues_rubriques_etape() {
while ($row = sql_fetch($s)) {
$id_rubrique = $row['id_rubrique'];
$t = spip_query("UPDATE spip_rubriques SET lang=" . _q($row['lang']) . ", langue_choisie='non' WHERE id_rubrique=$id_rubrique");
$t = sql_updateq('spip_rubriques', array('lang' => $row['lang'], 'langue_choisie'=>'non'), "id_rubrique=$id_rubrique");
}
return $t;
@ -229,21 +229,21 @@ function calculer_langues_rubriques_etape() {
function calculer_langues_rubriques() {
// rubriques (recursivite)
spip_query("UPDATE spip_rubriques SET lang=" . _q($GLOBALS['meta']['langue_site']) . ", langue_choisie='non' WHERE id_parent=0 AND langue_choisie != 'oui'");
sql_updateq("spip_rubriques", array("lang" => $GLOBALS['meta']['langue_site'], "langue_choisie" => 'non'), "id_parent=0 AND langue_choisie != 'oui'");
while (calculer_langues_rubriques_etape());
// articles
$s = sql_select("fils.id_article AS id_article, mere.lang AS lang", "spip_articles AS fils, spip_rubriques AS mere", "fils.id_rubrique = mere.id_rubrique AND fils.langue_choisie != 'oui' AND (fils.lang='' OR mere.lang<>'') AND mere.lang<>fils.lang");
while ($row = sql_fetch($s)) {
$id_article = $row['id_article'];
spip_query("UPDATE spip_articles SET lang=" . _q($row['lang']) . ", langue_choisie='non' WHERE id_article=$id_article");
sql_updateq('spip_articles', array("lang"=> $row['lang'], 'langue_choisie'=>'non'), "id_article=$id_article");
}
// breves
$s = sql_select("fils.id_breve AS id_breve, mere.lang AS lang", "spip_breves AS fils, spip_rubriques AS mere", "fils.id_rubrique = mere.id_rubrique AND fils.langue_choisie != 'oui' AND (fils.lang='' OR mere.lang<>'') AND mere.lang<>fils.lang");
while ($row = sql_fetch($s)) {
$id_breve = $row['id_breve'];
spip_query("UPDATE spip_breves SET lang=" . _q($row['lang']) . ", langue_choisie='non' WHERE id_breve=$id_breve");
sql_updateq('spip_breves', array("lang"=>$row['lang'], 'langue_choisie'=>'non'), "id_breve=$id_breve");
}
if ($GLOBALS['meta']['multi_rubriques'] == 'oui') {
@ -362,7 +362,7 @@ function creer_rubrique_nommee($titre, $id_parent=0) {
$lang = $GLOBALS['meta']['langue_site'];
}
spip_query("UPDATE spip_rubriques SET id_secteur=$id_secteur, lang="._q($lang)." WHERE id_rubrique=$id_rubrique");
sql_updateq('spip_rubriques', array('id_secteur'=>$id_secteur, "lang"=>$lang), "id_rubrique=$id_rubrique");
} else {
$id_rubrique = $t['id_rubrique'];
}

Loading…
Cancel
Save