53 lines
1.6 KiB
PHP
53 lines
1.6 KiB
PHP
<?php
|
|
if (!defined('_ECRIRE_INC_VERSION')) return;
|
|
|
|
// mettre une photo en banniere (credit = une)
|
|
function action_choisir_banniere_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;
|
|
}
|
|
|
|
// On récupère tous les id_article de la même ville
|
|
|
|
$ville = sql_getfetsel('surtitre','spip_articles','id_article='.$id_article);
|
|
$where0 = array(
|
|
"surtitre='$ville'",
|
|
'id_secteur='. lire_config('balint/id_rub_groupes')
|
|
);
|
|
$groupes = sql_allfetsel('id_article','spip_articles',$where0);
|
|
$Tid_groupes = array_column($groupes,'id_article');
|
|
|
|
foreach($Tid_groupes as $id_groupe){
|
|
|
|
// récupérer les docs attachés à l'article
|
|
$where = array(
|
|
'id_objet='.$id_groupe,
|
|
'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 bannière actuelle
|
|
sql_updateq('spip_documents', array('credits' => ''),'id_document IN ('.join(',',$Tid_docs).')');
|
|
}
|
|
|
|
// mettre en bannière la photo choisie
|
|
sql_updateq('spip_documents', array('credits' => 'une'),'id_document = '.$id_document);
|
|
|
|
// Cache
|
|
include_spip('inc/invalideur');
|
|
suivre_invalideur("id='id_article/$id_article'");
|
|
}
|
|
|