当前位置: 首页>>代码示例>>PHP>>正文


PHP E::ModuleUploader方法代码示例

本文整理汇总了PHP中E::ModuleUploader方法的典型用法代码示例。如果您正苦于以下问题:PHP E::ModuleUploader方法的具体用法?PHP E::ModuleUploader怎么用?PHP E::ModuleUploader使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在E的用法示例。


在下文中一共展示了E::ModuleUploader方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: Store

 /**
  * Saves file in storage
  *
  * @param string $sFile
  * @param string $sDestination
  *
  * @return bool|ModuleUploader_EntityItem
  */
 public function Store($sFile, $sDestination = null)
 {
     if (!$sDestination) {
         $oUser = E::ModuleUser()->GetUserCurrent();
         if (!$oUser) {
             return false;
         }
         $sDestination = E::ModuleUploader()->GetUserFileDir($oUser->getId());
     }
     if ($sDestination) {
         $sMimeType = ModuleImg::MimeType($sFile);
         $bIsImage = strpos($sMimeType, 'image/') === 0;
         $iUserId = E::UserId();
         $sExtension = F::File_GetExtension($sFile, true);
         if (substr($sDestination, -1) == '/') {
             $sDestinationDir = $sDestination;
         } else {
             $sDestinationDir = dirname($sDestination) . '/';
         }
         $sUuid = ModuleMresource::CreateUuid('file', $sFile, md5_file($sFile), $iUserId);
         $sDestination = $sDestinationDir . $sUuid . '.' . $sExtension;
         if ($sStoredFile = E::ModuleUploader()->Move($sFile, $sDestination, true)) {
             $oStoredItem = E::GetEntity('Uploader_Item', array('storage' => 'file', 'uuid' => $sUuid, 'original_filename' => basename($sFile), 'url' => $this->Dir2Url($sStoredFile), 'file' => $sStoredFile, 'user_id' => $iUserId, 'mime_type' => $sMimeType, 'is_image' => $bIsImage));
             return $oStoredItem;
         }
     }
     return false;
 }
开发者ID:AntiqS,项目名称:altocms,代码行数:36,代码来源:DriverFile.entity.class.php

示例2: getImageUrl

 /**
  * @param null $xSize
  *
  * @return string|null
  */
 public function getImageUrl($xSize = null)
 {
     $sUrl = $this->getPathUrl();
     if ($sUrl) {
         $sUrl = E::ModuleUploader()->CompleteUrl($sUrl);
         if (!$xSize) {
             return $sUrl;
         }
         return E::ModuleUploader()->ResizeTargetImage($sUrl, $xSize);
     }
     return null;
 }
开发者ID:anp135,项目名称:altocms,代码行数:17,代码来源:MresourceRel.entity.class.php

示例3: getImageUrl

 /**
  * @param null $xSize
  *
  * @return string|null
  */
 public function getImageUrl($xSize = null)
 {
     $sUrl = $this->getPathUrl();
     if ($sUrl) {
         if (strpos($sUrl, '@') === 0) {
             $sUrl = Config::Get('path.root.url') . substr($sUrl, 1);
         }
         if (!$xSize) {
             return $sUrl;
         }
         return E::ModuleUploader()->ResizeTargetImage($sUrl, $xSize);
     }
     return null;
 }
开发者ID:AntiqS,项目名称:altocms,代码行数:19,代码来源:MresourceRel.entity.class.php

示例4: LinkTempResource

 /**
  * Прикрепляет временный ресурс к вновь созданному объекту
  *
  * @param string $sTargetType
  * @param string $sTargetId
  * @param $sTargetTmp
  *
  * @return bool|ModuleMresource_EntityMresource
  */
 public function LinkTempResource($sTargetType, $sTargetId, $sTargetTmp)
 {
     if ($sTargetTmp && E::IsUser()) {
         $sNewPath = E::ModuleUploader()->GetUserImageDir(E::UserId(), true, false);
         $aMresourceRel = $this->GetMresourcesRelByTargetAndUser($sTargetType, 0, E::UserId());
         if ($aMresourceRel) {
             $oResource = array_shift($aMresourceRel);
             $sOldPath = $oResource->GetFile();
             $oStoredFile = E::ModuleUploader()->Store($sOldPath, $sNewPath);
             /** @var ModuleMresource_EntityMresource $oResource */
             $oResource = $this->GetMresourcesByUuid($oStoredFile->getUuid());
             if ($oResource) {
                 $oResource->setUrl($this->NormalizeUrl(E::ModuleUploader()->GetTargetUrl($sTargetType, $sTargetId)));
                 $oResource->setType($sTargetType);
                 $oResource->setUserId(E::UserId());
                 // 4. В свойство поля записать адрес картинки
                 $this->UnlinkFile($sTargetType, 0, E::UserId());
                 $this->AddTargetRel($oResource, $sTargetType, $sTargetId);
                 return $oResource;
             }
         }
     }
     return false;
 }
