[ Index ] |
|
Code source de SPIP Agora 1.4 |
1 <?php 2 /******* Fichier Ajout? MAPPING guillaume.grason@diplomatie.gouv.fr *******/ 3 /** Gestion d'un article. 4 * @version $Id: mapping_articles.php,v 1.1.4.2 2006/11/12 20:43:51 lpoinsignon Exp $ 5 */ 6 7 8 9 include ("inc.php"); 10 11 include_ecrire ("inc_logos.php"); 12 include_ecrire ("inc_mots.php"); 13 include_ecrire ("inc_documents.php"); 14 15 /* Ajout Clever Age / Nicolas Hoizey / Referencement des liens & gestion sondages */ 16 include_ecrire ('inc_liens.php'); 17 include_ecrire ("inc_sondages.php"); 18 /* fin zone de modification Clever Age */ 19 20 /* Ajout Clever Age / Antoine Angenieux / Couche metier */ 21 require_once (dirname(__FILE__)."/include/bd/auteur.php"); 22 require_once (dirname(__FILE__)."/include/bd/inc_article_factory.php"); 23 require_once (dirname(__FILE__)."/include/bd/inc_document_factory.php"); 24 require_once (dirname(__FILE__)."/include/bd/inc_forum_factory.php"); 25 require_once (dirname(__FILE__)."/include/bd/inc_petition_factory.php"); 26 require_once (dirname(__FILE__)."/include/bd/inc_signature_factory.php"); 27 require_once (dirname(__FILE__)."/include/bd/inc_forum_list_factory.php"); 28 require_once (dirname(__FILE__)."/include/bd/inc_profil_factory.php"); 29 30 // Ajout Aurelien Vialet <avialet@clever-age.com> Gestion des champs formulaires 31 require_once (dirname(__FILE__)."/inc_contraintes.php"); 32 require_once (dirname(__FILE__)."/include/bd/inc_article_historique_factory.php"); 33 // Fin de l'ajout Aurelien Vialet 34 35 require_once (dirname(__FILE__)."/include/bd/inc_mapping_factory.php"); 36 $mappingMetier = &recuperer_instance_mapping(); 37 $loadOK = $mappingMetier->loadArticle($id_article); 38 if (PEAR :: isError($loadOK)) { 39 die($loadOK->getMessage()); 40 } 41 else { 42 $id_article_parent = $mappingMetier->getArticleId(); 43 } 44 45 /* fin zone de modification Clever Age */ 46 47 // le poids du redacteur .... utile pour la suite 48 $profilMetier = & recuperer_instance_profil(); 49 $loadOK = $profilMetier->getProfilForIntitule('item_redacteur'); 50 if (PEAR :: isError($loadOK)) { 51 die($loadOK->getMessage()); 52 } 53 define ("POIDSREDACTEUR", $loadOK->getPoids()); 54 //var_dump ($profilMetier); 55 56 $articles_surtitre = lire_meta("articles_surtitre"); 57 $articles_soustitre = lire_meta("articles_soustitre"); 58 $articles_descriptif = lire_meta("articles_descriptif"); 59 $articles_urlref = lire_meta("articles_urlref"); 60 $articles_chapeau = lire_meta("articles_chapeau"); 61 $articles_ps = lire_meta("articles_ps"); 62 $articles_redac = lire_meta("articles_redac"); 63 $articles_mots = lire_meta("articles_mots"); 64 65 $activer_version_articles = lire_meta("activer_version_articles"); 66 $activer_histo_articles = lire_meta("activer_histo_articles"); 67 68 $articleMetier = & recuperer_instance_article(); 69 $auteurMetier = & recuperer_instance_auteur(); 70 71 $mapping = & recuperer_instance_mapping(); 72 $mappingMetier = & recuperer_instance_article(); 73 74 // R?cup?ration de l'heure courante (valeur par d?faut de l'heure de publication) 75 $heure = date( 'H' ); 76 $minute = date( 'i' ); 77 $seconde = date( 's' ); 78 79 // Gestion de la mise en ligne d'une version d'un article 80 $id_version = 0; 81 82 if ($activer_version_articles == 'oui') { 83 if ($new_version == 'oui') { 84 // Gestion de la mise en place d'une nouvelle version d'un article 85 $id_version = $id_article; 86 $id_article = 0; 87 $new = 'oui'; 88 } 89 } 90 91 /********* Modification tbeaumanoir@clever-age.com ***********************/ 92 // c quoi ce code mon petit thomas ? 93 if ($activerhistorique == 'oui' || $activerhistorique == 'non') { 94 $loadOK = $articleMetier->load($id_article); 95 if (PEAR :: isError($loadOK)) { 96 die($loadOK->getMessage()); 97 } else { 98 $articleMetier->setActiverHistorique($activerhistorique); 99 $articleMetier->update(); 100 } 101 } 102 /********* Fin Modification tbeaumanoir@clever-age.com ***********************/ 103 104 105 if ($id_article == 0) { 106 if ($new == 'oui') { 107 $authorization = & recuperer_instance_authorization('isManagedRubriqueByAuteurId', $GLOBALS['connect_id_auteur'], array ('rubriqueId' => intval($articleMetier->getRubriqueId()))); 108 if (!$authorization->isAuthorizedAction()) { 109 echo _T('avis_acces_interdit'); 110 exit; 111 } 112 113 /********* Modification elebescond@clever-age.com ***********************/ 114 if ($titre == '') 115 $titre = _T('art_info_sans_titre', null, $articleMetier->getRubriqueId()); 116 /* 117 if ($titre=='') $titre = _T('info_sans_titre'); 118 */ 119 /********* Fin modification elebescond@clever-age.com ***********************/ 120 121 $langue_new = ''; 122 /**************** Modification elebescond@clever-age.com *************************************/ 123 $rubriqueMetier = & recuperer_instance_rubrique(); 124 $loadOK = $rubriqueMetier->load($id_rubrique); 125 if (PEAR :: isError($loadOK)) { 126 die($loadOK->getMessage()); 127 } else { 128 $langue_new = $rubriqueMetier->getLang(); 129 } 130 /* 131 $result_lang_rub = spip_query("SELECT lang FROM spip_rubriques WHERE id_rubrique=$articleMetier->getRubriqueId()"); 132 if ($row = spip_fetch_array($result_lang_rub)) 133 $langue_new = $row["lang"]; 134 */ 135 /**************** Fin modification elebescond@clever-age.com *************************************/ 136 137 if (!$langue_new) 138 $langue_new = lire_meta('langue_site'); 139 $langue_choisie_new = 'non'; 140 141 /********* Modification elebescond@clever-age.com ***********/ 142 $forums_publics = lire_meta('forums_publics'); 143 /* 144 $forums_publics = substr(lire_meta('forums_publics'),0,3); 145 */ 146 /********* Fin modification elebescond@clever-age.com ***********/ 147 148 /* Modification Clever Age, utilisation couche m�tier */ 149 $articleMetier->setRubriqueId($id_rubrique); 150 $articleMetier->setStatut('prepa'); 151 $articleMetier->setAccepterForum($forums_publics); 152 $articleMetier->setLang($langue_new); 153 $articleMetier->setLangChoisie($langue_choisie_new); 154 155 // Ajout Aurelien Vialet <avialet@clever-age.com> 156 // Gestion du versionning des articles 157 $articleMetier->setVersionId($id_version); 158 159 $createOK = $articleMetier->create(); 160 if (PEAR :: isError($createOK)) { 161 die($createOK->getMessage()); 162 } 163 /* 164 spip_query("INSERT INTO spip_articles (id_rubrique, statut, date, accepter_forum, lang, langue_choisie) VALUES ($articleMetier->getRubriqueId(), 'prepa', NOW(), '$forums_publics', '$langue_new', '$langue_choisie_new')"); 165 $id_article = spip_insert_id(); 166 167 spip_query("INSERT INTO spip_articles (id_rubrique, statut, date, accepter_forum) VALUES ($articleMetier->getRubriqueId(), 'prepa', NOW(), '$forums_publics')"); 168 */ 169 $id_article = $articleMetier->getArticleId(); 170 171 $deleteAuteursOK = $articleMetier->deleteAuteurs(); 172 if (PEAR :: isError($createOK)) { 173 die($deleteAuteursOK->getMessage()); 174 } 175 176 $addAuteurOK = $articleMetier->addAuteur($connect_id_auteur); 177 if (PEAR :: isError($addAuteurOK)) { 178 die($addAuteurOK->getMessage()); 179 } 180 /* 181 spip_query("DELETE FROM spip_auteurs_articles WHERE id_article = $id_article"); 182 spip_query("DELETE FROM spip_auteurs_articles WHERE id_article = $id_article"); 183 spip_query("INSERT INTO spip_auteurs_articles (id_auteur, id_article) VALUES ($connect_id_auteur, $id_article)"); 184 */ 185 /* Fin de zone de modifications */ 186 } else { 187 @ header("Location: ./index.php"); 188 exit; 189 } 190 } 191 192 $clean_link = new Link("mapping_articles.php?id_article=$id_article"); 193 194 // Initialiser doublons pour documents (completes par "propre($texte)") 195 $id_doublons['documents'] = "0"; 196 197 ////////////////////////////////////////////////////// 198 // Determiner les droits d'edition de l'article 199 // 200 201 /* 202 MODIFICATION CLEVER AGE COUCHE METIER 203 */ 204 205 $loadOK = $articleMetier->load($id_article); 206 207 if (PEAR :: isError($loadOK)) { 208 die($loadOK->getMessage()); 209 } else { 210 $statut_article = $articleMetier->getStatut(); 211 if ($statut_article != '') { 212 $titre_article = $articleMetier->getTitre(); 213 $rubrique_article = $articleMetier->getRubriqueId(); 214 } 215 } 216 $authorization = & recuperer_instance_authorization('isManagedRubriqueByAuteurId', $GLOBALS['connect_id_auteur'], array ('rubriqueId' => $rubrique_article)); 217 if (!$authorization->isAuthorizedAction()) { 218 echo _T('avis_acces_interdit'); 219 exit; 220 } 221 222 /* 223 $query = "SELECT statut, titre, id_rubrique FROM spip_articles WHERE id_article=$id_article"; 224 $result = spip_query($query); 225 if ($row = spip_fetch_array($result)) { 226 $statut_article = $row['statut']; 227 $titre_article = $row['titre']; 228 $rubrique_article = $row['id_rubrique']; 229 } 230 else { 231 $statut_article = ''; 232 } 233 */ 234 235 $flag_auteur = $articleMetier->isAuthor($connect_id_auteur); 236 if (PEAR :: isError($flag_auteur)) { 237 die($flag_auteur->getMessage()); 238 } 239 /* 240 $query = "SELECT * FROM spip_auteurs_articles WHERE id_article=$id_article AND id_auteur=$connect_id_auteur"; 241 $result_auteur = spip_query($query); 242 243 $flag_auteur = (spip_num_rows($result_auteur) > 0); 244 */ 245 246 /* 247 FIN DE ZONE DE MODIFICATIONS 248 */ 249 //--------Zone de modifications Clever Age elebescond------------- 250 //$authorization = &recuperer_instance_authorization(); 251 252 $authorization1 = & recuperer_instance_authorization('isManagedRubriqueByAuteurId', $GLOBALS['connect_id_auteur'], array ('rubriqueId' => $rubrique_article)); 253 $authorization2 = & recuperer_instance_authorization('modifierStatutArticle', $GLOBALS['connect_id_auteur'], array ('id_article' => $id_article, 'statut_nouv' => $statut_nouv)); 254 $authorization3 = & recuperer_instance_authorization('modifierArticle', $GLOBALS['connect_id_auteur'], array ('id_article' => $id_article)); 255 256 $flag_editable = ($authorization1->isAuthorizedAction() AND ($authorization2->isAuthorizedAction() OR $authorization3->isAuthorizedAction())); 257 /* 258 $flag_editable = ($authorization->isAuthorized($GLOBALS['connect_id_auteur'], 'isManagedRubriqueByAuteurId', array('rubriqueId' => $rubrique_article)) 259 OR ($flag_auteur AND ($statut_article == 'prepa' OR $statut_article == 'prop' OR $statut_article == 'poubelle'))); 260 */ 261 262 263 /* 264 $flag_editable = (acces_rubrique($rubrique_article) 265 OR ($flag_auteur AND ($statut_article == 'prepa' OR $statut_article == 'prop' OR $statut_article == 'poubelle'))); 266 */ 267 //--------Fin Zone de modifications Clever Age elebescond------------- 268 269 /// En double avec articles_edit.php3, mais necessite le flag_editable 270 $modif_document = $GLOBALS['modif_document']; 271 272 if ($modif_document == 'oui' AND $flag_editable) { 273 //--------Zone de modifications Clever Age aangenieux------------- 274 $documentMetier = & recuperer_instance_document(); 275 $loadOK = $documentMetier->load($id_document); 276 277 if (PEAR :: isError($loadOK)) { 278 die($loadOK->getMessage()); 279 } 280 281 if ($documentMetier->getMode() == 'document') { 282 if ($titre_document != '') { 283 $documentMetier->setTitre($titre_document); 284 } else { 285 if ($titre_document == '' && $descriptif_document != '' && $documentMetier->getTitre() == '') { 286 $titre_document_array = explode('/', $documentMetier->getFichier()); 287 $titre_document = $titre_document_array[2]; 288 $titre_document_array = explode('.', $titre_document); 289 290 $titre_document = strtr($titre_document_array[0], "_", " "); 291 $documentMetier->setTitre($titre_document); 292 } 293 } 294 } else { 295 if (($titre_document == '' && $descriptif_document == '') || ($titre_document != '')) { 296 $documentMetier->setTitre($titre_document); 297 } else { 298 if ($titre_document == '' && $descriptif_document != '' && $documentMetier->getTitre() == '') { 299 $titre_document_array = explode('/', $documentMetier->getFichier()); 300 $titre_document = $titre_document_array[2]; 301 $titre_document_array = explode('.', $titre_document); 302 303 $titre_document = strtr($titre_document_array[0], "_", " "); 304 $documentMetier->setTitre($titre_document); 305 } 306 } 307 } 308 309 $documentMetier->setDescriptif($descriptif_document); 310 if ($largeur_document AND $hauteur_document) { 311 $documentMetier->setLargeur($largeur_document); 312 $documentMetier->setHauteur($hauteur_document); 313 } 314 315 $updateOK = $documentMetier->update(); 316 if (PEAR :: isError($updateOK)) { 317 die($updateOK->getMessage()); 318 } 319 /* 320 $titre_document = corriger_caracteres($titre_document); 321 $descriptif_document = corriger_caracteres($descriptif_document); 322 $query = "UPDATE spip_documents SET titre=\"$titre_document\", descriptif=\"$descriptif_document\""; 323 if ($largeur_document AND $hauteur_document) $query .= ", largeur='$largeur_document', hauteur='$hauteur_document'"; 324 $query .= " WHERE id_document=$id_document"; 325 spip_query($query); 326 */ 327 //----------Fin zone de modifications----------------------------- 328 } 329 330 // 331 // Appliquer les modifications 332 // 333 $suivi_edito = lire_meta("suivi_edito"); 334 $reindexer = false; 335 336 $ok_nouveau_statut = false; 337 338 if ($statut_nouv && $flag_editable) { 339 //--------Zone de modifications Clever Age elebescond------------- 340 $authorization = & recuperer_instance_authorization('isManagedRubriqueByAuteurId', $GLOBALS['connect_id_auteur'], array ('rubriqueId' => $rubrique_article)); 341 if ($authorization->isAuthorizedAction()) 342 $ok_nouveau_statut = true; 343 /* 344 if (acces_rubrique($rubrique_article)) $ok_nouveau_statut = true; 345 */ 346 //--------Zone de modifications Clever Age elebescond@clever-age.com------------- 347 else 348 if ($flag_auteur) { 349 if ($statut_nouv == 'prop' AND $statut_article == 'prepa') 350 $ok_nouveau_statut = true; 351 else 352 if ($statut_nouv == 'prepa' AND $statut_article == 'poubelle') 353 $ok_nouveau_statut = true; 354 } 355 356 if ($ok_nouveau_statut) { 357 // GESTION DU VERSIONNING 358 //-----------MODIFICATION CLEVER AGE 359 $articleMetier->setStatut($statut_nouv); 360 /* 361 $query = "UPDATE spip_articles SET statut='$statut_nouv' WHERE id_article=$id_article"; 362 $result = spip_query($query); 363 */ 364 /******* Ajout MAPPING guillaume.grason@diplomatie.gouv.fr *******/ 365 if ($statut_nouv == 'poubelle' AND $statut_nouv != $statut_article) { 366 $mappings = $mapping->getMappings($articleMetier->getArticleId()); 367 if ( PEAR::isError($mappings) ) { 368 die($mappings->getMessage()); 369 } 370 else { 371 for ($i = 0; $i < count($mappings); $i++) { 372 $deleteOK = $mappingMetier->delete($mappings[$i]); 373 if (PEAR :: isError($deleteOK)) { 374 die($deleteOK->getMessage()); 375 } 376 $deleteOK = $mapping->deleteEntryByArticleIdAndMappingId($articleMetier->getArticleId(), $id_map); 377 if (PEAR :: isError($deleteOK)) { 378 die($deleteOK->getMessage()); 379 } 380 } 381 } 382 } 383 /******* Fin Ajout MAPPING guillaume.grason@diplomatie.gouv.fr *******/ 384 if ($statut_nouv == 'publie' AND $statut_nouv != $statut_article) { 385 if (($activer_version_articles == 'oui') && ($articleMetier->getVersionId() != 0)) { 386 //echo $articleMetier->getVersionId(); 387 $redirectId = $articleMetier->getVersionId(); 388 //$articleMetier->load(1); 389 // Modification Aurelien Vialet <avialet@clever-age.com> 390 // Mise ? jour en publi? implique dans le cas d'une version qu'il 391 // faut pour une version la pass? en artilce racine 392 393 if ($articleMetier->getVersionId() != 0) { 394 $articleMetier->switchVersion($articleMetier->getVersionId(), $articleMetier->getArticleId()); 395 } 396 // header("location:articles.php3?id_article=1"); //, c pas l'article 1 !!!!! 397 header("location:articles.php?id_article=".$articleMetier->getVersionId()); 398 399 // Gestion du changement de statut si on publie une version 400 // Fin de modification Aurelien Vialet <avialet@clever-age.com> 401 } 402 403 404 405 // $maDate = new Date(); 406 // $articleMetier->setDate($maDate->getDate(DATE_FORMAT_ISO)); 407 //$articleMetier->setDate('NOW()'); 408 /* 409 $query = "UPDATE spip_articles SET date=NOW() WHERE id_article=$id_article"; 410 $result = spip_query($query); 411 */ 412 } 413 414 $updateOK = $articleMetier->update(); 415 if (PEAR :: isError($updateOK)) { 416 die($updateOK->getMessage()); 417 } 418 //-------FIN MODIFICATION CLEVER AGE 419 /******* Ajout MAPPING guillaume.grason@diplomatie.gouv.fr *******/ 420 if ($statut_nouv != $statut_article) { 421 $mappings = $mapping->getMappings($articleMetier->getArticleId()); 422 if ( PEAR::isError($mappings) ) { 423 die($mappings->getMessage()); 424 } 425 else { 426 for ($i = 0; $i < count($mappings); $i++) { 427 $loadOK = $mappingMetier->load($mappings[$i]); 428 if (PEAR :: isError($loadOK)) { 429 die($loadOK->getMessage()); 430 } else { 431 if ($statut_nouv == 'publie') 432 $mappingMetier->setStatut('mappe'); 433 else 434 $mappingMetier->setStatut('map_off'); 435 $updateOK = $mappingMetier->update(); 436 if (PEAR :: isError($updateOK)) { 437 die($updateOK->getMessage()); 438 } 439 } 440 } 441 } 442 } 443 /******* Fin Ajout MAPPING guillaume.grason@diplomatie.gouv.fr *******/ 444 445 $statut_ancien = $statut_article; // message pour les traitements de fond (indexation ; envoi mail) 446 $statut_article = $statut_nouv; 447 //--------Zone de modifications Clever Age elebescond------------- 448 //$authorization = &recuperer_instance_authorization(); 449 //$flag_editable = ($authorization->isAuthorized($GLOBALS['connect_id_auteur'], 'isManagedRubriqueByAuteurId', array('rubriqueId' => $rubrique_article)) 450 //OR ($flag_auteur AND ($statut_article == 'prepa' OR $statut_article == 'prop'))); 451 /* 452 $flag_editable = (acces_rubrique($rubrique_article) 453 OR ($flag_auteur AND ($statut_article == 'prepa' OR $statut_article == 'prop'))); 454 */ 455 //--------Fin Zone de modifications Clever Age elebescond------------- 456 457 } 458 } 459 460 461 // Passer les images/docs en "inclus=non" 462 //----------------Zone de modifications Clever Age aangenieux---------- 463 $documentMetier = & recuperer_instance_document(); 464 $ze_doc = $documentMetier->getAlldocumentIdsForArticleId($id_article); 465 466 if (PEAR :: isError($ze_doc)) { 467 die($ze_doc->getMessage()); 468 } 469 /* 470 $query = "SELECT docs.id_document FROM spip_documents AS docs, spip_documents_articles AS lien WHERE lien.id_article=$id_article AND lien.id_document=docs.id_document"; 471 $result = spip_query($query); 472 while($row=spip_fetch_array($result)){ 473 $ze_doc[]=$row['id_document']; 474 } 475 */ 476 //----------------Fin de zone de modifications-------------------------- 477 478 if (count($ze_doc) > 0) { 479 $ze_docs = join($ze_doc, ","); 480 //----------------Zone de modifications Clever Age aangenieux---------- 481 $documentMetier = & recuperer_instance_document(); 482 $updateOK = $documentMetier->updateInclusForDocumentIds('non', $ze_docs); 483 if (PEAR :: isError($updateOK)) { 484 die($updateOK->getMessage()); 485 } 486 /* 487 spip_query("UPDATE spip_documents SET inclus='non' WHERE id_document IN ($ze_docs)"); 488 */ 489 //----------------Fin de zone de modifications-------------------------- 490 } 491 492 // 493 // Reunit les textes decoupes parce que trop longs 494 // 495 // patch David Charbonnier ? tester 496 $nb_texte = 0; 497 while ($nb_texte ++ < 100) { // 100 pour eviter une improbable boucle infinie 498 $varname = "texte$nb_texte"; 499 $texte_plus = $$varname; // double $ pour obtenir $texte1, $texte2... 500 if ($texte_plus) { 501 $texte_ajout .= " ".$texte_plus; 502 } else { 503 break; 504 } 505 } 506 $texte = $texte_ajout.$texte; 507 /* 508 $nb_texte = 0; 509 while ($nb_texte ++ < 100){ // 100 pour eviter une improbable boucle infinie 510 $varname = "texte$nb_texte"; 511 $texte_plus = $$varname; // double $ pour obtenir $texte1, $texte2... 512 if ($texte_plus){ 513 $texte_plus = ereg_replace("<!--SPIP-->[\n\r]*","\n\n\n",$texte_plus); 514 $texte_ajout .= " ".$texte_plus; 515 } else { 516 break; 517 } 518 } 519 $texte = $texte_ajout . $texte; 520 */ 521 // fin patch 522 523 // preparer le virtuel 524 if ($changer_virtuel && $flag_editable) { 525 $virtuel = eregi_replace("^http://$", "", trim($virtuel)); 526 if ($virtuel) 527 $chapo = addslashes(corriger_caracteres("=$virtuel")); 528 else 529 $chapo = ""; 530 531 //-----------MODIFICATION CLEVER AGE 532 533 $articleMetier->setChapo($chapo); 534 535 $updateOK = $articleMetier->update(); 536 537 if (PEAR :: isError($updateOK)) { 538 die(PEAR :: isError($updateOK)); 539 } 540 541 /* 542 $query = "UPDATE spip_articles SET chapo=\"$chapo\" WHERE id_article=$id_article"; 543 $result = spip_query($query); 544 */ 545 //-----------FIN MODIFICATION CLEVER AGE 546 547 } 548 549 550 if ($titre && !$ajout_forum && $flag_editable) { 551 // ajout de l'entr?e dans la table historique 552 if (($activer_histo_articles == 'oui') && ($articleMetier->getActiverHistorique() == 'oui')) { 553 $articleMetier->create_historique (); 554 } 555 556 //------MODIFICATION CLEVER AGE 557 $articleMetier->setSurtitre($surtitre); 558 $articleMetier->setTitre($titre); 559 $articleMetier->setSoustitre($soustitre); 560 $articleMetier->setDescriptif($descriptif); 561 $articleMetier->setNomSite($nom_site); 562 $articleMetier->setUrlSite($url_site); 563 $articleMetier->setChapo($chapo); 564 $articleMetier->setTexte($texte); 565 $articleMetier->setPs($ps); 566 /* 567 $surtitre = addslashes(corriger_caracteres($surtitre)); 568 $titre = addslashes(corriger_caracteres($titre)); 569 $soustitre = addslashes(corriger_caracteres($soustitre)); 570 $descriptif = addslashes(corriger_caracteres($descriptif)); 571 $nom_site = addslashes(corriger_caracteres($nom_site)); 572 $url_site = addslashes(corriger_caracteres($url_site)); 573 $chapo = addslashes(corriger_caracteres($chapo)); 574 $texte = addslashes(corriger_caracteres($texte)); 575 $ps = addslashes(corriger_caracteres($ps)); 576 */ 577 578 // recoller les champs du extra 579 if ($champs_extra) { 580 include_ecrire ("inc_extra.php"); 581 //-------MODIFICATION CLEVER AGE --- AANGENIEUX --- Gestion extra ------- 582 $add_extra = extra_recup_saisie("articles", $id_secteur); 583 /* 584 $add_extra = ", extra = '".addslashes(extra_recup_saisie("article", $id_secteur))."'"; 585 */ 586 } else 587 $add_extra = ''; 588 589 $articleMetier->setExtra($add_extra); 590 //--------------FIN DE MODIFICATION CA--------------------------- 591 592 // Verifier qu'on envoie bien dans une rubrique autorisee 593 594 //--------Zone de modifications Clever Age elebescond------------- 595 $authorization = & recuperer_instance_authorization('isManagedRubriqueByAuteurId', $GLOBALS['connect_id_auteur'], array ('rubriqueId' => $rubrique_article)); 596 if ($flag_auteur OR $authorization->isAuthorizedAction()) { 597 $articleMetier->setRubriqueId($id_rubrique); 598 } 599 600 /* 601 if ($flag_auteur OR acces_rubrique($id_rubrique)) { 602 //$change_rubrique = "id_rubrique=\"$id_rubrique\","; 603 } 604 */ 605 //--------Fin Zone de modifications Clever Age elebescond------------- 606 607 /* 608 } else { 609 $change_rubrique = ""; 610 } 611 */ 612 $updateOK = $articleMetier->update(); 613 614 if (PEAR :: isError($updateOK)) { 615 die(PEAR :: isError($updateOK)); 616 } 617 /******* Ajout MAPPING guillaume.grason@diplomatie.gouv.fr *******/ 618 $mappings = $mapping->getMappings($articleMetier->getArticleId()); 619 if ( PEAR::isError($mappings) ) { 620 die($mappings->getMessage()); 621 } 622 else { 623 for ($i = 0; $i < count($mappings); $i++) { 624 $loadOK = $mappingMetier->load($mappings[$i]); 625 if (PEAR :: isError($loadOK)) { 626 die($loadOK->getMessage()); 627 } else { 628 $mappingMetier->setSurtitre($articleMetier->getSurtitre()); 629 //$mappingMetier->setTitre($articleMetier->getTitre()); 630 $mappingMetier->setSoustitre($articleMetier->getSoustitre()); 631 //$mappingMetier->setDescriptif($articleMetier->getDescriptif()); 632 $mappingMetier->setNomSite($articleMetier->getNomSite()); 633 $mappingMetier->setUrlSite($articleMetier->getUrlSite()); 634 $mappingMetier->setChapo($articleMetier->getChapo()); 635 $mappingMetier->setTexte($articleMetier->getTexte()); 636 $mappingMetier->setPs($articleMetier->getPs()); 637 $mappingMetier->setExtra($articleMetier->getExtra()); 638 $updateOK = $mappingMetier->update(); 639 if (PEAR :: isError($updateOK)) { 640 die($updateOK->getMessage()); 641 } 642 } 643 } 644 } 645 /******* Fin Ajout MAPPING guillaume.grason@diplomatie.gouv.fr *******/ 646 /* 647 $query = "UPDATE spip_articles SET surtitre=\"$surtitre\", titre=\"$titre\", soustitre=\"$soustitre\", $change_rubrique descriptif=\"$descriptif\", chapo=\"$chapo\", texte=\"$texte\", ps=\"$ps\", url_site=\"$url_site\", nom_site=\"$nom_site\" $add_extra WHERE id_article=$id_article"; 648 $result = spip_query($query); 649 */ 650 //----------FIN MODIFICATION CLEVER AGE 651 652 /******* Ajout MAE guillaume.grason@diplomatie.gouv.fr *******/ 653 define ("ID_ALAUNE", 3613); 654 define ("ID_AUTRESACTUS", 3614); 655 if ($articleMetier->getRubriqueId() == ID_ALAUNE) { 656 $f = fopen("./cron/supprimer_actus", "w"); 657 if ($f) { 658 $result = fwrite($f, "1"); 659 fclose($f); 660 } 661 } 662 if ($articleMetier->getRubriqueId() == ID_AUTRESACTUS) { 663 $f = fopen("./cron/supprimer_actus", "w"); 664 if ($f) { 665 $result = fwrite($f, "1"); 666 fclose($f); 667 } 668 } 669 $f = fopen("./cron/a_supprimer", "a+"); 670 if ($f) { 671 $result = fwrite($f, "id_article ".$articleMetier->getArticleId()."\n"); 672 fclose($f); 673 } 674 /******* Fin Ajout MAE guillaume.grason@diplomatie.gouv.fr *******/ 675 676 677 // modifications Olivier Mansour 678 // reports de ces actions en bas de script 679 /* 680 calculer_rubriques(); 681 */ 682 // fin modifications Olivier Mansour 683 /* Ajout Clever Age / Nicolas Hoizey / R�f�rencement des liens */ 684 $contenu = $surtitre.$titre.$soustitre.$descriptif.$chapo.$texte.$ps; 685 if ($champs_extra) 686 $contenu .= addslashes(extra_recup_saisie('article', $id_secteur)); 687 update_liens($contenu, 'art-'.$id_article); 688 /* fin zone de modification Clever Age */ 689 690 691 if ($statut_article == 'publie') 692 $reindexer = true; 693 694 // Changer la langue heritee 695 if ($articleMetier->getRubriqueId() != $id_rubrique_old) { 696 /**************** Modification elebescond@clever-age.com *************************************/ 697 $loadOK = $articleMetier->load($id_article); 698 if (PEAR :: isError($loadOK)) { 699 die($loadOK->getMessage()); 700 } 701 $langue_old = $articleMetier->getLang(); 702 $langue_choisie_old = $articleMetier->getLangChoisie(); 703 /* 704 $row = spip_fetch_array(spip_query("SELECT lang, langue_choisie FROM spip_articles WHERE id_article=$id_article")); 705 $langue_old = $row['lang']; 706 $langue_choisie_old = $row['langue_choisie']; 707 */ 708 /**************** Fin modification elebescond@clever-age.com *************************************/ 709 710 /**************** Modification elebescond@clever-age.com *************************************/ 711 if ($langue_choisie_old != "oui") { 712 $rubriqueMetier = & recuperer_instance_rubrique(); 713 $loadOK = $rubriqueMetier->load($articleMetier->getRubriqueId()); 714 if (PEAR :: isError($loadOK)) { 715 die($loadOK->getMessage()); 716 } 717 $langue_new = $rubriqueMetier->getLang(); 718 if ($langue_new != $langue_old) { 719 $articleMetier->setLang($langue_new); 720 $updateOK = $articleMetier->update(); 721 if (PEAR :: isError($updateOK)) { 722 die($updateOK->getMessage()); 723 } 724 /******* Ajout MAPPING guillaume.grason@diplomatie.gouv.fr *******/ 725 $mappings = $mapping->getMappings($articleMetier->getArticleId()); 726 if ( PEAR::isError($mappings) ) { 727 die($mappings->getMessage()); 728 } 729 else { 730 for ($i = 0; $i < count($mappings); $i++) { 731 $loadOK = $mappingMetier->load($mappings[$i]); 732 if (PEAR :: isError($loadOK)) { 733 die($loadOK->getMessage()); 734 } else { 735 $mappingMetier->setLang($articleMetier->getLang()); 736 $updateOK = $mappingMetier->update(); 737 if (PEAR :: isError($updateOK)) { 738 die($updateOK->getMessage()); 739 } 740 } 741 } 742 } 743 /******* Fin Ajout MAPPING guillaume.grason@diplomatie.gouv.fr *******/ 744 } 745 } 746 /* 747 if ($langue_choisie_old != "oui") { 748 $row = spip_fetch_array(spip_query("SELECT lang FROM spip_rubriques WHERE id_rubrique=$id_rubrique")); 749 $langue_new = $row['lang']; 750 if ($langue_new != $langue_old) spip_query("UPDATE spip_articles SET lang = '$langue_new' WHERE id_article = $id_article"); 751 } 752 */ 753 /**************** Fin modification elebescond@clever-age.com *************************************/ 754 } 755 756 // afficher le nouveau titre dans la barre de fenetre 757 $titre_article = stripslashes($titre); 758 759 //-----------MODIFICATION CLEVER AGE 760 761 // marquer l'article (important pour les articles nouvellement crees) 762 $maDate = new Date(); 763 $articleMetier->setModificationDate($maDate->getDate(DATE_FORMAT_ISO)); 764 //$articleMetier->setModificationDate('NOW()'); 765 $articleMetier->setAuteurModif($connect_id_auteur); 766 $updateOK = $articleMetier->update(); 767 768 if (PEAR :: isError($updateOK)) { 769 die(PEAR :: isError($updateOK)); 770 } 771 /******* Ajout MAPPING guillaume.grason@diplomatie.gouv.fr *******/ 772 $mappings = $mapping->getMappings($articleMetier->getArticleId()); 773 if ( PEAR::isError($mappings) ) { 774 die($mappings->getMessage()); 775 } 776 else { 777 for ($i = 0; $i < count($mappings); $i++) { 778 $loadOK = $mappingMetier->load($mappings[$i]); 779 if (PEAR :: isError($loadOK)) { 780 die($loadOK->getMessage()); 781 } else { 782 $mappingMetier->setModificationDate($articleMetier->getModificationDate()); 783 $mappingMetier->setAuteurModif($articleMetier->getAuteurModif()); 784 $updateOK = $mappingMetier->update(); 785 if (PEAR :: isError($updateOK)) { 786 die($updateOK->getMessage()); 787 } 788 } 789 } 790 } 791 /******* Fin Ajout MAPPING guillaume.grason@diplomatie.gouv.fr *******/ 792 793 /* 794 spip_query("UPDATE spip_articles SET date_modif=NOW(), auteur_modif=$connect_id_auteur WHERE id_article=$id_article"); 795 */ 796 $id_article_bloque = $id_article; // message pour inc_presentation 797 798 799 800 } 801 802 // remplacement par une sous version de l'historique 803 if ($flag_editable and $id_article_historique_replace and ($activer_histo_articles == 'oui') and ($articleMetier->getActiverHistorique() == 'oui')) { 804 $articleMetier->create_historique (); 805 $articleMetier->switchHistorique($id_article_historique_replace); 806 } 807 //----------FIN MODIFICATION CLEVER AGE 808 809 // 810 // Suivi forums publics 811 // 812 813 // fonction dupliquee dans inc-forum.php3 814 function get_forums_publics($id_article = 0) { 815 816 $forums_publics = lire_meta("forums_publics"); 817 if ($id_article) { 818 //------------MODIFICATION CLEVER AGE 819 $articleMetier = & recuperer_instance_article(); 820 $loadOK = $articleMetier->loadLightWeight($id_article); 821 /* 822 $query = "SELECT accepter_forum FROM spip_articles WHERE id_article=$id_article"; 823 $res = spip_query($query); 824 */ 825 826 if ( PEAR::isError($loadOK) ) { 827 die($loadOK->getMessage()); 828 } else { 829 $forums_publics = $articleMetier->getAccepterForum(); 830 } 831 /* 832 if ($obj = spip_fetch_object($res)) 833 $forums_publics = $obj->accepter_forum; 834 */ 835 //-----------FIN MODIFICATION CLEVER AGE 836 837 } else { // dans ce contexte, inutile 838 $forums_publics = substr(lire_meta("forums_publics"), 0, 3); 839 } 840 return $forums_publics; 841 } 842 843 // 844 // Lire l'article 845 // 846 847 //----------MODIFICATION CLEVER AGE 848 if ($articleMetier->getArticleId() == $id_article) { //Test si article charg� OK 849 $surtitre = $articleMetier->getSurtitre(); 850 $titre = $articleMetier->getTitre(); 851 $soustitre = $articleMetier->getSoustitre(); 852 $id_rubrique = $articleMetier->getRubriqueId(); 853 $descriptif = $articleMetier->getDescriptif(); 854 $chapo = $articleMetier->getChapo(); 855 $texte = $articleMetier->getTexte(); 856 $ps = $articleMetier->getPs(); 857 $date = $articleMetier->getDate(); 858 $statut_article = $articleMetier->getStatut(); 859 $maDate = new Date($articleMetier->getMajDate()); 860 $maj = $maDate->getDate(DATE_FORMAT_TIMESTAMP); 861 //$maj = $articleMetier->getMajDate(); 862 $date_redac = $articleMetier->getRedactionDate(); 863 $visites = $articleMetier->getVisites(); 864 $referers = $articleMetier->getReferers(); 865 $extra = $articleMetier->getExtra(); 866 $id_trad = $articleMetier->getTradId(); 867 } 868 869 /* 870 $query = "SELECT * FROM spip_articles WHERE id_article='$id_article'"; 871 $result = spip_query($query); 872 873 if ($row = spip_fetch_array($result)) { 874 $id_article = $row["id_article"]; 875 $surtitre = $row["surtitre"]; 876 $titre = $row["titre"]; 877 $soustitre = $row["soustitre"]; 878 $id_rubrique = $row["id_rubrique"]; 879 $descriptif = $row["descriptif"]; 880 $nom_site = $row["nom_site"]; 881 $url_site = $row["url_site"]; 882 $chapo = $row["chapo"]; 883 $texte = $row["texte"]; 884 $ps = $row["ps"]; 885 $date = $row["date"]; 886 $statut_article = $row["statut"]; 887 $maj = $row["maj"]; 888 $date_redac = $row["date_redac"]; 889 $visites = $row["visites"]; 890 $referers = $row["referers"]; 891 $extra = $row["extra"]; 892 $id_trad = $row["id_trad"]; 893 } 894 */ 895 896 //----------FIN MODIFICATION CLEVER AGE 897 898 // pour l'affichage du virtuel 899 unset ($virtuel); 900 if (substr($chapo, 0, 1) == '=') { 901 $virtuel = substr($chapo, 1); 902 } 903 904 if (ereg("([0-9]{4})-([0-9]{2})-([0-9]{2})", $date_redac, $regs)) { 905 $mois_redac = $regs[2]; 906 $jour_redac = $regs[3]; 907 $annee_redac = $regs[1]; 908 if ($annee_redac > 4000) 909 $annee_redac -= 9000; 910 } 911 912 if (ereg("([0-9]{4})-([0-9]{2})-([0-9]{2})", $date, $regs)) { 913 $mois = $regs[2]; 914 $jour = $regs[3]; 915 $annee = $regs[1]; 916 } 917 918 debut_page("« $titre_article »", "documents", "articles"); 919 920 debut_grand_cadre(); 921 afficher_parents($articleMetier->getRubriqueId()); 922 $parents = "~ <img src='img_pack/racine-site-24.gif' width=24 height=24 align='middle'> <A HREF='naviguer.php?coll=0'><B>"._T('lien_racine_site')."</B></A> ".aide("rubhier")."<BR>".$parents; 923 $parents = ereg_replace("~", " ", $parents); 924 $parents = ereg_replace(" ", "", $parents); 925 echo "$parents"; 926 927 fin_grand_cadre(); 928 929 ////////////////////////////////////////////////////// 930 // Affichage de la colonne de gauche 931 // 932 933 debut_gauche(); 934 935 debut_boite_info(); 936 937 echo "<div align='center'>\n"; 938 939 if ($statut_article == "publie") { 940 $post_dates = lire_meta("post_dates"); 941 $voir_en_ligne = true; 942 if ($post_dates == "non") { 943 944 //---------MODIFICATION CLEVER AGE 945 946 if ($articleMetier->isPostDated()) { 947 $voir_en_ligne = false; 948 } 949 950 /* 951 $query = "SELECT id_article FROM spip_articles WHERE id_article=$id_article AND date<=NOW()"; 952 $result = spip_query($query); 953 if (!spip_num_rows($result)) { 954 $voir_en_ligne = false; 955 } 956 */ 957 958 //----------FIN MODIFICATION CLEVER AGE 959 960 } 961 } 962 963 /******* Ajout PREVIEW guillaume.grason@diplomatie.gouv.fr *******/ 964 if (($statut_article == 'valid') or ($statut_article == 'prepa') or ($statut_article == 'prop') or ($statut_article == 'map_off')) 965 $previsualiser = true; 966 if ($statut_article == 'mappe') 967 $voir_en_ligne = true; 968 /******* Fin Ajout PREVIEW guillaume.grason@diplomatie.gouv.fr *******/ 969 /*********** Modification elebescond@clever-age.com *********************/ 970 echo "<font face='Verdana,Arial,Sans,sans-serif' size='1'><b>"._T('art_info_numero_article', null, $articleMetier->getRubriqueId())."</b></font>\n"; 971 /* 972 echo "<font face='Verdana,Arial,Sans,sans-serif' size='1'><b>"._T('info_numero_article')."</b></font>\n"; 973 */ 974 /*********** Fin modification elebescond@clever-age.com *********************/ 975 echo "<br><font face='Verdana,Arial,Sans,sans-serif' size='6'><b>$id_article</b></font>\n"; 976 if ($voir_en_ligne) { 977 icone_horizontale(_T('icone_voir_en_ligne'), "../spip_redirect.php?id_article=$id_article&recalcul=oui", "racine-24.gif", "rien.gif"); 978 //icone_horizontale(_T('icone_voir_en_pdf'), "../spip_redirect.php3?id_article_pdf=$id_article&recalcul=oui", "pdf-24.png", "rien.gif"); 979 } 980 /******* Ajout PREVIEW guillaume.grason@diplomatie.gouv.fr *******/ 981 elseif ($previsualiser) { 982 icone_horizontale(_T('icone_previsualiser'), "../spip_redirect.php?id_article=$id_article&preview=oui", "racine-24.gif", "rien.gif"); 983 } 984 /******* Fin Ajout PREVIEW guillaume.grason@diplomatie.gouv.fr *******/ 985 986 //----------------Zone de modifications Clever Age elebescond@clever-age.com---------- 987 $authorization = & recuperer_instance_authorization( 'afficherSuiviForumArticle', 988 $GLOBALS['connect_id_auteur'], 989 array ('id_rubrique' => $articleMetier->getRubriqueId()) ); 990 if ($authorization->isAuthorizedAction()) { 991 /* 992 if ($connect_statut=='minirezo' AND acces_rubrique($id_rubrique)) { 993 */ 994 //----------------FIN Zone de modifications Clever Age elebescond---------- 995 //----------Modification Clever Age elebescond@clever-age.com----------------- 996 $forumMetier = & recuperer_instance_forum(); 997 $nb_forums = $forumMetier->howManyForumForArticleIdAndStatuts($id_article, "'publie', 'off', 'prop'"); 998 if (PEAR :: isError($nb_forums)) { 999 die($nb_forums->getMessage()); 1000 } 1001 if ($nb_forums) { 1002 icone_horizontale(_T('icone_suivi_forum', array ('nb_forums' => $nb_forums)), "controle_forum_suite.php?affType=discussion&affMessage[]=tout&vierge=1&id_current_forum=$id_article&type_forum=article", "suivi-forum-24.gif", ""); 1003 } 1004 /* 1005 $query = "SELECT count(*) AS count FROM spip_forum WHERE id_article=$id_article AND statut IN ('publie', 'off', 'prop')"; 1006 if ($row = spip_fetch_array(spip_query($query))) { 1007 $nb_forums = $row['count']; 1008 if ($nb_forums) { 1009 icone_horizontale(_T('icone_suivi_forum', array('nb_forums' => $nb_forums)), 1010 "articles_forum.php3?id_article=$id_article", "suivi-forum-24.gif", ""); 1011 } 1012 } 1013 */ 1014 //---------Fin modification Clever Age------------------- 1015 } 1016 1017 $activer_statistiques = lire_meta("activer_statistiques"); 1018 $activer_statistiques_ref = lire_meta("activer_statistiques_ref"); 1019 1020 //----------------Zone de modifications Clever Age elebescond@clever-age.com---------- 1021 $authorization = & recuperer_instance_authorization('afficherIconeEvolutionVisites', $GLOBALS['connect_id_auteur'], array ('statut_article' => $statut_article, 'visites' => $visites, 'activer_statistiques' => $activer_statistiques, 'options' => $options)); 1022 if ($authorization->isAuthorizedAction()) { 1023 /* 1024 if ($connect_statut == "minirezo" AND $statut_article == 'publie' AND $visites > 0 AND $activer_statistiques != "non" AND $options == "avancees") { 1025 */ 1026 //----------------FIN Zone de modifications Clever Age elebescond---------- icone_horizontale(_T('icone_evolution_visites', array('visites' => $visites, 'aff_ref' => $aff_ref)), "statistiques_visites.php3?id_article=$id_article", "statistiques-24.gif","rien.gif"); 1027 } 1028 echo "</div>\n"; 1029 fin_boite_info(); 1030 1031 1032 // Logos du mapping 1033 1034 $arton = "arton$id_article"; 1035 $artoff = "artoff$id_article"; 1036 1037 if ($id_article > 0 AND $flag_editable) 1038 afficher_boite_logo($arton, $artoff, _T('art_logo_mapping', null, $articleMetier->getRubriqueId()).aide("logoart"), _T('logo_survol')); 1039 1040 $authorization = & recuperer_instance_authorization('afficherBoiteConfigurationAvancee', $GLOBALS['connect_id_auteur'], array ('options' => $options, 'flag_editable' => $flag_editable)); 1041 if ($authorization->isAuthorizedAction()) { 1042 // Redirection (article virtuel) 1043 debut_cadre_relief("site-24.gif"); 1044 $visible = ($changer_virtuel || $virtuel); 1045 1046 echo "<font size='2' FACE='Verdana,Arial,Sans,sans-serif'><center><b>"; 1047 if ($visible) 1048 echo bouton_block_visible("redirection"); 1049 else 1050 echo bouton_block_invisible("redirection"); 1051 echo _T('bouton_redirection'); 1052 echo aide("artvirt"); 1053 echo "</b></center></font>"; 1054 if ($visible) 1055 echo debut_block_visible("redirection"); 1056 else 1057 echo debut_block_invisible("redirection"); 1058 1059 echo "<form action='mapping_articles.php?id_article=$id_article' method='post'>"; 1060 echo "\n<INPUT TYPE='hidden' NAME='id_article' VALUE='$id_article'>"; 1061 echo "\n<INPUT TYPE='hidden' NAME='changer_virtuel' VALUE='oui'>"; 1062 $virtuelhttp = ($virtuel ? "" : "http://"); 1063 1064 echo "<INPUT TYPE='text' NAME='virtuel' CLASS='formo' style='font-size:9px;' VALUE=\"$virtuelhttp$virtuel\" SIZE='40'><br>"; 1065 echo "<font face='Verdana,Arial,Sans,sans-serif' size=2>"; 1066 /************* Modification elebescond@clever-age.com *******************/ 1067 echo "(<b>"._T('art_texte_article_virtuel', null, $articleMetier->getRubriqueId() )." :</b> "._T('art_texte_reference_mais_redirige', null, $articleMetier->getRubriqueId() ).")"; 1068 /* 1069 echo "(<b>"._T('texte_article_virtuel')." :</b> "._T('texte_reference_mais_redirige').")"; 1070 */ 1071 /************* Fin modification elebescond@clever-age.com *******************/ 1072 echo "</font>"; 1073 echo "<div align='right'><INPUT TYPE='submit' NAME='Changer' CLASS='fondo' VALUE='"._T('bouton_changer')."' STYLE='font-size:10px'></div>"; 1074 echo "</form>"; 1075 echo fin_block(); 1076 1077 fin_cadre_relief(); 1078 } 1079 1080 // 1081 // Afficher les raccourcis 1082 // 1083 1084 debut_raccourcis(); 1085 icone_horizontale(_T('icone_tous_articles'), "articles_page.php", "article-24.gif"); 1086 ///////////////////////////// 1087 // Modifier l'article parent 1088 // 1089 icone_horizontale(_T('art_icone_modifier_article_parent', null, $coll), "articles.php?id_article=$id_article_parent&", "article-24.gif","edit.gif"); 1090 //////////////////////////////// 1091 // Supprimer le mapping courant 1092 echo "<form name='mapping' method='post' action='do_mapping.php'>\n"; 1093 echo "<a href='#' OnClick='document.forms[\"mapping\"].submit();' class='cellule-h'><table cellpadding='0' valign='middle'><tr>\n"; 1094 echo "<td><a href='#' OnClick='document.forms[\"mapping\"].submit();'><div class='cell-i'><img style='background: url(\"img_pack/article-24.gif\"); background-repeat: no-repeat; background-position: center center;' src='img_pack/supprimer.gif' alt='' border='0'></div></a></td>\n"; 1095 echo "<td class='cellule-h-lien'><a href='#' OnClick='document.forms[\"mapping\"].submit();' class='cellule-h'>"._T('art_icone_supprimer_mapping', null, $coll)."</a></td>\n"; 1096 echo "</tr></table></a>\n"; 1097 echo "<input type='hidden' name='id_map' value ='$id_article' />\n"; 1098 echo "<input type='hidden' name='id_action' value='0'>\n"; 1099 echo "<input type='hidden' name='id_article' value='$id_article_parent'>\n"; 1100 echo "</form>"; 1101 // Fin supprimer le mappage courant 1102 ////////////////////////////////// 1103 fin_raccourcis(); 1104 1105 ////////////////////////////////////////////////////// 1106 // Affichage de la colonne de droite 1107 // 1108 1109 debut_droite(); 1110 1111 $strErr = displayErrorMsg(getErrorMsg('article', $articleMetier)); 1112 if ($strErr) { 1113 debut_cadre_relief(); 1114 // Ajout Aurelien Vialet <avialet@clever-age.com> Gestion des erreur sur les champs/Gestion des champs de formulaires 1115 echo $strErr; 1116 // Fin de l'ajout Aurelien Vialet 1117 fin_cadre_relief(); 1118 } 1119 1120 changer_typo('', 'article'.$id_article); 1121 1122 // qu'est-ce que c'est que ces choses ?? 1123 1124 function mySel($varaut, $variable) { 1125 $retour = " VALUE=\"$varaut\""; 1126 if ($variable == $varaut) { 1127 $retour .= " SELECTED"; 1128 } 1129 return $retour; 1130 } 1131 1132 function my_sel($num, $tex, $comp) { 1133 if ($num == $comp) { 1134 echo "<OPTION VALUE='$num' SELECTED>$tex\n"; 1135 } else { 1136 echo "<OPTION VALUE='$num'>$tex\n"; 1137 } 1138 1139 } 1140 1141 function afficher_mois($mois) { 1142 my_sel("00", _T('mois_non_connu'), $mois); 1143 my_sel("01", _T('date_mois_1'), $mois); 1144 my_sel("02", _T('date_mois_2'), $mois); 1145 my_sel("03", _T('date_mois_3'), $mois); 1146 my_sel("04", _T('date_mois_4'), $mois); 1147 my_sel("05", _T('date_mois_5'), $mois); 1148 my_sel("06", _T('date_mois_6'), $mois); 1149 my_sel("07", _T('date_mois_7'), $mois); 1150 my_sel("08", _T('date_mois_8'), $mois); 1151 my_sel("09", _T('date_mois_9'), $mois); 1152 my_sel("10", _T('date_mois_10'), $mois); 1153 my_sel("11", _T('date_mois_11'), $mois); 1154 my_sel("12", _T('date_mois_12'), $mois); 1155 } 1156 1157 function afficher_annee($annee) { 1158 // Cette ligne permettrait de faire des articles sans date de publication 1159 // my_sel("0000","n.c.",$annee); 1160 1161 if ($annee < 1996 AND $annee <> 0) { 1162 echo "<OPTION VALUE='$annee' SELECTED>$annee\n"; 1163 } 1164 for ($i = 1996; $i < date(Y) + 2; $i ++) { 1165 my_sel($i, $i, $annee); 1166 } 1167 } 1168 1169 function afficher_jour($jour) { 1170 my_sel("00", _T('jour_non_connu_nc'), $jour); 1171 for ($i = 1; $i < 32; $i ++) { 1172 if ($i < 10) { 1173 $aff = " ".$i; 1174 } else { 1175 $aff = $i; 1176 } 1177 1178 $d = strlen($i) == 1 ? '0'.$i : $i; 1179 my_sel( $d , $aff, $jour ); 1180 } 1181 } 1182 1183 function afficher_heure( $heure ) { 1184 my_sel( '', _T('heure_non_connu_nc'), $heure ); 1185 for ( $i = 0; $i < 24; $i++ ) { 1186 $h = strlen($i) == 1 ? '0'.$i : $i; 1187 my_sel( $h, $h, $heure ); 1188 } 1189 } 1190 1191 function afficher_minute( $minute ) { 1192 my_sel( '', _T('minute_non_connu_nc'), $minute ); 1193 for ( $i = 0; $i < 60; $i++ ) { 1194 $m = strlen($i) == 1 ? '0'.$i : $i; 1195 my_sel( $m, $m, $minute ); 1196 } 1197 } 1198 1199 debut_cadre_relief(); 1200 echo "<CENTER>"; 1201 1202 // 1203 // Titre, surtitre, sous-titre 1204 // 1205 1206 if ($statut_article == 'publie') { 1207 $logo_statut = "puce-verte.gif"; 1208 } else // TODO : un bon switch case fera l'affaire 1209 if ($statut_article == 'prepa') { 1210 $logo_statut = "puce-blanche.gif"; 1211 } else 1212 if ($statut_article == 'prop') { 1213 $logo_statut = "puce-orange.gif"; 1214 } else 1215 if ($statut_article == 'valid') { 1216 $logo_statut = "puce-jaune.gif"; 1217 } else 1218 if ($statut_article == 'archi') { 1219 $logo_statut = "puce-marron.gif"; 1220 } else 1221 if ($statut_article == 'refuse') { 1222 $logo_statut = "puce-rouge.gif"; 1223 } else 1224 if ($statut_article == 'poubelle') { 1225 $logo_statut = "puce-poubelle.gif"; 1226 } 1227 1228 echo "\n<table cellpadding=0 cellspacing=0 border=0 width='100%'>"; 1229 echo "<tr width='100%'><td width='100%' valign='top'>"; 1230 if ($surtitre) { 1231 echo "<span $dir_lang><font face='arial,helvetica' size=3><b>"; 1232 echo typo($surtitre); 1233 echo "</b></font></span>\n"; 1234 } 1235 gros_titre($titre, $logo_statut); 1236 1237 if ($soustitre) { 1238 echo "<span $dir_lang><font face='arial,helvetica' size=3><b>"; 1239 echo typo($soustitre); 1240 echo "</b></font></span>\n"; 1241 } 1242 1243 // TODO : c'est super moche ! 1244 $nom_site = $articleMetier->getNomSite(); 1245 $url_site = $articleMetier->getUrlSite(); 1246 if ($descriptif OR $url_site OR $nom_site) { 1247 echo "<p><div align='left' style='padding: 5px; border: 1px dashed #aaaaaa; background-color: #e4e4e4;' $dir_lang>"; 1248 echo "<font size=2 face='Verdana,Arial,Sans,sans-serif'>"; 1249 /********** Modification elebescond@clever-age.com ********************/ 1250 $texte_case = ($descriptif) ? "{{"._T('art_info_descriptif', null, $articleMetier->getRubriqueId())."}} $descriptif\n\n" : ''; 1251 /* 1252 $texte_case = ($descriptif) ? "{{"._T('info_descriptif')."}} $descriptif\n\n" : ''; 1253 */ 1254 /********** Fin modification elebescond@clever-age.com ********************/ 1255 $texte_case .= ($nom_site.$url_site) ? "{{"._T('info_urlref')."}} [".$nom_site."->".$url_site."]" : ''; 1256 echo propre($texte_case); 1257 echo "</font>"; 1258 echo "</div>"; 1259 } 1260 1261 if ($statut_article == 'prop') { 1262 /********** Modification elebescond@clever-age.com ********************/ 1263 echo "<P><FONT FACE='Verdana,Arial,Sans,sans-serif' SIZE=2 COLOR='red'><B>"._T('art_text_article_propose_publication', null, $articleMetier->getRubriqueId())."</B></FONT></P>"; 1264 /* 1265 echo "<P><FONT FACE='Verdana,Arial,Sans,sans-serif' SIZE=2 COLOR='red'><B>"._T('text_article_propose_publication')."</B></FONT></P>"; 1266 */ 1267 /********** Fin modification elebescond@clever-age.com ********************/ 1268 } 1269 1270 echo "</td>"; 1271 1272 1273 1274 if ($flag_editable) { 1275 echo "<td><img src='img_pack/rien.gif' width=5></td>\n"; 1276 echo "<td align='center'>"; 1277 //-----------MODIFICATION CLEVER AGE----------- 1278 if (lire_meta('articles_modif') != 'non') { 1279 $flag_modif = !($articleMetier->hasLastModified($connect_id_auteur)); 1280 $date_diff = $articleMetier->whenWasModified(); 1281 $auteur_modif = $articleMetier->getAuteurModif(); 1282 if ($flag_modif) { 1283 $nom_auteur_modif = $articleMetier->getLastModifiedUserName(); 1284 } 1285 1286 } 1287 1288 1289 $authorization = & recuperer_instance_authorization('modifierArticle', $GLOBALS['connect_id_auteur'], array ('id_article' => $id_article)); 1290 if ($authorization->isAuthorizedAction()) { 1291 /******* Modification MAPPING guillaume.grason@diplomatie.gouv.fr *******/ 1292 if ($statut_article == 'mappe' || $statut_article == 'map_off') { 1293 icone(_T('art_icone_modifier_mapping', null, $articleMetier->getRubriqueId()), "mappings_edit.php?id_article=$id_article", "article-24.gif", "edit.gif"); 1294 if ($flag_modif) { 1295 echo "<font face='arial,helvetica,sans-serif' size='2'>"._T('avis_mapping_modifie', array ('nom_auteur_modif' => $nom_auteur_modif, 'date_diff' => $date_diff))."</font>"; 1296 echo aide("artmodif"); 1297 } 1298 } 1299 else { 1300 icone(_T('art_icone_modifier_article', null, $articleMetier->getRubriqueId()), "articles_edit.php?id_article=$id_article", "article-24.gif", "edit.gif"); 1301 if ($flag_modif) { 1302 echo "<font face='arial,helvetica,sans-serif' size='2'>"._T('avis_article_modifie', array ('nom_auteur_modif' => $nom_auteur_modif, 'date_diff' => $date_diff))."</font>"; 1303 echo aide("artmodif"); 1304 } 1305 } 1306 /* 1307 if ($flag_modif) { 1308 icone(_T('art_icone_modifier_article', null, $articleMetier->getRubriqueId()), "articles_edit.php3?id_article=$id_article", "article-24.gif", "edit.gif"); 1309 echo "<font face='arial,helvetica,sans-serif' size='2'>"._T('avis_article_modifie', array ('nom_auteur_modif' => $nom_auteur_modif, 'date_diff' => $date_diff))."</font>"; 1310 echo aide("artmodif"); 1311 } else { 1312 icone(_T('art_icone_modifier_article', null, $articleMetier->getRubriqueId()), "articles_edit.php3?id_article=$id_article", "article-24.gif", "edit.gif"); 1313 } 1314 */ 1315 /******* Fin Modification MAPPING guillaume.grason@diplomatie.gouv.fr *******/ 1316 } 1317 echo "</td>"; 1318 } 1319 echo "</tr></table>\n"; 1320 1321 echo "<div class='serif' align='left'>"; 1322 1323 1324 // 1325 // Affichage date redac et date publi 1326 // 1327 1328 if ($flag_editable AND $options == 'avancees') { 1329 debut_cadre_enfonce(); 1330 1331 echo "<FORM ACTION='articles.php' METHOD='get'>"; 1332 echo "<INPUT TYPE='hidden' NAME='id_article' VALUE='$id_article'>"; 1333 1334 /* Modification Clever Age, elebescond */ 1335 $authorization = & recuperer_instance_authorization('modifierDatePublicationArticle', $GLOBALS['connect_id_auteur'], array ('id_article' => $id_article)); 1336 if ($authorization->isAuthorizedAction()) { 1337 if ( $datetime = $articleMetier->getDate() ) { 1338 list($date, $time) = explode( ' ', $datetime ); 1339 list($annee, $mois, $jour) = explode( '-', $date ); 1340 list($heure, $minute, $seconde) = explode( ':', $time ); 1341 $heure = $heure ? $heure : '00'; 1342 $minute = $minute ? $minute : '00'; 1343 } 1344 /* 1345 if ($statut_article == 'publie') { 1346 */ 1347 /* Fin Modification Clever Age */ 1348 echo "<TABLE CELLPADDING=5 CELLSPACING=0 BORDER=0 WIDTH=100% BACKGROUND=''>"; 1349 echo "<TR><TD BGCOLOR='$couleur_foncee' COLSPAN=2><FONT SIZE=1 COLOR='#FFFFFF'><B>"._T('texte_date_publication_article'); 1350 echo aide("artdate"); 1351 echo "</B></FONT></TD></TR>"; 1352 echo "<TR><TD ALIGN='center'>"; 1353 echo "<SELECT NAME='jour' SIZE=1 CLASS='fondl'>"; 1354 afficher_jour($jour); 1355 echo "</SELECT> "; 1356 echo "<SELECT NAME='mois' SIZE=1 CLASS='fondl'>"; 1357 afficher_mois($mois); 1358 echo "</SELECT> "; 1359 echo "<SELECT NAME='annee' SIZE=1 CLASS='fondl'>"; 1360 afficher_annee($annee); 1361 echo "</SELECT>"; 1362 if ( lire_meta('activer_horaire_publication_etendu') == 'oui' ) { 1363 echo "<br /><SELECT NAME='heure' SIZE=1 CLASS='fondl'>"; 1364 afficher_heure($heure); 1365 echo "</SELECT> "; 1366 echo "<SELECT NAME='minute' SIZE=1 CLASS='fondl'>"; 1367 afficher_minute($minute); 1368 echo "</SELECT> "; 1369 } 1370 /******* Ajout MAE guillaume.grason@diplomatie.gouv.fr *******/ 1371 else { 1372 echo "<input type='hidden' name='heure' value='00'>"; 1373 echo "<input type='hidden' name='minute' value='00'>"; 1374 } 1375 /******* Fin Ajout MAE guillaume.grason@diplomatie.gouv.fr *******/ 1376 echo "</TD><TD ALIGN='right'>"; 1377 echo "<INPUT TYPE='submit' NAME='Changer' CLASS='fondo' VALUE='"._T('bouton_changer')."'>"; 1378 echo "</TD></TR></TABLE>"; 1379 } else { 1380 echo "<TABLE CELLPADDING=5 CELLSPACING=0 BORDER=0 WIDTH=100% BACKGROUND=''>"; 1381 /******* Modification MAPPING guillaume.grason@diplomatie.gouv.fr *******/ 1382 if ($statut_article == 'mappe' || $statut_article == 'map_off') 1383 echo "<TR><TD BGCOLOR='$couleur_foncee'><FONT SIZE=1 COLOR='#FFFFFF' face='Verdana,Arial,Sans,sans-serif'><b>"._T('texte_date_creation_mapping')." : "; 1384 else 1385 echo "<TR><TD BGCOLOR='$couleur_foncee'><FONT SIZE=1 COLOR='#FFFFFF' face='Verdana,Arial,Sans,sans-serif'><b>"._T('texte_date_creation_article')." : "; 1386 //echo "<TR><TD BGCOLOR='$couleur_foncee'><FONT SIZE=1 COLOR='#FFFFFF' face='Verdana,Arial,Sans,sans-serif'><b>"._T('texte_date_creation_article')." : "; 1387 /******* Fin Modification MAPPING guillaume.grason@diplomatie.gouv.fr *******/ 1388 echo majuscules(affdate($date))."</font></B></FONT>".aide('artdate')."</TD></TR>"; 1389 //echo majuscules(affdate_base($date, 'complet'))."</font></B></FONT>".aide('artdate')."</TD></TR>"; 1390 echo "</TABLE>"; 1391 } 1392 1393 /* Modification Clever Age, elebescond */ 1394 $authorization = & recuperer_instance_authorization('modifierDateAnterieurPublicationArticle', $GLOBALS['connect_id_auteur'], array ('id_article' => $id_article)); 1395 if ($authorization->isAuthorizedAction()) 1396 /* Fin Modification Clever Age */ 1397 if (($options == 'avancees' AND $articles_redac != 'non') OR ($annee_redac.'-'.$mois_redac.'-'.$jour_redac != '0000-00-00')) { 1398 echo '<p><table cellpadding="5" cellspacing="0" border="0" width="100%">'; 1399 echo '<tr><td bgcolor="#cccccc" colspan="2"><font size="1" color="#000000" face="Verdana,Arial,Sans,sans-serif">'; 1400 if ($annee_redac.'-'.$mois_redac.'-'.$jour_redac != '0000-00-00') 1401 $date_affichee = ' : '.majuscules(affdate($date_redac)); 1402 echo bouton_block_invisible('dateredac'); 1403 echo "<b>"._T('texte_date_publication_anterieure').$date_affichee."</b></font></td></tr></table>"; 1404 echo debut_block_invisible('dateredac'); 1405 echo '<table cellpadding="5" cellspacing="0" border="0" width="100%">'; 1406 echo '<tr><td align="left">'; 1407 echo '<input type="radio" name="avec_redac" value="non" id="avec_redac_on"'; 1408 if ($annee_redac.'-'.$mois_redac.'-'.$jour_redac == '0000-00-00') 1409 echo ' checked="checked"'; 1410 echo ' /> <label for="avec_redac_on">'._T('texte_date_publication_anterieure_nonaffichee').'</label>'; 1411 echo '<br /><input type="radio" name="avec_redac" value="oui" id="avec_redac_off"'; 1412 if ($annee_redac.'-'.$mois_redac.'-'.$jour_redac != '0000-00-00') 1413 echo ' checked="checked"'; 1414 echo ' /> <label for="avec_redac_off">'._T('bouton_radio_afficher').' :</label> '; 1415 1416 echo '<select name="jour_redac" class="fondl">'; 1417 afficher_jour($jour_redac); 1418 echo '</select> '; 1419 echo '<select name="mois_redac" class="fondl">'; 1420 afficher_mois($mois_redac); 1421 echo '</select> '; 1422 echo '<input type="text" name="annee_redac" class="fondl" value="'.$annee_redac.'" size="5" maxlength="4" />'; 1423 1424 echo '</td><td align="right">'; 1425 echo '<input type="submit" name="Changer" class="fondo" value="'._T('bouton_changer').'" />'; 1426 echo aide('artdate_redac'); 1427 echo '</td></tr>'; 1428 echo '</table>'; 1429 echo fin_block(); 1430 } 1431 1432 echo "</FORM>"; 1433 fin_cadre_enfonce(); 1434 } else 1435 if ($statut_article == 'publie') { 1436 echo "<CENTER>".affdate($date)."</CENTER><P>"; 1437 } 1438 1439 1440 // Modification Aurelien Vialet <avialet@clever-age.com> 1441 // Gestion du versionning des articles 1442 if ($activer_version_articles == 'oui') { 1443 1444 if ($articleMetier->getVersionId() == 0) { 1445 $aArticlesVersion = $articleMetier->getAllForVersion(' id_article'); 1446 if (count($aArticlesVersion) > 0) { 1447 debut_cadre_enfonce("article_new_version-24.png"); 1448 1449 echo "<TABLE BORDER=0 CELLSPACING=0 CELLPADDING=3 WIDTH=100% BACKGROUND=''><TR><TD BGCOLOR='#EEEECC' class='serif2'>"; 1450 if ($flag_editable AND $options == 'avancees') { 1451 echo bouton_block_invisible("versionarticle"); 1452 } 1453 echo "<B>"._T('article_version')."</B>"; 1454 echo aide("#"); 1455 echo "</TD></TR></TABLE>"; 1456 echo debut_block_invisible("versionarticle"); 1457 echo "<table bgcolor='#FFFFFF' width='100%'>"; 1458 while (list (, $val) = each($aArticlesVersion)) { 1459 echo "<tr>"; 1460 echo "<td class='arial2'>".majuscules(affdate($val->getDate()))."</td>"; 1461 echo "<td class='arial2'><a href='articles.php?id_article=" 1462 .$val->getArticleId()."'>" 1463 .$val->getArticleId().". " 1464 .$val->getTitre() 1465 ."</a></td>"; 1466 echo "</tr>"; 1467 } 1468 echo "</table>"; 1469 1470 fin_cadre_enfonce(); 1471 } 1472 } 1473 } 1474 // 1475 // Fin de la gestion des versions de l'article 1476 // 1477 1478 1479 // 1480 // Gestion des historique d'une version d'un article 1481 // 1482 if ($options == 'avancees') { 1483 if (($activer_histo_articles == 'oui') and ($articleMetier->getActiverHistorique() == 'oui') and $articleMetier->countHistorique() > 0) { 1484 $articleHisto = & recuperer_instance_article_historique(); 1485 if (isset($articleHistoPurge)) { 1486 $articleHisto->purgeHisto($articleHistoPurge); 1487 } 1488 $aArticlesHisto = $articleHisto->loadHistoForArticle($articleMetier->getArticleId()); 1489 1490 debut_cadre_enfonce("article_history-24.png"); 1491 echo "<TABLE BORDER=0 CELLSPACING=0 CELLPADDING=3 WIDTH=100% BACKGROUND=''><TR><TD BGCOLOR='#EEEECC' class='serif2'>"; 1492 // if ($flag_editable AND $options == 'avancees') { 1493 echo bouton_block_invisible("historiquearticle"); 1494 //} 1495 echo "<B>"._T('article_historique')."</B>"; 1496 echo aide("#"); 1497 echo "</TD></TR></TABLE>"; 1498 echo debut_block_invisible("historiquearticle"); 1499 1500 //if (count($aArticlesHisto) > 0) { 1501 echo "<table bgcolor='#FFFFFF' width='100%' border=0>"; 1502 if ($flag_editable) { 1503 echo '<form action"articles.php" method="get">'; 1504 echo '<input type="hidden" name="id_article" value="'.$articleMetier->getArticleId().'" >'; 1505 } 1506 //$first = true; 1507 foreach ( $aArticlesHisto as $histo ) { 1508 // En cas d'erreur... 1509 if ( PEAR::isError($histo) ) { die( $histo->getMessage() ); } 1510 1511 // R?cup?ration de l'auteur de l'article 1512 $auteur_histo =& recuperer_instance_auteur(); 1513 $status = $auteur_histo->load( $histo->getAuteurId() ); 1514 1515 if ( PEAR::isError($status) ) { 1516 $str_auteur = 'Auteur inconnu'; 1517 } else { 1518 $str_auteur = "<a href=\"".$auteur_histo->getUrl()."\">". $auteur_histo->getNom()."</a>"; 1519 } 1520 1521 echo "<tr>"; 1522 echo "<td class='arial2'>".affdate_base($histo->getDate(), 'complet') 1523 ." par ". $str_auteur .'</td>'; 1524 echo "<td class='arial2'><a href='articles_texte_compare.php?id_article=" 1525 .$articleMetier->getArticleId()."&id_article_historique=".$histo->getArticleHistoriqueId()."'>"._T('comparer')."</a> "; 1526 echo "<td class='arial2'><a href='articles_texte_compare.php?id_article_historique=".$histo->getArticleHistoriqueId()."'>"._T('voir')."</a> "; 1527 //echo "<a href='articles.php3?id_article=".$articleMetier->getArticleId()."&id_article_historique_replace=".$histo->getArticleHistoriqueId()."'>"._T('remplacer')."</a> "; 1528 if ($flag_editable) { 1529 echo "<td><input name='articleHistoPurge[]' type='checkbox' value='".$histo->getArticleHistoriqueId()."'></td>"; 1530 } 1531 echo "</tr>"; 1532 // } 1533 } 1534 echo "<tr>"; 1535 if ($flag_editable) { 1536 echo '<td colspan="2" align="right"></td>'. 1537 '<td>'. 1538 '<input type="submit" name="Purger" class="fondo" value="'._T('bouton_purger').'" />'. 1539 '</td>'. 1540 '</tr>'. 1541 '</form>'; 1542 } 1543 echo "</table>"; 1544 //} 1545 fin_cadre_enfonce(); 1546 } 1547 } 1548 1549 // 1550 // Fin de la gestion de l'historique d'une version de l'article 1551 // 1552 1553 1554 1555 ////////////////////////////////////////////////////// 1556 // Liste des mots-cles de l'article 1557 // 1558 //-------------MODIFICATION CLEVER AGE elebescond 1559 $authorization = & recuperer_instance_authorization('modifierArticle', $GLOBALS['connect_id_auteur'], array ('id_article' => $id_article)); 1560 if ($authorization->isAuthorizedAction()) { 1561 if ($options == 'avancees' AND $articles_mots != 'non') { 1562 formulaire_mots('articles_map', $id_article, $nouv_mot, $supp_mot, $cherche_mot, $flag_editable); 1563 } 1564 } 1565 /* 1566 if ($options == 'avancees' AND $articles_mots != 'non') { 1567 formulaire_mots('articles', $id_article, $nouv_mot, $supp_mot, $cherche_mot, $flag_editable); 1568 } 1569 */ 1570 //-------------Fin MODIFICATION CLEVER AGE elebescond 1571 1572 1573 ////////////////////////////////////////////////////// 1574 // Corps de l'article 1575 // 1576 1577 echo "\n\n<div align='justify'>"; 1578 1579 if ($virtuel) { 1580 debut_boite_info(); 1581 echo _T('info_renvoi_article')." ".propre("<center>[->$virtuel]</center>"); 1582 fin_boite_info(); 1583 } else { 1584 echo "<div $dir_lang><b>"; 1585 echo justifier(propre($chapo)); 1586 echo "</b></div>\n\n"; 1587 1588 echo "<div $dir_lang>".justifier(propre($texte))."</div>"; 1589 1590 if ($ps) { 1591 echo debut_cadre_enfonce(); 1592 echo "<div $dir_lang><font size=2 face='Verdana,Arial,Sans,sans-serif'>"; 1593 /***************** Modification elebescond@clever-age.com ***********/ 1594 echo justifier("<b>"._T('art_info_ps', null, $articleMetier->getRubriqueId())."</b> ".propre($ps)); 1595 /* 1596 echo justifier("<b>"._T('info_ps')."</b> ".propre($ps)); 1597 */ 1598 /***************** Fin modification elebescond@clever-age.com ***********/ 1599 echo "</font></div>"; 1600 echo fin_cadre_enfonce(); 1601 } 1602 1603 if ($les_notes) { 1604 echo debut_cadre_relief(); 1605 echo "<div $dir_lang><font size=2>"; 1606 /***************** Modification elebescond@clever-age.com ***********/ 1607 echo justifier("<b>"._T('art_info_notes', null, $articleMetier->getRubriqueId())." :</b> ".$les_notes); 1608 /* 1609 echo justifier("<b>"._T('info_notes')." :</b> ".$les_notes); 1610 */ 1611 /***************** Fin modification elebescond@clever-age.com ***********/ 1612 echo "</font></div>"; 1613 echo fin_cadre_relief(); 1614 } 1615 1616 if ($champs_extra AND $extra) { 1617 include_ecrire ("inc_extra.php"); 1618 extra_affichage($extra, "articles"); 1619 } 1620 } 1621 1622 // 1623 // Bouton "modifier cet article" 1624 // 1625 1626 if ($flag_editable) { 1627 echo "\n\n<div align=right><br>"; 1628 1629 if ($date_diff >= 0 AND $date_diff < 60 AND $auteur_modif > 0 AND $auteur_modif != $connect_id_auteur) { 1630 //-------------MODIFICATION CLEVER AGE elebescond 1631 // $auteurMetier = & recuperer_instance_auteur(); 1632 $loadOK = $auteurMetier->load($auteur_modif); 1633 if (PEAR :: isError($loadOK)) { 1634 die($loadOK->getMessage()); 1635 } else { 1636 $nom_auteur_modif = $auteurMetier->getNom(); 1637 } 1638 /* 1639 $query_auteur = "SELECT * FROM spip_auteurs WHERE id_auteur='$auteur_modif'"; 1640 $result_auteur = spip_query($query_auteur); 1641 while ($row_auteur = spip_fetch_array($result_auteur)) { 1642 $nom_auteur_modif = $row_auteur["nom"]; 1643 } 1644 */ 1645 //-------------FIN MODIFICATION 1646 //-------------MODIFICATION CLEVER AGE elebescond 1647 $authorization = & recuperer_instance_authorization('modifierArticle', $GLOBALS['connect_id_auteur'], array ('id_article' => $id_article)); 1648 if ($authorization->isAuthorizedAction()) { 1649 /******* Modification MAPPING guillaume.grason@diplomatie.gouv.fr *******/ 1650 if ($statut_article == 'mappe' || $statut_article == 'map_off') { 1651 icone(_T('art_icone_modifier_mapping', null, $articleMetier->getRubriqueId()), "mappings_edit.php?id_article=$id_article", "warning-24.gif"); 1652 } 1653 else { 1654 icone(_T('art_icone_modifier_article', null, $articleMetier->getRubriqueId()), "articles_edit.php?id_article=$id_article", "warning-24.gif", ""); 1655 } 1656 //icone(_T('art_icone_modifier_article', null, $articleMetier->getRubriqueId()), "articles_edit.php3?id_article=$id_article", "warning-24.gif", ""); 1657 /******* Fin Modification MAPPING guillaume.grason@diplomatie.gouv.fr *******/ 1658 echo "<font face='arial,helvetica,sans-serif' size=1>"._T('art_texte_travail_article', array ('nom_auteur_modif' => $nom_auteur_modif, 'date_diff' => $date_diff), $articleMetier->getRubriqueId())."</font>"; 1659 echo aide("artmodif"); 1660 } 1661 /* 1662 icone(_T('icone_modifier_article'), "articles_edit.php3?id_article=$id_article", "warning-24.gif", ""); 1663 echo "<font face='arial,helvetica,sans-serif' size=1>"._T('texte_travail_article', array('nom_auteur_modif' => $nom_auteur_modif, 'date_diff' => $date_diff))."</font>"; 1664 echo aide("artmodif"); 1665 */ 1666 //-------------FIN MODIFICATION 1667 } else { 1668 //-------------MODIFICATION CLEVER AGE elebescond 1669 $authorization = & recuperer_instance_authorization('modifierArticle', $GLOBALS['connect_id_auteur'], array ('id_article' => $id_article)); 1670 if ($authorization->isAuthorizedAction()) { 1671 /******* Modification MAPPING guillaume.grason@diplomatie.gouv.fr *******/ 1672 if ($statut_article == 'mappe' || $statut_article == 'map_off') { 1673 icone(_T('art_icone_modifier_mapping', null, $articleMetier->getRubriqueId()), "mappings_edit.php?id_article=$id_article", "article-24.gif", "edit.gif"); 1674 } 1675 else { 1676 icone(_T('art_icone_modifier_article', null, $articleMetier->getRubriqueId()), "articles_edit.php?id_article=$id_article", "article-24.gif", "edit.gif"); 1677 } 1678 //icone(_T('art_icone_modifier_article', null, $articleMetier->getRubriqueId()), "articles_edit.php3?id_article=$id_article", "article-24.gif", "edit.gif"); 1679 /******* Fin Modification MAPPING guillaume.grason@diplomatie.gouv.fr *******/ 1680 } 1681 /* 1682 icone(_T('icone_modifier_article'), "articles_edit.php3?id_article=$id_article", "article-24.gif", "edit.gif");*/ 1683 //-------------FIN MODIFICATION 1684 1685 } 1686 1687 echo "</div>"; 1688 } 1689 1690 1691 echo "</DIV>"; 1692 1693 fin_cadre_relief(); 1694 1695 1696 1697 1698 // choses lentes reportees en fin de page 1699 @ flush(); 1700 1701 // ajout Olivier Mansour 1702 /* 1703 if ($jour && $flag_editable) { 1704 if (lire_meta("post_dates") != 'non') 1705 calculer_dates_rubriques(); 1706 } 1707 */ 1708 // a quoi ca sert ? ces lignes ? 1709 /* 1710 if ($titre && !$ajout_forum && $flag_editable && !$ok_nouveau_statut) { 1711 calculer_rubriques(); 1712 } 1713 */ 1714 1715 if ($ok_nouveau_statut) { 1716 // calculer_rubriques(); 1717 if ($statut_nouv == 'publie' AND $statut_ancien != $statut_nouv) { 1718 include_ecrire ("inc_mail.php"); 1719 envoyer_mail_publication($id_article); 1720 } 1721 if ($statut_nouv == "prop" AND $statut_ancien != $statut_nouv AND $statut_ancien != 'publie') { 1722 include_ecrire ("inc_mail.php"); 1723 envoyer_mail_proposition($id_article); 1724 } 1725 if ($statut_nouv == 'publie' AND $statut_nouv != $statut_ancien) 1726 $reindexer = true; 1727 } 1728 1729 if ($reindexer AND (lire_meta('activer_moteur') == 'oui')) { 1730 include_ecrire ("inc_index.php"); 1731 indexer_article($id_article); 1732 } 1733 1734 fin_page(); 1735 1736 ?>
titre
Description
Corps
titre
Description
Corps
titre
Description
Corps
titre
Corps
Généré le : Sat Feb 24 14:40:03 2007 | par Balluche grâce à PHPXref 0.7 |