PageRenderTime 46ms CodeModel.GetById 19ms RepoModel.GetById 0ms app.codeStats 0ms

/lib/Moov3GSoapClient.class.php

https://bitbucket.org/mageecprojects/portail3g
PHP | 967 lines | 955 code | 10 blank | 2 comment | 45 complexity | 79dda62c64e761cf68fb1341769aaaf7 MD5 | raw file
Possible License(s): BSD-3-Clause
  1. <?php
  2. if(! defined('MOOV3G_SOAP_CLIENT_INCLUDED'))
  3. {
  4. define('MOOV3G_SOAP_CLIENT_INCLUDED', 1) ;
  5. if(! defined("ASMX_CLIENT_INCLUDED"))
  6. {
  7. include dirname(__FILE__)."/AsmxClient.class.php" ;
  8. }
  9. class Moov3GSoapClient extends AsmxClient
  10. {
  11. // var $Url = "http://10.177.18.39:99/Service3.svc?wsdl" ;
  12. var $Url = "http://localhost:64454/HTTPGateWays/Service3.svc?wsdl" ;
  13. public $SoapActionEnabled = 1 ;
  14. public $InterfaceName = "IService3" ;
  15. public $ParamNamePrefix = "" ;
  16. public $MethodNamePrefix = "tem" ;
  17. public $Xmlns = array("moov" => "http://schemas.datacontract.org/2004/07/Moov3G.Old.Message") ;
  18. function InscriptionMembre($msisdn, $email, $nom='', $prenoms='', $equipement='')
  19. {
  20. $node = $this->CallMethod(
  21. "InscriptionMembre",
  22. $this->RequestData(
  23. array(
  24. 'moov:Msisdn' => $msisdn,
  25. 'moov:Email' => $email,
  26. 'moov:Equipement' => $equipement,
  27. 'moov:Nom' => $nom,
  28. 'moov:Prenoms' => $prenoms
  29. )
  30. )
  31. ) ;
  32. return new Moov3GResponseInscriptionMembre($node) ;
  33. }
  34. function ActiveBundlePending($msisdn)
  35. {
  36. $node = $this->CallMethod(
  37. "ActiveBundlePending",
  38. $this->RequestData(
  39. array(
  40. 'moov:Msisdn' => $msisdn
  41. )
  42. )
  43. ) ;
  44. return new Moov3GResponseActiveBundlePending($node) ;
  45. }
  46. function ConfirmBundlePending($msisdn)
  47. {
  48. $node = $this->CallMethod(
  49. "ConfirmBundlePending",
  50. $this->RequestData(
  51. array(
  52. 'moov:Msisdn' => $msisdn
  53. )
  54. )
  55. ) ;
  56. return new Moov3GResponseActiveBundlePending($node) ;
  57. }
  58. function ActivatePAYG($msisdn)
  59. {
  60. $node = $this->CallMethod(
  61. "ActivatePAYG",
  62. $this->RequestData(
  63. array(
  64. 'moov:Msisdn' => $msisdn
  65. )
  66. )
  67. ) ;
  68. return new Moov3GResponseActivatePAYG($node) ;
  69. }
  70. function ConnexionMembre($msisdn, $password)
  71. {
  72. $node = $this->CallMethod(
  73. "ConnexionMembre",
  74. $this->RequestData(
  75. array('moov:Msisdn' => $msisdn, 'moov:Password' => $password)
  76. )
  77. ) ;
  78. return new Moov3GResponseConnexionMembre($node) ;
  79. }
  80. function ReinitialisePassword($msisdn, $email)
  81. {
  82. $node = $this->CallMethod(
  83. "ReinitialisePassword",
  84. $this->RequestData(
  85. array(
  86. 'moov:Msisdn' => $msisdn,
  87. 'moov:Email' => $email
  88. )
  89. )
  90. ) ;
  91. // print_r($node) ;
  92. return new Moov3GResponseReinitialisePassword($node) ;
  93. }
  94. function ChangePassword($msisdn, $ancienPassword, $nouvPassword)
  95. {
  96. $node = $this->CallMethod(
  97. "ChangePassword",
  98. $this->RequestData(
  99. array(
  100. 'moov:Msisdn' => $msisdn,
  101. 'moov:AncienPassword' => $ancienPassword,
  102. 'moov:NouveauPassword' => $nouvPassword,
  103. )
  104. )
  105. ) ;
  106. return new Moov3GResponseChangePassword($node) ;
  107. }
  108. function ListeOffre($idConnexion, $idEquipement="SMARTPHONE")
  109. {
  110. $node = $this->CallMethod(
  111. "ListeOffre",
  112. $this->RequestData(
  113. array(
  114. 'moov:IdConnexion' => $idConnexion,
  115. 'moov:IdEquipement' => $idEquipement,
  116. )
  117. )
  118. ) ;
  119. return new Moov3GResponseListeOffre($node) ;
  120. }
  121. function StatutAbonne($idConnexion)
  122. {
  123. $node = $this->CallMethod(
  124. "StatutAbonne",
  125. $this->RequestData(
  126. array('moov:IdConnexion' => $idConnexion)
  127. )
  128. ) ;
  129. return new Moov3GResponseStatutAbonne($node) ;
  130. }
  131. function InfoMembre($idConnexion)
  132. {
  133. $node = $this->CallMethod(
  134. "InfoMembre",
  135. $this->RequestData(
  136. array('moov:IdConnexion' => $idConnexion)
  137. )
  138. ) ;
  139. return new Moov3GResponseInfoMembre($node) ;
  140. }
  141. function ModifieMembre($idConnexion, $email, $nom='', $prenoms='', $equipement='')
  142. {
  143. $node = $this->CallMethod(
  144. "ModifieMembre",
  145. $this->RequestData(
  146. array(
  147. 'moov:IdConnexion' => $idConnexion,
  148. 'moov:Email' => $email,
  149. 'moov:Equipement' => $equipement,
  150. 'moov:Nom' => $nom,
  151. 'moov:Prenoms' => $prenoms
  152. )
  153. )
  154. ) ;
  155. return new Moov3GResponseModifieMembre($node) ;
  156. }
  157. function SouscritAbonne($idConnexion, $idForfait, $beneficiaire="", $change=false)
  158. {
  159. $node = $this->CallMethod(
  160. "SouscritAbonne",
  161. $this->RequestData(
  162. array(
  163. 'moov:IdConnexion' => $idConnexion,
  164. 'moov:Beneficiaire' => $beneficiaire,
  165. 'moov:Change' => ($change == true) ? "true" : "false",
  166. 'moov:IdForfait' => $idForfait,
  167. )
  168. )
  169. ) ;
  170. return new Moov3GResponseSouscritAbonne($node) ;
  171. }
  172. function HistoriqueSouscription($idConnexion, $debutRangee=1, $nombreElementsRangee=5)
  173. {
  174. $node = $this->CallMethod(
  175. "HistoriqueSouscription",
  176. $this->RequestData(
  177. array(
  178. 'moov:IdConnexion' => $idConnexion,
  179. 'moov:DebutRangee' => $debutRangee,
  180. 'moov:NombreElementsRangee' => $nombreElementsRangee,
  181. )
  182. )
  183. ) ;
  184. return new Moov3GResponseHistoriqueSouscription($node) ;
  185. }
  186. function ConsultationCompte($idConnexion)
  187. {
  188. $node = $this->CallMethod(
  189. "ConsultationCompte",
  190. $this->RequestData(
  191. array(
  192. 'moov:IdConnexion' => $idConnexion
  193. )
  194. )
  195. ) ;
  196. return new Moov3GResponseConsultationCompte($node) ;
  197. }
  198. function RechargementCompte($idConnexion, $codeVoucher)
  199. {
  200. $node = $this->CallMethod(
  201. "RechargementCompte",
  202. $this->RequestData(
  203. array(
  204. 'moov:IdConnexion' => $idConnexion,
  205. 'moov:Code' => $codeVoucher,
  206. )
  207. )
  208. ) ;
  209. return new Moov3GResponseRechargementCompte($node) ;
  210. }
  211. function StopSouscription($idConnexion)
  212. {
  213. $node = $this->CallMethod(
  214. "StopSouscription",
  215. $this->RequestData(
  216. array(
  217. 'moov:IdConnexion' => $idConnexion,
  218. )
  219. )
  220. ) ;
  221. return new Moov3GResponseStopSouscription($node) ;
  222. }
  223. function DeconnexionMembre($idConnexion)
  224. {
  225. $node = $this->CallMethod(
  226. "DeconnexionMembre",
  227. $this->RequestData(
  228. array('moov:IdConnexion' => $idConnexion)
  229. )
  230. ) ;
  231. return new Moov3GResponseDeconnexionMembre($node) ;
  232. }
  233. function ExtractMethodXmlResponse($methodName, & $responseNode)
  234. {
  235. if(empty($responseNode))
  236. return false ;
  237. if(
  238. ! isset($responseNode[0]["child"])
  239. || ! isset($responseNode[0]["child"][0])
  240. || $responseNode[0]["child"][0]["name"] != "S:BODY"
  241. || ! isset($responseNode[0]["child"][0]["child"])
  242. || ! isset($responseNode[0]["child"][0]["child"][0])
  243. || $responseNode[0]["child"][0]["child"][0]["name"] != strtoupper($methodName)."RESPONSE"
  244. || ! isset($responseNode[0]["child"][0]["child"][0]["child"])
  245. || ! isset($responseNode[0]["child"][0]["child"][0]["child"][0])
  246. || $responseNode[0]["child"][0]["child"][0]["child"][0]["name"] != strtoupper($methodName)."RESULT"
  247. )
  248. return false ;
  249. $result = array() ;
  250. if(isset($responseNode[0]["child"][0]["child"][0]["child"][0]["child"]))
  251. {
  252. $result = $responseNode[0]["child"][0]["child"][0]["child"][0] ;
  253. }
  254. return $result ;
  255. }
  256. function RequestData($params=array())
  257. {
  258. $data["tem:request"] = array() ;
  259. foreach($params as $name => $value)
  260. {
  261. $data["tem:request"][$name] = $value ;
  262. }
  263. return $data ;
  264. }
  265. }
  266. class Moov3GSoapLocalClient extends Moov3GSoapClient
  267. {
  268. var $Url = "http://10.177.18.39:99/Service3.svc?wsdl" ;
  269. }
  270. class Moov3GSoapWebsiteClient extends Moov3GSoapClient
  271. {
  272. var $Url = "http://213.136.123.141:99/Service3.svc?wsdl" ;
  273. }
  274. class Moov3GResponseBase
  275. {
  276. public $AutoImportNode = true ;
  277. public $ImportableAttrs = array() ;
  278. public $MessageErreur = "" ;
  279. public $Succes = "0" ;
  280. public $LastConfigNode = null ;
  281. public function __construct($nodeTemp=array())
  282. {
  283. if($this->AutoImportNode)
  284. {
  285. $this->ImportConfigFromNode($nodeTemp) ;
  286. }
  287. }
  288. function ImportConfigFromNode(&$configNode)
  289. {
  290. $this->LastConfigNode = $configNode ;
  291. if(isset($configNode["attrs"]))
  292. {
  293. foreach($configNode["attrs"] as $name => $value)
  294. {
  295. if(in_array($name, $this->ImportableAttrs))
  296. {
  297. $attrNode = array(
  298. "name" => $name,
  299. "content" => $value,
  300. "child" => array()
  301. ) ;
  302. $this->ImportConfigMemberFromNode($attrNode) ;
  303. }
  304. else
  305. {
  306. $this->ImportConfigMemberFromKey($name, $value) ;
  307. }
  308. }
  309. }
  310. if(isset($configNode["child"]))
  311. {
  312. for($i=0; $i<count($configNode["child"]); $i++)
  313. {
  314. $this->ImportConfigMemberFromNode($configNode["child"][$i]) ;
  315. }
  316. }
  317. $this->UpdateConfigAfterImport() ;
  318. }
  319. function ImportConfigMemberFromKey($name, $value)
  320. {
  321. return false ;
  322. }
  323. function ImportConfigMemberFromNode(&$node)
  324. {
  325. $importSuccess = true ;
  326. $nodeContent = (isset($node["content"])) ? $node["content"] : "" ;
  327. switch($node["name"])
  328. {
  329. case "A:MESSAGEERREUR" :
  330. {
  331. $this->MessageErreur = $nodeContent ;
  332. }
  333. break ;
  334. case "A:SUCCES" :
  335. {
  336. $this->Succes = ($nodeContent == "true") ? 1 : 0 ;
  337. }
  338. break ;
  339. default :
  340. {
  341. $importSuccess = false ;
  342. }
  343. break ;
  344. }
  345. return $importSuccess ;
  346. }
  347. function UpdateConfigAfterImport()
  348. {
  349. }
  350. }
  351. class Moov3GResponseMembreConnecte extends Moov3GResponseBase
  352. {
  353. public $Msisdn ;
  354. public $IdConnexion ;
  355. function ImportConfigMemberFromNode(& $node)
  356. {
  357. $importSuccess = parent::ImportConfigMemberFromNode($node) ;
  358. if($importSuccess)
  359. return true ;
  360. $importSuccess = true ;
  361. $nodeContent = (isset($node["content"])) ? $node["content"] : "" ;
  362. switch($node["name"])
  363. {
  364. case "A:MSISDN" :
  365. {
  366. $this->Msisdn = $nodeContent ;
  367. }
  368. break ;
  369. case "A:IDCONNEXION" :
  370. {
  371. $this->IdConnexion = $nodeContent ;
  372. }
  373. break ;
  374. default :
  375. {
  376. $importSuccess = false ;
  377. }
  378. break ;
  379. }
  380. return $importSuccess ;
  381. }
  382. }
  383. class Moov3GResponseMembreDeconnecte extends Moov3GResponseBase
  384. {
  385. public $Msisdn ;
  386. function ImportConfigMemberFromNode(& $node)
  387. {
  388. $importSuccess = parent::ImportConfigMemberFromNode($node) ;
  389. if($importSuccess)
  390. return true ;
  391. $importSuccess = true ;
  392. $nodeContent = (isset($node["content"])) ? $node["content"] : "" ;
  393. switch($node["name"])
  394. {
  395. case "A:MSISDN" :
  396. {
  397. $this->Msisdn = $nodeContent ;
  398. }
  399. break ;
  400. default :
  401. {
  402. $importSuccess = false ;
  403. }
  404. break ;
  405. }
  406. return $importSuccess ;
  407. }
  408. }
  409. class Moov3GResponseInscriptionMembre extends Moov3GResponseMembreDeconnecte
  410. {
  411. public $Password = "" ;
  412. function ImportConfigMemberFromNode(& $node)
  413. {
  414. $importSuccess = parent::ImportConfigMemberFromNode($node) ;
  415. if($importSuccess)
  416. return true ;
  417. $importSuccess = true ;
  418. $nodeContent = (isset($node["content"])) ? $node["content"] : "" ;
  419. switch($node["name"])
  420. {
  421. case "A:PASSWORD" :
  422. {
  423. $this->Password = $nodeContent ;
  424. }
  425. break ;
  426. default :
  427. {
  428. $importSuccess = false ;
  429. }
  430. break ;
  431. }
  432. return $importSuccess ;
  433. }
  434. }
  435. class Moov3GResponseDeconnexionMembre extends Moov3GResponseMembreDeconnecte
  436. {
  437. }
  438. class Moov3GResponseChangePassword extends Moov3GResponseBase
  439. {
  440. function ImportConfigMemberFromNode(& $node)
  441. {
  442. $importSuccess = parent::ImportConfigMemberFromNode($node) ;
  443. if($importSuccess)
  444. return true ;
  445. $importSuccess = true ;
  446. $nodeContent = (isset($node["content"])) ? $node["content"] : "" ;
  447. switch($node["name"])
  448. {
  449. default :
  450. {
  451. $importSuccess = false ;
  452. }
  453. break ;
  454. }
  455. return $importSuccess ;
  456. }
  457. }
  458. class Moov3GResponseReinitialisePassword extends Moov3GResponseBase
  459. {
  460. public $Password = "" ;
  461. function ImportConfigMemberFromNode(& $node)
  462. {
  463. $importSuccess = parent::ImportConfigMemberFromNode($node) ;
  464. if($importSuccess)
  465. return true ;
  466. $importSuccess = true ;
  467. $nodeContent = (isset($node["content"])) ? $node["content"] : "" ;
  468. switch($node["name"])
  469. {
  470. case "A:PASSWORD" :
  471. {
  472. $this->Password = $nodeContent ;
  473. }
  474. break ;
  475. default :
  476. {
  477. $importSuccess = false ;
  478. }
  479. break ;
  480. }
  481. return $importSuccess ;
  482. }
  483. }
  484. class Moov3GResponseConnexionMembre extends Moov3GResponseMembreDeconnecte
  485. {
  486. public $IdConnexion = "" ;
  487. function ImportConfigMemberFromNode(& $node)
  488. {
  489. $importSuccess = parent::ImportConfigMemberFromNode($node) ;
  490. if($importSuccess)
  491. return true ;
  492. $importSuccess = true ;
  493. $nodeContent = (isset($node["content"])) ? $node["content"] : "" ;
  494. switch($node["name"])
  495. {
  496. case "A:IDCONNEXION" :
  497. {
  498. $this->IdConnexion = $nodeContent ;
  499. }
  500. break ;
  501. default :
  502. {
  503. $importSuccess = false ;
  504. }
  505. break ;
  506. }
  507. return $importSuccess ;
  508. }
  509. }
  510. class Moov3GResponseListeOffre extends Moov3GResponseMembreConnecte
  511. {
  512. public $TotalElements = "" ;
  513. public $Elements = array() ;
  514. function ImportConfigMemberFromNode(& $node)
  515. {
  516. $importSuccess = parent::ImportConfigMemberFromNode($node) ;
  517. if($importSuccess)
  518. return true ;
  519. $importSuccess = true ;
  520. $nodeContent = (isset($node["content"])) ? $node["content"] : "" ;
  521. switch($node["name"])
  522. {
  523. case "A:MSISDN" :
  524. {
  525. $this->IdConnexion = $nodeContent ;
  526. }
  527. break ;
  528. case "A:TOTALELEMENTS" :
  529. {
  530. $this->TotalElements = $nodeContent ;
  531. }
  532. break ;
  533. case "A:ELEMENTS" :
  534. {
  535. $this->Elements = array() ;
  536. if(isset($node["child"]))
  537. {
  538. for($j=0; $j<count($node["child"]); $j++)
  539. {
  540. $offre = new Moov3GOffre($node["child"][$j]) ;
  541. $this->Elements[] = $offre ;
  542. }
  543. }
  544. }
  545. break ;
  546. default :
  547. {
  548. $importSuccess = false ;
  549. }
  550. break ;
  551. }
  552. return $importSuccess ;
  553. }
  554. }
  555. class Moov3GResponseStatutAbonne extends Moov3GResponseMembreConnecte
  556. {
  557. public $ForfaitEnCours = 0 ;
  558. public $NomForfait ;
  559. public $VolumeConsomme = 0;
  560. public $VolumeTotal = 0 ;
  561. public $DateExpiration = "";
  562. public $Profil = "";
  563. function ImportConfigMemberFromNode(& $node)
  564. {
  565. $importSuccess = parent::ImportConfigMemberFromNode($node) ;
  566. if($importSuccess)
  567. return true ;
  568. $importSuccess = true ;
  569. $nodeContent = (isset($node["content"])) ? $node["content"] : "" ;
  570. switch($node["name"])
  571. {
  572. case "A:NOMFORFAIT" :
  573. {
  574. $this->NomForfait = $nodeContent ;
  575. }
  576. break ;
  577. case "A:PROFIL" :
  578. {
  579. $this->Profil = $nodeContent ;
  580. }
  581. break ;
  582. case "A:FORFAITENCOURS" :
  583. {
  584. $this->ForfaitEnCours = ($nodeContent == "true") ? 1 : 0 ;
  585. }
  586. break ;
  587. case "A:VOLUMECONSOMME" :
  588. {
  589. $this->VolumeConsomme = intval($nodeContent) ;
  590. }
  591. break ;
  592. case "A:VOLUMETOTAL" :
  593. {
  594. $this->VolumeTotal = intval($nodeContent) ;
  595. }
  596. break ;
  597. case "A:DATEEXPIRATION" :
  598. {
  599. $this->DateExpiration = $nodeContent ;
  600. }
  601. break ;
  602. default :
  603. {
  604. $importSuccess = false ;
  605. }
  606. break ;
  607. }
  608. return $importSuccess ;
  609. }
  610. }
  611. class Moov3GResponseInfoMembre extends Moov3GResponseMembreConnecte
  612. {
  613. public $Email = "" ;
  614. public $Nom = "";
  615. public $Prenoms = "";
  616. public $Equipement = "";
  617. function ImportConfigMemberFromNode(& $node)
  618. {
  619. $importSuccess = parent::ImportConfigMemberFromNode($node) ;
  620. if($importSuccess)
  621. return true ;
  622. $importSuccess = true ;
  623. $nodeContent = (isset($node["content"])) ? $node["content"] : "" ;
  624. switch($node["name"])
  625. {
  626. case "A:EMAIL" :
  627. {
  628. $this->Email = $nodeContent ;
  629. }
  630. break ;
  631. case "A:NOM" :
  632. {
  633. $this->Nom = $nodeContent ;
  634. }
  635. break ;
  636. case "A:PRENOMS" :
  637. {
  638. $this->Prenoms = $nodeContent ;
  639. }
  640. break ;
  641. case "A:EQUIPEMENT" :
  642. {
  643. $this->Equipement = $nodeContent ;
  644. }
  645. break ;
  646. default :
  647. {
  648. $importSuccess = false ;
  649. }
  650. break ;
  651. }
  652. return $importSuccess ;
  653. }
  654. }
  655. class Moov3GResponseSouscritAbonne extends Moov3GResponseMembreConnecte
  656. {
  657. public $MessageSucces = "" ;
  658. function ImportConfigMemberFromNode(& $node)
  659. {
  660. $importSuccess = parent::ImportConfigMemberFromNode($node) ;
  661. if($importSuccess)
  662. return true ;
  663. $importSuccess = true ;
  664. $nodeContent = (isset($node["content"])) ? $node["content"] : "" ;
  665. switch($node["name"])
  666. {
  667. case "A:MESSAGESUCCES" :
  668. {
  669. $this->MessageSucces = $nodeContent ;
  670. }
  671. break ;
  672. default :
  673. {
  674. $importSuccess = false ;
  675. }
  676. break ;
  677. }
  678. return $importSuccess ;
  679. }
  680. }
  681. class Moov3GResponseActiveBundlePending extends Moov3GResponseBase
  682. {
  683. public $Msisdn = "" ;
  684. public $Statut = false ;
  685. public $CodeReponse = -11 ;
  686. public $MessageSucces = "" ;
  687. public $MessageErreur = "" ;
  688. function ImportConfigMemberFromNode(& $node)
  689. {
  690. $importSuccess = parent::ImportConfigMemberFromNode($node) ;
  691. if($importSuccess)
  692. return true ;
  693. $importSuccess = true ;
  694. $nodeContent = (isset($node["content"])) ? $node["content"] : "" ;
  695. switch($node["name"])
  696. {
  697. case "A:MESSAGESUCCES" :
  698. {
  699. $this->MessageSucces = $nodeContent ;
  700. }
  701. break ;
  702. case "A:MESSAGEERREUR" :
  703. {
  704. $this->MessageErreur = $nodeContent ;
  705. }
  706. break ;
  707. case "A:CODEREPONSE" :
  708. {
  709. $this->CodeReponse = $nodeContent ;
  710. }
  711. break ;
  712. case "A:MSISDN" :
  713. {
  714. $this->Msisdn = $nodeContent ;
  715. }
  716. break ;
  717. case "A:STATUT" :
  718. {
  719. $this->Statut = $nodeContent ;
  720. }
  721. break ;
  722. default :
  723. {
  724. $importSuccess = false ;
  725. }
  726. break ;
  727. }
  728. return $importSuccess ;
  729. }
  730. }
  731. class Moov3GResponseActivatePAYG extends Moov3GResponseActiveBundlePending
  732. {
  733. public $MessageSucces = "" ;
  734. function ImportConfigMemberFromNode(& $node)
  735. {
  736. $importSuccess = parent::ImportConfigMemberFromNode($node) ;
  737. if($importSuccess)
  738. return true ;
  739. $importSuccess = true ;
  740. $nodeContent = (isset($node["content"])) ? $node["content"] : "" ;
  741. switch($node["name"])
  742. {
  743. default :
  744. {
  745. $importSuccess = false ;
  746. }
  747. break ;
  748. }
  749. return $importSuccess ;
  750. }
  751. }
  752. class Moov3GResponseHistoriqueSouscription extends Moov3GResponseMembreConnecte
  753. {
  754. public $DebutElement = 0 ;
  755. public $TotalElements = 0 ;
  756. public $TotalRangees = 0 ;
  757. public $Elements = array() ;
  758. function ImportConfigMemberFromNode(& $node)
  759. {
  760. $importSuccess = parent::ImportConfigMemberFromNode($node) ;
  761. if($importSuccess)
  762. return true ;
  763. $importSuccess = true ;
  764. $nodeContent = (isset($node["content"])) ? $node["content"] : "" ;
  765. switch($node["name"])
  766. {
  767. case "A:TOTALELEMENTS" :
  768. {
  769. $this->TotalElements = $nodeContent ;
  770. }
  771. break ;
  772. case "A:DEBUTELEMENT" :
  773. {
  774. $this->DebutElement = $nodeContent ;
  775. }
  776. break ;
  777. case "A:TOTALRANGEES" :
  778. {
  779. $this->TotalRangees = $nodeContent ;
  780. }
  781. break ;
  782. case "A:ELEMENTS" :
  783. {
  784. $this->Elements = array() ;
  785. if(isset($node["child"]))
  786. {
  787. for($j=0; $j<count($node["child"]); $j++)
  788. {
  789. $offre = new Moov3GSouscription($node["child"][$j]) ;
  790. $this->Elements[] = $offre ;
  791. }
  792. }
  793. }
  794. break ;
  795. default :
  796. {
  797. $importSuccess = false ;
  798. }
  799. break ;
  800. }
  801. return $importSuccess ;
  802. }
  803. }
  804. class Moov3GResponseRechargementCompte extends Moov3GResponseMembreConnecte
  805. {
  806. public $MessageSucces = "" ;
  807. function ImportConfigMemberFromNode(& $node)
  808. {
  809. $importSuccess = parent::ImportConfigMemberFromNode($node) ;
  810. if($importSuccess)
  811. return true ;
  812. $importSuccess = true ;
  813. $nodeContent = (isset($node["content"])) ? $node["content"] : "" ;
  814. switch($node["name"])
  815. {
  816. case "A:MESSAGESUCCES" :
  817. {
  818. $this->MessageSucces = preg_replace('/^RESP\:[^\:]+\:/', '', $nodeContent) ;
  819. }
  820. break ;
  821. default :
  822. {
  823. $importSuccess = false ;
  824. }
  825. break ;
  826. }
  827. return $importSuccess ;
  828. }
  829. }
  830. class Moov3GResponseStopSouscription extends Moov3GResponseRechargementCompte
  831. {
  832. }
  833. class Moov3GResponseModifieMembre extends Moov3GResponseMembreConnecte
  834. {
  835. }
  836. class Moov3GResponseConsultationCompte extends Moov3GResponseMembreConnecte
  837. {
  838. public $Montant = "" ;
  839. function ImportConfigMemberFromNode(& $node)
  840. {
  841. $importSuccess = parent::ImportConfigMemberFromNode($node) ;
  842. if($importSuccess)
  843. return true ;
  844. $importSuccess = true ;
  845. $nodeContent = (isset($node["content"])) ? $node["content"] : "" ;
  846. switch($node["name"])
  847. {
  848. case "A:MONTANT" :
  849. {
  850. $this->Montant = intval($nodeContent) ;
  851. }
  852. break ;
  853. default :
  854. {
  855. $importSuccess = false ;
  856. }
  857. break ;
  858. }
  859. return $importSuccess ;
  860. }
  861. }
  862. class Moov3GOffre extends Moov3GResponseBase
  863. {
  864. public $Id ;
  865. public $Nom ;
  866. public $Montant = 0;
  867. public $TotalJours ;
  868. public $VolumeMax ;
  869. function ImportConfigMemberFromNode(& $node)
  870. {
  871. $importSuccess = parent::ImportConfigMemberFromNode($node) ;
  872. if($importSuccess)
  873. return true ;
  874. $importSuccess = true ;
  875. $nodeContent = (isset($node["content"])) ? $node["content"] : "" ;
  876. switch($node["name"])
  877. {
  878. case "B:ID" :
  879. {
  880. $this->Id = $nodeContent ;
  881. }
  882. break ;
  883. case "B:NOM" :
  884. {
  885. $this->Nom = $nodeContent ;
  886. }
  887. break ;
  888. case "B:MONTANT" :
  889. {
  890. $this->Montant = $nodeContent ;
  891. }
  892. break ;
  893. case "B:VOLUMEMAX" :
  894. {
  895. $this->VolumeMax = $nodeContent ;
  896. }
  897. break ;
  898. case "B:TOTALJOURS" :
  899. {
  900. $this->TotalJours = $nodeContent ;
  901. }
  902. break ;
  903. default :
  904. {
  905. $importSuccess = false ;
  906. }
  907. break ;
  908. }
  909. return $importSuccess ;
  910. }
  911. }
  912. class Moov3GSouscription extends Moov3GResponseBase
  913. {
  914. public $NomForfait ;
  915. public $Montant = 0 ;
  916. public $DateSouscription ;
  917. public $DateExpiration ;
  918. function ImportConfigMemberFromNode(& $node)
  919. {
  920. $importSuccess = parent::ImportConfigMemberFromNode($node) ;
  921. if($importSuccess)
  922. return true ;
  923. $importSuccess = true ;
  924. $nodeContent = (isset($node["content"])) ? $node["content"] : "" ;
  925. switch($node["name"])
  926. {
  927. case "B:NOMFORFAIT" :
  928. {
  929. $this->NomForfait = $nodeContent ;
  930. }
  931. break ;
  932. case "B:MONTANT" :
  933. {
  934. $this->Montant = $nodeContent ;
  935. }
  936. break ;
  937. case "B:DATESOUSCRIPTION" :
  938. {
  939. $this->DateSouscription = $nodeContent ;
  940. }
  941. break ;
  942. case "B:DATEEXPIRATION" :
  943. {
  944. $this->DateExpiration = $nodeContent ;
  945. }
  946. break ;
  947. default :
  948. {
  949. $importSuccess = false ;
  950. }
  951. break ;
  952. }
  953. return $importSuccess ;
  954. }
  955. }
  956. }
  957. ?>