/modules/Home/quicksearchQuery.php

https://gitlab.com/tjaafar/SuiteCRM · PHP · 68 lines · 27 code · 4 blank · 37 comment · 9 complexity · a51ba67aa21965a04db63268ec9d90d0 MD5 · raw file

  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-2013 SugarCRM Inc.
  6. * SuiteCRM is an extension to SugarCRM Community Edition developed by Salesagility Ltd.
  7. * Copyright (C) 2011 - 2014 Salesagility Ltd.
  8. *
  9. * This program is free software; you can redistribute it and/or modify it under
  10. * the terms of the GNU Affero General Public License version 3 as published by the
  11. * Free Software Foundation with the addition of the following permission added
  12. * to Section 15 as permitted in Section 7(a): FOR ANY PART OF THE COVERED WORK
  13. * IN WHICH THE COPYRIGHT IS OWNED BY SUGARCRM, SUGARCRM DISCLAIMS THE WARRANTY
  14. * OF NON INFRINGEMENT OF THIRD PARTY RIGHTS.
  15. *
  16. * This program is distributed in the hope that it will be useful, but WITHOUT
  17. * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
  18. * FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
  19. * details.
  20. *
  21. * You should have received a copy of the GNU Affero General Public License along with
  22. * this program; if not, see http://www.gnu.org/licenses or write to the Free
  23. * Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
  24. * 02110-1301 USA.
  25. *
  26. * You can contact SugarCRM, Inc. headquarters at 10050 North Wolfe Road,
  27. * SW2-130, Cupertino, CA 95014, USA. or at email address contact@sugarcrm.com.
  28. *
  29. * The interactive user interfaces in modified source and object code versions
  30. * of this program must display Appropriate Legal Notices, as required under
  31. * Section 5 of the GNU Affero General Public License version 3.
  32. *
  33. * In accordance with Section 7(b) of the GNU Affero General Public License version 3,
  34. * these Appropriate Legal Notices must retain the display of the "Powered by
  35. * SugarCRM" logo and "Supercharged by SuiteCRM" logo. If the display of the logos is not
  36. * reasonably feasible for technical reasons, the Appropriate Legal Notices must
  37. * display the words "Powered by SugarCRM" and "Supercharged by SuiteCRM".
  38. ********************************************************************************/
  39. $filePath = 'modules/Home/QuickSearch.php';
  40. if (file_exists('custom/' . $filePath))
  41. {
  42. require_once('custom/' . $filePath);
  43. $quicksearchQuery = new quicksearchQueryCustom();
  44. }
  45. else
  46. {
  47. require_once($filePath);
  48. $quicksearchQuery = new quicksearchQuery();
  49. }
  50. $json = getJSONobj();
  51. $data = $json->decode(html_entity_decode($_REQUEST['data']));
  52. if(isset($_REQUEST['query']) && !empty($_REQUEST['query'])){
  53. foreach($data['conditions'] as $k=>$v){
  54. if (empty($data['conditions'][$k]['value']) && ($data['conditions'][$k]['op'] != quicksearchQuery::CONDITION_EQUAL))
  55. {
  56. $data['conditions'][$k]['value']=urldecode($_REQUEST['query']);
  57. }
  58. }
  59. }
  60. $method = !empty($data['method']) ? $data['method'] : 'query';
  61. if(method_exists($quicksearchQuery, $method)) {
  62. echo $quicksearchQuery->$method($data);
  63. }