42 lines
1.4 KiB
PHP
42 lines
1.4 KiB
PHP
<?php
|
|
if (!defined('_ECRIRE_INC_VERSION')) return;
|
|
|
|
// mettre une photo en première (credit = une)
|
|
function action_promouvoir_photo_dist(){
|
|
$securiser_action = charger_fonction('securiser_action', 'inc');
|
|
$arg = $securiser_action();
|
|
$Targs = explode('-', $arg);
|
|
$id_document = intval($Targs[0]);
|
|
$id_article = intval($Targs[1]);
|
|
if (!$id_document OR !$id_article)
|
|
return false;
|
|
|
|
// il faut être auteur pour mettre à la Une
|
|
include_spip('inc/autoriser');
|
|
if (! autoriser("creer","article")) {
|
|
return false;
|
|
}
|
|
|
|
// récupérer les docs attachés à l'article
|
|
$where = array(
|
|
'id_objet='.$id_article,
|
|
'objet="article"',
|
|
'extension IN ("jpg","png","gif")',
|
|
);
|
|
$res = sql_allfetsel('spip_documents_liens.id_document', array('spip_documents_liens','spip_documents'), $where);
|
|
$Tid_docs = array_column($res,'id_document');
|
|
|
|
// virer la Une actuelle et mettre celle de la photo choisie
|
|
sql_updateq('spip_documents', array('credits' => ''),'id_document IN ('.join(',',$Tid_docs).')');
|
|
sql_updateq('spip_documents', array('credits' => 'une'),'id_document = '.$id_document);
|
|
|
|
// Cache
|
|
include_spip('inc/invalideur');
|
|
suivre_invalideur("id='id_article/$id_article'");
|
|
|
|
// redirection sur la page d'édition du bien
|
|
$retour = 'spip.php?page=editer_article&id_article='.$id_article.'#les_photos';
|
|
include_spip('inc/headers');
|
|
redirige_par_entete($retour);
|
|
}
|
|
|