function configuration_compteur_dist() { global $spip_lang_right; $res = "<div class='verdana2'>" . _T('info_question_gerer_statistiques') . "</div>" . "<div class='verdana2'>" . afficher_choix('activer_statistiques', $GLOBALS['meta']["activer_statistiques"], array('oui' => _T('item_gerer_statistiques'), 'non' => _T('item_non_gerer_statistiques')), ' ') . "</div>"; if ($GLOBALS['meta']["activer_statistiques"]=='oui'){ $res .= "<br /><div class='verdana2' id='captures_voir'>" . _T('info_question_vignettes_referer') . "</div>" . "<div class='verdana2'>" . afficher_choix('activer_captures_referers', $GLOBALS['meta']["activer_captures_referers"], array('oui' => _T('info_question_vignettes_referer_oui'), 'non' => _T('info_question_vignettes_referer_non'))) . "</div>"; } $res = debut_cadre_trait_couleur("statistiques-24.gif", true, "", _T('info_forum_statistiques').aide ("confstat")) . ajax_action_post('configurer', 'compteur', 'config_fonctions', '', $res) . fin_cadre_trait_couleur(true); return ajax_action_greffe("configurer-compteur", '', $res); }
function configuration_bloc_votre_site() { $adresse_site = entites_html($GLOBALS['meta']["adresse_site"]); $nom_site = entites_html($GLOBALS['meta']["nom_site"]); $email_webmaster = entites_html($GLOBALS['meta']["email_webmaster"]); $descriptif_site = entites_html($GLOBALS['meta']["descriptif_site"]); return debut_cadre_relief("", true, "", "<label for='nom_site'>"._T('info_nom_site')."</label>".aide ("confnom")) . "<input type='text' name='nom_site' id='nom_site' value=\"$nom_site\" size='40' class='forml' />" . fin_cadre_relief(true) . debut_cadre_relief("", true, "", "<label for='adresse_site'>"._T('info_adresse_url')."</label>") . "<input type='text' name='adresse_site' id='adresse_site' value=\"$adresse_site/\" size='40' class='forml' />" . fin_cadre_relief(true) . debut_cadre_relief("", true, "","<label for='descriptif_site'>". _T('entree_description_site')."</label>") . "<textarea name='descriptif_site' id='descriptif_site' class='forml' rows='4' cols='40'>$descriptif_site</textarea>" . fin_cadre_relief(true) . "<div> </div>" . debut_cadre_relief("", true, "", "<label for='email_webmaster'>"._T('info_email_webmestre')."</label>") . "<input type='text' name='email_webmaster' id='email_webmaster' value=\"$email_webmaster\" size='40' class='formo' />" . fin_cadre_relief(true); }
function configuration_previsualiseur_dist() { $recom = array("info_administrateurs" => _T('info_preview_admin'), "info_redacteurs" => _T('info_preview_comite')); $voir = $GLOBALS['meta']["preview"]; $res = ''; foreach($GLOBALS['liste_des_statuts'] as $k => $v) { if (isset($recom[$k])) { $vu = strpos($voir,",$v,")!==false; $lib = _T($k); $res .= "<input type='checkbox' name='preview[]' value='$v' id='preview$v'" . ($vu ? " checked='checked'" : '') . " /> <label for='preview$v'>" . ($vu ? "<b>$lib</b>" : $lib) . "</label><br />"; } } $res = "<div class='verdana2'>" . _T('info_preview_texte') . "<br /><br />" . $res . "</div>"; $res = debut_cadre_trait_couleur("naviguer-site.png", true, "", _T('previsualisation') . aide("previsu")) . ajax_action_post('configurer_previsualiseur', 0, 'config_fonctions', '', $res) . fin_cadre_trait_couleur(true); return ajax_action_greffe("configurer_previsualiseur", 0, $res); }
function configuration_type_urls_dist() { if ($GLOBALS['type_urls'] != 'page') // fixe par mes_options return ''; $dispo = array(); foreach (find_all_in_path('urls/', '\w+\.php$', array()) as $f) { $r = basename($f, '.php'); if ($r == 'index' OR strncmp('generer_',$r,8)==0) continue; include_once $f; $exemple = 'URLS_' . strtoupper($r) . '_EXEMPLE'; $exemple = defined($exemple) ? constant($exemple) : '?'; $dispo[$r] = "<em>$r</em> — <tt>" . $exemple . '</tt>'; } $res = "<p class='verdana2'>" . _T('texte_type_urls') . "</p>" . "<div class='verdana2'>" . afficher_choix('type_urls', $GLOBALS['meta']['type_urls'], $dispo) . "</div>" . "<p><em>" . _T('texte_type_urls_attention', array('htaccess' => '<tt>.htaccess</tt>')) . "</em></p>"; $res = '<br />'.debut_cadre_trait_couleur("", true, "", _T('titre_type_urls').aide("confurl")) . ajax_action_post('configurer', 'type_urls', 'config_fonctions', '', $res) . fin_cadre_trait_couleur(true); return ajax_action_greffe("configurer-type_urls", '', $res); }
function inc_instituer_article_dist($id_article, $statut, $id_rubrique) { // menu de date pour les articles post-dates (plugin) /* un branchement sauvage ? if ($statut <> 'publie' AND $GLOBALS['meta']['post_dates'] == 'non' AND function_exists('menu_postdates')) list($postdates,$postdates_js) = menu_postdates(); else $postdates = $postdates_js = '';*/ // cf autorisations dans action/editer_article if (!autoriser('modifier', 'article', $id_article)) return ''; $res = ''; $etats = $GLOBALS['liste_des_etats']; if (!autoriser('publierdans', 'rubrique', $id_rubrique)) { if ($statut == 'publie') return ''; unset($etats[array_search('publie', $etats)]); unset($etats[array_search('refuse', $etats)]); if ($statut == 'prepa') $res = supprimer_tags(_T('texte_proposer_publication')); } $res .= "<ul id='instituer_article-$id_article' class='instituer_article instituer'>" . "<li>" . _T('texte_article_statut') . aide("artstatut") ."<ul>"; $href = redirige_action_auteur('instituer_article',$id_article,'articles', "id_article=$id_article"); $href = parametre_url($href,'statut_old',$statut); foreach($etats as $affiche => $s){ $puce = puce_statut($s) . _T($affiche); if ($s==$statut) $class=' selected'; else { $class=''; $puce = "<a href='" . parametre_url($href,'statut_nouv',$s) . "' onclick='return confirm(confirm_changer_statut);'>$puce</a>"; } $res .= "<li class='$s $class'>$puce</li>"; } $res .= "</ul></li></ul>"; return $res; }
function install_etape_2_dist() { $adresse_db = defined('_INSTALL_HOST_DB') ? _INSTALL_HOST_DB : _request('adresse_db'); if (preg_match(',(.*):(.*),', $adresse_db, $r)) { list(, $adresse_db, $port) = $r; } else { $port = ''; } $login_db = defined('_INSTALL_USER_DB') ? _INSTALL_USER_DB : _request('login_db'); $pass_db = defined('_INSTALL_PASS_DB') ? _INSTALL_PASS_DB : _request('pass_db'); $server_db = defined('_INSTALL_SERVER_DB') ? _INSTALL_SERVER_DB : _request('server_db'); $name_db = defined('_INSTALL_NAME_DB') ? _INSTALL_NAME_DB : ''; $chmod = _request('chmod'); $link = spip_connect_db($adresse_db, $port, $login_db, $pass_db, $name_db, $server_db); $GLOBALS['connexions'][$server_db] = $link; $GLOBALS['connexions'][$server_db][$GLOBALS['spip_sql_version']] = $GLOBALS['spip_' . $server_db . '_functions_' . $GLOBALS['spip_sql_version']]; echo install_debut_html(); // prenons toutes les dispositions possibles pour que rien ne s'affiche ! /* * /!\ sqlite3/PDO : erreur sur join(', ', $link) * L'objet PDO ne peut pas etre transformee en chaine * Un echo $link ne fonctionne pas non plus * Il faut utiliser par exemple print_r($link) */ //echo "\n<!--\n", join(', ', $link), " $login_db "; $db_connect = 0; // revoirfunction_exists($ferrno) ? $ferrno() : 0; //echo join(', ', $GLOBALS['connexions'][$server_db]); //echo "\n-->\n"; if ($db_connect == "0" && $link) { echo "<div class='success'><b>" . _T('info_connexion_ok') . "</b></div>"; echo info_progression_etape(2, 'etape_', 'install/'); echo info_etape(_T('menu_aide_installation_choix_base') . aide("install2", true)); echo "\n", '<!-- ', sql_version($server_db), ' -->'; list($checked, $res) = install_etape_2_bases($login_db, $server_db); $hidden = (defined('_SPIP_CHMOD') ? '' : "\n<input type='hidden' name='chmod' value='" . spip_htmlspecialchars($chmod) . "' />") . predef_ou_cache($adresse_db . ($port ? ':' . $port : ''), $login_db, $pass_db, $server_db); echo install_etape_2_form($hidden, $checked, $res, 3); } else { echo info_progression_etape(1, 'etape_', 'install/', true); echo "<div class='error'>"; echo info_etape(_T('info_connexion_base')); echo "<h3>" . _T('avis_connexion_echec_1') . "</h3>"; echo "<p>" . _T('avis_connexion_echec_2') . "</p>"; echo "<p style='font-size: small;'>", _T('avis_connexion_echec_3'), "</p></div>"; } echo install_fin_html(); }
function inc_editer_mots_dist($objet, $id_objet, $cherche_mot, $select_groupe, $flag, $visible = false, $url_base='') { if ($GLOBALS['meta']["articles_mots"] == 'non') return ''; if (!preg_match('/^[0-9, ]*$/', $select_groupe)) return ''; $trouver_table = charger_fonction('trouver_table', 'base'); $nom = table_objet($objet); $desc = $trouver_table($nom); $table_id = @$desc['key']["PRIMARY KEY"]; $reponse = ($flag AND $cherche_mot) ? chercher_inserer_mot($cherche_mot, $select_groupe, $objet, $id_objet, $nom, $table_id, $url_base) : ''; list($liste, $mots) = afficher_mots_cles($flag, $objet, $id_objet, $nom, $table_id, $url_base); $aff =false; $bouton = _T('titre_mots_cles').aide ("artmots"); if ($liste) $aff = true; if ($flag) { // si droit de modif donner le formulaire $visible = ($visible OR $cherche_mot OR ($flag === 'ajax')); list($visible, $res) = formulaire_mots_cles($id_objet, $mots, $nom, $table_id, $url_base, $visible, $objet); if ($res) { $liste .= debut_block_depliable($visible,"lesmots") . $res . creer_mot($nom, $id_objet, $table_id, $url_base, $cherche_mot, $select_groupe) . fin_block(); $bouton = bouton_block_depliable($bouton, $visible,"lesmots"); $aff = true; } } if (!$aff) return ''; $res = debut_cadre_enfonce("mot-cle-24.gif", true, "", $bouton) . $reponse . $liste . fin_cadre_enfonce(true); return ajax_action_greffe("editer_mots", $id_objet, $res); }
function configuration_indexeur_dist() { global $spip_lang_right; $res = "<div class='verdana2'>" . _T('info_question_utilisation_moteur_recherche') . "</div>" . "<div class='verdana2'>" . afficher_choix('activer_moteur', $GLOBALS['meta']["activer_moteur"], array('oui' => _T('item_utiliser_moteur_recherche'), 'non' => _T('item_non_utiliser_moteur_recherche')), ' ') . "</div>"; $res = debut_cadre_trait_couleur("racine-site-24.gif", true, "", _T('info_moteur_recherche').aide ("confmoteur")) . ajax_action_post('configurer', 'indexeur', 'config_fonctions', '', $res) . fin_cadre_trait_couleur(true); return ajax_action_greffe("configurer-indexeur", '', $res); }
function formulaires_configurer_relayeur_verifier_dist() { $erreurs = array(); $http_proxy = relayeur_saisie_ou_config(_request('http_proxy'), lire_config('http_proxy', '')); $http_noproxy = _request('http_noproxy'); if ($http_proxy and !tester_url_absolue($http_proxy)) { $erreurs['http_proxy'] = _T('info_url_proxy_pas_conforme'); } if (!isset($erreurs['http_proxy']) and _request('tester_proxy')) { if (!$http_proxy) { $erreurs['http_proxy'] = _T('info_obligatoire'); } else { include_spip('inc/distant'); $test_proxy = _request('test_proxy'); $t = parse_url($test_proxy); if (!@$t['host']) { $erreurs['test_proxy'] = _T('info_adresse_non_indiquee'); } else { include_spip('inc/texte'); // pour aide, couper, lang $info = ""; if (!need_proxy($t['host'], $http_proxy, $http_noproxy)) { $info = "<strong>" . _T('page_pas_proxy') . "</strong><br />"; } // il faut fausser le proxy actuel pour faire le test ! $cur_http_proxy = $GLOBALS['meta']['http_proxy']; $cur_http_noproxy = $GLOBALS['meta']['http_noproxy']; $GLOBALS['meta']['http_proxy'] = $http_proxy; $GLOBALS['meta']['http_noproxy'] = $http_noproxy; $page = recuperer_page($test_proxy, true); $GLOBALS['meta']['http_proxy'] = $cur_http_proxy; $GLOBALS['meta']['http_noproxy'] = $cur_http_noproxy; if ($page) { $erreurs['message_ok'] = _T('info_proxy_ok') . "<br />{$info}\n<tt>" . couper(entites_html($page), 300) . "</tt>"; $erreurs['message_erreur'] = ''; } else { $erreurs['message_erreur'] = $info . _T('info_impossible_lire_page', array('test_proxy' => "<tt>{$test_proxy}</tt>")) . " <b><tt>" . no_password_proxy_url($http_proxy) . "</tt></b>." . aide('confhttpproxy'); } } } } return $erreurs; }
function configuration_versionneur_dist() { global $spip_lang_right; $res = "<div class='verdana2'>" . _T('info_historique_texte') . "</div>" . "<div class='verdana2'>" . afficher_choix('articles_versions', $GLOBALS['meta']["articles_versions"], array('oui' => _T('info_historique_activer'), 'non' => _T('info_historique_desactiver'))) . "</div>"; $res = debut_cadre_trait_couleur("historique-24.gif", true, "", _T('info_historique_titre').aide("suivimodif")) . ajax_action_post('configurer', 'versionneur', 'config_fonctions', '', $res) . fin_cadre_trait_couleur(true); return ajax_action_greffe("configurer-versionneur", '', $res); }
function configuration_avertisseur_dist() { global $spip_lang_right; $res = "<div class='verdana2'>" . _T('texte_travail_collaboratif') . "</div>" . "<div class='verdana2'>" . afficher_choix('articles_modif',$GLOBALS['meta']["articles_modif"] , array('oui' => _T('item_activer_messages_avertissement'), 'non' => _T('item_non_activer_messages_avertissement'))) . "</div>"; $res = debut_cadre_trait_couleur("article-24.gif", true, "", _T('info_travail_colaboratif').aide("artmodif")) . ajax_action_post('configurer', 'avertisseur', 'config_fonctions', '', $res) . fin_cadre_trait_couleur(true); return ajax_action_greffe("configurer-avertisseur", '', $res); }
function inc_editer_auteurs_dist($type, $id, $flag, $cherche_auteur, $ids, $titre_boite = NULL, $script_edit_objet = NULL) { $arg_ajax = "&id_{$type}=$id&type=$type"; if ($script_edit_objet===NULL) $script_edit_objet = $type.'s'; if ($titre_boite===NULL) $titre_boite = _T('texte_auteurs'). aide("artauteurs"); else $arg_ajax.= "&titre=".urlencode($titre_boite); $aff_les_auteurs = afficher_auteurs_objet($type, $id, $flag, '', $script_edit_objet, $arg_ajax); if ($flag) { $futurs = ajouter_auteurs_objet($type, $id, '',$script_edit_objet, $arg_ajax, $cherche_auteur); } else $futurs = ''; $ldap = isset($GLOBALS['meta']['ldap_statut_import']) ? $GLOBALS['meta']['ldap_statut_import'] : ''; return editer_auteurs_objet($type, $id, $flag, $cherche_auteur, $ids, $aff_les_auteurs, $futurs, $ldap,$titre_boite,$script_edit_objet, $arg_ajax); }
function configuration_logos_dist(){ global $spip_lang_left, $spip_lang_right; $activer_logos = $GLOBALS['meta']["activer_logos"]; $activer_logos_survol = $GLOBALS['meta']["activer_logos_survol"]; $res = "<table border='0' cellspacing='1' cellpadding='3' width=\"100%\">"; $res .= "<tr><td class='verdana2'>"; $res .= _T('config_info_logos').aide('logoart'); $res .= "</td></tr>"; $res .= "<tr>"; $res .= "<td align='$spip_lang_left' class='verdana2'>"; $res .= bouton_radio("activer_logos", "oui", _T('config_info_logos_utiliser'), $activer_logos == "oui", "changeVisible(this.checked, 'logos_survol_config', 'block', 'none');") . " <br /> " . bouton_radio("activer_logos", "non", _T('config_info_logos_utiliser_non'), $activer_logos == "non", "changeVisible(this.checked, 'logos_survol_config', 'none', 'block');"); if ($activer_logos != "non") $style = "display: block;"; else $style = "display: none;"; $res .= "<br /><br /><div id='logos_survol_config' style='$style'>"; $res .= afficher_choix('activer_logos_survol', $activer_logos_survol, array('oui' => _T('config_info_logos_utiliser_survol'), 'non' => _T('config_info_logos_utiliser_survol_non')), " <br /> "); $res .= "</div>"; $res .= "</td></tr>"; $res .= "</table>\n"; $res = debut_cadre_trait_couleur("image-24.gif", true, "", _T('info_logos')) . ajax_action_post('configurer', 'logos', 'configuration','',$res) . fin_cadre_trait_couleur(true); return ajax_action_greffe('configurer-logos', '', $res); }
function exec_breves_dist() { global $spip_lang_left, $spip_lang_right; pipeline('exec_init',array('args'=>array('exec'=>'breves'),'data'=>'')); $commencer_page = charger_fonction('commencer_page', 'inc'); echo $commencer_page(_T('titre_page_breves'), "naviguer", "breves"); echo debut_gauche('', true); echo pipeline('affiche_gauche',array('args'=>array('exec'=>'breves'),'data'=>'')); echo creer_colonne_droite('', true); echo pipeline('affiche_droite',array('args'=>array('exec'=>'breves'),'data'=>'')); echo debut_droite('', true); $result = sql_select('*', "spip_rubriques", "id_parent=0",'', '0+titre,titre'); while($row=sql_fetch($result)){ $id_rubrique=$row['id_rubrique']; $id_parent=$row['id_parent']; $titre=typo($row['titre']); $descriptif=$row['descriptif']; $texte=$row['texte']; $editable = autoriser('publierdans','rubrique',$id_rubrique); $statuts = "'prop', 'publie'" . ($editable ? ", 'refuse'": ""); $res = afficher_objets('breve',$titre.aide ("breves"), array("SELECT" => 'id_rubrique, id_breve, date_heure, titre, statut', "FROM" => 'spip_breves', 'WHERE' => "id_rubrique=$id_rubrique AND statut IN ($statuts)", 'ORDER BY' => "date_heure DESC"),'',true); echo $res ; if ($editable) { echo "<div style='float:$spip_lang_right'>" . icone_inline(_T('icone_nouvelle_breve'), generer_url_ecrire("breves_edit","new=oui&id_rubrique=$id_rubrique"), "breve-24.gif", "creer.gif", $spip_lang_right) . "</div><div class='nettoyeur'></div>"; } } echo pipeline('affiche_milieu',array('args'=>array('exec'=>'breves'),'data'=>'')); echo fin_gauche(), fin_page(); }
function configuration_futurs_dist() { global $spip_lang_left; $res = "<table border='0' cellspacing='1' cellpadding='3' width=\"100%\">" . "<tr><td class='verdana2'>" . _T('texte_publication_articles_post_dates') . "</td></tr>" . "<tr><td align='$spip_lang_left' class='verdana2'>" . afficher_choix('post_dates', $GLOBALS['meta']["post_dates"], array('oui' => _T('item_publier_articles'), 'non' => _T('item_non_publier_articles'))) . "</td></tr>\n" . "</table>\n"; $res = debut_cadre_relief("", true, "", _T('titre_publication_articles_post_dates').aide ("confdates")) . ajax_action_post('configurer', 'futurs', 'configuration','',$res) . fin_cadre_relief(true); return ajax_action_greffe('configurer-futurs', '', $res); }
function configuration_redirection_dist() { global $spip_lang_left; $res = "<table border='0' cellspacing='1' cellpadding='3' width=\"100%\">" . "<tr><td class='verdana2'>" . _T('config_info_redirection') . "</td></tr>" . "<tr><td align='$spip_lang_left' class='verdana2'>" . afficher_choix('articles_redirection', $GLOBALS['meta']["articles_redirection"], array('oui' => _T('item_oui'), 'non' => _T('item_non'))) . "</td></tr>\n" . "</table>\n"; $res = debut_cadre_relief("", true, "", _T('config_redirection').aide ("artvirt")) . ajax_action_post('configurer', 'redirection', 'configuration','',$res) . fin_cadre_relief(true); return ajax_action_greffe('configurer-redirection', '', $res); }
function configuration_breves_dist(){ $activer_breves = $GLOBALS['meta']["activer_breves"]; $res = "<table border='0' cellspacing='1' cellpadding='3' width=\"100%\">" . "<tr><td class='verdana2'>" . _T('texte_breves')."<br />\n" . _T('info_breves') . "</td></tr>" . "<tr><td align='center' class='verdana2'>" . afficher_choix('activer_breves', $activer_breves, array('oui' => _T('item_utiliser_breves'), 'non' => _T('item_non_utiliser_breves')), " ") . "</td></tr>\n" . "</table>\n"; $res = debut_cadre_trait_couleur("breve-24.gif", true, "", _T('titre_breves').aide ("confbreves")) . ajax_action_post('configurer', 'breves', 'configuration','',$res) . fin_cadre_trait_couleur(true); return ajax_action_greffe('configurer-breves', '', $res); }
function exec_messagerie_dist() { global $connect_id_auteur, $connect_statut, $spip_lang_rtl; $commencer_page = charger_fonction('commencer_page', 'inc'); echo $commencer_page(_T('titre_page_messagerie'), "accueil", "messagerie"); echo debut_gauche("messagerie",true); echo debut_boite_info(true); echo _T('info_gauche_messagerie'); echo "<p>".http_img_pack("m_envoi$spip_lang_rtl.gif", 'V', "style='width: 14px; height: 7px; border: 0px'") .' ' . _T('info_symbole_vert'), '</p>'; echo aide ("messut"); echo "<p>".http_img_pack("m_envoi_bleu$spip_lang_rtl.gif", 'B', "style='width: 14px; height: 7px; border: 0px'") .' ' . _T('info_symbole_bleu'), '</p>'; echo aide ("messpense"); echo "<p>".http_img_pack("m_envoi_jaune$spip_lang_rtl.gif", 'J', "style='width: 14px; height: 7px; border: 0px'") .' ' . _T('info_symbole_jaune'), '</p>'; echo fin_boite_info(true); echo creer_colonne_droite('', true); echo debut_cadre_relief("messagerie-24.gif", true); echo icone_horizontale(_T('lien_nouvea_pense_bete'),generer_action_auteur("editer_message","pb"), "pense-bete.gif", "", false); echo icone_horizontale(_T('lien_nouveau_message'),generer_action_auteur("editer_message","normal"), "message.gif", "", false); if ($connect_statut == "0minirezo") { echo icone_horizontale(_T('lien_nouvelle_annonce'),generer_action_auteur("editer_message","affich"), "annonce.gif", "", false); } echo fin_cadre_relief(true); # Affiche l'encadre "lien iCal" echo debut_cadre_enfonce('',true) . "<div class='verdana1'>"._T("calendrier_synchro") . "<table class='cellule-h-table' cellpadding='0'><tr>\n" . "<td><a href='" . generer_url_ecrire("synchro") . "' class='ical'> </a></td>\n" . "<td class='cellule-h-lien'><br /><a href='" . generer_url_ecrire("synchro") . "' class='cellule-h'>" . _T("icone_suivi_activite") . "</a></td>\n</tr></table>\n" ."</div>" . fin_cadre_enfonce(true); echo debut_droite("messagerie", true); $messages_vus = array(); echo afficher_ses_messages('<b>' . _T('infos_vos_pense_bete') . '</b>', '', "id_auteur=$connect_id_auteur AND statut='publie' AND type='pb' AND (date_fin > DATE_SUB(".sql_quote(date('Y-m-d H:i:s')).", INTERVAL 1 DAY) OR rv != 'oui')", $messages_vus, false, true); echo afficher_ses_messages('<b>' . _T('info_nouveaux_message') . '</b>', ", spip_auteurs_messages AS lien", "lien.id_auteur=$connect_id_auteur AND vu='non' AND statut='publie' AND lien.id_message=messages.id_message", $messages_vus, true, true); echo afficher_ses_messages('<b>' . _T('info_discussion_cours') . '</b>', ", spip_auteurs_messages AS lien", "lien.id_auteur=$connect_id_auteur AND statut='publie' AND type='normal' AND lien.id_message=messages.id_message AND (date_fin > DATE_SUB(".sql_quote(date('Y-m-d H:i:s')).", INTERVAL 1 DAY) OR rv != 'oui')", $messages_vus, true, false); // Afficher le lien RSS echo bouton_spip_rss('messagerie', array('id_auteur' => $connect_id_auteur)); echo afficher_ses_messages('<b>' . _T('info_message_en_redaction') . '</b>', '', "id_auteur=$connect_id_auteur AND statut='redac'", $messages_vus, true, false); $result = sql_select('auteurs.id_auteur, auteurs.nom, COUNT(*) AS total', 'spip_auteurs AS auteurs, spip_auteurs_messages AS lien2, spip_messages AS messages, spip_auteurs_messages AS lien', "(lien.id_auteur = $connect_id_auteur AND lien.id_message = messages.id_message AND messages.statut = 'publie' AND (messages.rv != 'oui' OR messages.date_fin > ".sql_quote(date('Y-m-d H:i:s'))." )) AND (lien2.id_auteur = lien2.id_auteur AND lien2.id_message = messages.id_message AND lien2.id_auteur != $connect_id_auteur AND auteurs.id_auteur = lien2.id_auteur)", "auteurs.id_auteur", 'total DESC', 10); $cor = array(); while($row = sql_fetch($result)) { $id_auteur = $row['id_auteur']; $nom = typo($row["nom"]); $total = $row["total"]; $cor[]= "<div class='tr_liste'\nonmouseover=\"changeclass(this,'tr_liste_over');\"\nonmouseout=\"changeclass(this,'tr_liste');\"\nstyle='padding: 2px; padding-left: 10px; border-bottom: 1px solid #cccccc;'><div class='verdana1'><img src='" . chemin_image('redac-12.gif') . "'\nstyle='border: 0px' alt=' ' /> <a href='" . generer_url_ecrire("auteur_infos","id_auteur=$id_auteur") . "'>$nom,</a> ($total)</div></div>"; } if ($cor) { echo "<div style='height: 12px;'></div>"; $bouton = bouton_block_depliable(_T('info_principaux_correspondants'),true,'principaux'); echo debut_cadre('liste',"redacteurs-24.gif",'',$bouton); echo debut_block_depliable(true,'principaux'); echo "<table width='100%' cellpadding='0' cellspacing='0'>"; echo "<tr><td valign='top' style='width: 50%'>"; $count = ceil(count($cor)/2); echo join("\n",array_slice($cor, 0, $count)); echo "</td><td valign='top' style='width: 50%'>"; echo join("\n",array_slice($cor, $count)); echo "</td></tr></table>"; echo fin_block(); echo fin_cadre('liste'); } echo afficher_ses_messages('<b>' . _T('info_pense_bete_ancien') . '</b>', '', "id_auteur=$connect_id_auteur AND statut='publie' AND type='pb' AND rv!='oui'", $messages_vus, false, false); echo afficher_ses_messages('<b>' . _T('info_tous_redacteurs') . '</b>', '', "statut='publie' AND type='affich' AND (date_fin > DATE_SUB(".sql_quote(date('Y-m-d H:i:s')).", INTERVAL 1 DAY) OR rv != 'oui')", $messages_vus, false, false); echo fin_gauche(), fin_page(); }
function revisions_entete_boite($court, $debut, $id_secteur, $lang, $nb_aff, $req_from, $req_where, $uniq_auteur) { $titre_table = '<b>' . _T('icone_suivi_revisions').aide('suivimodif') . '</b>'; if ($court) $titre_table = afficher_plus(generer_url_ecrire("suivi_revisions")) . $titre_table; $total = sql_countsel($req_from, $req_where); if ($total >= 150) $total = 149; $id_liste = 't'.substr(md5("$req_where 149"),0,8); $bouton = bouton_block_depliable($titre_table,true,$id_liste); $revisions = debut_cadre('liste',"historique-24.gif",'',$bouton) . debut_block_depliable(true,$id_liste); if ($total > $nb_aff) { $nb_tranches = ceil($total / $nb_aff); $revisions .= "\n<div class='arial2' style='background-color: #dddddd; padding: 5px;'>\n"; for ($i = 0; $i < $nb_tranches; $i++) { if ($i > 0) $revisions .= " | "; if ($i*$nb_aff == $debut) $revisions .= "<b>"; else { $next = ($i * $nb_aff); $revisions .= "<a href='".generer_url_ecrire('suivi_revisions', "debut=$next&id_secteur=$id_secteur&id_auteur=$uniq_auteur&lang_choisie=$lang")."'>"; } $revisions .= (($i * $nb_aff) + 1); if ($i*$nb_aff == $debut) $revisions .= "</b>"; else $revisions .= "</a>"; } $revisions .= "</div>"; } return $revisions; }
function configuration_relayeur_post ($http_proxy, $http_noproxy, $test_proxy, $tester_proxy) { // http_proxy : ne pas prendre en compte la modif si le password est '****' if (preg_match(',:\*\*\*\*@,', $http_proxy)) $http_proxy = $GLOBALS['meta']['http_proxy']; $retour = $page = ''; if ($tester_proxy AND preg_match(",https?://,", $http_proxy)) { include_spip('inc/distant'); $t = parse_url($test_proxy); if (!@$t['host']) { $retour = _T('info_adresse_non_indiquee'); } elseif (!need_proxy($t['host'])) { $retour = "<p>"._T('page_pas_proxy')."</p>\n"; } elseif ($page = recuperer_page($test_proxy, true)) { include_spip('inc/texte'); // pour aide, couper, lang $retour = "<p>"._T('info_proxy_ok')."</p>\n<tt>" . couper(entites_html($page),300)."</tt>"; } else $retour = _T('info_impossible_lire_page', array('test_proxy' => $test_proxy)) . " <tt>".no_password_proxy_url($http_proxy)."</tt>." . aide('confhttpproxy'); } if ($http_proxy !== NULL) { ecrire_meta('http_proxy', $http_proxy); } if ($http_noproxy !== NULL) { ecrire_meta('http_noproxy', $http_noproxy); } if ($page) { include_spip('install/etape_fin'); $retour .= install_verifier_htaccess(); } return $retour; }
function action_charger_plugin_dist() { global $spip_lang_left; $securiser_action = charger_fonction('securiser_action', 'inc'); $arg = $securiser_action(); include_spip('inc/minipres'); include_spip('inc/charger_plugin'); // droits : il faut avoir le droit de choisir les plugins, // mais aussi d'en ajouter -- a voir include_spip('inc/autoriser'); if (!autoriser('configurer', 'plugins')) { echo minipres(); exit; } if ($arg == 'update_flux') { if (is_array($syndic_plug = @unserialize($GLOBALS['meta']['syndic_plug']))) foreach ($syndic_plug as $url => $c) essaie_ajouter_liste_plugins($url); } elseif ($arg == 'supprimer_flux' AND $url = _request('supprimer_flux')) { $syndic_plug = @unserialize($GLOBALS['meta']['syndic_plug']); unset($syndic_plug[$url]); ecrire_meta('syndic_plug', serialize($syndic_plug)); } elseif (in_array($arg,array('charger_zip','lib','plugins'))) { // la verification que c'est bien un zip sera faite apres $zip = _request('url_zip_plugin'); } elseif (strlen($arg)) { // la verification que c'est bien un zip sera faite apres $zip = $arg; } else { // indetermine : c'est un zip ou une liste $arg = 'charger_liste_ou_zip'; $zip = _request('url_zip_plugin2'); } # si premiere lecture, destination temporaire des fichiers $tmp = sous_repertoire(_DIR_CACHE, 'chargeur'); # on ne se contenten pas du basename qui peut etre un simple v1 # exemple de l'url http://nodeload.github.com/kbjr/Git.php/zipball/v0.1.1-rc $fichier = (_request('fichier')? _request('fichier') :"h".substr(md5($zip),0,8)."-".basename($zip) ); # basename par securite notamment dans le cas ou $fichier viens de l'exterieur $fichier = $tmp.basename($fichier); $extension = ""; // a verifier # au second tour, le zip designe directement le fichier au lieu de l'url # initiale if (!file_exists($fichier)) { # si on ne dispose pas encore du fichier # verifier que le zip en est bien un (sans se fier a son extension) # en chargeant son entete car l'url initiale peut etre une simple # redirection et ne pas comporter d'extension .zip include_spip('inc/distant'); $head = recuperer_page($zip, false, true, 0); if (preg_match(",^Content-Type:\s*application/zip$,Uims",$head)) $extension = "zip"; elseif (preg_match(',^Content-Disposition:\s*attachment;\s*filename="?([^"]+)"?$,Uims',$head,$m)){ $f = $m[1]; if (pathinfo($f, PATHINFO_EXTENSION)=="zip"){ $fichier = (_request('fichier')? _request('fichier') :"h".substr(md5($zip),0,8)."-".basename($f) ); $fichier = $tmp.basename($fichier); $extension = "zip"; } } // au cas ou, si le content-type n'est pas la // mais que l'extension est explicite elseif(pathinfo($zip, PATHINFO_EXTENSION)=="zip") $extension = "zip"; # si ce n'est pas un zip dans un format connu, # c'est sans doute une liste de plugins # si on est dans le bon scenario if (!$extension) { if ($arg == 'charger_liste_ou_zip') { essaie_ajouter_liste_plugins($zip); } } } else { $extension = pathinfo($fichier, PATHINFO_EXTENSION); if (!$extension) $extension = pathinfo($zip, PATHINFO_EXTENSION); } # format de fichier inconnu if (!$extension) { spip_log("Extension inconnue pour le paquet $fichier venant de $zip"); include_spip('inc/headers'); redirige_url_ecrire('charger_plugin'); } # Si definie a '', le chargeur est interdit ; mais on n'aurait de toutes # facons jamais pu venir ici avec toutes les securisations faites :^) if (!_DIR_PLUGINS_AUTO) die('jamais'); # dispose-t-on du fichier ? $status = null; # forcer l'extension du fichier par securite $fichier = $tmp.basename($fichier,".$extension").".$extension"; if (!@file_exists($fichier)) { include_spip('inc/distant'); $contenu = recuperer_page($zip, $fichier, false,_COPIE_LOCALE_MAX_SIZE); if (!$contenu) { spip_log('charger_decompresser impossible de charger '.$zip); $status = -1; } } if ($status === null) { $status = chargeur_charger_zip( array( 'zip' => $zip, 'arg' => $arg, 'fichier' => $fichier, 'tmp' => $tmp, 'extract' => _request('extract') ) ); if (_request('extract')) { spip_unlink($fichier); } } // Vers quoi pointe le bouton "suite" $suite = ''; // le fichier .zip est la et bien forme if (is_array($status)) { // Reconnaitre un plugin par son fichier xml $get_infos = charger_fonction('get_infos','plugins'); $infos = $get_infos($status['tmpname'], true, ''); if ($infos) { $nom = $infos['nom']; $image = $infos['icon']; $description = $infos['description']; $type = 'plugin'; $dest = _DIR_PLUGINS_AUTO; } else { $type = 'lib'; $dest = _DIR_RACINE.'lib/'; } // Fixer son emplacement final $status['dirname'] = $dest . basename($status['tmpname']) . '/'; // repertoire parent accessible en ecriture ? if (!@is_dir($dest) OR !@is_writeable($dest)) { $retour = _T("erreur"); $texte = "<p>"._T('plugin_erreur_droit1',array('dest'=>$dest))."</p>" . "<p>"._T('plugin_erreur_droit2').aide('install0')."</p>"; } else // C'est un plugin ? if ($type == 'plugin') { $retour = typo($nom); // l'icone ne peut pas etre dans tmp/ (lecture http oblige) // on la copie donc dans local/chargeur/ if ($image) { $dir = sous_repertoire(_DIR_VAR,'chargeur'); @copy($status['tmpname'].'/'.$image, $image2 = $dir.basename($image)); $retour = "<img src='".$image2."' style='float:right;' />" . $retour; } else $retour = "<img src='".find_in_path('images/plugin-24.gif')."' style='float:right;' />" . $retour; if (_request('extract')) { $afficher = charger_fonction('afficher_plugin','plugins'); // pour plugin_propre $texte = plugin_propre($description) . '<p>'._T('plugin_zip_installe_finie',array('zip'=>$zip)).'</p>' . "<h2 style='text-align:center;'>"._T('plugin_zip_active')."</h2>"; } else { $texte = '<p>'._T('plugin_zip_telecharge',array('zip'=>$zip)).'</p>'; $texte .= liste_fichiers_pclzip($status); $texte .= "<h2 style='text-align:center;'>"._T('plugin_zip_installer')."</h2>"; $suite = 'plugins'; } } // C'est un paquet quelconque else { $retour = _T('plugin_charge_paquet',array('name' => basename($status['tmpname']))); if (_request('extract')) { $texte = '<p>'._T('plugin_zip_installe_rep_finie', array('zip'=>$zip, 'rep'=>$status['dirname'])).'</p>'; } else { $texte = "<p>"._T('plugin_zip_telecharge',array('zip'=>$zip))."</p>\n"; $texte .= liste_fichiers_pclzip($status); $suite = 'lib'; } } } // fichier absent else if ($status == -1) { $retour = _T('erreur'); $texte = _T('plugin_erreur_charger', array('zip'=>$zip)); } // fichier la mais pas bien dezippe else { $retour = _T('erreur'); $texte = _T('plugin_erreur_zip',array('status'=>$status)); } include_spip('inc/install'); // pour bouton_suivant() $texte = "<div style='text-align:$spip_lang_left;'>$texte</div>\n"; $redirect = rawurldecode(_request('redirect')); // par defaut on revient sur la page admin_plugin if($redirect == _DIR_RESTREINT OR $redirect == "./"){ $redirect_annul = generer_url_ecrire('admin_plugin'); $redirect_form = 'admin_plugin&voir=recents&'.$type.'='.preg_replace(',^[^/]+/|/$,', '', $status['dirname']); $redirect_action = ''; } else{ $redirect_annul = $redirect; $redirect_form = preg_replace(',^.*exec\=,', '', $redirect); if (!$suite) $texte .= form_hidden(parametre_url(generer_url_ecrire($redirect_form), $type,preg_replace(',^[^/]+/|/$,', '', $status['dirname']))); $redirect_action = $redirect_form; } echo minipres($retour." ", $suite ? redirige_action_post(_request('action'), $suite, $redirect_action, '', form_hidden('?url_zip_plugin='.urlencode($zip).'&extract=oui&fichier='.urlencode($fichier)) .$texte ."<a class='suivant' href='" .$redirect_annul ."'>"._T('bouton_annuler')."</a>" .bouton_suivant()) : generer_form_ecrire($redirect_form, $texte . bouton_suivant()) ); exit; // 0 = rien, pas charge // liste de fichiers = retour gagnant // < 0 = erreur pclzip // ----- Error codes // -1 : Unable to open file in binary write mode // -2 : Unable to open file in binary read mode // -3 : Invalid parameters // -4 : File does not exist // -5 : Filename is too long (max. 255) // -6 : Not a valid zip file // -7 : Invalid extracted file size // -8 : Unable to create directory // -9 : Invalid archive extension // -10 : Invalid archive format // -11 : Unable to delete file (unlink) // -12 : Unable to rename file (rename) // -13 : Invalid header checksum // -14 : Invalid archive size # redirige_par_entete($url_retour); }
function bouton_modifier_articles($id_article, $id_rubrique, $flag_modif, $mode, $ip, $im, $align='') { if ($flag_modif) { return icone_inline(_T('icone_modifier_article'), generer_url_ecrire("articles_edit","id_article=$id_article"), $ip, $im, $align, false) . "<span class='arial1 spip_small'>$mode</span>" . aide("artmodif"); } else return icone_inline(_T('icone_modifier_article'), generer_url_ecrire("articles_edit","id_article=$id_article"), "article-24.gif", "edit.gif", $align); }
function http_calendrier_navigation($annee, $mois, $jour, $echelle, $partie_cal, $nom, $script, $args_pred, $args_suiv, $type, $ancre) { global $spip_lang_right, $spip_lang_left; if (!$echelle) $echelle = DEFAUT_D_ECHELLE; $arg_echelle = ($echelle != DEFAUT_D_ECHELLE) ? "&echelle=$echelle" : ''; $arg_partie = ($partie_cal != DEFAUT_PARTIE) ? "&partie_cal=$partie_cal" : ''; if ($args_pred) { list($a, $m, $j, $t) = $args_pred; $args_pred = calendrier_href($script, $a, $m, $j, $t, "$arg_echelle$arg_partie", $ancre, "fleche-$spip_lang_left.png", _T('precedent'), 'calendrier-png', '<<<'); } if ($args_suiv) { list($a, $m, $j, $t) = $args_suiv; $args_suiv = calendrier_href($script, $a, $m, $j, $t, "$arg_echelle$arg_partie", $ancre, "fleche-$spip_lang_right.png", _T('suivant'), 'calendrier-png', '>>>'); } $today = getdate(time()); $jour_today = $today["mday"]; $mois_today = $today["mon"]; $annee_today = $today["year"]; if (preg_match('/[?&;](exec=(\w+)(&(amp;)?)?)/', $script, $regs)) { $page = $regs[2]; $prive = 1; $raz = $regs[1]; } elseif (preg_match('/[?&;](page=(\w+)(&(amp;)?)?)/', $script, $regs)) { $page = $regs[2]; $prive = 0; $raz = $regs[1]; } else $page = $prive = $raz = ''; $href = generer_url_public('agenda_trimestre', substr(str_replace($raz, '', $script), strpos($script, '?')+1)); $href = parametre_url($href, 'script', $page); $href = parametre_url($href, 'prive', $prive); $href = parametre_url($href, 'ancre', $ancre); $href = calendrier_args_date($href, $annee, $mois, $jour, '', "$arg_echelle" . ((DEFAUT_PARTIE == DEFAUT_PARTIE_R) ? '' : ("&partie_cal=" . DEFAUT_PARTIE_R))); $id = ($ancre ? $ancre : 'agenda') . "-nav"; $onmouseover = "if (!this.trimestre)\n{this.trimestre=!charger_node_url('$href', document.getElementById('$id'));}\n;$('#$id').css('visibility','visible').show();"; return "\n<caption>" . "\n<span style='float: $spip_lang_left;'>" . calendrier_href($script,$annee_today, $mois_today, $jour_today, $type, "$arg_echelle$arg_partie", $ancre, "cal-today.gif", _T("ecrire:info_aujourdhui"), (($annee == $annee_today && $mois == $mois_today && (($type == 'mois') || ($jour == $jour_today))) ? "calendrier-opacity" : ""), '','','', ("\nonmouseover=\"$onmouseover\"" )) . " " . $args_pred . $args_suiv . " " . $nom . (!test_espace_prive() ? '' : aide("messcalen")) . "</span>" . " \n" // Sans "nbsp" Safari (5.1) n'affiche aucun des 2 span !! . "<span style='float: $spip_lang_right;'>" . (($type == "mois") ? '' : calendrier_navigation_heures($annee, $mois, $jour, $echelle, $partie_cal, $script, $type, $ancre)) . calendrier_navigation_type($annee, $mois, $jour, "$arg_echelle$arg_partie", $script, $type) . "</span></caption>"; }
/** * Chargement du formulaire d'édition de logo * * @param string $objet Objet SPIP auquel sera lie le document (ex. article) * @param int $id_objet Identifiant de l'objet * @param string $retour Url de redirection apres traitement * @param array $options Tableau d'option (exemple : image_reduire => 50) * @return array Variables d'environnement pour le fond */ function formulaires_editer_logo_charger_dist($objet, $id_objet, $retour = '', $options = array()) { // pas dans une boucle ? formulaire pour le logo du site // dans ce cas, il faut chercher un 'siteon0.ext' if (!$objet) { $objet = 'site'; } $objet = objet_type($objet); $_id_objet = id_table_objet($objet); if (!is_array($options)) { $options = unserialize($options); } if (!isset($options['titre'])) { $balise_img = chercher_filtre('balise_img'); $img = $balise_img(chemin_image('image-24.png'), "", 'cadre-icone'); $libelles = pipeline('libeller_logo', $GLOBALS['logo_libelles']); $libelle = ($id_objet or $objet != 'rubrique') ? $objet : 'racine'; if (isset($libelles[$libelle])) { $libelle = $libelles[$libelle]; } elseif ($libelle = objet_info($objet, 'texte_logo_objet')) { $libelle = _T($libelle); } else { $libelle = _L('Logo'); } switch ($objet) { case 'article': $libelle .= " " . aide("logoart"); break; case 'breve': $libelle .= " " . aide("breveslogo"); break; case 'rubrique': $libelle .= " " . aide("rublogo"); break; default: break; } $options['titre'] = $img . $libelle; } if (!isset($options['editable'])) { include_spip('inc/autoriser'); $options['editable'] = autoriser('iconifier', $objet, $id_objet); } $res = array('editable' => ($GLOBALS['meta']['activer_logos'] == 'oui' ? ' ' : '') && (!isset($options['editable']) or $options['editable']), 'logo_survol' => $GLOBALS['meta']['activer_logos_survol'] == 'oui' ? ' ' : '', 'objet' => $objet, 'id_objet' => $id_objet, '_options' => $options, '_show_upload_off' => ''); // rechercher le logo de l'objet // la fonction prend un parametre '_id_objet' etrange : // le nom de la cle primaire (et non le nom de la table) // ou directement le nom du raccourcis a chercher $chercher_logo = charger_fonction('chercher_logo', 'inc'); $etats = $res['logo_survol'] ? array('on', 'off') : array('on'); foreach ($etats as $etat) { $logo = $chercher_logo($id_objet, $_id_objet, $etat); if ($logo) { $res['logo_' . $etat] = $logo[0]; } } // pas de logo_on -> pas de formulaire pour le survol if (!isset($res['logo_on'])) { $res['logo_survol'] = ''; } elseif (!isset($res['logo_off']) and _request('logo_up')) { $res['_show_upload_off'] = ' '; } // si le logo n'est pas editable et qu'il n'y en a pas, on affiche pas du tout le formulaire if (!$res['editable'] and !isset($res['logo_off']) and !isset($res['logo_on'])) { return false; } return $res; }
function install_premier_auteur($email, $login, $nom, $pass, $hidden) { return info_progression_etape(3,'etape_','install/') . info_etape(_T('info_informations_personnelles'), "<b>"._T('texte_informations_personnelles_1')."</b>" . aide ("install5") . "<p>" . _T('texte_informations_personnelles_2') . " " . _T('info_laisser_champs_vides') ) . generer_form_ecrire('install', ( "\n<input type='hidden' name='etape' value='3b' />" . $hidden . fieldset(_T('info_identification_publique'), array( 'nom' => array( 'label' => "<b>"._T('entree_signature')."</b><br />\n"._T('entree_nom_pseudo_1')."\n", 'valeur' => $nom ), 'email' => array( 'label' => "<b>"._T('entree_adresse_email')."</b>\n", 'valeur' => $email ) ) ) . fieldset(_T('entree_identifiants_connexion'), array( 'login' => array( 'label' => "<b>"._T('entree_login')."</b><br />\n"._T('info_plus_trois_car')."\n", 'valeur' => $login ), 'pass' => array( 'label' => "<b>"._T('entree_mot_passe')."</b><br />\n"._T('info_plus_cinq_car_2')."\n", 'valeur' => $pass ), 'pass_verif' => array( 'label' => "<b>"._T('info_confirmer_passe')."</b><br />\n", 'valeur' => $pass ) ) ) . bouton_suivant())); }
function debut_admin($script, $action = '', $corps = '') { if (!$action || !(autoriser('webmestre') or autoriser('chargerftp'))) { include_spip('inc/minipres'); return minipres(); } else { $dir = dir_admin(); $signal = fichier_admin($script); if (@file_exists($dir . $signal)) { spip_log("Action admin: {$action}"); return ''; } include_spip('inc/minipres'); // Si on est un super-admin, un bouton de validation suffit // sauf dans les cas destroy if ((autoriser('webmestre') or $script === 'repair') and $script != 'delete_all') { if (_request('validation_admin') == $signal) { spip_log("Action super-admin: {$action}"); return ''; } $corps .= '<input type="hidden" name="validation_admin" value="' . $signal . '" />'; $suivant = _T('bouton_valider'); $js = ''; } else { // cet appel permet d'assurer un copier-coller du nom du repertoire a creer dans tmp (esj) // l'insertion du script a cet endroit n'est pas xhtml licite mais evite de l'embarquer dans toutes les pages minipres $corps .= http_script('', "spip_barre.js"); $corps .= "<fieldset><legend>" . _T('info_authentification_ftp') . aide("ftp_auth") . "</legend>\n<label for='fichier'>" . _T('info_creer_repertoire') . "</label>\n" . "<span id='signal' class='formo'>" . $signal . "</span>" . "<input type='hidden' id='fichier' name='fichier' value='" . $signal . "' />" . _T('info_creer_repertoire_2', array('repertoire' => joli_repertoire($dir))) . "</fieldset>"; $suivant = _T('bouton_recharger_page'); // code volontairement tordu: // provoquer la copie dans le presse papier du nom du repertoire // en remettant a vide le champ pour que ca marche aussi en cas // de JavaScript inactif. $js = " onload='var range=document.createRange(); var signal = document.getElementById(\"signal\"); var userSelection = window.getSelection(); range.setStart(signal,0); range.setEnd(signal,1); userSelection.addRange(range);'"; } // admin/xxx correspond // a exec/base_xxx de preference // et exec/xxx sinon (compat) if (tester_url_ecrire("base_{$script}")) { $script = "base_{$script}"; } $form = copy_request($script, $corps, $suivant); $info_action = _T('info_action', array('action' => "{$action}")); return minipres($info_action, $form, $js); } }
function http_affiche_message($id_message, $expediteur, $statut, $type, $texte, $titre, $rv, $date_heure, $date_fin, $cherche_auteur, $forcer_dest) { global $connect_id_auteur,$connect_statut, $les_notes; if ($type == 'normal') { $le_type = _T('info_message_2').aide ("messut"); $la_couleur = "#02531b"; $fond = "#cffede"; } else if ($type == 'pb') { $le_type = _T('info_pense_bete').aide ("messpense"); $la_couleur = "#3874b0"; $fond = "#edf3fe"; } else if ($type == 'affich') { $le_type = _T('info_annonce'); $la_couleur = "#ccaa00"; $fond = "#ffffee"; } // affichage des caracteristiques du message echo "<div style='border: 1px solid $la_couleur; background-color: $fond; padding: 5px;'>"; // debut cadre de couleur //echo debut_cadre_relief("messagerie-24.gif", true); echo "\n<table width='100%' cellpadding='0' cellspacing='0' border='0'>"; echo "<tr><td>"; # uniques echo "<span style='color: $la_couleur' class='verdana1 spip_small'><b>$le_type</b></span><br />"; echo "<span class='verdana1 spip_large'><b>$titre</b></span>"; if ($statut == 'redac') { echo "<br /><span style='color: red;' class='verdana1 spip_small'><b>"._T('info_redaction_en_cours')."</b></span>"; } else if ($rv == 'non') { echo "<br /><span style='color: #666666;' class='verdana1 spip_small'><b>".nom_jour($date_heure).' '.affdate_heure($date_heure)."</b></span>"; } ////////////////////////////////////////////////////// // Message avec participants // if ($type == 'normal') $total_dest = http_message_avec_participants($id_message, $statut, $forcer_dest, $cherche_auteur, $expediteur); if ($rv != "non") http_afficher_rendez_vous($date_heure, $date_fin); ////////////////////////////////////////////////////// // Le message lui-meme // echo "\n<br />" . "<div class='serif'>$texte</div>"; if ($les_notes) { echo debut_cadre_relief('', true); echo "<div dir=" . lang_dir() ."' class='arial11'>"; echo justifier("<b>"._T('info_notes')." :</b> ".$les_notes); echo "</div>"; echo fin_cadre_relief(true); } if ($expediteur == $connect_id_auteur AND $statut == 'redac') { if ($type == 'normal' AND $total_dest < 2) { echo "<p style='color: #666666; text-align: right;' class='verdana1 spip_small'><b>"._T('avis_destinataire_obligatoire')."</b></p>"; } else { echo "\n<div class='centered'>"; echo icone_inline(_T('icone_envoyer_message'), redirige_action_auteur('editer_message', "$id_message/publie", "message","id_message=$id_message"), "messagerie-24.gif", "creer.gif"); echo "</div>"; } } echo "</td></tr></table>\n"; // echo "</td></tr></table>\n"; //echo fin_cadre_relief(true); echo "</div>"; // fin du cadre de couleur // Les boutons $aut = ($expediteur == $connect_id_auteur); $aff = ($type == 'affich' AND $connect_statut == '0minirezo'); echo "\n<table width='100%'><tr><td>"; // bouton de suppression if ($aut AND ($statut == 'redac' OR $type == 'pb') OR $aff) { echo icone_inline(_T('icone_supprimer_message'), redirige_action_auteur("editer_message","-$id_message", 'messagerie'), "messagerie-24.gif", "supprimer.gif", 'left'); } // bouton retrait de la discussion if ($statut == 'publie' AND $type == 'normal') { echo icone_inline(_T('icone_arret_discussion'), redirige_action_auteur("editer_message","$id_message/-$connect_id_auteur", 'messagerie', "id_message=$id_message"), "messagerie-24.gif", "supprimer.gif", 'left'); } // bouton modifier ce message if ($aut OR $aff) { echo icone_inline(_T('icone_modifier_message'), (generer_url_ecrire("message_edit","id_message=$id_message")), "messagerie-24.gif", "edit.gif", 'right'); } echo "</td></tr></table>"; }
function bandeau_gadget_deconnection() { global $spip_lang_right; return "\n<div class='bandeau bandeau_couleur_sous' id='bandeaudeconnecter' style='$spip_lang_right: 0px;'>" . "<a href='" . generer_url_action("logout","logout=prive") . "' class='lien_sous'>"._T('icone_deconnecter')."</a>" . aide("deconnect") . "</div>"; }
function install_etape_chmod_dist() { global $test_dirs; $test_dir = _request('test_dir'); $chmod = 0; if ($test_dir) { if (substr($test_dir,-1)!=='/') $test_dir .= '/'; if (!in_array($test_dir, $test_dirs)) $test_dirs[] = _DIR_RACINE . $test_dir; } else { if (!_FILE_CONNECT) { $test_dirs[] = _DIR_CONNECT; $test_dirs[] = _DIR_CHMOD; } } $bad_dirs = array(); $absent_dirs = array();; while (list(, $my_dir) = each($test_dirs)) { $test = test_ecrire($my_dir); if (!$test) { $m = preg_replace(',^' . _DIR_RACINE . ',', '',$my_dir); if (@file_exists($my_dir)) { $bad_dirs["<li>".$m."</li>"] = 1; } else $absent_dirs["<li>".$m."</li>"] = 1; } else $chmod = max($chmod, $test); } if ($bad_dirs OR $absent_dirs) { if (!_FILE_CONNECT) { $titre = _T('dirs_preliminaire'); $continuer = ' '._T('dirs_commencer') . '.'; } else $titre = _T('dirs_probleme_droits'); $res = "<div align='right'>". menu_langues('var_lang_ecrire')."</div>\n"; if ($bad_dirs) { $res .= _T('dirs_repertoires_suivants', array('bad_dirs' => join("\n", array_keys($bad_dirs)))) . "<b>". _T('login_recharger')."</b>."; } if ($absent_dirs) { $res .= _T('dirs_repertoires_absents', array('bad_dirs' => join("\n", array_keys($absent_dirs)))) . "<b>". _T('login_recharger')."</b>."; } $res = "<p>" . $continuer . $res . aide ("install0") . "</p>"; $t = _T('login_recharger'); $t = (!$test_dir ? "" : "<input type='hidden' name='test_dir' value='$test_dir' />") . "<input type='hidden' name='etape' value='chmod' />" . "<div style='text-align: right'><input type='submit' value='$t' /></div>"; echo minipres($titre, $res . generer_form_ecrire('install', $t)); } else { $deja = (_FILE_CONNECT AND analyse_fichier_connection(_FILE_CONNECT)); if (!$deja) redirige_url_ecrire("install", "etape=1&chmod=".$chmod); else redirige_url_ecrire(); } }
function choix_feed($id_syndic, $id_rubrique, $nom_site, $row) { global $spip_lang_left, $spip_lang_right; if (!preg_match(',^\s*select: (.*),', $row['url_syndic'], $regs)) return ''; $res = ""; foreach (array('id_rubrique', 'nom_site', 'url_site', 'descriptif', 'statut') as $var) { $res .= "<input type='hidden' name='$var' value=\"".entites_html($$var)."\" />\n"; } $res .= "<div style='text-align: $spip_lang_left'>\n"; $res .= "<div><input type='radio' name='syndication' value='non' id='syndication_non' checked='checked' />"; $res .= " <b><label for='syndication_non'>"._T('bouton_radio_non_syndication')."</label></b></div>\n"; $res .= "<div><input type='radio' name='syndication' value='oui' id='syndication_oui' />"; $res .= " <label for='syndication_oui'>"._T('bouton_radio_syndication')."</label></div>\n"; $res .= "<select name='url_syndic' id='url_syndic'>\n"; foreach (explode(' ',$regs[1]) as $feed) { $res .= '<option value="'.entites_html($feed).'">'.$feed."</option>\n"; } $res .= "</select>\n"; $res .= aide("rubsyn"); $res .= "<div style='text-align: $spip_lang_right'><input type='submit' value='"._T('bouton_valider')."' /></div>\n"; $res .= "</div>\n"; $res = redirige_action_post('editer_site', $id_syndic, 'sites','', $res); return debut_cadre_relief('', true) . $res . fin_cadre_relief(true); }