本文整理汇总了PHP中pipeline函数的典型用法代码示例。如果您正苦于以下问题:PHP pipeline函数的具体用法?PHP pipeline怎么用?PHP pipeline使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了pipeline函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的PHP代码示例。
示例1: action_bank_enregistrer_modereglement_dist
/**
* @deprecated
* @param null|string $arg
*/
function action_bank_enregistrer_modereglement_dist($arg = null)
{
if (is_null($arg)) {
$securiser_action = charger_fonction('securiser_action', 'inc');
$arg = $securiser_action();
}
$arg = explode("-", $arg);
$id_transaction = intval(array_pop($arg));
$presta = implode("-", $arg);
if (isset($GLOBALS['meta']['bank_paiement']) and $config = unserialize($GLOBALS['meta']['bank_paiement'])) {
$prestas = is_array($config['presta']) ? $config['presta'] : array();
$prestas = array_filter($prestas);
if (is_array($config['presta_abo'])) {
$prestas = array_merge($prestas, array_filter($config['presta_abo']));
}
}
if ((isset($prestas[$presta]) and $prestas[$presta] or $presta == 'gratuit') and $id_transaction and $transaction = sql_fetsel('*', 'spip_transactions', 'id_transaction=' . intval($id_transaction))) {
if ($transaction['statut'] == 'commande') {
sql_updateq("spip_transactions", array('mode' => $presta, 'autorisation_id' => date('d/m/Y-H:i:s') . "/" . $GLOBALS['ip']), 'id_transaction=' . intval($id_transaction));
// trigger le regelement en attente
// cela permet de factoriser le code
$row = sql_fetsel('*', 'spip_transactions', 'id_transaction=' . intval($id_transaction));
pipeline('trig_bank_reglement_en_attente', array('args' => array('statut' => 'attente', 'mode' => $row['mode'], 'type' => $row['abo_uid'] ? 'abo' : 'acte', 'id_transaction' => $id_transaction, 'row' => $row), 'data' => ''));
$GLOBALS['redirect'] = _request('redirect');
$GLOBALS['redirect'] = parametre_url($GLOBALS['redirect'], "attente_mode", $presta, "&");
}
}
}
开发者ID:nursit,项目名称:bank,代码行数:32,代码来源:bank_enregistrer_modereglement.php
示例2: supprimer_lien_document
function supprimer_lien_document($id_document, $objet, $id_objet) {
if (!$id_document = intval($id_document))
return false;
// D'abord on ne supprime pas, on dissocie
sql_delete("spip_documents_liens",
$z = "id_objet=".intval($id_objet)." AND objet=".sql_quote($objet)." AND id_document=".$id_document);
// Si c'est une vignette, l'eliminer du document auquel elle appartient
sql_updateq("spip_documents", array('id_vignette' => 0), "id_vignette=".$id_document);
pipeline('post_edition',
array(
'args' => array(
'operation' => 'delier_document',
'table' => 'spip_documents',
'id_objet' => $id_document,
'objet' => $objet,
'id' => $id_objet
),
'data' => null
)
);
// On supprime ensuite s'il est orphelin
// (autorisation verifiee dans l'action)
$supprimer_document = charger_fonction('supprimer_document','action');
return $supprimer_document($id_document);
}
开发者ID:rhertzog,项目名称:lcs,代码行数:29,代码来源:documenter.php
示例3: insert_rubrique
function insert_rubrique($id_parent) {
$champs = array(
'titre' => _T('item_nouvelle_rubrique'),
'id_parent' => intval($id_parent),
'statut' => 'new');
// Envoyer aux plugins
$champs = pipeline('pre_insertion',
array(
'args' => array(
'table' => 'spip_rubriques',
),
'data' => $champs
)
);
$id_rubrique = sql_insertq("spip_rubriques", $champs);
pipeline('post_insertion',
array(
'args' => array(
'table' => 'spip_rubriques',
'id_objet' => $id_rubrique
),
'data' => $champs
)
);
propager_les_secteurs();
calculer_langues_rubriques();
return $id_rubrique;
}
开发者ID:rhertzog,项目名称:lcs,代码行数:30,代码来源:editer_rubrique.php
示例4: supprimer_lien_document
/**
* Supprimer un lien entre un document et un objet
*
* @param int $id_document
* @param string $objet
* @param int $id_objet
* @param bool $supprime
* si true, le document est supprime si plus lie a aucun objet
* @param bool $check
* si true, on verifie les documents references dans le texte de l'objet
* et on les associe si pas deja fait
* @return bool
*/
function supprimer_lien_document($id_document, $objet, $id_objet, $supprime = false, $check = false)
{
if (!($id_document = intval($id_document))) {
return false;
}
// D'abord on ne supprime pas, on dissocie
include_spip('action/editer_liens');
objet_dissocier(array('document' => $id_document), array($objet => $id_objet));
// Si c'est une vignette, l'eliminer du document auquel elle appartient
// cas tordu peu probable
sql_updateq("spip_documents", array('id_vignette' => 0), "id_vignette=" . $id_document);
// verifier son statut apres une suppression de lien
include_spip('action/editer_document');
document_instituer($id_document);
pipeline('post_edition', array('args' => array('operation' => 'delier_document', 'action' => 'delier_document', 'table' => 'spip_documents', 'id_objet' => $id_document, 'objet' => $objet, 'id' => $id_objet), 'data' => null));
if ($check) {
// si demande, on verifie que ses documents vus sont bien lies !
$spip_table_objet = table_objet_sql($objet);
$table_objet = table_objet($objet);
$id_table_objet = id_table_objet($objet, $serveur);
$champs = sql_fetsel('*', $spip_table_objet, addslashes($id_table_objet) . "=" . intval($id_objet));
$marquer_doublons_doc = charger_fonction('marquer_doublons_doc', 'inc');
$marquer_doublons_doc($champs, $id_objet, $objet, $id_table_objet, $table_objet, $spip_table_objet, '', $serveur);
}
// On supprime ensuite s'il est orphelin
// et si demande
// ici on ne bloque pas la suppression d'un document rattache a un autre
if ($supprime and !sql_countsel('spip_documents_liens', "objet!='document' AND id_document=" . $id_document)) {
$supprimer_document = charger_fonction('supprimer_document', 'action');
return $supprimer_document($id_document);
}
}
开发者ID:loorenzooo,项目名称:aslfc,代码行数:45,代码来源:dissocier_document.php
示例5: public_styliser_dist
/**
* Déterminer le squelette qui sera utilisé pour rendre la page ou le bloc
* à partir de `$fond` et du `$contetxe`
*
* Actuellement tous les squelettes se terminent par `.html`
* pour des raisons historiques, ce qui est trompeur
*
* @param string $fond
* @param array $contexte
* @param string $lang
* @param string $connect
* @return array
*/
function public_styliser_dist($fond, $contexte, $lang = '', $connect = '')
{
static $styliser_par_z;
// s'assurer que le fond est licite
// car il peut etre construit a partir d'une variable d'environnement
if (strpos($fond, "../") !== false or strncmp($fond, '/', 1) == 0) {
$fond = "404";
}
// Choisir entre $fond-dist.html, $fond=7.html, etc?
$id_rubrique = 0;
// Chercher le fond qui va servir de squelette
if ($r = quete_rubrique_fond($contexte)) {
list($id_rubrique, $lang) = $r;
}
// trouver un squelette du nom demande
// ne rien dire si on ne trouve pas,
// c'est l'appelant qui sait comment gerer la situation
// ou les plugins qui feront mieux dans le pipeline
$squelette = trouver_fond($fond, "", true);
$ext = $squelette['extension'];
$flux = array('args' => array('id_rubrique' => $id_rubrique, 'ext' => $ext, 'fond' => $fond, 'lang' => $lang, 'contexte' => $contexte, 'connect' => $connect), 'data' => $squelette['fond']);
if (test_espace_prive() or defined('_ZPIP')) {
if (!$styliser_par_z) {
$styliser_par_z = charger_fonction('styliser_par_z', 'public');
}
$flux = $styliser_par_z($flux);
}
$flux = styliser_par_objets($flux);
// pipeline styliser
$squelette = pipeline('styliser', $flux);
return array($squelette, $ext, $ext, "{$squelette}.{$ext}");
}
开发者ID:xablen,项目名称:Semaine14_SPIP_test,代码行数:45,代码来源:styliser.php
示例6: definir_barre_boutons
/**
* definir la liste des boutons du haut et de ses sous-menus
* On defini les boutons a metrtre selon les droits de l'utilisateur
* puis on balance le tout au pipeline "ajouter_menus" pour que des plugins
* puissent y mettre leur grain de sel
*
* @param array $contexte
* @param bool $icones // rechercher les icones
* @param bool $autorise // ne renvoyer que les boutons autorises
* @return array
*/
function definir_barre_boutons($contexte = array(), $icones = true, $autorise = true)
{
include_spip('inc/autoriser');
$boutons_admin = array();
// les boutons du core, issus de prive/navigation.xml
$liste_boutons = array();
// ajouter les boutons issus des plugin via plugin.xml
if (function_exists('boutons_plugins') and is_array($liste_boutons_plugins = boutons_plugins())) {
$liste_boutons =& $liste_boutons_plugins;
}
foreach ($liste_boutons as $id => $infos) {
$parent = "";
// les boutons principaux ne sont pas soumis a autorisation
if (!isset($infos['parent']) or !($parent = $infos['parent']) or !$autorise or autoriser('menu', "_{$id}", 0, NULL, array('contexte' => $contexte))) {
if ($parent and $parent = preg_replace(',^bando_,', 'menu_', $parent) and isset($boutons_admin[$parent])) {
if (!is_array($boutons_admin[$parent]->sousmenu)) {
$boutons_admin[$parent]->sousmenu = array();
}
$position = (isset($infos['position']) and strlen($infos['position'])) ? intval($infos['position']) : count($boutons_admin[$parent]->sousmenu);
if ($position < 0) {
$position = count($boutons_admin[$parent]->sousmenu) + 1 + $position;
}
$boutons_admin[$parent]->sousmenu = array_slice($boutons_admin[$parent]->sousmenu, 0, $position) + array($id => new Bouton(($icones and $infos['icone']) ? find_in_theme($infos['icone']) : '', $infos['titre'], (isset($infos['action']) and $infos['action']) ? $infos['action'] : null, (isset($infos['parametres']) and $infos['parametres']) ? $infos['parametres'] : null)) + array_slice($boutons_admin[$parent]->sousmenu, $position, 100);
}
if (!$parent and !in_array($id, array('forum', 'statistiques_visites'))) {
$position = (isset($infos['position']) and $infos['position']) ? $infos['position'] : count($boutons_admin);
$boutons_admin = array_slice($boutons_admin, 0, $position) + array($id => new Bouton(($icones and isset($infos['icone']) and $infos['icone']) ? find_in_theme($infos['icone']) : '', $infos['titre'], (isset($infos['action']) and $infos['action']) ? $infos['action'] : null, (isset($infos['parametres']) and $infos['parametres']) ? $infos['parametres'] : null)) + array_slice($boutons_admin, $position, 100);
}
}
}
return pipeline('ajouter_menus', $boutons_admin);
}
开发者ID:genma,项目名称:spip_ynh,代码行数:43,代码来源:bandeau.php
示例7: abos_preparer_echeance_dist
/**
* Fonction appelee suite a notification par le presta (paybox/payzen) de paiement automatique de l'echeance
* le presta fourni le numero d'abonne selon sa convention,
* et on doit creer une transaction correspondant au paiement attendu de l'echeance
*
* @param string $id
* numero d'abonnement : numero interne a l'implementation, ou uid fourni par le presta, prefixe par uid: dans ce cas
* @return bool|int
* false si on a pas pu renouveler
* id_transaction du renouvellement si reussi
*/
function abos_preparer_echeance_dist($id)
{
spip_log("abos/preparer_echeance id={$id}", "bank");
/*
if (strncmp($id,"uid:",4)==0){
$where = "abonne_uid=".sql_quote(substr($id,4));
}
else {
$where = "id_abonnement=".intval($id);
}
*/
// recuperer les infos en fonction de l'implementation des abonnements
$id_transaction = pipeline('bank_abos_preparer_echeance', array('args' => array('id' => $id), 'data' => false));
if ($id_transaction) {
return $id_transaction;
}
// DEPRECIE, pour compat ascendante
// sinon on essaye sur l'ancien pipeline
// recuperer les infos en fonction de l'implementation des abonnements
$id_transaction = pipeline('bank_abos_renouveler', array('args' => array('id' => $id), 'data' => false));
if ($id_transaction) {
return $id_transaction;
}
// sinon on essaye d'appeler l'ancien abos/renouveler
if ($renouveler = charger_fonction('renouveler', 'abos', true)) {
return $renouveler($id);
}
return false;
}
开发者ID:nursit,项目名称:bank,代码行数:40,代码来源:preparer_echeance.php
示例8: action_quete_calendrier_prive_dist
/**
* Fournir une liste d'"evenements" entre deux dates start et end
* au format json
* utilise pour l'affichage du calendrier prive et public
*
* @return void
*/
function action_quete_calendrier_prive_dist()
{
$securiser_action = charger_fonction('securiser_action', 'inc');
$securiser_action();
$start = _request('start');
$end = _request('end');
$quoi = _request('quoi');
include_spip('inc/quete_calendrier');
$evt = array();
// recuperer la liste des evenements au format ics
$start = date('Y-m-d H:i:s', $start);
$end = date('Y-m-d H:i:s', $end);
$limites = array(sql_quote($start), sql_quote($end));
// on fonction de quoi on récupère : tout (rv + publication) ou l'un ou l'autre.
$entier = $duree = array();
if (!$quoi or $quoi == 'rv') {
$duree = quete_calendrier_interval_rv(reset($limites), end($limites));
$evt = convert_fullcalendar_quete_calendrier_interval_rv($duree, $evt);
}
if (!$quoi or $quoi == 'publication') {
list($entier, ) = quete_calendrier_interval($limites);
$evt = convert_fullcalendar_quete_calendrier_interval($entier, $evt);
}
// permettre aux plugins d'afficher leurs evenements dans ce calendrier
$evt = pipeline('quete_calendrier_prive', array('args' => array('start' => $start, 'end' => $end, 'quoi' => $quoi), 'data' => $evt));
// format json
include_spip('inc/json');
echo json_encode($evt);
}
开发者ID:genma,项目名称:spip_ynh,代码行数:36,代码来源:quete_calendrier_prive.php
示例9: abos_decrire_echeance_dist
/**
* @param int $id_transaction
* @param bool $force_auto
* true : l'echeance sera forcement prelevee automatiquement
* false : on peut gerer le paiement echeance manuellement en renvoyant un montant nul
* @return array|bool
* montant : montant de l'echeance / si on renvoie 0 il n'y aura pas de paiement automatique mensuel, mais on recuperera les infos CB si possible (paybox) pour prendre en charge les paiements mensuels
* montant_init : montant de l'echeance initiale (si differente de l'echeance principale)
* int count_init : nombre d'echeances initiales (par defaut 0 si pas renseignee - autre valeur que 0 ou 1 supportee uniquement par PayZen/SystemPay)
* int count : nombre d'echeances (sans compter l(es) echeance(s) initiale(s) - 0 si infini/pas de fin prevue supportee uniquement par PayBox/PayZen/SystemPay)
* string freq : 'monthly' ou 'yearly' (tous les mois ou tous les 12 mois - yearly pas supporte par InternetPlus)
*
* string date_start : optionnel, date de debut d'abonnement Y-m-d H:i:s (support par SystemPay uniquement)
* string wha_oid : optionnel, numero d'offre d'abonnement chez WHA/Internet+
*
* false si pas d'abonnement qui correspond a cette transaction
*/
function abos_decrire_echeance_dist($id_transaction, $force_auto = true)
{
$desc = array('montant' => 0, 'montant_init' => 0, 'count_init' => 0, 'count' => 0, 'freq' => 'monthly', 'date_start' => '', 'wha_oid' => '');
// recuperer les infos en fonction de l'implementation des abonnements
$desc = pipeline('bank_abos_decrire_echeance', array('args' => array('id_transaction' => $id_transaction, 'force_auto' => $force_auto), 'data' => $desc));
return $desc;
}
开发者ID:nursit,项目名称:bank,代码行数:24,代码来源:decrire_echeance.php
示例10: formulaires_adhi3_recherche_charger_dist
/**
* Chargement des valeurs par defaut des champs du formulaire
*
* @param string $type_objet[facultatif] objet editorial spip
* @param int $id_objet[facultatif] identifiant de l'objet
* @param boolean $adh_i3_rech_ok si au moins 1 critere de recherche saisis.
*
*/
function formulaires_adhi3_recherche_charger_dist($type_objet, $id_objet)
{
// Recuperation des parametres transmis
$datas['type_objet'] = $type_objet;
$datas['id_objet'] = $id_objet;
// Recuperation des champs du formulaire
// ==> lies a adhclub :
$datas['id_saison'] = _request('id_saison');
$datas['techbase'] = _request('techbase');
$datas['encadrant'] = _request('encadrant');
$datas['niveau'] = _request('niveau');
$datas['niv_rel'] = _request('niv_rel');
// ==> lies a i3 :
$datas['ordre'] = _request('ordre');
$datas['desc'] = _request('desc');
$datas['case'] = _request('case');
$datas['valeur'] = _request('valeur');
$datas['exceptions'] = pipeline('i3_exceptions_des_champs_auteurs_elargis', array());
// Raz des criteres si demande affichage tous les adherents
if (_request('afficher_tous')) {
// ==> lies a adhclub :
set_request('id_saison', '');
set_request('techbase', '');
set_request('encadrant', '');
set_request('niveau', '');
set_request('niv_rel', '');
// ==> lies a i3 :
set_request('valeur', '');
set_request('case', '');
}
return $datas;
}
开发者ID:jean-remond,项目名称:adhclub,代码行数:40,代码来源:adhi3_recherche.php
示例11: exec_config_lang_dist
function exec_config_lang_dist()
{
if (!autoriser('configurer', 'lang')) {
include_spip('inc/minipres');
echo minipres();
} else {
$config = charger_fonction('config', 'inc');
$config();
pipeline('exec_init',array('args'=>array('exec'=>'config_lang'),'data'=>''));
$commencer_page = charger_fonction('commencer_page', 'inc');
echo $commencer_page(_T('titre_page_config_contenu'), "configuration", "langues");
echo debut_gauche('', true);
echo debut_droite('', true);
echo "<br /><div style='text-align: center'>",
gros_titre(_T('info_langues'), '', false),
'</div><br />',
barre_onglets("config_lang", "langues"),
'<br />';
$langue = charger_fonction('langue', 'configuration');
echo $langue();
$transcodeur = charger_fonction('transcodeur', 'configuration');
echo $transcodeur();
echo fin_gauche(), fin_page();
}
}
开发者ID:rhertzog,项目名称:lcs,代码行数:34,代码来源:config_lang.php
示例12: cextras_objets_valides
function cextras_objets_valides(){
$objets = array();
$objets_extensibles = pipeline("objets_extensibles", array(
'article' => _T('cextras:table_article'),
'auteur' => _T('cextras:table_auteur'),
'breve' => _T('cextras:table_breve'),
'groupes_mot' => _T('cextras:table_groupes_mot'),
'mot' => _T('cextras:table_mot'),
'rubrique' => _T('cextras:table_rubrique'),
'site' => _T('cextras:table_site')
));
ksort($objets_extensibles);
foreach ($objets_extensibles as $objet => $traduction) {
$objets[$objet] = array(
'table' => table_objet_sql($objet),
'type' => objet_type(table_objet($objet)),
'nom' => $traduction,
);
}
return $objets;
}
开发者ID:rhertzog,项目名称:lcs,代码行数:25,代码来源:cextras_gerer.php
示例13: inc_forum_insert_dist
/**
* Un parametre permet de forcer le statut (exemple: plugin antispam)
*
* http://code.spip.net/@inc_forum_insert_dist
*
* @param $objet
* @param $id_objet
* @param $id_forum
* en reponse a
* @param null $force_statut
* @return bool
*/
function inc_forum_insert_dist($objet, $id_objet, $id_forum, $force_statut = null)
{
if (!in_array($force_statut, array('privrac', 'privadm'))) {
if (!strlen($objet) or !intval($id_objet)) {
spip_log("Erreur insertion forum sur objet='{$objet}', id_objet={$id_objet}", 'forum.' . _LOG_ERREUR);
return 0;
}
}
spip_log("insertion de forum {$force_statut} sur {$objet} {$id_objet} (+{$id_forum})", 'forum');
include_spip('inc/filtres');
include_spip('inc/modifier');
include_spip('inc/session');
$champs = objet_info('forum', 'champs_editables');
$c = collecter_requests($champs, array());
$c['statut'] = 'off';
$c['objet'] = $objet;
$c['id_objet'] = $id_objet;
$c['auteur'] = sinon(session_get('nom'), session_get('session_nom'));
$c['email_auteur'] = sinon(session_get('email'), session_get('session_email'));
$c = pipeline('pre_edition', array('args' => array('table' => 'spip_forum', 'id_objet' => $id_forum, 'action' => 'instituer'), 'data' => forum_insert_statut($c, $force_statut)));
$id_reponse = forum_insert_base($c, $id_forum, $objet, $id_objet, $c['statut'], _request('ajouter_mot'));
if (!$id_reponse) {
spip_log("Echec insertion forum sur {$objet} {$id_objet} (+{$id_forum})", 'forum.' . _LOG_ERREUR);
} else {
spip_log("forum insere' {$id_reponse} sur {$objet} {$id_objet} (+{$id_forum})", 'forum');
}
return $id_reponse;
}
开发者ID:xablen,项目名称:Semaine14_SPIP_test,代码行数:40,代码来源:forum_insert.php
示例14: jqueryui_insert_head_css
/**
* Ajout des css de jQuery UI pour les pages publiques
*
* @param: $flux
* @return: $flux
*/
function jqueryui_insert_head_css($flux)
{
/**
* Doit on ne pas insérer les css (défini depuis un autre plugin) ?
*/
if (defined('_JQUERYUI_CSS_NON')) {
return $flux;
}
// Modules demandés par le pipeline jqueryui_plugins
is_array($jqueryui_plugins = pipeline('jqueryui_plugins', array())) || ($jqueryui_plugins = array());
// gestion des dépendances des modules demandés
is_array($jqueryui_plugins = jqueryui_dependances($jqueryui_plugins)) || ($jqueryui_plugins = array());
// ajouter le thème si nécessaire
if ($jqueryui_plugins and !in_array('jquery.ui.theme', $jqueryui_plugins)) {
$jqueryui_plugins[] = 'theme';
}
// les css correspondantes aux plugins
$styles = array('accordion', 'autocomplete', 'button', 'core', 'datepicker', 'dialog', 'draggable', 'menus', 'progressbar', 'resizable', 'selectable', 'selectmenu', 'slider', 'sortable', 'spinner', 'tabs', 'tooltip', 'theme');
// insérer les css nécessaires
foreach ($jqueryui_plugins as $plugin) {
if (in_array($plugin, $styles)) {
$flux .= "<link rel='stylesheet' type='text/css' media='all' href='" . find_in_path('css/ui/' . $plugin . '.css') . "' />\n";
}
}
return $flux;
}
开发者ID:xablen,项目名称:Semaine14_SPIP_test,代码行数:32,代码来源:jqueryui_pipelines.php
示例15: abos_resilier_dist
/**
* @param $id
* @param array $options
* bool immediat : pour forcer la resiliation immediatement, sans attendre la prochaine echeance de paiement
* string message : message stocke en base pour la resiliation
* bool notify_bank : lancer un appel au presta bancaire pour resilier aupres de lui les paiements auto
* @return bool
*/
function abos_resilier_dist($id, $options = array())
{
spip_log("abos/resilier id={$id}", "abos_resil");
/*
if (strncmp($id,"uid:",4)==0){
$where = "abonne_uid=".sql_quote(substr($id,4));
}
else {
$where = "id_abonnement=".intval($id);
}
*/
if (!isset($options['message'])) {
$options['message'] = '';
}
if (!isset($options['immediat'])) {
$options['immediat'] = false;
}
if (!isset($options['notify_bank'])) {
$options['notify_bank'] = true;
}
$args = array('id' => $id, 'message' => $options['message'], 'notify_bank' => $options['notify_bank']);
$now = date('Y-m-d H:i:s');
if ($options['immediat']) {
$args['statut'] = 'resilie';
$args['date_fin'] = $now;
$args['date_echeance'] = $now;
} else {
$args['date_fin'] = "date_echeance";
}
// appel du pipeline, a charge pour lui d'appeler la fonction
// abos_resilier_notify_bank($abonne_uid,$mode_paiement)
// et de mettre a jour les infos de statut/date de fin d'abonnement
$ok = pipeline('bank_abos_resilier', array('args' => $args, 'data' => true));
return $ok;
}
开发者ID:nursit,项目名称:bank,代码行数:43,代码来源:resilier.php
示例16: exec_admin_declarer_dist
function exec_admin_declarer_dist()
{
if (!autoriser('detruire')) {
include_spip('inc/minipres');
echo minipres();
} else {
$commencer_page = charger_fonction('commencer_page', 'inc');
echo $commencer_page(_T('titre_admin_tech'), "configuration", "base");
echo "\n<br /><br />";
echo gros_titre(_T('titre_admin_effacer'),'',false);
echo barre_onglets("administration", "declarer");
echo debut_gauche('',true);
echo debut_boite_info(true);
echo _T('info_gauche_admin_effacer');
echo fin_boite_info(true);
echo creer_colonne_droite('',true);
echo pipeline('affiche_droite',array('args'=>array('exec'=>'admin_effacer'),'data'=>''));
echo debut_droite('',true);
echo autres_bases();
echo pipeline('affiche_milieu',array('args'=>array('exec'=>'admin_effacer'),'data'=>''));
echo fin_gauche(), fin_page();
}
}
开发者ID:rhertzog,项目名称:lcs,代码行数:33,代码来源:admin_declarer.php
示例17: bank_rembourser_transaction_dist
/**
* Enregistrer le reglement effectif d'une transaction
* On peut passer ici 2 fois pour une meme transaction :
* - lors de la notification serveur a serveur
* - lors du retour de l'internaute par redirection depuis le presta bancaire
*
* @param int $id_transaction
* @param array $options
* string message
* array row_prec
* bool notifier
* @return bool
*/
function bank_rembourser_transaction_dist($id_transaction, $options = array())
{
$message = isset($options['message']) ? $options['message'] : "";
$notifier = isset($options['notifier']) ? $options['notifier'] : true;
if (!isset($options['row_prec'])) {
$options['row_prec'] = sql_fetsel("*", "spip_transactions", "id_transaction=" . intval($id_transaction));
}
$row_prec = $options['row_prec'];
// ne pas jouer 2 fois le traitement du remboursement
if (!$row_prec or $row_prec['statut'] !== 'ok') {
return false;
}
// et on le pose aussitot
sql_updateq('spip_transactions', array('statut' => 'rembourse'), "id_transaction=" . intval($id_transaction));
$notifier = ($notifier and $row_prec['statut'] != 'rembourse');
$message = trim($row_prec['message'] . "\n" . trim($message));
// ensuite un pipeline de traitement, notification etc...
$message = pipeline('bank_traiter_remboursement', array('args' => array('id_transaction' => $id_transaction, 'notifier' => $notifier, 'avant' => $row_prec, 'options' => $options), 'data' => $message));
sql_updateq("spip_transactions", array('message' => $message, 'finie' => 1), "id_transaction=" . intval($id_transaction));
// notifier aux admins avec un ticket caisse
if ($notifier) {
$bank_editer_ticket_admin = charger_fonction('bank_editer_ticket_admin', 'inc');
$bank_editer_ticket_admin($id_transaction, "REMBOURSEMENT Transaction");
}
return true;
}
开发者ID:nursit,项目名称:bank,代码行数:39,代码来源:rembourser_transaction.php
示例18: inc_bank_editer_ticket_admin_dist
/**
* Generer un ticket resume de la transaction
* pour les admins indiques dans la configuration
*
* @param int $id_transaction
* @param string $sujet
*/
function inc_bank_editer_ticket_admin_dist($id_transaction, $sujet = "Transaction OK")
{
// il faut avoir configure un ou des emails de notification
$c = unserialize($GLOBALS['meta']['bank_paiement']);
if (!isset($c['email_ticket_admin']) or !strlen($email = $c['email_ticket_admin'])) {
spip_log(var_export($GLOBALS['meta']['bank_paiement'], true), 'bank_ticket');
return;
}
$ticket = "";
if ($row = sql_fetsel("*", "spip_transactions", "id_transaction=" . intval($id_transaction))) {
$montant = $row['montant_regle'];
$ticket .= "<h2>Transaction {$id_transaction}</h2>\n<table border='1'>";
foreach ($row as $k => $v) {
$ticket .= "<tr><td>{$k}</td><td>{$v}</td></tr>";
}
$ticket .= "</table>";
}
// ensuite un pipeline pour editer le ticket
$ticket = pipeline('bank_editer_ticket_reglement', array('args' => array('id_transaction' => $id_transaction), 'data' => $ticket));
$ticket = "<html>{$ticket}</html>";
$header = "MIME-Version: 1.0\n" . "Content-Type: text/html; charset=" . $GLOBALS['meta']['charset'] . "\n" . "Content-Transfer-Encoding: 8bit\n";
$sujet = "{$sujet} #{$id_transaction} [" . affiche_monnaie($montant) . "]";
if (!isset($c['email_from_ticket_admin']) or !strlen($email_from = $c['email_from_ticket_admin'])) {
$url = parse_url($GLOBALS['meta']['adresse_site']);
$email_from = "reglements@" . ltrim($url['host'], 'w.');
}
$envoyer_mail = charger_fonction('envoyer_mail', 'inc');
$envoyer_mail($email, $sujet, $ticket, $email_from, $header);
}
开发者ID:nursit,项目名称:bank,代码行数:36,代码来源:bank_editer_ticket_admin.php
示例19: exec_403_dist
/**
* Un exec d'acces interdit
*
* @param string $message
*/
function exec_403_dist($message = '')
{
$exec = _request('exec');
$titre = "exec_{$exec}";
$navigation = "";
$extra = "";
if (!$message) {
$message = _L("Vous n'avez pas le droit d'accéder à la page <b>@exec@</b>.", array('exec' => _request('exec')));
}
$contenu = "<h1 class='grostitre'>" . _T('info_acces_interdit') . "</h1>" . $message;
if (_request('var_zajax')) {
include_spip('inc/actions');
ajax_retour($contenu);
} else {
include_spip('inc/presentation');
// alleger les inclusions avec un inc/presentation_mini
$commencer_page = charger_fonction('commencer_page', 'inc');
echo $commencer_page($titre);
echo debut_gauche("403_{$exec}", true);
echo recuperer_fond('prive/squelettes/navigation/dist', array());
echo pipeline('affiche_gauche', array('args' => array('exec' => '403', 'exec_erreur' => $exec), 'data' => ''));
echo creer_colonne_droite("403", true);
echo pipeline('affiche_droite', array('args' => array('exec' => '403', 'exec_erreur' => $exec), 'data' => ''));
echo debut_droite("403", true);
echo pipeline('affiche_milieu', array('args' => array('exec' => '403', 'exec_erreur' => $exec), 'data' => $contenu));
echo fin_gauche(), fin_page();
}
}
开发者ID:xablen,项目名称:Semaine14_SPIP_test,代码行数:33,代码来源:403.php
示例20: abos_activer_abonnement_dist
/**
* recuperer la transaction et son abonnement associe par id_transaction ou par abo_uid
* et verifier que c'est bien le bon
* noter dessus qu'on a eventuellement reussi le paiement,
* passer l'abonnement en etat actif si besoin, et mettre a jour la date de fin si validite fournie
*
* Attention, avec certains prestataires ou modes de paiement (SEPA), on va arriver ici parce que l'abonnement a bien
* ete cree, mais la premiere echeance n'est pas encore reglee (et ne le sera que dans 2 semaines)
* C'est a l'abonnement de voir si il s'active temporairement en periode d'essai en attendant le vrai paiement
* ou si il ne fait rien et attend le paiement de la premiere echeance
* Dans ce cas de figure, on reviendra a nouveau ici une seconde fois, quand la premiere echeance sera reellement reglee
*
*
* @param int $id_transaction
* @param string $abo_uid
* numero d'abonne chez le presta bancaire
* @param string $mode_paiement
* mode de paiement (presta bancaire)
* @param string $validite
* date de fin validite du moyen de paiement (expiration de la CB)
* ou "echeance" pour dire que l'abonnement s'arrete automatiquement a la prochaine echeance
* @param int $id_auteur
* @return bool|int
* false si pas reussi
*/
function abos_activer_abonnement_dist($id_transaction, $abo_uid, $mode_paiement, $validite = "", $id_auteur = 0)
{
$id_abonnement = 0;
spip_log("abos/activer_abonnement id_transaction={$id_transaction} abo_uid={$abo_uid} mode={$mode_paiement} validite={$validite}", "bank");
$id_abonnement = pipeline('bank_abos_activer_abonnement', array('args' => array('id_transaction' => $id_transaction, 'abo_uid' => $abo_uid, 'mode_paiement' => $mode_paiement, 'validite' => $validite, 'id_auteur' => $id_auteur), 'data' => $id_abonnement));
return $id_abonnement;
}
开发者ID:nursit,项目名称:bank,代码行数:32,代码来源:activer_abonnement.php
注:本文中的pipeline函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论