BxBaseServices.php 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. <?php defined('BX_DOL') or die('hack attempt');
  2. /**
  3. * Copyright (c) BoonEx Pty Limited - http://www.boonex.com/
  4. * CC-BY License - http://creativecommons.org/licenses/by/3.0/
  5. *
  6. * @defgroup DolphinCore Dolphin Core
  7. * @{
  8. */
  9. /**
  10. * System services.
  11. */
  12. class BxBaseServices extends BxDol implements iBxDolProfileService
  13. {
  14. public function __construct()
  15. {
  16. parent::__construct();
  17. }
  18. public function serviceProfileUnit ($iContentId)
  19. {
  20. return $this->_serviceProfileFunc('getUnit', $iContentId);
  21. }
  22. public function serviceProfileAvatar ($iContentId)
  23. {
  24. return $this->_serviceProfileFunc('getAvatar', $iContentId);
  25. }
  26. public function serviceProfileEditUrl ($iContentId)
  27. {
  28. bx_import('BxDolPermalinks');
  29. return BX_DOL_URL_ROOT . BxDolPermalinks::getInstance()->permalink('page.php?i=account-settings-info');
  30. }
  31. public function serviceProfileThumb ($iContentId)
  32. {
  33. return $this->_serviceProfileFunc('getThumb', $iContentId);
  34. }
  35. public function serviceProfileIcon ($iContentId)
  36. {
  37. return $this->_serviceProfileFunc('getIcon', $iContentId);
  38. }
  39. public function serviceProfileName ($iContentId)
  40. {
  41. return $this->_serviceProfileFunc('getDisplayName', $iContentId);
  42. }
  43. public function serviceProfileUrl ($iContentId)
  44. {
  45. return $this->_serviceProfileFunc('getUrl', $iContentId);
  46. }
  47. public function serviceProfilesSearch ($sTerm, $iLimit)
  48. {
  49. bx_import('BxDolAccountQuery');
  50. $oDb = BxDolAccountQuery::getInstance();
  51. $aRet = array();
  52. $a = $oDb->searchByTerm($sTerm, $iLimit);
  53. foreach ($a as $r)
  54. $aRet[] = array ('label' => $this->serviceProfileName($r['content_id']), 'value' => $r['profile_id']);
  55. return $aRet;
  56. }
  57. public function _serviceProfileFunc ($sFunc, $iContentId)
  58. {
  59. if (!$iContentId)
  60. return false;
  61. bx_import('BxDolAccount');
  62. if (!($oAccount = BxDolAccount::getInstance($iContentId)))
  63. return false;
  64. return $oAccount->$sFunc();
  65. }
  66. }
  67. /** @} */