Пример #1
0
 function getBlockCode_ActionList()
 {
     $sCode = null;
     $sMainPrefix = $this->oConfig->getMainPrefix();
     bx_import('BxDolSubscription');
     $oSubscription = BxDolSubscription::getInstance();
     $aButton = $oSubscription->getButton($this->iProfileId, $sMainPrefix, '', (int) $this->aFileInfo['medID']);
     bx_import('BxDolAlbums');
     $sProfileAlbumUri = BxDolAlbums::getAbumUri($this->oConfig->getGlParam('profile_album_name'), $this->iProfileId);
     $aReplacement = array('favorited' => $this->aFileInfo['favorited'] == false ? '' : 'favorited', 'featured' => (int) $this->aFileInfo['Featured'], 'featuredCpt' => '', 'approvedCpt' => '', 'approvedAct' => '', 'moduleUrl' => BX_DOL_URL_ROOT . $this->oConfig->getBaseUri(), 'fileUri' => $this->aFileInfo['medUri'], 'fileKey' => $this->aFileInfo['Hash'], 'fileExt' => $this->aFileInfo['medExt'], 'iViewer' => $this->iProfileId, 'ID' => (int) $this->aFileInfo['medID'], 'Owner' => (int) $this->aFileInfo['medProfId'], 'OwnerName' => $this->aFileInfo['NickName'], 'AlbumUri' => $this->aFileInfo['albumUri'], 'Tags' => bx_php_string_apos($this->aFileInfo['medTags']), 'TitleAvatar' => $this->aFileInfo['medProfId'] == $this->iProfileId && 'sys_avatar' == getParam('sys_member_info_thumb') ? _t('_' . $sMainPrefix . '_set_as_avatar') : '', 'SetAvatarCpt' => $this->aFileInfo['medProfId'] == $this->iProfileId && $sProfileAlbumUri == $this->aFileInfo['albumUri'] && 'bx_photos_thumb' == getParam('sys_member_info_thumb') ? _t('_' . $sMainPrefix . '_set_as_avatar') : '', 'sbs_' . $sMainPrefix . '_title' => $aButton['title'], 'sbs_' . $sMainPrefix . '_script' => $aButton['script'], 'shareCpt' => $this->oModule->isAllowedShare($this->aFileInfo) ? _t('_Share') : '', 'cropCpt' => $this->oModule->isAllowedEdit($this->aFileInfo) && $this->aFileInfo['medProfId'] == $this->iProfileId ? _t('_bx_photos_crop_action') : '');
     if (isAdmin($this->iProfileId)) {
         $sMsg = $aReplacement['featured'] > 0 ? 'un' : '';
         $aReplacement['featuredCpt'] = _t('_' . $sMainPrefix . '_action_' . $sMsg . 'feature');
     }
     if ($this->oModule->isAllowedApprove($this->aFileInfo)) {
         $sMsg = '';
         $iAppr = 1;
         if ($this->aFileInfo['Approved'] == 'approved') {
             $sMsg = 'de';
             $iAppr = 0;
         }
         $aReplacement['approvedCpt'] = _t('_' . $sMainPrefix . '_admin_' . $sMsg . 'activate');
         $aReplacement['approvedAct'] = $iAppr;
     }
     $sActionsList = $GLOBALS['oFunctions']->genObjectsActions($aReplacement, $sMainPrefix);
     if (!is_null($sActionsList)) {
         $sCode = $oSubscription->getData() . $sActionsList;
     }
     return $sCode;
 }
 function getBlockCode_ProfilePhotos()
 {
     list($sParamName, $sParamValue, $sParamValue1, $sParamValue2, $sParamValue3) = $this->aAddParams;
     if ($sParamValue != 'owner') {
         return '';
     }
     $oSearch = $this->getSearchObject();
     $oSearch->aCurrent['restriction']['album'] = array('value' => '', 'field' => 'Uri', 'operator' => '=', 'paramName' => 'albumUri', 'table' => 'sys_albums');
     $oSearch->aCurrent['restriction']['album_owner'] = array('value' => '', 'field' => 'Owner', 'operator' => '=', 'paramName' => 'albumOwner', 'table' => 'sys_albums');
     $sUri = BxDolAlbums::getAbumUri($this->oConfig->getGlParam('profile_album_name'), $this->iOwnerId);
     $aParams = array('album' => $sUri, 'owner' => $this->iOwnerId);
     $aCustom = array('per_page' => $this->oConfig->getGlParam('number_top'), 'simple_paginate' => FALSE);
     $aHtml = $oSearch->getBrowseBlock($aParams, $aCustom);
     return array($aHtml['code'], $aHtml['menu_top'], $aHtml['menu_bottom'], '');
 }
