iTx Technologies offre gratuitement
cet espace pour SugarCRM !

title

Body

[fermer]

/ -> soap.php (source)

   1  <?php
   2   if(!defined('sugarEntry'))define('sugarEntry', true);
   3  /*********************************************************************************
   4   * SugarCRM is a customer relationship management program developed by
   5   * SugarCRM, Inc. Copyright (C) 2004 - 2009 SugarCRM Inc.
   6   * 
   7   * This program is free software; you can redistribute it and/or modify it under
   8   * the terms of the GNU 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 General Public License for more
  17   * details.
  18   * 
  19   * You should have received a copy of the GNU 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 General Public License version 3.
  30   * 
  31   * In accordance with Section 7(b) of the GNU 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  
  38  require_once ('include/entryPoint.php');
  39  require_once ('include/utils/file_utils.php');
  40  ob_start();
  41  
  42  require_once ('soap/SoapError.php');
  43  require_once ('include/nusoap/nusoap.php');
  44  require_once ('modules/Contacts/Contact.php');
  45  require_once ('modules/Accounts/Account.php');
  46  require_once ('modules/Opportunities/Opportunity.php');
  47  require_once ('modules/Cases/Case.php');
  48  
  49  //ignore notices
  50  error_reporting(E_ALL ^ E_NOTICE);
  51  
  52  
  53  
  54  
  55  
  56  
  57  global $HTTP_RAW_POST_DATA;
  58  
  59  $administrator = new Administration();
  60  $administrator->retrieveSettings();
  61  
  62  $NAMESPACE = 'http://www.sugarcrm.com/sugarcrm';
  63  $server = new soap_server;
  64  $server->configureWSDL('sugarsoap', $NAMESPACE, $sugar_config['site_url'].'/soap.php');
  65  
  66  //New API is in these files
  67  if(!empty($administrator->settings['portal_on'])) {
  68      require_once ('soap/SoapPortalUsers.php');
  69  }
  70  
  71  require_once ('soap/SoapSugarUsers.php');
  72  //require_once('soap/SoapSugarUsers_version2.php');
  73  require_once ('soap/SoapData.php');
  74  require_once ('soap/SoapDeprecated.php');
  75  
  76  
  77  
  78  
  79  
  80  
  81  
  82  
  83  
  84  
  85  /* Begin the HTTP listener service and exit. */
  86  ob_clean();
  87  
  88  if (!isset($HTTP_RAW_POST_DATA)){
  89      $HTTP_RAW_POST_DATA = file_get_contents('php://input');
  90  }
  91  
  92  require_once ('include/resource/ResourceManager.php');
  93  $resourceManager = ResourceManager::getInstance();
  94  $resourceManager->setup('Soap');
  95  $observers = $resourceManager->getObservers();
  96  //Call set_soap_server for SoapResourceObserver instance(s)
  97  foreach($observers as $observer) {
  98     if(method_exists($observer, 'set_soap_server')) {
  99           $observer->set_soap_server($server);
 100     }
 101  }
 102  
 103  $HTTP_RAW_POST_DATA = isset($HTTP_RAW_POST_DATA) ? $HTTP_RAW_POST_DATA : '';
 104  global $soap_server_object;
 105  $soap_server_object = $server;
 106  $server->service($HTTP_RAW_POST_DATA);
 107  ob_end_flush();
 108  flush();
 109  sugar_cleanup();
 110  exit();
 111  ?>


Generé en: Thu Mar 4 09:44:50 2010 | Cross-referenced par PHPXref 0.7