source: trunk/spip/2.1/extensions/magusine-portage2.1/exec/arty.php @ 756

Last change on this file since 756 was 756, checked in by guillermoacedo@…, 14 years ago

se agrego la correccion de magusine para 2.1 basica

  • Property svn:executable set to *
File size: 16.9 KB
Line 
1<?php
2/***************************************************************************\
3 Plugin   : magusine
4 Licence  : GPL
5 Auteurs  : Stéphane Noël, Philippe Vanderlinden
6 Infos    : http://www.spip-contrib.net/Le-plugin-Magusine
7            http://www.magunews.net/spip.php?rubrique645
8
9 $LastChangedRevision: 12345 $
10 $LastChangedBy: bubu $
11 $LastChangedDate: 2008-03-21 15:50:47 +0100 (ven, 21 mar 2008) $
12 \***************************************************************************/
13
14if (!defined("_ECRIRE_INC_VERSION")) return;
15include_spip('inc/presentation');
16
17include_spip('inc/arty_selecteur');
18include_spip('inc/user_session');
19
20function exec_arty() {
21
22        $commencer_page = charger_fonction('commencer_page', 'inc');
23        echo $commencer_page('&laquo; '._T('arty:sideinfo_arty').' &raquo;', 'configuration', 'magusine');
24
25        global $connect_statut;
26        if ($connect_statut != "0minirezo" ) {
27         echo "<p><b>"._T('magusine:acces_a_la_page')."</b></p>";
28         fin_page();
29         exit;
30        }
31
32        traiter_post();
33        $params= charger_parametres();
34
35        traiter_get();
36
37        echo barre_onglets("arty", "base"); //affiche la barre des onglets du groupe "magusine", l'onglet courant est "base".
38        echo debut_gauche("", true);
39        echo debut_cadre_relief(_DIR_PLUGIN_ARTY.'/images/aide.png', true, "", _T('arty:info'));
40        echo _T("arty:sideinfo_arty");
41        echo fin_cadre_relief(true);
42
43
44        echo debut_droite("", true);
45        echo gros_titre(_T("arty:titre_configuration_base"), "", false);
46
47        // choix de l'edito
48        echo debut_cadre_trait_couleur(_DIR_PLUGIN_ARTY."images/document-properties.png", true, "", _T('arty:edito'));
49        $edito=array(
50  "exec" => "arty",
51  "#" => "acces_a",
52  "ajouter" => "edito",
53  "verif" => $_SESSION['id_check']
54        );
55
56        $message = afficher_selectionne("arty", "edito");
57        if (!$message) { echo _T("arty:pas_de_edito"); }
58
59        echo "<div><a href='javascript:montrer_item(\"#show_edito\")' class='bouton-montrer-options'>"._T("arty:modifier_cette_option")."</a></div>";
60        echo "<div id='show_edito'>";
61
62        afficher_selecteur($edito);
63
64        echo "</div>";
65        echo "<script type='text/javascript'>
66  jQuery('#show_edito').css({
67        display: 'none'
68        });
69  </script>";
70
71        $resultat = spip_query("SELECT * FROM spip_arty_parametres WHERE parametre='cacher_edito'");
72        $resultat = spip_fetch_array($resultat);
73
74        if($resultat) {
75                $cacher = $resultat['valeur'];
76                $lien = $resultat['valeur2'];
77        } else {
78                $cacher = "false";
79                $lien= "false";
80        }
81        echo "<br />";
82        echo "<form action='".generer_url_ecrire('arty')."' method='post'>";
83        echo "<input type='hidden' name='cacher_edito' value='false' />";
84        echo "<p><input type='checkbox' id='cacher_edito' name='cacher_edito' value='true' ".($cacher == "true" ? "checked='checked'" : '')." />";
85        echo "<label for='cacher_edito'>"._T("arty:cacher_edito")."</label></p>";
86
87        echo "<p><input type='checkbox' id='lire_autres_editos' name='lire_autres_editos' value='true' ".($lien == "true" ? "checked='checked'" : '')." />";
88        echo "<label for='lire_autres_editos'>"._T("arty:lire_autres_editos")."</label></p>";
89
90        echo "<input type='submit' class='fondo' value='"._T('arty:enregistrer')."' />";
91        echo "</form>";
92
93        echo fin_cadre_trait_couleur(true);
94
95        // choix de la une
96        echo debut_cadre_trait_couleur(_DIR_PLUGIN_ARTY."images/folder-new.png", true, "", _T('arty:rubrique_article_une'));
97        $rubart_une=array(
98  "exec" => "arty",
99  "#" => "rubart_une",
100  "ajouter" => "rubart_une",
101  "verif" => $_SESSION['id_check']
102        );
103
104        $message = afficher_selectionne("arty", "rubart_une");
105        if (!$message) { echo "<p>"._T("arty:pas_de_une")."</p>"; }
106
107        echo "<div><a href='javascript:montrer_item(\"#show_une\")' class='bouton-montrer-options'>"._T("arty:modifier_cette_option")."</div>";
108        echo "<div id='show_une'>";
109        afficher_selecteur($rubart_une);
110
111        echo "</div>";
112        echo "<script type='text/javascript'>
113  jQuery('#show_une').css({
114        display: 'none'
115        });
116  </script>";
117        echo fin_cadre_trait_couleur(true);
118
119
120        // rubrique de news
121        echo debut_cadre_trait_couleur(_DIR_PLUGIN_ARTY."images/edit-find.png", true, "", _T('arty:choix_rubrique_news'));
122        // controle l'existence du parametre, sinon injecte par defaut
123
124        echo "<p>"._T("arty:explication_choix_rubrique_news")."</p>";
125
126        $news=array(
127  "exec" => "arty",
128  "#" => "news",
129  "ajouter" => "rubrique-news",
130  "verif" => $_SESSION['id_check']
131        );
132
133        $message = afficher_selectionne("arty", "rubrique-news");
134        if (!$message) { echo "<p>"._T("arty:pas_de_rubrique_news")."</p>"; }
135
136        echo "<div><a href='javascript:montrer_item(\"#show_news\")' class='bouton-montrer-options'>"._T("arty:modifier_cette_option")."</div>";
137        echo "<div id='show_news'>";
138        afficher_selecteur($news, true, false);
139        echo "</div>";
140        echo "<script type='text/javascript'>
141  jQuery('#show_news').css({
142        display: 'none'
143        });
144  </script>";
145
146        echo fin_cadre_trait_couleur(true);
147
148
149        echo debut_cadre_trait_couleur(_DIR_PLUGIN_ARTY."images/camera-video.png", true, "", _T('arty:video_au_hasard'));
150        $edito=array(
151  "exec" => "arty",
152  "#" => "access-d",
153  "ajouter" => "video-hasard",
154  "verif" => $_SESSION['id_check']
155        );
156
157        $message = afficher_selectionne("arty", "video-hasard");
158        if (!$message) { echo "<p>"._T("arty:pas_de_video_hasard")."</p>"; }
159
160        echo "<div><a href='javascript:montrer_item(\"#show_video_hasard\")' class='bouton-montrer-options'>"._T("arty:modifier_cette_option")."</div>";
161        echo "<div id='show_video_hasard'>";
162        afficher_selecteur($edito);
163        echo "</div>";
164        echo "<script type='text/javascript'>
165  jQuery('#show_video_hasard').css({
166        display: 'none'
167        });
168  </script>";
169        echo fin_cadre_trait_couleur(true);
170
171
172        echo debut_cadre_trait_couleur(_DIR_PLUGIN_ARTY."images/camera-photo.png", true, "", _T('arty:image_au_hasard'));
173        $image=array(
174  "exec" => "arty",
175  "#" => "acces-e",
176  "ajouter" => "image-hasard",
177  "verif" => $_SESSION['id_check']
178        );
179
180        $message = afficher_selectionne("arty", "image-hasard");
181        if (!$message) { echo _T("arty:pas_de_image_hasard"); }
182
183        echo "<div><a href='javascript:montrer_item(\"#show_image_hasard\")' class='bouton-montrer-options'>"._T("arty:modifier_cette_option")."</div>";
184        echo "<div id='show_image_hasard'>";
185        afficher_selecteur($image);
186        echo "</div>";
187        echo "<script type='text/javascript'>
188  jQuery('#show_image_hasard').css({
189        display: 'none'
190        });
191  </script>";
192        echo fin_cadre_trait_couleur(true);
193
194
195
196        // reglage des parametres : afficher la date et les auteurs
197        echo debut_cadre_trait_couleur(_DIR_PLUGIN_ARTY."images/edit-find.png", true, "", _T('arty:config_date_auteur'));
198
199        $resultat= spip_query("SELECT * FROM spip_arty_parametres WHERE parametre='date_auteur'");
200        $resultat=spip_fetch_array($resultat);
201        //print_r($resultat);
202        if($resultat) {
203                $date=$resultat['valeur'];
204                $auteur=$resultat['valeur2'];
205                $suite=$resultat['valeur3'];
206        } else {
207                $date="false";
208                $auteur="false";
209                $suite="false";
210        }
211
212        echo _T("arty:intro_config_date_auteur");
213        echo "<form action='".generer_url_ecrire('arty')."' method='post'>\n";
214        echo "<input type='hidden' name='action_form' value='config_date_auteur' />";
215        echo "<p class='label_radio'>"._T("arty:intro_date")."</p>";
216        echo "<input class='radio' id='datetrue' type='radio' name='date' value='true' ".(($date=="true")?'checked="checked"':'')."> <label for='datetrue'>"._T("arty:afficher_date")."</label><br />";
217        echo "<input class='radio' id='datefalse' type='radio' name='date' value='false' ".(($date=="false")?'checked="checked"':'')."> <label for='datefalse'>"._T("arty:pas_de_date")."</label><br />";
218
219        echo "<p class='label_radio'>"._T("arty:intro_auteur")."</p>";
220        echo "<input class='radio' id='auteurtrue' type='radio' name='auteur' value='true' ".(($auteur=="true")?'checked="checked"':'')."> <label for='auteurtrue'>"._T("arty:afficher_auteur")."</label><br />";
221        echo "<input class='radio' id='auteurfalse' type='radio' name='auteur' value='false' ".(($auteur=="false")?'checked="checked"':'')."> <label for='auteurfalse'>"._T("arty:pas_afficher_auteur")."</label><br />";
222
223        echo "<p class='label_radio'>"._T("arty:intro_suite")."</p>";
224        echo "<input class='radio' id='suitetrue' type='radio' name='suite' value='true' ".(($suite=="true")?'checked="checked"':'')."> <label for='suitetrue'>"._T("arty:afficher_suite")."</label><br />";
225        echo "<input class='radio' id='suitefalse' type='radio' name='suite' value='false' ".(($suite=="false")?'checked="checked"':'')."> <label for='suitefalse'>"._T("arty:pas_de_suite")."</label><br />";
226
227
228        echo "<br /><input type='submit' value='"._T("arty:enregistrer")."' class='fondo' />";
229
230        echo "</form>";
231        echo fin_cadre_trait_couleur(true);
232
233        // forum dans la meme page ou dans la page forum
234        echo debut_cadre_trait_couleur(_DIR_PLUGIN_ARTY."images/edit-find.png", true, "", _T('arty:config_forum'));
235
236        //print_r($params);
237
238        if(!$params['config_forum']) {
239                $params['config_forum']="false";
240        }
241
242        echo "<p>"._T("arty:intro_config_forum")."</p>";
243        echo "<form action='".generer_url_ecrire('arty')."' method='post'>\n";
244        echo "<input type='hidden' name='action_form' value='config_forum' />";
245        echo "<p>"._T("arty:explication_forum")."</p>";
246        echo "<input class='radio' type='radio' name='config_forum' value='true' ".(($params['config_forum']=="true")?'checked="checked"':'')."> <label for='config_forum'>"._T("arty:forum_self")."</label><br />";
247        echo "<input class='radio' type='radio' name='config_forum' value='false' ".(($params['config_forum']=="false")?'checked="checked"':'')."> <label for='config_forum'>"._T("arty:forum_forum")."</label><br />";
248
249        echo "<br /><input type='submit' value='"._T("arty:enregistrer")."' class='fondo' />";
250        echo "</form>";
251        echo fin_cadre_trait_couleur(true);
252
253
254        echo debut_cadre_trait_couleur(_DIR_PLUGIN_ARTY."images/edit-find.png", true, "", _T('arty:config_google_maps'));
255
256        //print_r($params);
257
258        if (!isset($params['google_api_key'])) {
259                $params['google_api_key'] = "";
260        }
261        if (!isset($params['gmaps_afficher_controles'])) {
262                $params['gmaps_afficher_controles'] = "false";
263        }
264
265        echo "<p>"._T("arty:intro_config_api_key")."</p>";
266        echo "<form action='".generer_url_ecrire('arty')."' method='post'>\n";
267        echo "<input type='text' style='width:90%' name='google_api_key' value='".$params['google_api_key']."' /><br />";
268        echo "<input type='hidden' name='gmaps_afficher_controles' value='false' />";
269        echo "<p><input class='radio' type='checkbox' id='gmaps_afficher_controles' name='gmaps_afficher_controles' value='true' ".($params['gmaps_afficher_controles'] == "true" ? "checked='checked'" : '')." />";
270        echo "<label for='gmaps_afficher_controles'>"._T("arty:gmaps_afficher_controles")."</label></p>";
271        echo "<br /><input type='submit' value='"._T("arty:enregistrer")."' class='fondo' />";
272        echo "</form>";
273        echo fin_cadre_trait_couleur(true);
274
275        echo fin_gauche();
276
277        echo fin_page();
278
279}
280
281function traiter_post() {
282        //print_r($_POST);
283
284        if($_POST['action_form']=='config_date_auteur') {
285                $date=addslashes($_POST['date']);
286                $auteur=addslashes($_POST['auteur']);
287                $suite=addslashes($_POST['suite']);
288                $resultat = spip_query("SELECT * FROM spip_arty_parametres WHERE parametre = 'date_auteur'");
289                if(!spip_mysql_count($resultat)) {
290                        spip_query("INSERT INTO spip_arty_parametres (parametre,valeur,valeur2, valeur3) VALUES ('date_auteur','$date', '$auteur', '$suite')");
291                } else {
292                        spip_query("UPDATE spip_arty_parametres SET valeur= '$date',valeur2='$auteur', valeur3='$suite' WHERE parametre = 'date_auteur'");
293                }
294
295        }
296
297        if($_POST['action_form']=='config_forum') {
298                $config_forum=addslashes($_POST['config_forum']);
299                $resultat = spip_query("SELECT * FROM spip_arty_parametres WHERE parametre = 'config_forum'");
300                if(!spip_mysql_count($resultat)) {
301                        spip_query("INSERT INTO spip_arty_parametres (parametre,valeur) VALUES ('config_forum','$config_forum')");
302                } else {
303                        spip_query("UPDATE spip_arty_parametres SET valeur= '$config_forum' WHERE parametre = 'config_forum'");
304                }
305
306        }
307
308        if (isset($_POST['cacher_edito'])) {
309                $cacher = addslashes($_POST['cacher_edito']);
310                $lien=addslashes($_POST['lire_autres_editos']);
311                $resultat = spip_query("SELECT * FROM spip_arty_parametres WHERE parametre = 'cacher_edito'");
312                if(!spip_mysql_count($resultat)) {
313                        spip_query("INSERT INTO spip_arty_parametres (parametre,valeur,valeur2) VALUES ('cacher_edito','$cacher','$lien')");
314                } else {
315                        spip_query("UPDATE spip_arty_parametres SET valeur='$cacher',valeur2='$lien' WHERE parametre = 'cacher_edito'");
316                }
317
318
319
320        }
321
322        if (isset($_POST['google_api_key'])) {
323                $api_key = addslashes($_POST['google_api_key']);
324                $resultat = spip_query("SELECT * FROM spip_arty_parametres WHERE parametre = 'google_api_key'");
325                if(!spip_mysql_count($resultat)) {
326                        spip_query("INSERT INTO spip_arty_parametres (parametre,valeur) VALUES ('google_api_key','$api_key')");
327                } else {
328                        spip_query("UPDATE spip_arty_parametres SET valeur='$api_key' WHERE parametre = 'google_api_key'");
329                }
330
331                $controles = addslashes($_POST['gmaps_afficher_controles']);
332                $resultat = spip_query("SELECT * FROM spip_arty_parametres WHERE parametre = 'gmaps_afficher_controles'");
333                if(!spip_mysql_count($resultat)) {
334                        spip_query("INSERT INTO spip_arty_parametres (parametre,valeur) VALUES ('gmaps_afficher_controles','$controles')");
335                } else {
336                        spip_query("UPDATE spip_arty_parametres SET valeur='$controles' WHERE parametre = 'gmaps_afficher_controles'");
337                }
338
339                //enregistrement des formats kml et kmz
340                $resultat = spip_query("SELECT * FROM spip_types_documents WHERE extension = 'kml'");
341                if(!spip_mysql_count($resultat)) {
342                        spip_query("INSERT INTO spip_types_documents (titre, extension, mime_type, inclus, upload) VALUES ('Keyhole Markup Language','kml', 'application/vnd.google-earth.kml+xml', 'non', 'oui')");
343                }
344                $resultat = spip_query("SELECT * FROM spip_types_documents WHERE extension = 'kmz'");
345                if(!spip_mysql_count($resultat)) {
346                        spip_query("INSERT INTO spip_types_documents (titre, extension, mime_type, inclus, upload) VALUES ('Keyhole Markup Language (compressed)','kmz', 'application/vnd.google-earth.kmz', 'non', 'oui')");
347                }
348
349        }
350
351
352}
353
354function charger_parametres() {
355        $params=array();
356        $resultat= spip_query("SELECT * FROM spip_arty_parametres");
357        if (spip_mysql_count($resultat)) {
358                while ($row=spip_fetch_array($resultat)) {
359                        $params[$row['parametre']] = $row['valeur'];
360                }
361        }
362
363        return $params;
364}
365
366function traiter_get() {
367        //print_r($_GET);
368
369        $param_accepte=array('edito','video-hasard','rubrique-news','image-hasard', 'rubart_une');
370
371        if(isset($_GET['ajouter']) && isset($_GET['verif'])){
372                $param=$_GET['ajouter'];
373                if(in_array($param, $param_accepte) && $_GET['verif']==$_SESSION['id_check']) {
374
375                        if(isset($_GET['id_rubrique'])) {
376                                $id_rubrique=(int) $_GET['id_rubrique'];
377                                       
378                                if(is_numeric($id_rubrique)){
379                                        $resultat = spip_query("SELECT * FROM spip_arty_paramassoc WHERE param = '$param' AND id_rubrique = $id_rubrique");
380                                        if(!spip_mysql_count($resultat)) {
381                                                spip_query("INSERT INTO spip_arty_paramassoc (param, id_rubrique) VALUES ('$param', $id_rubrique)");
382                                        }
383                                               
384                                }
385                                       
386                        } elseif(isset($_GET['id_article'])) {
387                                $id_article=(int) $_GET['id_article'];
388                                       
389                                if(is_numeric($id_article)){
390                                        $resultat = spip_query("SELECT * FROM spip_arty_paramassoc WHERE param = '$param' AND id_article = $id_article");
391                                        if(!spip_mysql_count($resultat)) {
392                                                spip_query("INSERT INTO spip_arty_paramassoc (param, id_article) VALUES ('$param', $id_article)");
393                                        }
394                                               
395                                }
396                                       
397                        }
398                               
399
400                }
401
402        }
403
404        if(isset($_GET['supprimer']) && isset($_GET['verif'])){
405                $id_assoc=(int) $_GET['supprimer'];
406                if( is_numeric($id_assoc) && $_GET['verif']==$_SESSION['id_check']) {
407                        spip_query("DELETE FROM spip_arty_paramassoc WHERE id_assoc = $id_assoc");
408                }
409        }
410
411}
412
413
414function afficher_selectionne($page, $param) {
415
416        $resultat = spip_query("SELECT * FROM spip_arty_paramassoc WHERE param = '$param'");
417        if(spip_mysql_count($resultat)) {
418                echo "<ul class='liste-association'>";
419                while($row=spip_fetch_array($resultat)) {
420                        //print_r($row);
421                        if(is_numeric($row['id_article'])) {
422                                $lart=spip_query("SELECT titre FROM spip_articles WHERE id_article =".$row['id_article']);
423                                if(spip_mysql_count($lart)) {
424
425                                        $lart=spip_fetch_array($lart);
426
427
428                                        echo "<li class='liste-article'>&mdash; ".$lart['titre'];
429                                        echo "<a href='?exec=$page&supprimer=".$row['id_assoc']."&verif=".$_SESSION['id_check']."#$param'>";
430                                        echo "<img src='"._DIR_IMG_PACK."/croix-rouge.gif' alt ='x' title='"._T("arty:supprimer")."' />";
431                                        echo "</a>";
432
433                                        echo "</li>";
434
435
436                                } else {
437
438                                        spip_query("DELETE FROM spip_arty_paramassoc WHERE id_assoc =".$row['id_assoc']);
439                                               
440                                }
441                        }
442                        //print_r($row);
443                        elseif(is_numeric($row['id_rubrique'])) {
444                                $lart=spip_query("SELECT titre FROM spip_rubriques WHERE id_rubrique =".$row['id_rubrique']);
445                                if(spip_mysql_count($lart)) {
446
447                                        $lart=spip_fetch_array($lart);
448
449
450                                        echo "<li class='liste-rubrique'>&mdash; ".$lart['titre'];
451                                        echo "<a href='?exec=$page&supprimer=".$row['id_assoc']."&verif=".$_SESSION['id_check']."#$param'>";
452                                        echo "<img src='"._DIR_IMG_PACK."/croix-rouge.gif' alt ='x' title='"._T("arty:supprimer")."' />";
453                                        echo "</a>";
454
455                                        echo "</li>";
456
457
458                                } else {
459
460                                        spip_query("DELETE FROM spip_arty_paramassoc WHERE id_assoc =".$row['id_assoc']);
461                                               
462                                }
463                        }
464                }
465                echo "</ul>";
466                return true;
467                       
468        } else { return false; }
469
470}
471
472
473?>
Note: See TracBrowser for help on using the repository browser.