Valider 4181f34b rédigé par Fil's avatar Fil
Parcourir les fichiers

unification de la table de jointure des documents avec 'autre chose', quel...

unification de la table de jointure des documents avec 'autre chose', quel qu'il soit ; et affichage des docs de forum dans le contrle_forum
parent 273aa83c
Chargement en cours
Chargement en cours
Chargement en cours
Chargement en cours
+622 −288

Fichier modifié.

La taille limite d'aperçu a été dépassée, l'affichage des modifications a donc été réduit.

+1 −1
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -42,7 +42,7 @@
		Si un seul document est joint a l'article, et si le texte est vide,
		on incruste automatiquement ce document
	]
	<BOUCLE_documents_decompte(DOCUMENTS documents_articles articles)
	<BOUCLE_documents_decompte(DOCUMENTS documents_liens articles)
	{id_article}
	{mode=document}
	{texte=''}
+4 −4
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -34,7 +34,7 @@ function action_documenter_post($r)
		// on ne supprime pas, on dissocie
		// supprimer_document_et_vignette($vignette);
		// on dissocie, mais si le doc est utilise dans le texte, il sera reassocie ..., donc condition sur vu !
		sql_delete("spip_documents_".$type."s",
		sql_delete("spip_documents_liens",
			"id_$type=".sql_quote($id)." AND id_document=".sql_quote($vignette)." AND (vu='non' OR vu IS NULL)");
		// Cas de destruction de la vignette seulement
		if ($suite)
@@ -59,15 +59,15 @@ function action_documenter_post($r)
	}
	else {
		if ($sign)
			$x = sql_select("docs.id_document", "spip_documents AS docs, spip_documents_".$type."s AS l", "l.id_$type=$id AND l.id_document=docs.id_document AND docs.mode='document' AND docs.extension IN ('gif', 'jpg', 'png')");
			$x = sql_select("docs.id_document", "spip_documents AS docs, spip_documents_liens AS l", "l.id_$type=$id AND l.id_document=docs.id_document AND docs.mode='document' AND docs.extension IN ('gif', 'jpg', 'png')");
		else
			$x = sql_select("docs.id_document", "spip_documents AS docs, spip_documents_".$type."s AS l", "l.id_$type=$id AND l.id_document=docs.id_document AND docs.mode='document'  AND docs.extension NOT IN ('gif', 'jpg', 'png')");
			$x = sql_select("docs.id_document", "spip_documents AS docs, spip_documents_liens AS l", "l.id_$type=$id AND l.id_document=docs.id_document AND docs.mode='document'  AND docs.extension NOT IN ('gif', 'jpg', 'png')");

		while ($r = sql_fetch($x)) {
			// supprimer_document_et_vignette($r['id_document']);
			// on dissocie, mais si le doc est utilise dans le texte,
			// il sera reassocie ..., donc condition sur vu !
			sql_delete("spip_documents_".$type."s", "id_$type=$id AND id_document=".$r['id_document']." AND (vu='non' OR vu IS NULL)");
			sql_delete("spip_documents_liens", "id_$type=$id AND id_document=".$r['id_document']." AND (vu='non' OR vu IS NULL)");
		}
	}
	if ($type == 'rubrique') {
+1 −1
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -33,7 +33,7 @@ function action_editer_article_dist() {
		# rattrapper les documents associes a cet article nouveau
		# ils ont un id = 0-id_auteur

			sql_updateq("spip_documents_articles", array("id_article" => $id_article), "id_article = ".(0-$id_auteur));
			sql_updateq("spip_documents_liens", array("id_article" => $id_article), "id_article = ".(0-$id_auteur));
	} 

	// Enregistre l'envoi dans la BD
+2 −6
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -82,18 +82,14 @@ function supprimer_document_et_vignette($arg)
		spip_unlink(get_spip_doc($row['fichier']));
		sql_delete("spip_documents", "id_document=$arg");
		sql_updateq("spip_documents", array("id_vignette" => 0), "id_vignette=$arg");
		sql_delete("spip_documents_articles", "id_document=$arg");
		sql_delete("spip_documents_rubriques", "id_document=$arg");
		sql_delete("spip_documents_breves", "id_document=$arg");
		sql_delete("spip_documents_liens", "id_document=$arg");
		$id_vignette = $row['id_vignette'];
		if ($id_vignette > 0) {
			$f = sql_getfetsel("fichier", "spip_documents	", "id_document=$id_vignette");

			if ($f) spip_unlink(get_spip_doc($f));
			sql_delete("spip_documents", "id_document=$id_vignette");
			sql_delete("spip_documents_articles", "id_document=$id_vignette");
			sql_delete("spip_documents_rubriques", "id_document=$id_vignette");
			sql_delete("spip_documents_breves", "id_document=$id_vignette");
			sql_delete("spip_documents_liens", "id_document=$id_vignette");
		}
	}
}
Chargement en cours