本文整理汇总了PHP中ArrayAdapter::bool方法的典型用法代码示例。如果您正苦于以下问题:PHP ArrayAdapter::bool方法的具体用法?PHP ArrayAdapter::bool怎么用?PHP ArrayAdapter::bool使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ArrayAdapter
的用法示例。
在下文中一共展示了ArrayAdapter::bool方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: executeImpl
protected function executeImpl(ArrayAdapter $params)
{
$action = $params->str('action');
$gallery = $params->str('gallery');
switch ($action) {
case 'creategall':
PsGallery::makeNew($gallery, $params->str('name'));
break;
case 'save':
PsGallery::inst($gallery)->saveGallery($params->str('name'), $params->arr('images'));
break;
case 'imgadd':
PsGallery::inst($gallery)->addWebImg($params->arr('img'));
break;
case 'imgdel':
if ($params->bool('web')) {
PsGallery::inst($gallery)->deleteWebImg($params->str('file'));
} else {
PsGallery::inst($gallery)->deleteLocalImg($params->str('file'));
}
break;
default:
json_error("Unknown action [{$action}].");
}
return new AjaxSuccess();
}
示例2: executeImpl
protected function executeImpl(ArrayAdapter $params)
{
$unique = $params->str(DiscussionController::JS_DATA_UNIQUE);
$upDown = $params->bool(DiscussionController::JS_DATA_UPDOWN);
$entity = $params->str(DiscussionController::JS_DATA_THREAD);
$theme = $params->str(self::JS_PARAM_THEME);
$comment = $params->str(self::JS_PARAM_COMMENT);
$parentId = $params->int(self::JS_PARAM_PARENT_ID);
$controller = Handlers::getInstance()->getDiscussionController($unique);
//Валидируем тему
if (!$parentId && $controller->getDiscussionSettings()->isThemed()) {
if (!$theme) {
return 'Введите тему';
}
$error = UserInputValidator::validateShortText($theme);
if ($error) {
return $error;
}
$theme = UserInputTools::safeShortText($theme);
}
//Валидируем комментарий
if (!$comment) {
return 'Введите комментарий';
}
$error = UserInputValidator::validateLongText($comment);
if ($error) {
return $error;
}
$comment = UserInputTools::safeLongText($comment);
$msgObj = $controller->saveMessage($entity, $parentId, $comment, $theme, PsUser::inst());
if (!$msgObj instanceof DiscussionMsg) {
return 'Ошибка добавления сообщения';
}
return new AjaxSuccess($controller->buildLeaf($msgObj));
}
示例3: fillTimeLineItem
/**
* Заполним ссылки на посты и, если передан параметр exists, удалим элементы, для которых нет постов.
*/
protected function fillTimeLineItem(LibItemDb $libItem, TimeLineItem $tlItem, ArrayAdapter $params)
{
$post = BlogManager::inst()->getPostByIdent($libItem->getIdent(), false);
if ($post) {
$tlItem->setLink(BlogManager::inst()->postUrl($post));
}
return !$params->bool('exists') || !!$post;
}
示例4: executeImpl
protected function executeImpl(ArrayAdapter $params)
{
$fav = $params->bool('fav');
$type = $params->str('type');
$ident = $params->str('ident');
PopupPagesManager::inst()->toggleUserPopup($fav, $type, $ident);
return new AjaxSuccess();
}
示例5: executeImpl
protected function executeImpl(ArrayAdapter $params)
{
$id = $params->int('id');
$uts = $params->int('date');
$show = $params->bool('show');
$type = $params->str('type');
$pp = Handlers::getInstance()->getPostsProcessorByPostType($type);
AdminPostsBean::inst()->updateState($pp->dbBean(), $id, $uts, $show);
return new AjaxSuccess();
}
示例6: executeImpl
protected function executeImpl(ArrayAdapter $params)
{
$lident = $params->str(self::PARAM_LIDENT);
$eident = $params->str(self::PARAM_EIDENT);
if ($params->bool(TIMELINE_LOADING_MARK)) {
/*
* Загружаем представление элемента хронологической шкалы
*/
return new AjaxSuccess(TimeLineManager::inst()->getTimeLineItemPresentation($lident, $eident, $params));
} else {
/*
* Загружаем композицию
*/
return new AjaxSuccess(TimeLineManager::inst()->getTimeLineJson($lident, $params));
}
}
示例7: init
public final function init(ArrayAdapter $params)
{
//Стандартные параметры
$this->name = $params->str('name', 'Акция');
$this->isActive = $params->bool('active', true);
$this->isByDate = $params->hasNoEmpty('to');
if ($this->isByDate) {
$this->secondsLeft = strtotime($params->str('to')) - time();
$this->isActive = $this->isActive && $this->secondsLeft > 0;
}
//Параметры акции (только те, что начинаются с data_)
$this->params = ArrayAdapter::inst($params->getByKeyPrefix('data_', true));
//Полный идентификатор акции
$this->stockIdent = $this->sign($this->params->getData());
//Вызовем инициализацию класса-наследника
$this->onInit($this->params);
}
示例8: executeImpl
protected function executeImpl(ArrayAdapter $params)
{
$unique = $params->str(DiscussionController::JS_DATA_UNIQUE);
$upDown = $params->bool(DiscussionController::JS_DATA_UPDOWN);
$entity = $params->int(DiscussionController::JS_DATA_THREAD);
$action = $params->str(self::JS_PARAM_ACTION);
$msgId = $params->int(self::JS_PARAM_MSG_ID);
$rootId = $params->int(self::JS_PARAM_ROOT_ID);
$controller = Handlers::getInstance()->getDiscussionController($unique);
if (in_array($action, DiscussionController::getCommentActions())) {
return new AjaxSuccess($controller->executeCommentAction($msgId, $action));
}
if ($action == DiscussionController::TREE_ACTION_LOAD_COMMENTS) {
return new AjaxSuccess($controller->loadTree($rootId, $upDown, $entity));
}
return "Неизвестное действие: [{$action}]";
}
示例9: getImages
private function getImages(ArrayAdapter $params, $FNAME)
{
$dir = $params->str('dir');
$name = $params->get('name');
//НЕПОСРЕДСТВЕННО КАРТИНКА
if ($name instanceof DirItem) {
return $name;
}
/*
* FOLDING
*/
$FCW = FoldedContextWatcher::getInstance();
$folding = null;
$ident = $params->get('ident');
//Тип фолдинга. Он может быть передан либо в параметре 'group', либо по префиксу смарти-функции, например: postimg (post-название типа фолдинга).
$foldingType = $params->get('group');
$foldingType = $foldingType ? $foldingType : (starts_with($FNAME, 'img') ? null : array_get_value(0, explode('img', $FNAME)));
//Подтип фолдинга, например: is - подтип фолдингов для фолдингов с типом post (выпуск журнала среди всех постов).
$foldingSubType = $params->get('type');
if ($params->has('post')) {
/* @var $post AbstractPost */
$post = $params->get('post');
$ident = $post->getIdent();
$folding = Handlers::getInstance()->getPostsProcessorByPostType($post->getPostType())->getFolding();
} else {
if ($foldingType) {
$hasSubtype = FoldedStorage::isFoldingHasSubtype($foldingType);
if ($hasSubtype && !$foldingSubType) {
//У фолдинга есть подтип, но в параметрах он не передан - определим фолдинг по контексту
$folding = $FCW->getFoldedEntityEnsureType($foldingType)->getFolding();
} else {
$folding = FoldedStorageInsts::byTypeStype($foldingType, $foldingSubType);
}
} else {
if ($foldingSubType) {
//Если передан только тип, то считаем, что имеется ввиду фолдинг поста
$folding = Handlers::getInstance()->getPostsProcessorByPostType($foldingSubType)->getFolding();
}
}
}
if ($folding && !$ident) {
//У нас есть фолдинг, но нет идентификатора сущности - определим её из контекста
$ident = $FCW->getFoldedEntityEnsureType($folding->getFoldingType())->getIdent();
}
if (!$dir && !$name && $ident && $folding) {
/*
* Не передано название картинки, но передан идентификатор сущности - показываем cover.
* TODO - подумать, возможно имеет смысл сделать возможность показывать любую картинку в заданном размере.
*/
return $folding->getCover($ident, $params->str('dim'));
}
/*
* Берём путь "как есть", если:
* 1. Передан специальный параметр asis
* 2. Передана dir, и она начинается с '/'
* 3. Не передана dir, но при этом name начинается с '/'
* 4. dir или name указывают на адрес в интернете
*/
$asis = $params->bool('asis') || starts_with($dir, DIR_SEPARATOR) || !$dir && starts_with($name, DIR_SEPARATOR) || PsUrl::isHttp($dir) || PsUrl::isHttp($name);
if ($asis) {
if (!$dir) {
return $name;
}
if (starts_with($name, DIR_SEPARATOR)) {
return cut_string_end($dir, DIR_SEPARATOR) . $name;
}
return ($name ? ensure_ends_with($dir, DIR_SEPARATOR) : $dir) . $name;
}
/** @var DirManager */
$DM = null;
/*
* Теперь определим DirManager. Мы его можем взять:
*/
if ($folding) {
//1. Из ресурсов фолдинга
$DM = $folding->getResourcesDm($ident, 'src');
} else {
//2. Обычный resources->images, если фолдинг не установлен
$DM = DirManager::images();
}
/*
* Определим список показываемых картинок по атрибуту $name. Пример тега:
* {postimg type='tr' ident='matrix' name='mao.gif mu.png mu.png'}
* Просто разделим значение атрибута $name по точкам и пробелам и склеим в названия картинок.
*/
$NAMES = preg_split("/[. ]/", $name);
$DI = $DM ? $DM->getDirItem($dir, $name) : DirItem::inst($dir, $name);
if (count($NAMES) % 2 != 0 || $DI->isImg()) {
//Указано что-то непонятное - не чётное кол-во составных элементов
return $DI;
}
$IMAGES = array();
for ($i = 0; $i < count($NAMES); $i += 2) {
$imgName = $NAMES[$i] . '.' . $NAMES[$i + 1];
$IMAGES[] = $DM ? $DM->getDirItem($dir, $imgName) : DirItem::inst($dir, $imgName);
}
return $IMAGES;
}