|
|
|
@ -20,23 +20,25 @@ if (!defined('_ECRIRE_INC_VERSION')) {
|
|
|
|
|
}
|
|
|
|
|
/**
|
|
|
|
|
* Ajout du script js dans le header de l'espace privé
|
|
|
|
|
**/
|
|
|
|
|
function cci_header_prive($flux){
|
|
|
|
|
**/
|
|
|
|
|
function cci_header_prive($flux)
|
|
|
|
|
{
|
|
|
|
|
$js = find_in_path('javascript/cci.js');
|
|
|
|
|
$flux .= "\n<script src=\"$js\" type=\"text/javascript\"></script>\n";
|
|
|
|
|
return $flux;
|
|
|
|
|
return $flux;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Ajouter le script dans l'espace public et tenir compte du plugin crayon s'il est activé
|
|
|
|
|
**/
|
|
|
|
|
function cci_insert_head($flux) {
|
|
|
|
|
if(test_plugin_actif('crayons') == true && isset($GLOBALS['contexte']['type-page'])){
|
|
|
|
|
**/
|
|
|
|
|
function cci_insert_head($flux)
|
|
|
|
|
{
|
|
|
|
|
if (test_plugin_actif('crayons') == true && isset($GLOBALS['contexte']['type-page'])) {
|
|
|
|
|
$objet = $GLOBALS['contexte']['type-page'];
|
|
|
|
|
$id_objet = @$GLOBALS['contexte']['id_'.$objet];
|
|
|
|
|
$id_objet = @$GLOBALS['contexte']['id_' . $objet];
|
|
|
|
|
// si valide, on ajoute un input hidden contenant le lien pour l'édition de l'objet
|
|
|
|
|
if(is_numeric($id_objet) && in_array($objet, ['article','rubrique']) && cci_si_autoriser($objet, $id_objet)){
|
|
|
|
|
$flux .= "<input type='hidden' class='cci_data_crayon' lien='".htmlentities(cci_lien_edition($objet, $id_objet))."'/>";
|
|
|
|
|
if (is_numeric($id_objet) && in_array($objet, ['article', 'rubrique']) && cci_si_autoriser($objet, $id_objet)) {
|
|
|
|
|
$flux .= "<input type='hidden' class='cci_data_crayon' lien='" . htmlentities(cci_lien_edition($objet, $id_objet)) . "'/>";
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -47,41 +49,42 @@ function cci_insert_head($flux) {
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Insertion d'attribut de nom 'ccilien' sur les textarea d'édition des objets
|
|
|
|
|
**/
|
|
|
|
|
function cci_formulaire_fond($fond){
|
|
|
|
|
**/
|
|
|
|
|
function cci_formulaire_fond($fond)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
if(isset($fond['args']['form'])
|
|
|
|
|
if (
|
|
|
|
|
isset($fond['args']['form'])
|
|
|
|
|
&& in_array($fond['args']['form'], ['forum', 'forum_prive', 'editer_article', 'editer_rubrique', 'editer_breve'])
|
|
|
|
|
){
|
|
|
|
|
) {
|
|
|
|
|
|
|
|
|
|
$objets = ['forum', 'forum_prive', 'article', 'rubrique', 'breve'];
|
|
|
|
|
$objet = '';
|
|
|
|
|
$id_objet = '';
|
|
|
|
|
|
|
|
|
|
if(in_array($fond['args']['form'], ['forum', 'forum_prive'])){
|
|
|
|
|
if (in_array($fond['args']['form'], ['forum', 'forum_prive'])) {
|
|
|
|
|
$objet = $fond['args']['form'];
|
|
|
|
|
$id_objet = $fond['args']['contexte']['id_forum'];
|
|
|
|
|
}else if(strpos($fond['args']['form'], 'editer_') !== false){
|
|
|
|
|
} else if (strpos($fond['args']['form'], 'editer_') !== false) {
|
|
|
|
|
$objet = explode('_', $fond['args']['form'])[1];
|
|
|
|
|
$id_objet = $fond['args']['contexte']["id_$objet"];
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if(empty($objet) || !is_numeric($id_objet)) return $fond;
|
|
|
|
|
if (empty($objet) || !is_numeric($id_objet)) return $fond;
|
|
|
|
|
|
|
|
|
|
// détermination de l'autorisation
|
|
|
|
|
if(!cci_si_autoriser($objet, $id_objet)) return $fond;
|
|
|
|
|
if (!cci_si_autoriser($objet, $id_objet)) return $fond;
|
|
|
|
|
|
|
|
|
|
// ajout de l'attribut ccilien aux textarea
|
|
|
|
|
$lien = cci_lien_edition($objet, $id_objet);
|
|
|
|
|
$html = preg_replace('/\<textarea(.*)\>/', '<textarea ccilien="'.$lien.'" $1>', $fond['data']);
|
|
|
|
|
$html = preg_replace('/\<textarea(.*)\>/', '<textarea ccilien="' . $lien . '" $1>', $fond['data']);
|
|
|
|
|
|
|
|
|
|
if($html !== false){
|
|
|
|
|
if ($html !== false) {
|
|
|
|
|
$fond['data'] = $html;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return $fond;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ -90,17 +93,18 @@ function cci_formulaire_fond($fond){
|
|
|
|
|
*
|
|
|
|
|
* @param string $objet
|
|
|
|
|
* Type de l'objet
|
|
|
|
|
* @param string $id_objet
|
|
|
|
|
* @param string $id_objet
|
|
|
|
|
* identifiant de l'objet
|
|
|
|
|
* @return bool
|
|
|
|
|
*
|
|
|
|
|
**/
|
|
|
|
|
function cci_si_autoriser($objet, $id_objet){
|
|
|
|
|
**/
|
|
|
|
|
function cci_si_autoriser($objet, $id_objet)
|
|
|
|
|
{
|
|
|
|
|
include_spip('inc/autoriser');
|
|
|
|
|
$autoriser = false;
|
|
|
|
|
if(isset($GLOBALS['visiteur_session']['id_auteur']) && in_array($objet, ['forum','forum_prive'])){
|
|
|
|
|
if (isset($GLOBALS['visiteur_session']['id_auteur']) && in_array($objet, ['forum', 'forum_prive'])) {
|
|
|
|
|
$autoriser = true;
|
|
|
|
|
}else {
|
|
|
|
|
} else {
|
|
|
|
|
$autoriser = autoriser('joindredocument', $objet, $id_objet);
|
|
|
|
|
}
|
|
|
|
|
return $autoriser;
|
|
|
|
@ -111,12 +115,13 @@ function cci_si_autoriser($objet, $id_objet){
|
|
|
|
|
*
|
|
|
|
|
* @param string $objet
|
|
|
|
|
* Type de l'objet
|
|
|
|
|
* @param string $id_objet
|
|
|
|
|
* @param string $id_objet
|
|
|
|
|
* identifiant de l'objet
|
|
|
|
|
* @return string
|
|
|
|
|
* le lien
|
|
|
|
|
**/
|
|
|
|
|
function cci_lien_edition($objet, $id_objet){
|
|
|
|
|
**/
|
|
|
|
|
function cci_lien_edition($objet, $id_objet)
|
|
|
|
|
{
|
|
|
|
|
$securiser_action = charger_fonction('securiser_action', 'inc');
|
|
|
|
|
return $securiser_action('ajouter_imagecci', "$objet-$id_objet", "", false);
|
|
|
|
|
}
|
|
|
|
|