开发者ID:hard990,项目名称:altocms,代码行数:33,代码来源:Mresource.class.php

示例5: GetDefaultPhotoUrl

 /**
  * @param int|string $xSize
  * @param string     $sSex
  *
  * @return string
  */
 public function GetDefaultPhotoUrl($xSize, $sSex)
 {
     $sPath = E::ModuleUploader()->GetUserAvatarDir(0) . 'user_photo_' . Config::Get('view.skin', Config::LEVEL_CUSTOM) . '_' . $sSex . '.png';
     if (strpos($xSize, 'x') !== false) {
         list($nW, $nH) = array_map('intval', explode('x', $xSize));
     } else {
         $nW = $nH = (int) $xSize;
     }
     $sPath .= '-' . $nW . 'x' . $nH . '.' . pathinfo($sPath, PATHINFO_EXTENSION);
     if (Config::Get('module.image.autoresize') && !F::File_Exists($sPath)) {
         $sPath = E::ModuleImg()->AutoresizeSkinImage($sPath, 'user_photo', max($nH, $nW));
     }
     return E::ModuleUploader()->Dir2Url($sPath);
 }
开发者ID:anp135,项目名称:altocms,代码行数:20,代码来源:User.class.php

示例6: GetOptions

 /**
  * @param string $sFileExtension
  * @param string $sPreset
  * @param array  $aOptions
  *
  * @return array
  */
 public function GetOptions($sFileExtension = '*', $sPreset = null, $aOptions = array())
 {
     if (is_array($sPreset) && empty($aOptions)) {
         $aOptions = $sPreset;
         $sPreset = null;
     }
     if (!$sPreset && $sPreset !== 'default') {
         $sPreset = 'images.' . $sPreset;
     }
     $aConfigOptions = E::ModuleUploader()->GetConfig($sFileExtension, $sPreset);
     if ($aConfigOptions && $aOptions) {
         /** @var DataArray $aParams */
         $aOptions = F::Array_Merge($aConfigOptions, $aOptions);
     } elseif (!$aOptions) {
         $aOptions = $aConfigOptions;
     }
     return $aOptions;
 }
开发者ID:AntiqS,项目名称:altocms,代码行数:25,代码来源:Img.class.php

示例7: smarty_function_img

/**
 * Выводит изображение и прикрепляет его ко временному объекту
 *
 * @param $aParams
 * @param Smarty $oSmarty
 * @return string
 */
