/** * ΠΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ². * * ΠΡΡΠ°ΡΠΊΠΈΠ²Π°Π΅Ρ ΠΈΠ· ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΡΡΠ»Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΠ·Π°ΡΠΈΡ Π²ΠΈΠ΄ΠΆΠ΅ΡΠ°, Π² ΠΏΠ°ΡΠ΅ Ρ ΠΊΠΎΡΠΎΡΡΠΌ * ΡΠ°Π±ΠΎΡΠ°Π΅Ρ, Π² ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ β ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ year, month, day. * * @return array ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π²ΠΈΠ΄ΠΆΠ΅ΡΠ°. * * @param Context $ctx ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ Π²ΡΠ·ΠΎΠ²Π°. */ protected function getRequestOptions(Context $ctx, array $params) { if (is_array($options = parent::getRequestOptions($ctx, $params))) { // ΠΡΠΆΠ½ΠΎ Π΄Π»Ρ ΠΏΠΎΠ΄Π°Π²Π»Π΅Π½ΠΈΡ ΠΊΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ. $options['apath'] = $ctx->query(); // Π‘Π°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ ΠΏΠ°ΡΡΠΈΠΌ ΡΡΠ», Ρ.ΠΊ. Π±ΡΠ΄Π΅ΠΌ ΠΏΠΎΠ΄Π³Π»ΡΠ΄ΡΠ²Π°ΡΡ Π·Π° Π΄ΡΡΠ³ΠΈΠΌΠΈ Π²ΠΈΠ΄ΠΆΠ΅ΡΠ°ΠΌΠΈ. // FIXME: ΡΡΠΎ Π½Π°Π΄ΠΎ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΠΈΠ· ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ°. $url = bebop_split_url(); if (!empty($url['args'][$this->host])) { // ΠΡΡΠ°ΡΠΊΠΈΠ²Π°Π΅ΠΌ Π½ΡΠΆΠ½ΡΠ΅ Π½Π°ΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ. foreach (array('year', 'month', 'day') as $key) { // ΠΠ΅ΡΠ²ΡΠΉ ΠΆΠ΅ ΠΎΡΡΡΡΡΡΠ²ΡΡΡΠΈΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΠΏΡΠ΅ΡΡΠ²Π°Π΅Ρ ΡΠ΅ΠΏΠΎΡΠΊΡ. if (!array_key_exists($key, $url['args'][$this->host])) { break; } // ΠΡΠ»ΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ Π½Π°ΠΉΠ΄Π΅Π½ -- ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΠΌ Π΅Π³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΠΌ ΡΠΊΠ°Π½ΠΈΡΠΎΠ²Π°ΡΡ. $options[$key] = $url['args'][$this->host][$key]; } } } // ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΠ·Π°ΡΠΈΡ. foreach (array('year', 'month', 'day') as $key) { if (array_key_exists($key, $options)) { $options['current'][$key] = $options[$key]; } elseif (array_key_exists($k = $this->host . '_' . $key, $_GET)) { $options['current'][$key] = $_GET[$k]; } } return $options; }
/** * ΠΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ². * * @param Context $ctx ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ Π·Π°ΠΏΡΠΎΡΠ°. * * @return array ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π²ΠΈΠ΄ΠΆΠ΅ΡΠ°. */ protected function getRequestOptions(Context $ctx, array $params) { $options = parent::getRequestOptions($ctx, $params); $options['uid'] = $this->ctx->user->id; // $this->get('uid'); $options['#cache'] = false; return $options; }
protected function getRequestOptions(Context $ctx, array $params) { $options = parent::getRequestOptions($ctx, $params); $options['q'] = $this->get('query'); $options['page'] = $this->get('page', 1); $options['limit'] = $this->per_page; $options['#cache'] = false; return $options; }
/** * ΠΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ². * * @param Context $ctx ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ Π·Π°ΠΏΡΠΎΡΠ°. * * @return array ΠΌΠ°ΡΡΠΈΠ² Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ Π²ΠΈΠ΄ΠΆΠ΅ΡΠ°. */ protected function getRequestOptions(Context $ctx, array $params) { $options = parent::getRequestOptions($ctx, $params); if (!$params['document']) { return false; } $options['doc'] = $params['document']['id']; $options['classes'] = $this->classes; $options['field'] = $this->field; $options['sort'] = $this->sort; return $options; }
protected function getRequestOptions(Context $ctx, array $params) { $options = parent::getRequestOptions($ctx, $params); $options['uid'] = $ctx->user->id; $options['mode'] = $this->get('mode'); if (null === ($options['rel'] = $params['document'])) { $options['relname'] = null; } elseif ('user' == $ctx->document->class) { $options['relname'] = empty($ctx->document->fullname) ? $ctx->document->name : $ctx->document->fullname; } else { $options['relname'] = $ctx->document->name; } return $this->options = $options; }
/** * ΠΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ². * * ΠΡΠ±ΠΈΡΠ°Π΅Ρ ΠΈΠ· ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ, ΠΎΡΠ½ΠΎΡΡΡΠΈΠ΅ΡΡ ΠΊ ΡΡΠΎΠΌΡ Π²ΠΈΠ΄ΠΆΠ΅ΡΡ. * * @param Context $ctx ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ Π·Π°ΠΏΡΠΎΡΠ°. * * @return array ΠΌΠ°ΡΡΠΈΠ² Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ. */ protected function getRequestOptions(Context $ctx, array $params) { $options = parent::getRequestOptions($ctx, $params); if ($this->onlyiflast and isset($params['document'])) { return $this->halt(); } if ('root' == $this->fixed) { $options['section'] = $params['root']; } elseif ('always' == $this->fallbackmode and $this->fixed) { $options['section'] = array('id' => $this->fixed); } elseif ($params['section']) { $options['section'] = $params['section']; } if (!empty($this->types)) { $options['classes'] = array_intersect((array) $this->types, $ctx->user->getAccess(ACL::READ)); } if ($this->onlyathome and $options['section'] != $params['root']) { return $this->halt(); } if ($this->skipcurrent and isset($options['document'])) { $options['document'] = $options['document']['id']; } if (is_array($tmp = $this->get('classes'))) { $options['filter']['class'] = array_unique($tmp); } // ΠΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ Π²ΡΠ±ΠΎΡΠΊΡ ΠΏΠΎ Π°ΡΡ ΠΈΠ²Ρ. foreach (array('year', 'month', 'day') as $key) { if (null === ($tmp = $this->get($key))) { break; } $options['filter']['node.created.' . $key] = $tmp; } // ΠΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ Π²ΡΠ±ΠΎΡ ΡΡΡΠ°Π½ΠΈΡΡ. if ($options['limit'] = $this->get('limit', $this->limit)) { if ($this->pager) { $options['page'] = $this->get('page', 1); } else { $options['page'] = 1; } $options['offset'] = ($options['page'] - 1) * $options['limit']; } else { $options['offset'] = null; } // ΠΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΡΡ ΡΠΈΠ»ΡΡΡΠ°ΡΠΈΡ. if ($tmp = $this->get('filter')) { $options['filter'] = $tmp; } $options['sort'] = $this->get('sort', $this->sort); return $options; }
protected function getRequestOptions(Context $ctx, array $params) { $options = parent::getRequestOptions($ctx, $params); $options['#cache'] = false; $options['action'] = $this->get('action', 'status'); $options['vote'] = $this->get('vote'); if (!($options['node'] = $params['document'])) { return $this->halt(); } if (null !== ($options['rate'] = $this->get('rate'))) { $options['action'] = 'rate'; } return $options; }
/** * ΠΡΡΠ°ΡΠΊΠΈΠ²Π°Π΅Ρ ΠΈΠ· ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π²ΠΈΠ΄ΠΆΠ΅ΡΠ°. * * @return array ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π²ΠΈΠ΄ΠΆΠ΅ΡΡ * * @param Context $ctx ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ Π·Π°ΠΏΡΠΎΡΠ°. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ GET-ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ: * action, ΠΊΠΎΠ΄ ΡΠ°Π·Π΄Π΅Π»Π° (Π΅ΡΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π²ΠΎΠ·Π²ΡΠ°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ ΡΠΎΡΠ΅Π΄ΡΡ ), ΠΊΠΎΠ΄ * Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ° (Π΅ΡΠ»ΠΈ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π²ΠΎΠ·Π²ΡΠ°Ρ ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°). */ protected function getRequestOptions(Context $ctx, array $params) { $options = parent::getRequestOptions($ctx, $params); $options['action'] = 'view'; if ($this->fixed) { $options['document'] = array('id' => $this->fixed); } elseif (!($options['document'] = $params['document'])) { return $this->halt(); $options['section'] = $params['section']; if (null === ($options['action'] = $this->get('action', $this->mode))) { $options['action'] = 'view'; } } return $options; }
protected function getRequestOptions(Context $ctx, array $params) { $options = parent::getRequestOptions($ctx, $params); $options['#cache'] = false; // Π Π΅ΠΆΠΈΠΌ ΡΠ°Π±ΠΎΡΡ Π·Π°Π΄Π°ΡΡΡΡ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΎΠΌ, Π½ΠΎ ΠΏΠ΅ΡΠ΅ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ ΠΈΠ·Π²Π½Π΅. $options['mode'] = $this->get('mode', 'simple'); // ΠΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠΎΠ²Π°ΡΠ°. if (null !== ($options['add'] = $this->get('add'))) { $options['mode'] = 'add'; $options['qty'] = $this->get('qty', 1); } if (empty($options['mode'])) { throw new WidgetHaltedException(); } return $options; }
protected function getRequestOptions(Context $ctx, array $params) { $options = parent::getRequestOptions($ctx, $params); $options['status'] = $this->get('status'); $options['mode'] = $this->mode; if (empty($options['mode'])) { $options['mode'] = 'list'; } if ('linked' == $options['mode']) { $options['mode'] = 'list'; } switch ($options['mode']) { case 'list': switch ($this->startwith) { case 'last': $options['default'] = 'last'; if (!($options['doc'] = $params['document'])) { return $this->halt(); } break; case 'first': $options['default'] = 1; if (!($options['doc'] = $params['document'])) { return $this->halt(); } break; case 'tracker': $options['default'] = 1; $options['action'] = 'tracker'; $options['doc'] = $params['document']; if (null === $this->perpage) { return $this->halt(); } break; } break; case 'last': break; } if (empty($options['default'])) { $options['default'] = 1; } $options['page'] = $this->get('page', $options['default']); return $options; }
protected function getRequestOptions(Context $ctx, array $params) { $options = parent::getRequestOptions($ctx, $params); if ($params['section'] or $params['document']) { mcms::debug("ΠΠΈΠ΄ΠΆΠ΅Ρ {$this->getInstanceName()} Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ°Ρ , ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΠ·ΡΠ΅ΠΌΡΡ ΠΊΠΎΠ΄ΠΎΠΌ ΡΠ°Π·Π΄Π΅Π»Π° ΠΈΠ»ΠΈ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°."); throw new WidgetHaltedException(); } if (count($ctx->apath) == 1) { $options['user'] = $ctx->apath[0]; } elseif (count($ctx->apath) > 1) { throw new PageNotFoundException(); } else { $options['user'] = null; } $options['limit'] = $this->limit ? $this->limit : 10; $options['page'] = $this->get('page', 1); return $options; }
/** * ΠΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ². * * @param Context $ctx ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ Π·Π°ΠΏΡΠΎΡΠ°. * * @return array Π²ΡΠ±ΡΠ°Π½Π½ΡΠ΅ ΠΈΠ· ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ, ΠΎΡΠ½ΠΎΡΡΡΠΈΠ΅ΡΡ ΠΊ Π²ΠΈΠ΄ΠΆΠ΅ΡΡ. */ protected function getRequestOptions(Context $ctx, array $params) { $options = parent::getRequestOptions($ctx, $params); $options['root'] = $params['section']['id']; switch ($this->fixed) { case 'root': $options['root'] = $params['root']['id']; break; case 'parent': $options['parent'] = true; break; default: if (is_numeric($this->fixed)) { $options['root'] = $this->fixed; } } return $this->options = $options; }
/** * ΠΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ². * * @param Context $ctx ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π·Π°ΠΏΡΠΎΡΠ°. * * @return array ΠΌΠ°ΡΡΠΈΠ² Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ Π²ΠΈΠ΄ΠΆΠ΅ΡΠ°. */ protected function getRequestOptions(Context $ctx, array $params) { $options = parent::getRequestOptions($ctx, $params); if ($this->forcefixed) { if ('page' == ($options['root'] = $this->fixed)) { $options['root'] = $params['root']; } } else { $options['root'] = $params['section']; } $options['dynamic'] = $params['section'] !== null; if ($this->illcache) { $options['anchor'] = $params['section']; } if (!empty($options['root']) and !is_numeric($options['root']) and !is_object($options['root'])) { throw new InvalidArgumentException(t('ΠΠΌΠ΅ΡΡΠΎ ΠΊΠΎΠ΄Π° ΡΠ°Π·Π΄Π΅Π»Π° Π² Π²ΠΈΠ΄ΠΆΠ΅Ρ %name ΠΏΡΠΈΡΡΠ» ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΠΌΡΡΠΎΡ: %trash.', array('%name' => $this->name, '%trash' => $options['root']))); } return $options; }
public function getRequestOptions(Context $ctx, array $params) { $options = parent::getRequestOptions($ctx, $params); $options['type'] = $this->get('type', $this->type); $options['default'] = $this->get('default', array()); $options['#cache'] = false; if (null === ($options['root'] = $params['section']['id'])) { $options['root'] = $this->section_default; } if ('default' != ($options['status'] = $this->get('status', 'default'))) { $options['node'] = $this->get('node'); } $options['stripped'] = empty($this->stripped) ? 0 : 1; if (null !== ($tmp = $this->get('parent')) and is_numeric($tmp)) { $options['parent_id'] = intval($tmp); } else { $options['parent_id'] = null; } return $this->options = $options; }
protected function getRequestOptions(Context $ctx, array $params) { $options = parent::getRequestOptions($ctx, $params); $options['#cache'] = false; return $options; }
/** * ΠΡΠ΅ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ². * * @param Context $ctx ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ Π·Π°ΠΏΡΠΎΡΠ°. * * @return array ΠΌΠ°ΡΡΠΈΠ² Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ Π²ΠΈΠ΄ΠΆΠ΅ΡΠ°. */ protected function getRequestOptions(Context $ctx, array $params) { $options = parent::getRequestOptions($ctx, $params); $options['types'] = $this->classes; return $options; }