Пример #3
0
 function _getMediaAlbumsArray($sType, $iIdProfile, $iIdProfileViewer, $isShowEmptyAlbums = false)
 {
     switch ($sType) {
         case 'photo':
             $sModuleName = 'photos';
             $sType = 'bx_photos';
             $sMemAction = 'BX_PHOTOS_VIEW';
             break;
         case 'video':
             $sModuleName = 'videos';
             $sType = 'bx_videos';
             $sMemAction = 'BX_VIDEOS_VIEW';
             break;
         case 'music':
             $sModuleName = 'sounds';
             $sType = 'bx_sounds';
             $sMemAction = 'BX_SOUNDS_VIEW';
             break;
         default:
             return array();
     }
     if (!BxDolXMLRPCMedia::_isMembershipEnabledFor($iIdProfileViewer, $sMemAction)) {
         return array();
     }
     bx_import('BxDolMemberInfo');
     $oMemberInfo = BxDolMemberInfo::getObjectInstance(getParam('sys_member_info_thumb'));
     $isSetAvatarFromDefaultAlbumOnly = $oMemberInfo->isSetAvatarFromDefaultAlbumOnly();
     bx_import('BxDolAlbums');
     $o = new BxDolAlbums($sType, (int) $iIdProfile);
     $aList = $o->getAlbumList(array('owner' => (int) $iIdProfile, 'show_empty' => $isShowEmptyAlbums), 1, 1000);
     $aRet = array();
     foreach ($aList as $r) {
         if (!BxDolService::call($sModuleName, 'get_album_privacy', array((int) $r['ID'], $iIdProfileViewer), 'Search')) {
             continue;
         }
         if ($isSetAvatarFromDefaultAlbumOnly) {
             bx_import('BxDolAlbums');
             $isDefaulAlbum = $r['Uri'] == BxDolAlbums::getAbumUri(getParam($sType . '_profile_album_name'), $iIdProfile) ? 1 : 0;
         } else {
             $isDefaulAlbum = 1;
         }
         $aRet[] = array('Id' => $r['ID'], 'Title' => $r['Caption'], 'Num' => $r['ObjCount'], 'DefaultAlbum' => $isDefaulAlbum);
     }
     return $aRet;
 }