function smarty_function_img($aParams, &$oSmarty = NULL)
{
    // Пропущен тип объекта
    if (!isset($aParams['attr']['target-type'])) {
        trigger_error("img: missing 'target-type' parameter", E_USER_WARNING);
        return '';
    }
    // Пропущен идентификатор объекта
    if (!isset($aParams['attr']['target-id'])) {
        trigger_error("img: missing 'target-id' parameter", E_USER_WARNING);
        return '';
    }
    // Получим тип объекта
    $sTargetType = $aParams['attr']['target-type'];
    unset($aParams['attr']['target-type']);
    // Получим ид объекта
    $iTargetId = intval($aParams['attr']['target-id']);
    unset($aParams['attr']['target-id']);
    // Получим ид объекта
    $sCrop = isset($aParams['attr']['crop']) ? $aParams['attr']['crop'] : FALSE;
    unset($aParams['attr']['crop']);
    // Получим изображение по временному ключу, или создадим этот ключ
    if (($sTargetTmp = E::ModuleSession()->GetCookie(ModuleUploader::COOKIE_TARGET_TMP)) && E::IsUser()) {
        // Продлим куку
        E::ModuleSession()->SetCookie(ModuleUploader::COOKIE_TARGET_TMP, $sTargetTmp, 'P1D', FALSE);
        // Получим предыдущее изображение и если оно было, установим в качестве текущего
        // Получим и удалим все ресурсы
        $aMresourceRel = E::ModuleMresource()->GetMresourcesRelByTargetAndUser($sTargetType, $iTargetId, E::UserId());
        if ($aMresourceRel) {
            /** @var ModuleMresource_EntityMresource $oResource */
            $oMresource = array_shift($aMresourceRel);
            if ($oMresource) {
                if ($sCrop) {
                    $aParams['attr']['src'] = E::ModuleUploader()->ResizeTargetImage($oMresource->GetUrl(), $sCrop);
                } else {
                    $aParams['attr']['src'] = $oMresource->GetUrl();
                }
                $oSmarty->assign("bImageIsTemporary", TRUE);
            }
        }
    } else {
        // Куки нет, это значит, что пользователь первый раз создает этот тип
        // и старой картинки просто нет
        if ($iTargetId == '0') {
            E::ModuleSession()->SetCookie(ModuleUploader::COOKIE_TARGET_TMP, F::RandomStr(), 'P1D', FALSE);
        } else {
            E::ModuleSession()->DelCookie(ModuleUploader::COOKIE_TARGET_TMP);
            $sImage = E::ModuleUploader()->GetTargetImageUrl($sTargetType, $iTargetId, $sCrop);
            if ($sImage) {
                $aParams['attr']['src'] = $sImage;
                $oSmarty->assign("bImageIsTemporary", TRUE);
            }
        }
    }
    // Формируем строку атрибутов изображения
    $sAttr = '';
    if (isset($aParams['attr']) && is_array($aParams['attr'])) {
        foreach ($aParams['attr'] as $sAttrName => $sAttrValue) {
            $sAttr .= ' ' . $sAttrName . '="' . $sAttrValue . '"';
        }
    }
    // Сформируем тег изображения
    $sImageTag = '<img ' . $sAttr . '/>';
    return $sImageTag;
}
开发者ID:AntiqS,项目名称:altocms,代码行数:72,代码来源:function.img.php

示例8: DeletePhoto

 /**
  * Удаляет фото пользователя
  *
  * @param ModuleUser_EntityUser $oUser
  *
  * @return bool
  */
 public function DeletePhoto($oUser)
 {
     $bResult = true;
     if ($sPhoto = $oUser->getProfilePhoto()) {
         $sFile = E::ModuleUploader()->Url2Dir($sPhoto);
         $bResult = E::ModuleImg()->Delete($sFile);
         if ($bResult) {
             $oUser->setProfilePhoto(null);
             E::ModuleUser()->Update($oUser);
         }
     }
     return $bResult;
 }
开发者ID:AntiqS,项目名称:altocms,代码行数:20,代码来源:User.class.php

示例9: GetDefaultPhotoUrl

 /**
  * Returns URL for default photo of current skin
  *
  * @param int|string $xSize
  *
  * @return string
  */
 public function GetDefaultPhotoUrl($xSize = null)
 {
     $sPath = E::ModuleUploader()->GetUserAvatarDir(0) . 'user_photo_' . Config::Get('view.skin', Config::LEVEL_CUSTOM) . '_' . ($this->getProfileSex() == 'woman' ? 'female' : 'male') . '.png';
     if ($xSize) {
         if (strpos($xSize, 'x') !== false) {
             list($nW, $nH) = array_map('intval', explode('x', $xSize));
         } else {
             $nW = $nH = intval($xSize);
         }
         $sPath .= '-' . $nW . 'x' . $nH . '.' . pathinfo($sPath, PATHINFO_EXTENSION);
     } else {
         $nW = $nH = self::DEFAULT_PHOTO_SIZE;
     }
     if (Config::Get('module.image.autoresize') && !F::File_Exists($sPath)) {
         E::ModuleImg()->AutoresizeSkinImage($sPath, 'user_photo', max($nH, $nW));
     }
     return E::ModuleUploader()->Dir2Url($sPath);
 }
开发者ID:Azany,项目名称:altocms,代码行数:25,代码来源:User.entity.class.php

