本文整理汇总了PHP中generer_url_public函数的典型用法代码示例。如果您正苦于以下问题:PHP generer_url_public函数的具体用法?PHP generer_url_public怎么用?PHP generer_url_public使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了generer_url_public函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: sarkaspip_insert_head
function sarkaspip_insert_head($flux)
{
include_spip('inc/config');
// Recuperation des parametres cfg sur le menu des rubriques
$position = lire_config('sarkaspip_menus/position_rubriques', 1);
$modele = lire_config('sarkaspip_menus/modele_rubriques', 1);
// Si le menu des rubriques est deroulant dans le bandeau
if ($position == 5 && $modele == 1) {
$flux .= '<script src="' . url_absolue(find_in_path('scripts/menu_deroulant_horizontal.js')) . '" type="text/javascript"></script>';
}
// Si le menu des rubriques est deroulant dans la colonne navigation
if ($position == 1 && $modele == 1) {
$flux .= '<script src="' . url_absolue(find_in_path('scripts/menu_deroulant_vertical.js')) . '" type="text/javascript"></script>';
}
// Insertion de la librairie jCarouselLite et des librairies connexes
$position = lire_config('sarkaspip_album/position_carrousel', 1);
$modele = lire_config('sarkaspip_album/modele_carrousel', 1);
if ($position != 0 && $modele == 1) {
$flux .= '<script src="' . url_absolue(find_in_path('scripts/jcarousellite_1.0.1.js')) . '" type="text/javascript"></script>';
$flux .= '<script src="' . url_absolue(find_in_path('scripts/jquery.mousewheel.js')) . '" type="text/javascript"></script>';
}
// Insertion de la librairie Innerfade pour la noisette des sites favoris
$position = lire_config('sarkaspip_noisettes/position_herbier', 0);
$modele = lire_config('sarkaspip_noisettes/liste_herbier', 2);
if ($position != 0 && $modele == 2) {
$flux .= '<script src="' . url_absolue(find_in_path('scripts/jquery.innerfade.js')) . '" type="text/javascript"></script>';
}
// Insertion de la librairie jquery.corner pour la noisette cfg_sarkaspip_coins
$coins_arrondis = lire_config('sarkaspip_coins/avec_arrondis', 0);
if ($coins_arrondis == 1) {
$flux .= '<script src="' . url_absolue(find_in_path('scripts/jquery.corner.js')) . '" type="text/javascript"></script>';
$flux .= '<script src="' . generer_url_public('sarkaspip_coins.js') . '" type="text/javascript"></script>';
}
return $flux;
}
示例2: formulaires_configurer_preferences_charger
function formulaires_configurer_preferences_charger()
{
// travailler sur des meta fraiches
include_spip('inc/meta');
lire_metas();
$valeurs = array();
$valeurs['display_navigation'] = isset($GLOBALS['visiteur_session']['prefs']['display_navigation']) ? $GLOBALS['visiteur_session']['prefs']['display_navigation'] : 'navigation_avec_icones';
$valeurs['display_outils'] = isset($GLOBALS['visiteur_session']['prefs']['display_outils']) ? $GLOBALS['visiteur_session']['prefs']['display_outils'] : 'oui';
$valeurs['display'] = (isset($GLOBALS['visiteur_session']['prefs']['display']) and $GLOBALS['visiteur_session']['prefs']['display'] > 0) ? $GLOBALS['visiteur_session']['prefs']['display'] : 2;
$valeurs['couleur'] = (isset($GLOBALS['visiteur_session']['prefs']['couleur']) and $GLOBALS['visiteur_session']['prefs']['couleur'] > 0) ? $GLOBALS['visiteur_session']['prefs']['couleur'] : 1;
$valeurs['spip_ecran'] = $GLOBALS['spip_ecran'];
// Ajout TinyMCE
//var_export($GLOBALS['visiteur_session']['prefs']);
$valeurs['tinymce'] = isset($GLOBALS['visiteur_session']['prefs']['tinymce']) ? $GLOBALS['visiteur_session']['prefs']['tinymce'] : 'oui';
// ! Ajout TinyMCE
$couleurs = charger_fonction('couleurs', 'inc');
$les_couleurs = $couleurs(array(), true);
$i = 1;
foreach ($les_couleurs as $k => $c) {
$valeurs['couleurs_url'][$i] = generer_url_public('style_prive.css', 'ltr=' . $GLOBALS['spip_lang_left'] . '&' . $couleurs($k));
$valeurs['couleurs'][$i++] = $c;
}
$valeurs['imessage'] = $GLOBALS['visiteur_session']['imessage'];
return $valeurs;
}
示例3: saisies_affichage_final
/**
* Ajoute les scripts JS et CSS de saisies dans l'espace public
*
* Ajoute également de quoi gérer le datepicker de la saisie date si
* celle-ci est utilisée dans la page.
*
* @param string $flux
* @return string
**/
function saisies_affichage_final($flux)
{
if (($p = strpos($flux, "<!--!inserer_saisie_editer-->")) !== false) {
// On insère la CSS devant le premier <link> trouvé
if (!($pi = strpos($flux, "<link")) and !($pi = strpos($flux, '</head'))) {
$pi = $p;
}
// si pas de <link inserer comme un goret entre 2 <li> de saisies
$css = generer_url_public('saisies.css');
$ins_css = "\n<link rel='stylesheet' href='{$css}' type='text/css' media='all' />\n";
if (strpos($flux, "saisie_date") !== false) {
//si on a une saisie de type date, on va charger les css de jquery_ui
include_spip("jqueryui_pipelines");
if (function_exists("jqueryui_dependances")) {
$ui_plugins = jqueryui_dependances(array("jquery.ui.datepicker"));
array_push($ui_plugins, "jquery.ui.theme");
foreach ($ui_plugins as $ui_plug) {
$ui_plug_css = find_in_path("css/{$ui_plug}.css");
if (strpos($flux, "css/{$ui_plug}.css") === false) {
// si pas déjà chargé
$ins_css .= "\n<link rel='stylesheet' href='{$ui_plug_css}' type='text/css' media='all' />\n";
}
}
}
}
$flux = substr_replace($flux, $ins_css, $pi, 0);
// On insère le JS à la fin du <head>
$pos_head = strpos($flux, '</head');
$js = find_in_path('javascript/saisies.js');
$ins_js = "\n<script type='text/javascript' src='{$js}'></script>\n";
$flux = substr_replace($flux, $ins_js, $pos_head, 0);
}
return $flux;
}
示例4: html_78503d8cb0bd66f2d97f4b9c0f7d329a
function html_78503d8cb0bd66f2d97f4b9c0f7d329a($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 = BOUCLE_art_agendahtml_78503d8cb0bd66f2d97f4b9c0f7d329a($Cache, $Pile, $doublons, $Numrows, $SP)) !== '' ? '
<div class="menu" id="menu-agenda">
<br />
<h3 class="structure">' . _T('public|spip|ecrire:icone_agenda') . '</h3>
<ul>
<li>
<a class="lien" href="' . interdire_scripts(generer_url_public('agenda', '')) . '" title="' . _T('public|spip|ecrire:icone_agenda') . '">' . _T('public|spip|ecrire:icone_agenda') . '</a>
<ul>
' . $t1 . '
</ul>
</li>
</ul>
</div>
' : '') . '
';
return analyse_resultat_skel('html_78503d8cb0bd66f2d97f4b9c0f7d329a', $Cache, $page, 'squelettes/inc/inc-menu-agenda.html');
}
示例5: message_oubli
function message_oubli($email, $param)
{
$r = formulaires_oubli_mail($email);
if (is_array($r) AND $r[1]) {
include_spip('inc/acces'); # pour creer_uniqid
include_spip('inc/texte'); # pour corriger_typo
$cookie = creer_uniqid();
sql_updateq("spip_auteurs", array("cookie_oubli" => $cookie), "id_auteur=" . $r[1]['id_auteur']);
$nom = textebrut(corriger_typo($GLOBALS['meta']["nom_site"]));
$envoyer_mail = charger_fonction('envoyer_mail','inc');
if ($envoyer_mail($email,
("[$nom] " . _T('pass_oubli_mot')),
_T('pass_mail_passcookie',
array('nom_site_spip' => $nom,
'adresse_site' => url_de_base(),
'sendcookie' => generer_url_public('spip_pass',
"$param=$cookie", true)))) )
return _T('pass_recevoir_mail');
else
return _T('pass_erreur_probleme_technique');
}
return _T('pass_erreur_probleme_technique');
}
示例6: action_logout_dist
function action_logout_dist()
{
global $visiteur_session, $ignore_auth_http;
$logout = _request('logout');
$url = securiser_redirect_action(_request('url'));
// cas particulier, logout dans l'espace public
if ($logout == 'public' and !$url) {
$url = url_de_base();
}
// seul le loge peut se deloger (mais id_auteur peut valoir 0 apres une restauration avortee)
if (is_numeric($visiteur_session['id_auteur'])) {
include_spip('inc/auth');
auth_trace($visiteur_session, '0000-00-00 00:00:00');
// le logout explicite vaut destruction de toutes les sessions
if (isset($_COOKIE['spip_session'])) {
$session = charger_fonction('session', 'inc');
$session($visiteur_session['id_auteur']);
spip_setcookie('spip_session', $_COOKIE['spip_session'], time() - 3600);
}
// si authentification http, et que la personne est loge,
// pour se deconnecter, il faut proposer un nouveau formulaire de connexion http
if (isset($_SERVER['PHP_AUTH_USER']) and !$ignore_auth_http and $GLOBALS['auth_can_disconnect']) {
ask_php_auth(_T('login_deconnexion_ok'), _T('login_verifiez_navigateur'), _T('login_retour_public'), "redirect=" . _DIR_RESTREINT_ABS, _T('login_test_navigateur'), true);
}
}
// Rediriger en contrant le cache navigateur (Safari3)
include_spip('inc/headers');
redirige_par_entete($url ? parametre_url($url, 'var_hasard', uniqid(rand()), '&') : generer_url_public('login'));
}
示例7: action_logout_dist
/**
* Se deloger
* Pour eviter les CSRF on passe par une etape de confirmation si pas de jeton,
* avec un autosubmit js pour ne pas compliquer l'experience utilisateur
*
* http://doc.spip.org/@action_logout_dist
*
*/
function action_logout_dist()
{
$logout =_request('logout');
$url = _request('url');
// seul le loge peut se deloger
// (mais id_auteur peut valoir 0 apres une restauration avortee)
if (isset($GLOBALS['visiteur_session']['id_auteur'])
AND is_numeric($GLOBALS['visiteur_session']['id_auteur'])
// des sessions anonymes avec id_auteur=0 existent,
// mais elles n'ont pas de statut : verifier ca aussi
AND isset($GLOBALS['visiteur_session']['statut'])) {
// relancer si pas de jeton
if (!action_logout_secu($logout, $url, _request('jeton'))) {
return; // page submit retournee
} elseif (isset($_COOKIE['spip_session'])) {
// le logout explicite vaut destruction de toutes les sessions
$session = charger_fonction('session', 'inc');
$session($GLOBALS['visiteur_session']['id_auteur']);
spip_setcookie('spip_session', $_COOKIE['spip_session'], time()-3600);
}
include_spip('inc/auth');
auth_trace($GLOBALS['visiteur_session'],'0000-00-00 00:00:00');
}
// Action terminee (ou non faite si pas les droits) on redirige.
// Cas particulier, logout dans l'espace public
$url = securiser_redirect_action($url);
if ($logout == 'public' AND !$url)
$url = url_de_base();
include_spip('inc/headers');
redirige_par_entete($url
// contrer le cache navigateur (Safari3)
? parametre_url($url, 'var_hasard', uniqid(rand()), '&')
: generer_url_public('login'));
}
示例8: vacarme_commande_header_prive
function vacarme_commande_header_prive($flux)
{
$js = find_in_path('prive/squelettes/javascript/vacarme_commande_prive.js');
$flux .= "\n<script type='text/javascript' src='{$js}'></script>\n";
$css = generer_url_public('prive/squelettes/css/vacarme_commande_prive.css');
$flux .= "\n<link rel='stylesheet' href='{$css}' type='text/css' media='all' />\n";
return $flux;
}
示例9: geol_recuperer_fond
/**
* Insertion dans le pipeline recuperer_fond (SPIP)
*
* Ajouter le script leaflet.geodiv.js au squelette du script de GIS
*
* @param array $flux
* @return array $flux
*/
function geol_recuperer_fond($flux)
{
if ($flux['args']['fond'] == 'javascript/gis.js') {
$flux['data']['texte'] .= "\n\n(function() { L.gisConfig.getInfowindowUrl = '" . url_absolue(generer_url_public('get_infowindow')) . "'; })();";
$flux['data']['texte'] .= "\n\n" . spip_file_get_contents(find_in_path('javascript/leaflet.geodiv.js'));
}
return $flux;
}
示例10: redirige_apres_retour_transaction
/**
* cette fonction doit etre appelee avec un $id_transaction securise
* jamais avec un $id_transaction qui provient directement de l'url sans verification
*
* @param <type> $mode
* @param <type> $acte_ou_abo
* @param <type> $succes
* @param <type> $id_transaction
*/
function redirige_apres_retour_transaction($mode, $acte_ou_abo, $succes, $id_transaction = 0)
{
$redirect = "";
// cas de paiement par un admin (cheque...)
// renvoyer dans le prive
$id_auteur = sql_getfetsel("id_auteur", "spip_transactions", "id_transaction=" . intval($id_transaction));
if (isset($GLOBALS['visiteur_session']['id_auteur']) and $GLOBALS['visiteur_session']['id_auteur'] != $id_auteur and include_spip("inc/autoriser") and autoriser("regler", "transaction", $id_transaction)) {
$redirect = generer_url_ecrire("transactions", "id_transaction=" . $id_transaction, true);
}
if (!$redirect) {
// par defaut on revient sur une des pages reglees en define()
// _BANK_ACTE_NORMAL_RETURN_URL
// _BANK_ACTE_CANCEL_RETURN_URL
// _BANK_ABO_NORMAL_RETURN_URL
// _BANK_ABO_CANCEL_RETURN_URL
$acte_ou_abo = $acte_ou_abo == 'acte' ? 'ACTE' : 'ABO';
$c = "_BANK_" . $acte_ou_abo . "_NORMAL_RETURN_URL";
if ($succes) {
if (defined($c)) {
$redirect = constant($c);
} else {
$redirect = generer_url_public('bank_retour_ok');
}
} else {
if (defined($c)) {
$redirect = constant($c);
} else {
$redirect = generer_url_public('bank_retour_echec');
}
}
if (strlen($redirect)) {
$redirect = parametre_url($redirect, 'type', $acte_ou_abo, '&');
if ($id_transaction = intval($id_transaction)) {
// attraper les infos sur la transaction
$row = sql_fetsel('*', 'spip_transactions', 'id_transaction=' . intval($id_transaction));
}
if ($row and $row['transaction_hash']) {
$redirect = parametre_url($redirect, 'id_transaction', $id_transaction, '&');
$redirect = parametre_url($redirect, 'transaction_hash', $row['transaction_hash'], '&');
}
}
}
// permettre de definir autrement l'url de redirection
$redirect = pipeline('bank_redirige_apres_retour_transaction', array('args' => array('mode' => $mode, 'type' => $acte_ou_abo, 'succes' => $succes, 'id_transaction' => $id_transaction, 'row' => $row), 'data' => $redirect));
#var_dump($redirect);die();
if (strlen($redirect)) {
include_spip('inc/headers');
redirige_par_entete($redirect);
exit;
}
//on ne devrait jamais arriver la !
if ($succes) {
echo "Transaction {$mode} {$acte_ou_abo} {$id_transaction} terminee OK";
} else {
echo "Transaction {$mode} {$acte_ou_abo} {$id_transaction} annulee";
}
die;
}
示例11: formulaires_recherche_charger_dist
/**
* chargement des valeurs par defaut des champs du #FORMULAIRE_RECHERCHE
* on peut lui passer l'url de destination en premier argument
* on peut passer une deuxième chaine qui va différencier le formulaire pour pouvoir en utiliser plusieurs sur une même page
*
* @param string $lien URL où amène le formulaire validé
* @param string $class Une class différenciant le formulaire
* @return array
*/
function formulaires_recherche_charger_dist($lien = '', $class = '')
{
if ($GLOBALS['spip_lang'] != $GLOBALS['meta']['langue_site']) {
$lang = $GLOBALS['spip_lang'];
} else {
$lang = '';
}
$action = $lien ? $lien : generer_url_public('recherche');
# action specifique, ne passe pas par Verifier, ni Traiter
return array('action' => $action, 'recherche' => _request('recherche'), 'lang' => $lang, 'class' => $class, '_id_champ' => $class ? substr(md5($action . $class), 0, 4) : 'recherche');
}
示例12: filtre_url_rss_forum
/**
* Un filtre qui, etant donne un #PARAMETRES_FORUM, retourne un URL de suivi rss
* dudit forum
* Attention applique a un #PARAMETRES_FORUM complexe (id_article=x&id_forum=y)
* ca retourne un url de suivi du thread y (que le thread existe ou non)
*
* @param $param
* @return string
*/
function filtre_url_rss_forum($param)
{
if (!preg_match(',.*(id_(\\w*?))=([0-9]+),S', $param, $regs)) {
return '';
}
list(, $k, $t, $v) = $regs;
if ($t == 'forum') {
$k = 'id_' . ($t = 'thread');
}
return generer_url_public("rss_forum_{$t}", array($k => $v));
}
示例13: action_renvoyer_facture_dist
function action_renvoyer_facture_dist()
{
$securiser_action = charger_fonction("securiser_action", "inc");
$id_facture = $securiser_action();
if ($row = sql_fetsel("details,id_auteur,no_comptable", "spip_factures", "id_facture=" . intval($id_facture)) and $notifications = charger_fonction('notifications', 'inc')) {
spip_log("Renvoi de la facture #{$id_facture} a auteur #" . $row['id_auteur'] . " par #" . $GLOBALS['visiteur_session']['id_auteur'], "facture" . _LOG_INFO_IMPORTANTE);
$options = array();
$options['url_facture'] = generer_url_public('facture', "id_facture={$id_facture}&hash=" . md5($row['details']), false, false);
$notifications("genererfacture", $id_facture, $options);
}
}
示例14: fourstepsforplanet_formulaire_traiter
/**
* Intervient au traitement du formulaire
*
* @pipeline formulaire_traiter
* @param array $flux Données du pipeline
* @return array Données du pipeline
*/
function fourstepsforplanet_formulaire_traiter($flux)
{
$form = $flux['args']['form'];
if ($form == 'joindre_document' and !_request('exec')) {
include_spip('action/zencoder_new_job');
$id_document = $flux['data']['ids'][0];
//Convert the video with zencoder
zencoder_new_job($id_document);
$flux['data']['redirect'] = '/' . generer_url_public("rubrique", "id_rubrique=5&id_document={$id_document}") . $flux['data']['redirect'];
}
return $flux;
}
示例15: vhplab_insert_head
function vhplab_insert_head($flux)
{
if (function_exists('lire_config')) {
$key = lire_config("vhplab/api_key");
$flux .= '<!-- VHPlab GIS plugin spip 3.0 ' . generer_url_public('vhplab.js') . ' -->
<link rel="stylesheet" href="' . _DIR_PLUGIN_VHPLAB . 'css/vhplab.css" type="text/css" />
<script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?key=' . $key . '&sensor=true"></script>
<script type="text/javascript" src="' . _DIR_PLUGIN_VHPLAB . 'js/vhplab.js"></script>
';
}
return $flux;
}