/** * Demander à mettre à jour la base de données */ function exec_demande_mise_a_jour_dist() { // on fait la verif du path avant tout, // et l'installation des qu'on est dans la colonne principale // si jamais la liste des plugins actifs change, il faut faire un refresh du hit // pour etre sur que les bons fichiers seront charges lors de l'install include_spip('inc/plugin'); if (actualise_plugins_actifs()) { include_spip('inc/headers'); redirige_par_entete(self()); } include_spip('inc/presentation'); include_spip('inc/filtres_boites'); $commencer_page = charger_fonction('commencer_page', 'inc'); echo $commencer_page('', '', '', '', true, false, false); echo debut_grand_cadre(true); echo boite_ouvrir(_T('info_message_technique'), 'notice'); echo "<p>" . _T('info_procedure_maj_version') . "</p>", "<p>" . _T('info_administrateur_site_01') . "</p>"; echo bouton_action(_T('bouton_mettre_a_jour_base'), generer_url_ecrire("upgrade", "reinstall=non")); echo boite_fermer(); // masquer les erreurs sql sur cette page car proviennent de la base pas a jour ! echo '<style type="text/css">#debug-nav {display: none;}</style>'; echo fin_grand_cadre(true); echo fin_page(); }
/** * @param array $config * @param int $id_transaction * @param string $transaction_hash * @param array $options * @return array|string */ function presta_paypalexpress_payer_acte_dist($config, $id_transaction, $transaction_hash, $options = array()) { include_spip('presta/paypalexpress/inc/paypalexpress'); $contexte = array('id_transaction' => $id_transaction, 'transaction_hash' => $transaction_hash, 'url_confirm' => parametre_url(self(), 'confirm', 'oui'), 'sandbox' => paypalexpress_is_sandbox($config) ? ' ' : '', 'logo' => bank_trouver_logo('paypal', 'PAYPAL.gif'), 'config' => $config); $contexte = array_merge($options, $contexte); return recuperer_fond('presta/paypalexpress/payer/acte', $contexte); }
function html_f3666965c018303599bb64189cbac96c($Cache, $Pile, $doublons = array(), $Numrows = array(), $SP = 0) { if (isset($Pile[0]["doublons"]) and is_array($Pile[0]["doublons"])) { $doublons = nettoyer_env_doublons($Pile[0]["doublons"]); } $connect = ''; $page = ' <div' . (($t1 = strval(interdire_scripts(entites_html(sinon(table_valeur(@$Pile[0], (string) 'divclass', null), 'spip-admin-bloc'), true)))) !== '' ? ' class="' . $t1 . '"' : '') . ' id=\'spip-admin\' dir="' . lang_dir(@$Pile[0]['lang'], 'ltr', 'rtl') . '">' . (($t1 = strval(interdire_scripts(entites_html(table_valeur(@$Pile[0], (string) 'analyser', null), true)))) !== '' ? ' <a href="' . $t1 . ('" class="spip-admin-boutons" id="analyser">' . _T('public|spip|ecrire:analyse_xml') . (($t2 = strval(interdire_scripts(entites_html(table_valeur(@$Pile[0], (string) 'xhtml_error', null), true)))) !== '' ? ' (' . $t2 . ')' : '') . '</a>') : '') . ' ' . (($t1 = strval(interdire_scripts(entites_html(table_valeur(@$Pile[0], (string) 'objet', null), true) ? ' ' : ''))) !== '' ? $t1 . (' ' . (($t2 = strval(interdire_scripts(entites_html(table_valeur(@$Pile[0], (string) 'id_objet', null), true)))) !== '' ? '<a href="' . interdire_scripts(entites_html(table_valeur(@$Pile[0], (string) ('voir_' . interdire_scripts(entites_html(table_valeur(@$Pile[0], (string) 'objet', null), true))), null), true)) . '" class="spip-admin-boutons" id="voir_' . interdire_scripts(entites_html(table_valeur(@$Pile[0], (string) 'objet', null), true)) . '">' . interdire_scripts(_T(objet_info(entites_html(table_valeur(@$Pile[0], (string) 'objet', null), true), 'texte_objet'))) . ' (' . $t2 . ')</a>' : '') . ' ') : '') . '<!--extra-->' . (($t1 = strval(interdire_scripts(entites_html(table_valeur(@$Pile[0], (string) 'ecrire', null), true)))) !== '' ? ' <a href="' . $t1 . ('" class="spip-admin-boutons" id="ecrire">' . _T('public|spip|ecrire:espace_prive') . '</a>') : '') . ' <a href="' . parametre_url(self(), 'var_mode', interdire_scripts(entites_html(table_valeur(@$Pile[0], (string) 'calcul', null), true))) . '" class="spip-admin-boutons" id="var_mode">' . _T('public|spip|ecrire:admin_recalculer') . interdire_scripts(entites_html(table_valeur(@$Pile[0], (string) 'use_cache', null), true)) . '</a>' . (($t1 = strval(interdire_scripts(entites_html(table_valeur(@$Pile[0], (string) 'preview', null), true)))) !== '' ? ' <a href="' . $t1 . ('" class="spip-admin-boutons" id="preview">' . _T('public|spip|ecrire:previsualisation') . '</a>') : '') . (($t1 = strval(interdire_scripts(entites_html(table_valeur(@$Pile[0], (string) 'debug', null), true)))) !== '' ? ' <a href="' . $t1 . ('" class="spip-admin-boutons" id="debug">' . _T('public|spip|ecrire:admin_debug') . '</a>') : '') . ' </div> '; return analyse_resultat_skel('html_f3666965c018303599bb64189cbac96c', $Cache, $page, 'squelettes-dist/formulaires/administration.html'); }
function install_etape_4_dist() { // creer le repertoire cache, qui sert partout ! if (!@file_exists(_DIR_CACHE)) { $rep = preg_replace(',' . _DIR_TMP . ',', '', _DIR_CACHE); $rep = sous_repertoire(_DIR_TMP, $rep, true, true); } echo install_debut_html('AUTO', ' onload="document.getElementById(\'suivant\').focus();return false;"'); echo info_progression_etape(4, 'etape_', 'install/'); echo "<div class='success'><b>" . _T('info_derniere_etape') . "</b><p>" . _T('info_utilisation_spip') . "</p></div>"; echo "<p>" . _T('plugin_info_plugins_dist_1', array('plugins_dist' => "<tt>" . joli_repertoire(_DIR_PLUGINS_DIST) . "</tt>")) . "</p>"; // installer les extensions include_spip('inc/plugin'); $afficher = charger_fonction("afficher_liste", 'plugins'); echo $afficher(self(), liste_plugin_files(_DIR_PLUGINS_DIST), array(), array(), _DIR_PLUGINS_DIST, 'afficher_nom_plugin'); plugin_installes_meta(); // mettre a jour si necessaire l'adresse du site // securite si on arrive plus a se loger include_spip('inc/config'); appliquer_adresse_site(''); // aller a la derniere etape qui clos l'install et redirige $suite = "\n<input type='hidden' name='etape' value='fin' />" . bouton_suivant(_T('login_espace_prive')); echo generer_form_ecrire('install', $suite); echo install_fin_html(); }
function showDateLink($id, $name) { global $search, $date, $left; $active = $date == $id ? ' class="active"' : ''; echo '<li><a' . $active . ' href="' . self(array('date' => $id)) . '">' . $name . '</a></li>'; echo "\n"; }
function menu_lang_pour_tous($nom, $default) { include_spip('inc/lang'); if ($GLOBALS['spip_lang'] <> $default) { $opt = lang_select($default); # et remplace if ($GLOBALS['spip_lang'] <> $default) { $default = ''; # annule tout choix par defaut if ($opt) lang_select(); } } $opt = liste_options_langues($nom, $default); if (!$opt) return ''; # lien a partir de / $cible = parametre_url(self(), 'lang' , '', '&'); $post = generer_url_action('converser', 'redirect='. rawurlencode($cible), '&'); return array('formulaires/menu_lang', 3600, array('nom' => $nom, 'url' => $post, 'langues' => $opt ) ); }
function install_etape_4_dist() { // creer le repertoire cache, qui sert partout ! if (!@file_exists(_DIR_CACHE)) { $rep = preg_replace(',' . _DIR_TMP . ',', '', _DIR_CACHE); $rep = sous_repertoire(_DIR_TMP, $rep, true, true); } echo install_debut_html('AUTO', ' onload="document.getElementById(\'suivant\').focus();return false;"'); echo info_progression_etape(4, 'etape_', 'install/'); echo "<div class='success'><b>" . _T('info_derniere_etape') . "</b><p>" . _T('info_utilisation_spip') . "</p></div>"; echo "<p>" . _T('plugin_info_plugins_dist_1', array('plugins_dist' => "<tt>" . joli_repertoire(_DIR_PLUGINS_DIST) . "</tt>")) . "</p>"; // installer les extensions include_spip('inc/plugin'); $afficher = charger_fonction("afficher_liste", 'plugins'); echo $afficher(self(), liste_plugin_files(_DIR_PLUGINS_DIST), array(), array(), _DIR_PLUGINS_DIST, 'afficher_nom_plugin'); // si la base de SPIP est up, on peut installer les plugins, sinon on passe cette etape // car les plugins supposent que la base de SPIP est dans son etat normal (mise a jour) // au premier passage dans l'espace prive on aura une demande d'upgrade qui se poursuit sur la page plugin // et procede alors a l'installation if (!isset($GLOBALS['meta']['version_installee']) or $GLOBALS['spip_version_base'] == str_replace(',', '.', $GLOBALS['meta']['version_installee'])) { plugin_installes_meta(); } // mettre a jour si necessaire l'adresse du site // securite si on arrive plus a se loger include_spip('inc/config'); appliquer_adresse_site(''); // aller a la derniere etape qui clos l'install et redirige $suite = "\n<input type='hidden' name='etape' value='fin' />" . bouton_suivant(_T('login_espace_prive')); echo generer_form_ecrire('install', $suite); echo install_fin_html(); }
function balise_URL_LOGOUT_dyn($cible) { if (!$GLOBALS['visiteur_session']['login'] and !$GLOBALS['visiteur_session']['statut']) { return ''; } return generer_url_action('logout', "logout=public&url=" . rawurlencode($cible ? $cible : self('&'))); }
function balise_LOGIN_PUBLIC_dyn($url, $login) { include_spip('balise/formulaire_'); if (!$url and !($url = _request('url'))) { $url = parametre_url(self(), '', '', '&'); } return balise_FORMULAIRE__dyn('login', $url, $login, false); }
function balise_LOGIN_PUBLIC_dyn($url, $login) { include_spip('balise/formulaire_'); if (!$url # pas d'url passee en filtre ou dans le contexte AND !$url = _request('url') # ni d'url passee par l'utilisateur ) $url = parametre_url(self(), '', '', '&'); return balise_FORMULAIRE__dyn('login',$url,$login,false); }
function redirige_par_entete($url, $equiv='', $status = 302) { if (!in_array($status,array(301,302))) $status = 302; $url = trim(strtr($url, "\n\r", " ")); # en theorie on devrait faire ca tout le temps, mais quand la chaine # commence par ? c'est imperatif, sinon l'url finale n'est pas la bonne if ($url[0]=='?') $url = url_de_base().(_DIR_RESTREINT?'':_DIR_RESTREINT_ABS).$url; if ($url[0]=='#') $url = self('&').$url; if ($x = _request('transformer_xml')) $url = parametre_url($url, 'transformer_xml', $x, '&'); if (defined('_AJAX') AND _AJAX) $url = parametre_url($url, 'var_ajax_redir', 1, '&'); // ne pas laisser passer n'importe quoi dans l'url $url = str_replace(array('<','"'),array('<','"'),$url); // interdire les url inline avec des pseudo-protocoles : if ( (preg_match(",data:,i",$url) AND preg_match("/base64\s*,/i",$url)) OR preg_match(",(javascript|mailto):,i",$url) ) $url ="./"; // Il n'y a que sous Apache que setcookie puis redirection fonctionne if (!$equiv OR (strncmp("Apache", $_SERVER['SERVER_SOFTWARE'],6)==0) OR defined('_SERVER_APACHE')) { @header("Location: " . $url); $equiv=""; } else { @header("Refresh: 0; url=" . $url); $equiv = "<meta http-equiv='Refresh' content='0; url=$url'>"; } include_spip('inc/lang'); if ($status!=302) http_status($status); echo '<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">',"\n", html_lang_attributes(),' <head>', $equiv,' <title>HTTP '.$status.'</title> </head> <body> <h1>HTTP '.$status.'</h1> <a href="', quote_amp($url), '">', _T('navigateur_pas_redirige'), '</a></body></html>'; spip_log("redirige $status: $url"); exit; }
/** * Traite une demande de redirection * * Si le fond du formulaire demande expressement une redirection * par <!-- rediriger=1 -->, on stocke le message dans une meta * et on redirige le client, de maniere a charger la page * avec la nouvelle config (ce qui permet par exemple a Autorite * de controler d'eventuels conflits generes par les nouvelles autorisations) * * @param mixed $valeur # inutilisé * @param Object $cfg */ function cfg_post_traiter_param_rediriger($valeur, &$cfg){ if ($cfg->messages) { include_spip('inc/meta'); ecrire_meta('cfg_message_'.$GLOBALS['auteur_session']['id_auteur'], serialize($cfg->messages), 'non'); if (defined('_COMPAT_CFG_192')) ecrire_metas(); include_spip('inc/headers'); redirige_par_entete(parametre_url(self(),null,null,'&')); } }
function exec_cfg_install_libs_dist($class = null) { include_spip('inc/filtres'); include_spip("inc/presentation"); global $cfg_libs; // droits : il faut avoir le droit de choisir les plugins, // mais aussi d'en ajouter include_spip('inc/autoriser'); if (!autoriser('configurer', 'plugins')) { echo minipres(); exit; } pipeline('exec_init', array('args' => array('exec' => 'cfg'), 'data' => '')); $commencer_page = charger_fonction('commencer_page', 'inc'); echo $commencer_page(_T('cfg:installation_librairies'), 'cfg'); echo "<br /><br /><br />\n"; echo gros_titre(_T('cfg:installation_librairies'), '', false); // colonne gauche echo debut_gauche('', true); echo pipeline('affiche_gauche', array('args' => array('exec' => 'cfg'), 'data' => '')); echo creer_colonne_droite('', true); echo pipeline('affiche_droite', array('args' => array('exec' => 'cfg'), 'data' => '')); echo debut_droite("", true); // centre de la page echo debut_cadre_trait_couleur('', true, '', _T('cfg:installation_liste_libs')); // message pour creer le dossier lib/ if (!is_dir(_DIR_LIB) && !is_writable(_DIR_LIB)) { echo "<p class='important'>" . _T('cfg:installer_dossier_lib', array('dir' => joli_repertoire(_DIR_LIB))) . "</p>\n"; } // message pour installation 1.9.2 if ($spip192 = defined('_COMPAT_CFG_192') && _COMPAT_CFG_192) { echo "<p>" . _T('cfg:installer_lib_192', array('dir' => joli_repertoire(_DIR_LIB))) . "</p>\n"; } // mettre un lien pour telecharger les libs include_spip('inc/actions'); foreach ($cfg_libs as $lib => $info) { // deja present ? texte du bouton : "mettre a jour", sinon "telecharger" $quoi = is_dir(_DIR_LIB . $info['dir']) ? 'update' : 'install'; echo "<dl>\n"; echo "<dt>" . $info['nom'] . "</dt>\n"; echo "<dd>" . $info['description'] . "</dd>\n"; // cas 1.9.2 // proposer de copier manuellement le zip decompresse dans le dossier lib if ($spip192) { echo "<dd>" . ($quoi == 'update' ? "(" . _T('cfg:bouton_mettre_a_jour') . ") " : "") . "<a class='spip_out' href='{$info['install']}' />{$info['install']}</a></dd>\n"; // cas > 1.9.2 // chargeur plugin/lib de spip } else { echo "<dd>" . redirige_action_auteur('charger_plugin', 'lib', '', '', "<input type='hidden' name='url_zip_plugin' value='{$info['install']}' />" . "<input type='hidden' name='retour' value='" . self() . "' />" . "<input type='submit' class='fondo' name='ok' value='" . ($quoi == 'update' ? _T('cfg:bouton_mettre_a_jour') : _T('bouton_telecharger')) . "' />", "\nmethod='post'") . "</dd>\n"; } echo "</dl>\n"; } echo fin_cadre_trait_couleur(true); // pied echo fin_gauche() . fin_page(); }
/** * Inserer les infos d'agenda sur les articles et rubriques * * @param array $flux * @return array */ function agenda_affiche_milieu($flux) { $e = trouver_objet_exec($flux['args']['exec']); $out = ""; if ($e['type'] == 'rubrique' and autoriser('configurer') and $e['edition'] == false and $id_rubrique = intval($flux['args']['id_rubrique']) and autoriser('modifier', 'rubrique', $id_rubrique)) { $activer = true; $res = ""; $actif = sql_getfetsel('agenda', 'spip_rubriques', 'id_rubrique=' . intval($id_rubrique)); $statut = "-32"; $alt = ""; $voir = ""; if (!sql_countsel('spip_rubriques', 'agenda=1')) { $res .= "<span class='small'>" . _T('agenda:aucune_rubrique_mode_agenda') . "</span><br />"; } else { include_spip('inc/rubriques'); if (sql_countsel('spip_rubriques', sql_in('id_rubrique', calcul_hierarchie_in($id_rubrique)) . " AND agenda=1 AND id_rubrique<>" . intval($id_rubrique))) { $alt = _T('agenda:rubrique_dans_une_rubrique_mode_agenda'); $activer = false; $statut = "-ok-32"; $voir = _T('agenda:voir_evenements_rubrique'); } elseif (!$actif) { $alt = _T('agenda:rubrique_sans_gestion_evenement') . '<br />'; $statut = "-non-32"; } if ($actif) { $alt = _T('agenda:rubrique_mode_agenda') . '<br />'; $statut = "-ok-32"; $voir = _T('agenda:voir_evenements_rubrique'); } } if (!$actif) { if ($activer) { $res .= bouton_action(_T('agenda:rubrique_activer_agenda'), generer_action_auteur('activer_agenda_rubrique', $id_rubrique, self()), 'ajax'); } } else { $res .= bouton_action(_T('agenda:rubrique_desactiver_agenda'), generer_action_auteur('activer_agenda_rubrique', "-{$id_rubrique}", self()), 'ajax'); } if ($voir) { $res .= " | <a href='" . generer_url_ecrire('evenements', "id_rubrique={$id_rubrique}") . "'>{$voir}</a>"; } if ($res) { $out .= boite_ouvrir(_T('agenda:agenda') . http_img_pack("agenda{$statut}.png", $alt, "class='statut'", $alt), 'simple agenda-statut') . $res . boite_fermer(); } } elseif ($e['type'] == 'article' and $e['edition'] == false) { $id_article = $flux['args']['id_article']; $out .= recuperer_fond('prive/objets/contenu/article-evenements', $flux['args']); } if ($out) { if ($p = strpos($flux['data'], '<!--affiche_milieu-->')) { $flux['data'] = substr_replace($flux['data'], $out, $p, 0); } else { $flux['data'] .= $out; } } return $flux; }
function formulaires_configurer_langage_traiter_dist() { include_spip('action/converser'); action_converser_changer_langue(true); refuser_traiter_formulaire_ajax(); // on ne peut pas changer la langue pour tout le hit ici, // car CVT repasse derriere et retablit la langue avant l'appel a traiter() // il faut rediriger ! return array('message_ok' => _T('config_info_enregistree'), 'editable' => true, 'redirect' => self()); }
function previsu_cle_temporaire($date = null) { include_spip('inc/securiser_action'); if (!$date) { $date = date('Y-m-d H'); } $url = self(); $cle = md5($url . $date . secret_du_site()); return $cle; }
function formulaires_creer_squelette_traiter_dist($path_base){ $res = array(); $filename = _request('filename'); if (ecrire_fichier($path_base.$filename, "")) $res = array('message_ok'=>_T('ok'),'redirect'=>parametre_url(self(),'f',$path_base.$filename)); else $res['message_erreur'] = _T('skeleditor:erreur_ecriture_fichier'); return $res; }
function pager_pagelinks($id) { global $pager; output_clear(); if ($pager[$id]['stop'] > $pager[$id]['items_per_page']) { echo '<a class="linkbutton" style="margin: 10px;" href="' . self(array('start' . pager_suffix($id) => $pager[$id]['start'] - $pager[$id]['items_per_page'])) . '">« Previous Page</a>'; } if ($pager[$id]['stop'] < $pager[$id]['count']) { echo ' <a class="linkbutton" style="margin: 10px;" href="' . self(array('start' . pager_suffix($id) => $pager[$id]['stop'])) . '">Next Page »</a>'; } }
function redirige_par_entete($url, $equiv = '', $status = 302) { if (!in_array($status, array(301, 302))) { $status = 302; } $url = trim(strtr($url, "\n\r", " ")); # en theorie on devrait faire ca tout le temps, mais quand la chaine # commence par ? c'est imperatif, sinon l'url finale n'est pas la bonne if ($url[0] == '?') { $url = url_de_base() . $url; } if ($url[0] == '#') { $url = self('&') . $url; } # si profondeur non nulle et url relative, il faut la passer en absolue if ($GLOBALS['profondeur_url'] > (_DIR_RESTREINT ? 1 : 2) and !preg_match(",^(\\w+:)?//,", $url)) { include_spip("inc/filtres_mini"); $url = url_absolue($url); } if ($x = _request('transformer_xml')) { $url = parametre_url($url, 'transformer_xml', $x, '&'); } if (defined('_AJAX') and _AJAX) { $url = parametre_url($url, 'var_ajax_redir', 1, '&'); } // ne pas laisser passer n'importe quoi dans l'url $url = str_replace(array('<', '"'), array('<', '"'), $url); // interdire les url inline avec des pseudo-protocoles : if (preg_match(",data:,i", $url) and preg_match("/base64\\s*,/i", $url) or preg_match(",(javascript|mailto):,i", $url)) { $url = "./"; } // Il n'y a que sous Apache que setcookie puis redirection fonctionne include_spip('inc/cookie'); if (!$equiv and !spip_cookie_envoye() or (strncmp("Apache", $_SERVER['SERVER_SOFTWARE'], 6) == 0 or defined('_SERVER_APACHE'))) { @header("Location: " . $url); $equiv = ""; } else { @header("Refresh: 0; url=" . $url); $equiv = "<meta http-equiv='Refresh' content='0; url={$url}'>"; } include_spip('inc/lang'); if ($status != 302) { http_status($status); } echo '<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">', "\n", html_lang_attributes(), ' <head>', $equiv, ' <title>HTTP ' . $status . '</title> </head> <body> <h1>HTTP ' . $status . '</h1> <a href="', quote_amp($url), '">', _T('navigateur_pas_redirige'), '</a></body></html>'; spip_log("redirige {$status}: {$url}"); exit; }
function formulaires_reviser_traiter_dist($objet, $id_objet, $id_version, $id_diff) { $res = array('message_ok' => '', 'editable' => true); $id_version = _request('id_version'); $id_diff = _request('id_diff'); if (_AJAX) { $res['message_ok'] .= "<script type='text/javascript'>if (window.jQuery) jQuery('#wysiwyg.revision').ajaxReload({args:{id_version:{$id_version},id_diff:{$id_diff}},history:true});</script>"; } else { $res['redirect'] = parametre_url(parametre_url(self(), 'id_version', $id_version), 'id_diff', $id_diff, '&'); } return $res; }
function formulaires_annuaire_tri_traiter($articles = null, $url = null) { refuser_traiter_formulaire_ajax(); $mots = _request('mots'); // supprimer les valeurs vides du tableau mots $mots = array_filter($mots, function($a){ return is_string($a) && trim($a) !== ""; }); if (!$url) { $url = self(); } // Nettoyer l'URL des mots[] qu'elle contiendrait deja $url = parametre_url($url,'mots',''); $url = parametre_url($url, 'mots', $mots); return array('redirect' => $url); }
function presta_paybox_call_request_dist($id_transaction, $transaction_hash, $abo = false, $cartes = array('CB', 'VISA', 'EUROCARD_MASTERCARD', 'E_CARD')) { if (!($row = sql_fetsel("*", "spip_transactions", "id_transaction=" . intval($id_transaction) . " AND transaction_hash=" . sql_quote($transaction_hash)))) { return ""; } if (!$row['id_auteur'] and $GLOBALS['visiteur_session']['id_auteur']) { sql_updateq("spip_transactions", array("id_auteur" => intval($row['id_auteur'] = $GLOBALS['visiteur_session']['id_auteur'])), "id_transaction=" . intval($id_transaction)); } // recuperer l'email $mail = sql_getfetsel('email', 'spip_auteurs', 'id_auteur=' . intval($row['id_auteur'])); // passage en centimes d'euros $montant = intval(100 * $row['montant']); if (strlen($montant) < 3) { $montant = str_pad($montant, 3, '0', STR_PAD_LEFT); } // Affectation des parametres obligatoires $parm = paybox_pbx_ids(); $parm['PBX_OUTPUT'] = "C"; // recuperer uniquement les hidden $parm['PBX_LANGUE'] = "FRA"; $parm['PBX_DEVISE'] = "978"; $parm['PBX_TOTAL'] = $montant; $parm['PBX_PORTEUR'] = defined('_PBX_PORTEUR') ? _PBX_PORTEUR : $mail; $parm['PBX_CMD'] = intval($id_transaction); $parm['PBX_RETOUR'] = 'montant:M;id_transaction:R;auth:A;trans:S;abo:B;erreur:E;valid:D;sign:K'; $parm['PBX_EFFECTUE'] = generer_url_action('bank_response', "bankp=paybox", true, true); $parm['PBX_REFUSE'] = generer_url_action('bank_cancel', "bankp=paybox", true, true); $parm['PBX_ANNULE'] = generer_url_action('bank_cancel', "bankp=paybox", true, true); if ($abo and $id_abonnement = sql_getfetsel("id_abonnement", "spip_abonnements_transactions", "id_transaction=" . intval($id_transaction)) and $montant_echeance = sql_getfetsel('prix_echeance', 'spip_abonnements', 'id_abonnement=' . intval($id_abonnement))) { $montant_echeance = str_pad(intval(100 * $montant_echeance), 10, "0", STR_PAD_LEFT); // infos de l'abonnement : // montant identique recurrent, frequence mensuelle, a date anniversaire, sans delai $parm['PBX_CMD'] .= "IBS_2MONT{$montant_echeance}" . "IBS_NBPAIE00" . "IBS_FREQ01" . "IBS_QUAND00"; } //var_dump($parm); $cartes_possibles = array('CB' => 'presta/paybox/logo/CB.gif', 'VISA' => 'presta/paybox/logo/VISA.gif', 'EUROCARD_MASTERCARD' => 'presta/paybox/logo/MASTERCARD.gif', 'E_CARD' => 'presta/paybox/logo/E-CB.gif', 'AMEX' => 'presta/paybox/logo/AMEX.gif', 'AURORE' => 'presta/paybox/logo/AURORE.gif'); include_spip('inc/filtres_mini'); $contexte = array('hidden' => array(), 'action' => _PAYBOX_URL, 'backurl' => url_absolue(self()), 'id_transaction' => $id_transaction); foreach ($cartes as $carte) { if ($cartes_possibles[$carte]) { $parm['PBX_TYPEPAIEMENT'] = 'CARTE'; $parm['PBX_TYPECARTE'] = $carte; $contexte['hidden'][$carte] = paybox_exec_request($parm); $contexte['logo'][$carte] = $cartes_possibles[$carte]; } } return $contexte; }
function formulaires_upload_squelette_traiter_dist($path_base){ $files = skeleditor_check_upload($path_base); $ok = true; foreach($files as $file){ if (!move_uploaded_file($file['tmp_name'], $path_base.$file['name'])) $ok = false; } if ($ok){ $res['message_ok'] = 'ok'; $res['redirect'] = parametre_url(parametre_url(self(),'upload',''),'f',$path_base.$file['name']); } else $res['message_erreur'] = 'erreur'; return $res; }
function balise_CALENDRIER_MINI_dyn($id_rubrique=0, $id_article = 0, $id_mot = 0,$date, $var_date = 'date', $url = '') { if(!$url) $url = self(); // nettoyer l'url qui est passee par htmlentities pour raison de securités $url = str_replace("&","&",$url); return array('formulaires/calendrier_mini', 0, array( 'date' => $date, 'id_rubrique' => $id_rubrique, 'id_article' => $id_article, 'id_mot' => $id_mot, 'var_date' => $var_date, 'self' => $url, )); }
/** * Syntaxe raccourcie du plugin * #CALENDRIER_MINI * #CALENDRIER_MINI{#SELF} * #CALENDRIER_MINI{#SELF,#URL_PAGE{calendrier_mini.json}} * * Syntaxe ancienne (ou plugin agenda) * #CALENDRIER_MINI{#ENV{date}} * #CALENDRIER_MINI{#ENV{date},date} * #CALENDRIER_MINI{#ENV{date},date,#SELF} * #CALENDRIER_MINI{#ENV{date},date,#SELF,#URL_PAGE{calendrier_mini.json}} * * Quand l'url json est explicitee dans les arguments, la collecte automatisee de id_rubrique, id_article et id_mot est desactivee * car dans ce cas il suffit simplement de les expliciter sur l'url json pour les prendre en compte * * @param string $date * date automatique collectee par VAR_DATE * @param int $id_rubrique * @param int $id_article * @param int $id_mot * @param null $self_or_date_or_nothing * @param null $urljson_or_var_date_or_nothing * @param null $self_or_nothing * @param null $urljson_or_nothing * @return array */ function balise_CALENDRIER_MINI_dyn($date, $id_rubrique = 0, $id_article = 0, $id_mot = 0, $self_or_date_or_nothing = null, $urljson_or_var_date_or_nothing = null, $self_or_nothing = null, $urljson_or_nothing = null) { $var_date = VAR_DATE; $url = null; $url_json = null; if (!is_null($self_or_date_or_nothing)) { // est-ce une date ou une url ? if (!function_exists('recup_date')) { include_spip('inc/filtres'); } if (!strlen($self_or_date_or_nothing) or preg_match(",^[\\d\\s:-]+\$,", $self_or_date_or_nothing) and list($annee, $mois, $jour, $heures, $minutes, $secondes) = recup_date($self_or_date_or_nothing) and $annee) { // si c'est une date on est dans l'ancienne syntaxe $date = $self_or_date_or_nothing; $var_date = $urljson_or_var_date_or_nothing; $url = $self_or_nothing; $url_json = $urljson_or_nothing; } else { // sinon on est sur la nouvelle syntaxe $url = $self_or_date_or_nothing; $url_json = $urljson_or_var_date_or_nothing; } } $args = array('date' => $date ? $date : date('Y-m'), 'var_date' => $var_date, 'self' => $url ? $url : self()); // si pas de url_json explicite, la renseigner et peupler automatiquement les if (is_null($url_json)) { $url_json = generer_url_public("calendrier_mini.json"); if (!is_null($id_rubrique)) { $args['id_rubrique'] = $id_rubrique; } if (!is_null($id_article)) { $args['id_article'] = $id_article; } if (!is_null($id_mot)) { $args['id_mot'] = $id_mot; } } if (defined('_VAR_MODE') and _VAR_MODE == "recalcul") { $url_json = parametre_url($url_json, 'var_mode', 'recalcul'); } $args['urljson'] = $url_json; /* tenir compte de la langue, c'est pas de la tarte */ return array('formulaires/calendrier_mini', 3600, $args); }
function balise_LANGUE_PREFEREE_LIEN_EFFACE_COOKIE_dyn($texte = '') { if ($texte == '') { $texte = _T('languepreferee:efface_cookie'); } include_spip('inc/meta'); $lien = ''; if (isset($_COOKIE['spip_langue_preferee']) && $_COOKIE['spip_langue_preferee'] != '') { if (isset($_GET['var_langue_preferee_efface_cookie'])) { include_spip('inc/cookie'); spip_setcookie('spip_langue_preferee', '', time() - 3600*24*10, chemin_cookie()); } else { $url = preg_replace("/([?&])var_langue_preferee_efface_cookie=[^&]+(&)?/", "$1", self()); $url .= (strpos($url, '?') > 0 ? '&' : '?').'var_langue_preferee_efface_cookie=oui'; $lien = '<a href="'.$url.'">'.$texte.'</a>'; } } return $lien; }
function spip_bonux_affichage_final($flux) { if (defined('_VAR_PREVIEW') and _VAR_PREVIEW) { $p = stripos($flux, "</body>"); $url_relecture = parametre_url(self(), 'var_mode', 'preview', '&'); $js = ""; if (!defined('_VAR_PREVIEW_EXCEPTION')) { $url_relecture = parametre_url($url_relecture, 'var_relecture', previsu_cle_temporaire(), '&'); $label = "Relecture temporaire"; } else { $label = _T('previsualisation'); $js = "jQuery('.spip-previsu').html('Relecture temporaire');"; } $js .= "jQuery('#spip-admin').append('<a class=\"spip-admin-boutons review_link\" href=\"{$url_relecture}\">{$label}</a>');"; $js = "jQuery(function(){ {$js} });"; $js = "<script>{$js}</script>"; $flux = substr_replace($flux, $js, $p, 0); } return $flux; }
function snippets_affiche_droite($flux){ include_spip('inc/snippets'); $args = $flux['args']; $out = ""; $retour = _DIR_RESTREINT_ABS . self(); if ($args['exec']=='articles_tous') { $out.=boite_snippets(_L('Article'),'article-24.gif','articles','articles',"id_rubrique=0",$retour); $out.=boite_snippets(_L('Rubrique'),'rubrique-24.gif','rubriques','rubriques',"",$retour); } if ($args['exec']=='articles') { $out.=boite_snippets(_L('Article'),'article-24.gif','articles',$args['id_article'],"",$retour); } if ($args['exec']=='naviguer') { $out.=boite_snippets(_L('Article'),'article-24.gif','articles','articles',"id_rubrique=".$args['id_rubrique'],$retour); $out.=boite_snippets(_L('Rubrique'),'rubrique-24.gif','rubriques',$args['id_rubrique'],"id_rubrique=".$args['id_rubrique'],$retour); } $flux['data'].=$out; return $flux; }
function install_etape_4_dist() { // creer le repertoire cache, qui sert partout ! if(!@file_exists(_DIR_CACHE)) { $rep = preg_replace(','._DIR_TMP.',', '', _DIR_CACHE); $rep = sous_repertoire(_DIR_TMP, $rep, true,true); } echo install_debut_html('AUTO', ' onload="document.getElementById(\'suivant\').focus();return false;"'); echo info_progression_etape(4,'etape_','install/'); echo "<p>" ._L('Les extensions ci-dessous sont chargées et activées dans le répertoire @extensions@.', array('extensions' => joli_repertoire(_DIR_EXTENSIONS))) ."</p>"; // installer les extensions include_spip('inc/plugin'); $afficher = charger_fonction("afficher_liste",'plugins'); echo $afficher(self(), liste_plugin_files(_DIR_EXTENSIONS),array(), _DIR_EXTENSIONS,'afficher_nom_plugin'); installe_plugins(); echo info_etape(_T('info_derniere_etape'), _T('info_utilisation_spip') ); // mettre a jour si necessaire l'adresse du site // securite si on arrive plus a se loger include_spip('inc/config'); $_POST['adresse_site'] = ''; appliquer_modifs_config(); // aller a la derniere etape qui clos l'install et redirige $suite = "\n<input type='hidden' name='etape' value='fin' />" . bouton_suivant(_T('login_espace_prive')); echo generer_form_ecrire('install', $suite); echo install_fin_html(); }
function html_65c161fa3974dab7ff9b5b08fa07491e($Cache, $Pile, $doublons = array(), $Numrows = array(), $SP = 0) { if (isset($Pile[0]["doublons"]) and is_array($Pile[0]["doublons"])) { $doublons = nettoyer_env_doublons($Pile[0]["doublons"]); } $connect = ''; $page = ($t1 = strval(invalideur_session($Cache, (function_exists("autoriser") || include_spip("inc/autoriser")) && autoriser('configurer', '_admin_vider') ? " " : "" ? ' ' : ''))) !== '' ? $t1 . (' ' . boite_ouvrir(interdire_scripts(wrap(concat(filtre_balise_img_dist(chemin_image('image-24.png'), '', 'cadre-icone'), _T('info_images_auto')), '<h3>')), 'simple', 'titrem') . '<div id="placehoder_taille_cache_images"><p> <br /> <br /> <br /></p></div> <script type="text/javascript"> jQuery(function(){jQuery(\'#placehoder_taille_cache_images\').animateLoading().load(\'' . invalideur_session($Cache, replace(generer_action_auteur('calculer_taille_cache', 'images'), '&', '&')) . '\');}); </script> <noscript> <iframe src="' . invalideur_session($Cache, generer_action_auteur('calculer_taille_cache', 'images')) . '" style="width: 100%;height: 3em;overflow: hidden;"></iframe> </noscript> ' . boite_pied() . ' ' . bouton_action(_T('public|spip|ecrire:bouton_vider_cache'), invalideur_session($Cache, generer_action_auteur('purger', 'vignettes', invalideur_session($Cache, self()))), 'ajax') . ' ' . boite_fermer() . ' ') : ''; return analyse_resultat_skel('html_65c161fa3974dab7ff9b5b08fa07491e', $Cache, $page, '../prive/squelettes/inclure/admin_vider_images.html'); }