示例10: EventSort

 /**
  * Меняет сортировку элементов фотосета
  */
 public function EventSort()
 {
     // * Устанавливаем формат Ajax ответа
     E::ModuleViewer()->SetResponseAjax('json');
     // Проверяем, целевой объект и права на его редактирование
     if (!($oTarget = E::ModuleUploader()->CheckAccessAndGetTarget($sTargetType = F::GetRequest('target', FALSE), $sTargetId = F::GetRequest('target_id', FALSE)))) {
         E::ModuleMessage()->AddErrorSingle(E::ModuleLang()->Get('not_access'), E::ModuleLang()->Get('error'));
         return;
     }
     if (!($aOrder = F::GetRequest('order', FALSE))) {
         E::ModuleMessage()->AddError(E::ModuleLang()->Get('not_access'), E::ModuleLang()->Get('error'));
         return;
     }
     if (!is_array($aOrder)) {
         E::ModuleMessage()->AddError(E::ModuleLang()->Get('not_access'), E::ModuleLang()->Get('error'));
         return;
     }
     E::ModuleMresource()->UpdateSort(array_flip($aOrder), $sTargetType, $sTargetId);
     E::ModuleMessage()->AddNoticeSingle(E::ModuleLang()->Get('uploader_sort_changed'));
 }
开发者ID:ZeoNish,项目名称:altocms,代码行数:23,代码来源:ActionUploader.class.php

示例11: smarty_function_imgs

/**
 * Выводит изображение и прикрепляет его ко временному объекту
 *
 * @param $aParams
 * @param Smarty $oSmarty
 * @return string
 */
function smarty_function_imgs($aParams, &$oSmarty = NULL)
{
    // Пропущен тип объекта
    if (!isset($aParams['target-type'])) {
        trigger_error("img: missing 'target-type' parameter", E_USER_WARNING);
        return '';
    }
    // Пропущен идентификатор объекта
    if (!isset($aParams['target-id'])) {
        trigger_error("img: missing 'target-id' parameter", E_USER_WARNING);
        return '';
    }
    // Получим тип объекта
    $sTargetType = $aParams['target-type'];
    unset($aParams['target-type']);
    // Получим ид объекта
    $iTargetId = intval($aParams['target-id']);
    unset($aParams['target-id']);
    // Получим параметры обрезки объекта
    $sCrop = isset($aParams['crop']) ? $aParams['crop'] : FALSE;
    unset($aParams['crop']);
    // Получим ид объекта
    $sTemplate = isset($aParams['template']) ? $aParams['template'] : FALSE;
    unset($aParams['template']);
    // Получим изображение по временному ключу, или создадим этот ключ
    $aParams['src'] = array();
    if (($sTargetTmp = E::ModuleSession()->GetCookie(ModuleUploader::COOKIE_TARGET_TMP)) && E::IsUser()) {
        // Продлим куку
        E::ModuleSession()->SetCookie(ModuleUploader::COOKIE_TARGET_TMP, $sTargetTmp, 'P1D', FALSE);
    } else {
        // Куки нет, это значит, что пользователь первый раз создает этот тип
        // и старой картинки просто нет
        if ($iTargetId == '0') {
            E::ModuleSession()->SetCookie(ModuleUploader::COOKIE_TARGET_TMP, F::RandomStr(), 'P1D', FALSE);
        } else {
            E::ModuleSession()->DelCookie(ModuleUploader::COOKIE_TARGET_TMP);
        }
    }
    // Получим предыдущее изображение и если оно было, установим в качестве текущего
    // Получим и удалим все ресурсы
    $aMresourceRel = E::ModuleMresource()->GetMresourcesRelByTargetAndUser($sTargetType, $iTargetId, E::UserId());
    if ($aMresourceRel && is_array($aMresourceRel)) {
        /** @var ModuleMresource_EntityMresource $oResource */
        foreach ($aMresourceRel as $oMresource) {
            if ($sCrop) {
                $aParams['src'][$oMresource->getMresourceId()] = array('url' => E::ModuleUploader()->ResizeTargetImage($oMresource->GetUrl(), $sCrop), 'cover' => $oMresource->IsCover());
            } else {
                $aParams['src'][$oMresource->getMresourceId()] = array('url' => $oMresource->GetUrl(), 'cover' => $oMresource->IsCover());
            }
            $oSmarty->assign("bHasImage", TRUE);
        }
    }
    // Создадим массив картинок
    $sItems = '';
    if ($aParams['src']) {
        foreach ($aParams['src'] as $sID => $aData) {
            $sItems .= str_replace(array('ID', 'uploader_item_SRC', 'MARK_AS_PREVIEW'), array($sID, $aData['url'], $aData['cover'] ? E::ModuleLang()->Get('topic_photoset_is_preview') : E::ModuleLang()->Get('topic_photoset_mark_as_preview')), $sTemplate);
        }
    }
    return $sItems;
}
开发者ID:ZeoNish,项目名称:altocms,代码行数:68,代码来源:function.imgs.php

