Changeset 43733 in spip-zone
- Timestamp:
- Jan 21, 2011, 10:08:31 AM (10 years ago)
- Location:
- _plugins_/transaction
- Files:
-
- 3 added
- 1 deleted
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
_plugins_/transaction/paiement/cmcic/paiement_cmcic_confirmation.php
r43666 r43733 97 97 case "payetest": 98 98 99 sql_updateq('spip_formulaires_ reponses', array('statut_transaction' => 1), 'ref_transaction=' . sql_quote($CMCIC_bruteVars['reference']));99 sql_updateq('spip_formulaires_transactions', array('statut_transaction' => 1), 'ref_transaction=' . sql_quote($CMCIC_bruteVars['reference'])); 100 100 break; 101 101 102 102 case "paiement": 103 spip_updateq('spip_formulaires_ reponses', array('statut_transaction' => 1), 'ref_transaction=' . $CMCIC_bruteVars['reference']);103 spip_updateq('spip_formulaires_transactions', array('statut_transaction' => 1), 'ref_transaction=' . $CMCIC_bruteVars['reference']); 104 104 break; 105 105 } -
_plugins_/transaction/plugin.xml
r43332 r43733 9 9 <lien></lien> 10 10 <icon>images/transaction-64.png</icon> 11 12 11 <prefix>transaction</prefix> 13 14 <options>transaction_options.php</options> 15 <fonctions>inc/transaction.php</fonctions> 16 17 <pipeline> 18 <nom>insert_head</nom> 19 <inclure>transaction_pipelines.php</inclure> 20 </pipeline> 21 22 12 <install>base/transaction_upgrade.php</install> 13 <options></options> 14 <fonctions></fonctions> 15 <pipeline> 16 <nom>insert_head</nom> 17 <inclure>transaction_pipelines.php</inclure> 18 </pipeline> 19 <pipeline> 20 <nom>declarer_tables_interfaces</nom> 21 <inclure>base/transaction.php</inclure> 22 </pipeline> 23 <pipeline> 24 <nom>declarer_tables_principales</nom> 25 <inclure>base/transaction.php</inclure> 26 </pipeline> 23 27 24 28 <necessite id="SPIP" version="[2.1.0;]" /> -
_plugins_/transaction/traiter/paiement_cmcic.php
r43488 r43733 5 5 6 6 function traiter_paiement_cmcic_dist($args, $retours){ 7 include_spip('inc/formidable'); 8 include_spip('base/abstract_sql'); 9 7 10 $formulaire = $args['formulaire']; 8 11 $options = $args['options']; … … 59 62 $retours['message_ok'] .= "<span class='transaction_ok cmcic'>"._T('transaction:traiter_message_cmcic')."</span>"; 60 63 } 64 65 //enregistrement des résultats 66 $options = $args['options']; 67 $formulaire = $args['formulaire']; 68 $id_formulaire = intval($formulaire['id_formulaire']); 69 $saisies = unserialize($formulaire['saisies']); 70 $saisies = saisies_lister_par_nom($saisies); 61 71 62 //debut enregistrement 63 64 65 66 //fin enregistrement 72 // La personne a-t-elle un compte ? 73 global $auteur_session; 74 $id_auteur = $auteur_session ? intval($auteur_session['id_auteur']) : 0; 67 75 76 // On cherche le cookie et sinon on le crée 77 $nom_cookie = formidable_generer_nom_cookie($id_formulaire); 78 if (isset($_COOKIE[$nom_cookie])) 79 $cookie = $_COOKIE[$nom_cookie]; 80 else { 81 include_spip("inc/acces"); 82 $cookie = creer_uniqid(); 83 } 84 85 // On regarde si c'est une modif d'une réponse existante 86 $id_formulaires_reponse = intval(_request('deja_enregistre_'.$id_formulaire)); 87 88 // Si la moderation est a posteriori ou que la personne est un boss, on publie direct 89 if ($options['moderation'] == 'posteriori' or autoriser('instituer', 'formulaires_reponse', $id_formulaires_reponse, null, array('id_formulaire'=>$id_formulaire, 'nouveau_statut'=>'publie'))) 90 $statut='publie'; 91 else 92 $statut = 'prop'; 93 94 // Si ce n'est pas une modif d'une réponse existante, on crée d'abord la réponse 95 if (!$id_formulaires_reponse){ 96 $id_formulaires_reponse = sql_insertq( 97 'spip_formulaires_reponses', 98 array( 99 'id_formulaire' => $id_formulaire, 100 'id_auteur' => $id_auteur, 101 'cookie' => $cookie, 102 'ip' => $GLOBALS['ip'], 103 'date' => 'NOW()', 104 'statut' => $statut 105 ) 106 ); 107 $id_formulaires_transactions = sql_insertq( 108 'spip_formulaires_transactions', 109 array( 110 'id_formulaires_reponse' => $id_formulaires_reponse, 111 'statut_transaction' => 0, 112 'ref_transaction' => $_SESSION['ref'] 113 ) 114 ); 115 // Si on a pas le droit de répondre plusieurs fois ou que les réponses seront modifiables, il faut poser un cookie 116 if (!$options['multiple'] or $options['modifiable']){ 117 include_spip("inc/cookie"); 118 // Expiration dans 30 jours 119 spip_setcookie($nom_cookie, $_COOKIE[$nom_cookie] = $cookie, time() + 30 * 24 * 3600); 120 } 121 } 122 123 // Si l'id n'a pas été créé correctement alors erreur 124 if (!($id_formulaires_reponse > 0)){ 125 $retours['message_erreur'] .= "\n<br/>"._T('formidable:traiter_enregistrement_erreur_base'); 126 } 127 // Sinon on continue à mettre à jour 128 else{ 129 $champs = array(); 130 $insertions = array(); 131 foreach($saisies as $nom => $saisie){ 132 // On ne prend que les champs qui ont effectivement été envoyés par le formulaire 133 if (($valeur = _request($nom)) !== null){ 134 $champs[] = $nom; 135 $insertions[] = array( 136 'id_formulaires_reponse' => $id_formulaires_reponse, 137 'nom' => $nom, 138 'valeur' => is_array($valeur) ? serialize($valeur) : $valeur 139 ); 140 } 141 } 142 143 // S'il y a bien des choses à modifier 144 if ($champs){ 145 // On supprime d'abord les champs 146 sql_delete( 147 'spip_formulaires_reponses_champs', 148 array( 149 'id_formulaires_reponse = '.$id_formulaires_reponse, 150 sql_in('nom', $champs) 151 ) 152 ); 153 154 // Puis on insère les nouvelles valeurs 155 sql_insertq_multi( 156 'spip_formulaires_reponses_champs', 157 $insertions 158 ); 159 } 160 } 161 //fin 68 162 return $retours; 69 163 }
Note: See TracChangeset
for help on using the changeset viewer.