PageRenderTime 37ms CodeModel.GetById 9ms RepoModel.GetById 0ms app.codeStats 0ms

/examples/SoapTestPortal2.php

https://bitbucket.org/cviolette/sugarcrm
PHP | 105 lines | 54 code | 17 blank | 34 comment | 4 complexity | 1bdcaf7c930be3d430aeb1b20f090ad3 MD5 | raw file
Possible License(s): LGPL-2.1, MPL-2.0-no-copyleft-exception, BSD-3-Clause
  1. <?php
  2. if(!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');
  3. /*********************************************************************************
  4. * SugarCRM Community Edition is a customer relationship management program developed by
  5. * SugarCRM, Inc. Copyright (C) 2004-2012 SugarCRM Inc.
  6. *
  7. * This program is free software; you can redistribute it and/or modify it under
  8. * the terms of the GNU Affero General Public License version 3 as published by the
  9. * Free Software Foundation with the addition of the following permission added
  10. * to Section 15 as permitted in Section 7(a): FOR ANY PART OF THE COVERED WORK
  11. * IN WHICH THE COPYRIGHT IS OWNED BY SUGARCRM, SUGARCRM DISCLAIMS THE WARRANTY
  12. * OF NON INFRINGEMENT OF THIRD PARTY RIGHTS.
  13. *
  14. * This program is distributed in the hope that it will be useful, but WITHOUT
  15. * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
  16. * FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
  17. * details.
  18. *
  19. * You should have received a copy of the GNU Affero General Public License along with
  20. * this program; if not, see http://www.gnu.org/licenses or write to the Free
  21. * Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
  22. * 02110-1301 USA.
  23. *
  24. * You can contact SugarCRM, Inc. headquarters at 10050 North Wolfe Road,
  25. * SW2-130, Cupertino, CA 95014, USA. or at email address contact@sugarcrm.com.
  26. *
  27. * The interactive user interfaces in modified source and object code versions
  28. * of this program must display Appropriate Legal Notices, as required under
  29. * Section 5 of the GNU Affero General Public License version 3.
  30. *
  31. * In accordance with Section 7(b) of the GNU Affero General Public License version 3,
  32. * these Appropriate Legal Notices must retain the display of the "Powered by
  33. * SugarCRM" logo. If the display of the logo is not reasonably feasible for
  34. * technical reasons, the Appropriate Legal Notices must display the words
  35. * "Powered by SugarCRM".
  36. ********************************************************************************/
  37. $portal_name ='';
  38. $portal_password = '';
  39. $user_name ='lead';
  40. $user_password = 'lead';
  41. foreach($_POST as $name=>$value){
  42. $$name = $value;
  43. }
  44. echo <<<EOQ
  45. <form name='test' method='POST'>
  46. <table width ='800'><tr>
  47. <tr><th colspan='6'>Enter SugarCRM Portal User Information (to configure this login to SugarCRM as an admin and go the administration panel then select a user from user management)</th></tr>
  48. <td >PORTAL NAME:</td><td><input type='text' name='portal_name' value='$portal_name'></td><td>PORTAL PASSWORD:</td><td><input type='password' name='portal_password' value='$portal_password'></td>
  49. </tr>
  50. <tr><th colspan='6'>Use the name 'lead' and password 'lead' for portal lead generation</th></tr>
  51. <tr>
  52. <td>CONTACT NAME:</td><td><input type='text' name='user_name' value='$user_name'></td></td>
  53. </tr>
  54. <tr><td><input type='submit' value='Submit'></td></tr>
  55. </table>
  56. </form>
  57. EOQ;
  58. if(!empty($portal_name)){
  59. $portal_password = md5($portal_password);
  60. require_once('include/nusoap/nusoap.php'); //must also have the nusoap code on the Client Side.
  61. $soapclient = new nusoapclient($GLOBALS['sugar_config']['site_url'].'/soap.php'); //define the SOAP Client an
  62. echo '<b>LOGIN:</b><BR>';
  63. $result = $soapclient->call('portal_login',array('portal_auth'=>array('user_name'=>$portal_name,'password'=>$portal_password, 'version'=>'.01'),'user_name'=>$user_name, 'application_name'=>'SoapTestPortal'));
  64. echo '<b>HERE IS ERRORS:</b><BR>';
  65. echo $soapclient->error_str;
  66. echo '<BR><BR><b>HERE IS RESPONSE:</b><BR>';
  67. echo $soapclient->response;
  68. echo '<BR><BR><b>HERE IS RESULT:</b><BR>';
  69. echo print_r($result);
  70. $session = $result['id'];
  71. echo '<br><br><b>CREATE LEAD:</b><BR>';
  72. $result = $soapclient->call('portal_set_entry',array('session'=>$session , 'module_name'=>'Leads', 'name_value_list'=>array(array('name'=>'first_name', 'value'=>'Test'), array('name'=>'last_name', 'value'=>'Lead'), array('name'=>'portal_name', 'value'=>'portal_name'), array('name'=>'portal_app', 'value'=>'SoapTestPortal'), array('name'=>'description', 'value'=>'A lead created through webservices'))));
  73. echo '<b>HERE IS ERRORS:</b><BR>';
  74. echo $soapclient->error_str;
  75. echo '<BR><BR><b>HERE IS RESPONSE:</b><BR>';
  76. echo $soapclient->response;
  77. echo '<BR><BR><b>HERE IS RESULT:</b><BR>';
  78. echo print_r($result);
  79. echo '<br><br><b>LOGOUT:</b><BR>';
  80. $result = $soapclient->call('portal_logout',array('session'=>$session));
  81. echo '<b>HERE IS ERRORS:</b><BR>';
  82. echo $soapclient->error_str;
  83. echo '<BR><BR><b>HERE IS RESPONSE:</b><BR>';
  84. echo $soapclient->response;
  85. echo '<BR><BR><b>HERE IS RESULT:</b><BR>';
  86. echo print_r($result);
  87. }
  88. ?>