Пример #4
0
 function getPhotoBlock($aParams = array())
 {
     $this->aCurrent['paginate']['perPage'] = 20;
     $aShowParams = array('showScroller' => 0, 'showRate' => 1, 'showPaginate' => 0, 'showViews' => 0, 'showDate' => 0, 'showLink' => 0, 'showFrom' => 0);
     if (count($aParams) > 0) {
         foreach ($aParams as $sKeyName => $sKeyValue) {
             switch ($sKeyName) {
                 case 'PID':
                     $this->aCurrent['restriction']['owner']['value'] = (int) $sKeyValue;
                     break;
                 case 'Category':
                     $this->aCurrent['restriction']['category']['value'] = strip_tags($sKeyValue);
                     break;
                 case 'Tag':
                     $this->aCurrent['restriction']['tag']['value'] = strip_tags($sKeyValue);
                     break;
                 case 'Limit':
                     $this->aCurrent['paginate']['perPage'] = (int) $sKeyValue;
                     break;
                 case 'DisplayScroller':
                     $aShowParams['showScroller'] = $sKeyValue == 1 ? 1 : 0;
                     break;
                 case 'DisplayRate':
                     $aShowParams['showRate'] = $sKeyValue == 1 ? 1 : 0;
                     break;
                 case 'DisplayPagination':
                     $aShowParams['showPaginate'] = $sKeyValue == 1 ? 1 : 0;
                     break;
                 case 'DisplayViews':
                     $aShowParams['showViews'] = $sKeyValue == 1 ? 1 : 0;
                     break;
                 case 'DisplayWhenAgo':
                     $aShowParams['showDate'] = $sKeyValue == 1 ? 1 : 0;
                     break;
                 case 'DisplayLink':
                     $aShowParams['showLink'] = $sKeyValue == 1 ? 1 : 0;
                     break;
                 case 'DisplayProfile':
                     $aShowParams['showFrom'] = $sKeyValue == 1 ? 1 : 0;
                     break;
                 case 'LinkUnitTo':
                     $aShowParams['linkUnitTo'] = $sKeyValue;
                     break;
             }
         }
     }
     $aFilesList = $this->getSearchData();
     $iCnt = $this->aCurrent['paginate']['totalNum'];
     if ($iCnt) {
         $aUnit = array();
         $aUnits = array();
         if (defined('BX_PROFILE_PAGE') || defined('BX_MEMBER_PAGE')) {
             $iPhotoWidth = 259;
             $sImgWidth = 'style="width:' . $iPhotoWidth . 'px;"';
         } else {
             $iPhotoWidth = (int) $this->oModule->_oConfig->getGlParam('file_width');
             $iPhotoWidth = $iPhotoWidth > 1 ? $iPhotoWidth : 600;
             $sImgWidth = '';
         }
         foreach ($aFilesList as $iKey => $aData) {
             $sPicUrl = $this->getImgUrl($aData['Hash'], 'icon');
             $aUnits[] = array('imageId' => $iKey + 1, 'picUrl' => $sPicUrl);
             $sPicLinkElements .= 'aPicLink[' . ($iKey + 1) . '] = ' . $aData['id'] . ';';
             if ($iKey == 0) {
                 $aAdd = array('switchWidth' => $iPhotoWidth + 2, 'imgWidth' => $sImgWidth);
                 $aUnit['switcherUnit'] = $this->getSwitcherUnit($aData, $aShowParams, $aAdd);
             }
         }
         $aUnit['moduleUrl'] = BX_DOL_URL_ROOT . $this->oModule->_oConfig->getBaseUri();
         $aUnit['count'] = $iCnt;
         $aUnit['picWidth'] = $iPhotoWidth;
         $aUnit['picBoxWidth'] = $aUnit['switchWidth'] = $iPhotoWidth + 2;
         $aUnit['switchWidthOut'] = $aUnit['switchWidth'] + 2;
         $aUnit['bx_if:show_scroller'] = array('condition' => false, 'content' => array());
         if ((int) $aShowParams['showScroller'] == 1) {
             $bScroller = false;
             $iContainerWidth = $iContentWidth = $iCnt * 40;
             if ($iContentWidth > $aUnit['picWidth']) {
                 $bScroller = true;
                 $iContainerWidth = $aUnit['picBoxWidth'] - 72;
             }
             $aUnit['bx_if:show_scroller'] = array('condition' => true, 'content' => array('switchWidthOut' => $aUnit['switchWidthOut'], 'containerWidth' => $iContainerWidth, 'contWidth' => $iContentWidth, 'bx_if:scrollerBack' => array('condition' => $bScroller, 'content' => array(1)), 'bx_repeat:iconBlock' => $aUnits, 'bx_if:scrollerNext' => array('condition' => $bScroller, 'content' => array(1))));
         }
         $aUnit['picLinkElements'] = $sPicLinkElements;
         if ($aShowParams['showPaginate'] == 1) {
             $aLinkAddon = $this->getLinkAddByPrams();
             $oPaginate = new BxDolPaginate(array('page_url' => $aUnit['changeUrl'], 'count' => $iCnt, 'info' => false, 'per_page' => 1, 'page' => $this->aCurrent['paginate']['page'], 'on_change_page' => 'getCurrentImage({page})'));
             $aUnit['paginate'] = $oPaginate->getPaginate();
         } else {
             $aUnit['paginate'] = '';
         }
         $this->oTemplate->addCss('search.css');
         return $this->oTemplate->parseHtmlByName('photo_switcher.html', $aUnit);
     } elseif ($this->oModule->_iProfileId != 0 && $this->oModule->_iProfileId == (int) $this->aCurrent['restriction']['owner']['value']) {
         ob_start();
         ?>
         <div class="paginate bx-def-padding-sec-left bx-def-padding-sec-right">
             <div class="view_all">
                 <a href="__lnk_url__" title="__lnk_title__">__lnk_content__</a>
             </div>
          </div>
         <?php 
         $sCode = ob_get_clean();
         bx_import('BxDolAlbums');
         $sCaption = BxDolAlbums::getAbumUri($this->oModule->_oConfig->getGlParam('profile_album_name'), $this->oModule->_iProfileId);
         $sLinkTitle = _t('_bx_photos_add');
         return MsgBox(_t('_Empty')) . $this->oTemplate->parseHtmlByContent($sCode, array('lnk_url' => $this->oModule->_oConfig->getBaseUri() . 'albums/my/add_objects/' . $sCaption . '/owner/' . getUsername($this->oModule->_iProfileId), 'lnk_title' => $sLinkTitle, 'lnk_content' => $sLinkTitle));
     }
     return MsgBox(_t('_Empty'));
 }
Пример #5
0
 function serviceGetAlbumUploaderUrl($iProfileId, $sSelectedAlbum = '')
 {
     bx_import('BxDolAlbums');
     $aDefaultAlbums = $this->_oConfig->getDefaultAlbums();
     if (!empty($sSelectedAlbum) && in_array($sSelectedAlbum, $aDefaultAlbums)) {
         $sSelectedAlbum = BxDolAlbums::getAbumUri($this->_oConfig->getGlParam($sSelectedAlbum), $iProfileId);
     }
     return BX_DOL_URL_ROOT . $this->_oConfig->getBaseUri() . 'albums/my/add_objects/' . $sSelectedAlbum . '/owner/' . getUsername($iProfileId);
 }