示例12: GetPhotoUrl

 /**
  * Возвращает полный URL до фото профиля
  *
  * @param int|string $xSize - рвзмер (240 | '240x320')
  *
  * @return string
  */
 public function GetPhotoUrl($xSize = null)
 {
     $sPropKey = '_photo_url_' . $xSize;
     $sUrl = $this->getProp($sPropKey);
     if (is_null($sUrl)) {
         if (!$xSize) {
             if (Config::Get('module.user.profile_photo_size')) {
                 $xSize = Config::Get('module.user.profile_photo_size');
             } else {
                 $xSize = self::DEFAULT_PHOTO_SIZE;
             }
         }
         if ($sRealSize = C::Get('module.uploader.images.profile_photo.size.' . $xSize)) {
             $xSize = $sRealSize;
         }
         $sUrl = $this->_getProfileImageUrl('profile_photo', $xSize);
         if (!$sUrl) {
             // Old version compatibility
             $sUrl = $this->getProfilePhoto();
             if ($sUrl) {
                 if ($xSize) {
                     $sUrl = E::ModuleUploader()->ResizeTargetImage($sUrl, $xSize);
                 }
             } else {
                 $sUrl = $this->GetDefaultPhotoUrl($xSize);
             }
         }
         $this->setProp($sPropKey, $sUrl);
     }
     return $sUrl;
 }
开发者ID:anp135,项目名称:altocms,代码行数:38,代码来源:User.entity.class.php

示例13: GetOptions

 /**
  * @param string $sFileExtension
  * @param array  $aOptions
  *
  * @return array
  */
 public function GetOptions($sFileExtension = '*', $aOptions = array())
 {
     $aConfigOptions = E::ModuleUploader()->GetConfig($sFileExtension);
     if ($aConfigOptions && $aOptions) {
         /** @var DataArray $aParams */
         $aOptions = F::Array_Merge($aConfigOptions, $aOptions);
     } elseif (!$aOptions) {
         $aOptions = $aConfigOptions;
     }
     return $aOptions;
 }
开发者ID:hard990,项目名称:altocms,代码行数:17,代码来源:Img.class.php

示例14: getImgSize

 public function getImgSize($sSize = null)
 {
     $aSize = $this->getProp('_size-' . $sSize . '-imgsize');
     if (!$aSize) {
         $sFile = $this->getProp('_size-' . $sSize . '-file');
         if (!$sFile) {
             $sUrl = $this->getLink($sSize);
             $sFile = E::ModuleUploader()->Url2Dir($sUrl);
             $this->setProp('_size-' . $sSize . '-file', $sFile);
         }
         if ($sFile && F::File_Exists($sFile)) {
             $aSize = getimagesize($sFile);
             $this->setProp('_size-' . $sSize . '-imgsize', $aSize);
         }
     }
     return $aSize;
 }
开发者ID:hard990,项目名称:altocms,代码行数:17,代码来源:TopicPhoto.entity.class.php

示例15: getWebPath

 /**
  * @param bool $xSize
  *
  * @return string
  */
 public function getWebPath($xSize = FALSE)
 {
     $sUrl = E::ModuleUploader()->CompleteUrl($this->getPathUrl());
     if (!$xSize) {
         return $sUrl;
     }
     return E::ModuleUploader()->ResizeTargetImage($sUrl, $xSize);
 }
开发者ID:anp135,项目名称:altocms,代码行数:13,代码来源:Mresource.entity.class.php


注:本文中的E::ModuleUploader方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。