本文整理汇总了PHP中TYPO3\TYPO3CR\Domain\Model\NodeInterface::getLabel方法的典型用法代码示例。如果您正苦于以下问题:PHP NodeInterface::getLabel方法的具体用法?PHP NodeInterface::getLabel怎么用?PHP NodeInterface::getLabel使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类TYPO3\TYPO3CR\Domain\Model\NodeInterface
的用法示例。
在下文中一共展示了NodeInterface::getLabel方法的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: render
/**
* @param NodeInterface $node A document node
* @return string
*/
public function render(NodeInterface $node)
{
$output = '/' . $node->getLabel();
$flowQuery = new FlowQuery(array($node));
$nodes = $flowQuery->parents('[instanceof TYPO3.Neos:Document]')->get();
/** @var NodeInterface $node */
foreach ($nodes as $node) {
$output = '/' . $node->getLabel() . $output;
}
return $output;
}
示例2: generateUriPathSegment
/**
* Generates a URI path segment for a given node taking it's language dimension into account
*
* @param NodeInterface $node Optional node to determine language dimension
* @param string $text Optional text
* @return string
*/
public function generateUriPathSegment(NodeInterface $node = null, $text = null)
{
if ($node) {
$text = $text ?: $node->getLabel() ?: $node->getName();
$dimensions = $node->getContext()->getDimensions();
if (array_key_exists('language', $dimensions) && $dimensions['language'] !== array()) {
$locale = new Locale($dimensions['language'][0]);
$language = $locale->getLanguage();
}
} elseif (strlen($text) === 0) {
throw new Exception('Given text was empty.', 1457591815);
}
$text = $this->transliterationService->transliterate($text, isset($language) ? $language : null);
return Transliterator::urlize($text);
}
示例3: processNodeForEditorPlugins
/**
* Returns an array with the data needed by for example the Hallo and Aloha
* link plugins to represent the passed Node instance.
*
* @param NodeInterface $node
* @return array
*/
protected function processNodeForEditorPlugins(NodeInterface $node)
{
return array('id' => $node->getPath(), 'name' => $node->getLabel(), 'url' => $this->uriBuilder->uriFor('show', array('node' => $node), 'Frontend\\Node', 'TYPO3.Neos'), 'type' => 'neos/internal-link');
}
示例4: getACLPropertiesForNode
protected function getACLPropertiesForNode(NodeInterface $node)
{
$properties = ['nodeIdentifier' => $node->getIdentifier(), 'nodePath' => $node->getPath(), 'nodeLabel' => $node->getLabel(), 'nodeType' => $node->getNodeType()->getName(), 'nodeLevel' => $node->getDepth()];
return $properties;
}
示例5: setNode
/**
* Set the "context node" this operation was working on.
*
* @param NodeInterface $node
* @return void
*/
public function setNode(NodeInterface $node)
{
$this->nodeIdentifier = $node->getIdentifier();
$this->workspaceName = $node->getContext()->getWorkspaceName();
$this->dimension = $node->getContext()->getDimensions();
$context = $node->getContext();
if ($context instanceof ContentContext && $context->getCurrentSite() !== null) {
$siteIdentifier = $this->persistenceManager->getIdentifierByObject($context->getCurrentSite());
} else {
$siteIdentifier = null;
}
$this->data = Arrays::arrayMergeRecursiveOverrule($this->data, array('nodeContextPath' => $node->getContextPath(), 'nodeLabel' => $node->getLabel(), 'nodeType' => $node->getNodeType()->getName(), 'site' => $siteIdentifier));
$node = self::getClosestAggregateNode($node);
if ($node !== null) {
$this->documentNodeIdentifier = $node->getIdentifier();
$this->data = Arrays::arrayMergeRecursiveOverrule($this->data, array('documentNodeContextPath' => $node->getContextPath(), 'documentNodeLabel' => $node->getLabel(), 'documentNodeType' => $node->getNodeType()->getName()));
}
}
示例6: addGenericEditingMetadata
/**
* Collects metadata attributes used to allow editing of the node in the Neos backend.
*
* @param array $attributes
* @param NodeInterface $node
* @return array
*/
protected function addGenericEditingMetadata(array $attributes, NodeInterface $node)
{
$attributes['typeof'] = 'typo3:' . $node->getNodeType()->getName();
$attributes['about'] = $node->getContextPath();
$attributes['data-node-_identifier'] = $node->getIdentifier();
$attributes['data-node-__workspace-name'] = $node->getWorkspace()->getName();
$attributes['data-node-__label'] = $node->getLabel();
if ($node->getNodeType()->isOfType('TYPO3.Neos:ContentCollection')) {
$attributes['rel'] = 'typo3:content-collection';
}
// these properties are needed together with the current NodeType to evaluate Node Type Constraints
// TODO: this can probably be greatly cleaned up once we do not use CreateJS or VIE anymore.
if ($node->getParent()) {
$attributes['data-node-__parent-node-type'] = $node->getParent()->getNodeType()->getName();
}
if ($node->isAutoCreated()) {
$attributes['data-node-_name'] = $node->getName();
$attributes['data-node-_is-autocreated'] = 'true';
}
if ($node->getParent() && $node->getParent()->isAutoCreated()) {
$attributes['data-node-_parent-is-autocreated'] = 'true';
// we shall only add these properties if the parent is actually auto-created; as the Node-Type-Switcher in the UI relies on that.
$attributes['data-node-__parent-node-name'] = $node->getParent()->getName();
$attributes['data-node-__grandparent-node-type'] = $node->getParent()->getParent()->getNodeType()->getName();
}
return $attributes;
}
示例7: nodePropertyChanged
/**
* Add the new label to a previously created node property changed event
*
* @param NodeInterface $node
* @param $propertyName
* @param $oldValue
* @param $value
* @return void
*/
public function nodePropertyChanged(NodeInterface $node, $propertyName, $oldValue, $value)
{
if (!$this->eventEmittingService->isEnabled()) {
return;
}
if ($oldValue === $value) {
return;
}
$this->changedNodes[$node->getContextPath()]['newLabel'] = $node->getLabel();
$this->changedNodes[$node->getContextPath()]['node'] = $node;
}
示例8: processNodeForEditorPlugins
/**
* Returns an array with the data needed by for example the Hallo and Aloha
* link plugins to represent the passed NodeInterface instance.
*
* @param \TYPO3\TYPO3CR\Domain\Model\NodeInterface $node
* @return array
*/
protected function processNodeForEditorPlugins(\TYPO3\TYPO3CR\Domain\Model\NodeInterface $node)
{
return array('id' => $node->getPath(), 'name' => $node->getLabel(), 'url' => $this->uriBuilder->setLinkProtectionEnabled(FALSE)->uriFor('show', array('node' => $node), 'Frontend\\Node', 'TYPO3.TYPO3', ''), 'type' => 'phoenix/internal-link');
}
示例9: generateUriPathSegmentsForNode
/**
* Traverses through the tree starting at the given root node and sets the uriPathSegment property derived from
* the node label.
*
* @param NodeInterface $node The node where the traversal starts
* @param boolean $dryRun
* @return void
*/
protected function generateUriPathSegmentsForNode(NodeInterface $node, $dryRun)
{
if ((string) $node->getProperty('uriPathSegment') === '') {
$name = $node->getLabel() ?: $node->getName();
$uriPathSegment = Utility::renderValidNodeName($name);
if ($dryRun === FALSE) {
$node->setProperty('uriPathSegment', $uriPathSegment);
$this->output->outputLine('Added missing URI path segment for "%s" (%s) => %s', array($node->getPath(), $name, $uriPathSegment));
} else {
$this->output->outputLine('Found missing URI path segment for "%s" (%s) => %s', array($node->getPath(), $name, $uriPathSegment));
}
}
foreach ($node->getChildNodes('TYPO3.Neos:Document') as $childNode) {
$this->generateUriPathSegmentsForNode($childNode, $dryRun);
}
}
示例10: collectTreeNodeData
/**
* @param NodeInterface $node
* @param boolean $expand
* @param array $children
* @param boolean $hasChildNodes
* @param boolean $matched
* @return array
*/
public function collectTreeNodeData(NodeInterface $node, $expand = TRUE, array $children = array(), $hasChildNodes = FALSE, $matched = FALSE)
{
$isTimedPage = FALSE;
$now = new \DateTime();
$now = $now->getTimestamp();
$hiddenBeforeDateTime = $node->getHiddenBeforeDateTime();
$hiddenAfterDateTime = $node->getHiddenAfterDateTime();
if ($hiddenBeforeDateTime !== NULL && $hiddenBeforeDateTime->getTimestamp() > $now) {
$isTimedPage = TRUE;
}
if ($hiddenAfterDateTime !== NULL) {
$isTimedPage = TRUE;
}
$classes = array();
if ($isTimedPage === TRUE && $node->isHidden() === FALSE) {
array_push($classes, 'neos-timedVisibility');
}
if ($node->isHidden() === TRUE) {
array_push($classes, 'neos-hidden');
}
if ($node->isHiddenInIndex() === TRUE) {
array_push($classes, 'neos-hiddenInIndex');
}
if ($matched) {
array_push($classes, 'neos-matched');
}
$uriBuilder = $this->controllerContext->getUriBuilder();
$nodeType = $node->getNodeType();
$nodeTypeConfiguration = $nodeType->getFullConfiguration();
if ($node->getNodeType()->isOfType('TYPO3.Neos:Document')) {
$uriForNode = $uriBuilder->reset()->setFormat('html')->setCreateAbsoluteUri(TRUE)->uriFor('show', array('node' => $node), 'Frontend\\Node', 'TYPO3.Neos');
} else {
$uriForNode = '#';
}
$label = $node->getLabel();
$nodeTypeLabel = $node->getNodeType()->getLabel();
$treeNode = array('key' => $node->getContextPath(), 'title' => $label, 'fullTitle' => $node->getProperty('title'), 'nodeTypeLabel' => $nodeTypeLabel, 'tooltip' => '', 'href' => $uriForNode, 'isFolder' => $hasChildNodes, 'isLazy' => $hasChildNodes && !$expand, 'nodeType' => $nodeType->getName(), 'isAutoCreated' => $node->isAutoCreated(), 'expand' => $expand, 'addClass' => implode(' ', $classes), 'name' => $node->getName(), 'iconClass' => isset($nodeTypeConfiguration['ui']) && isset($nodeTypeConfiguration['ui']['icon']) ? $nodeTypeConfiguration['ui']['icon'] : '', 'isHidden' => $node->isHidden());
if ($hasChildNodes) {
$treeNode['children'] = $children;
}
return $treeNode;
}
示例11: collectTreeNodeData
/**
* @param \TYPO3\TYPO3CR\Domain\Model\NodeInterface $node
* @param boolean $expand
* @param array $children
* @param string $contentTypeFilter
* @return array
*/
public function collectTreeNodeData(\TYPO3\TYPO3CR\Domain\Model\NodeInterface $node, $expand = TRUE, array $children = array())
{
$contentType = $node->getContentType()->getName();
$classes = array(strtolower(str_replace(array('.', ':'), array('_', '-'), $contentType)));
if ($node->isHidden() === TRUE) {
array_push($classes, 'hidden');
}
if ($node->isHiddenInIndex() === TRUE) {
array_push($classes, 'hiddenInIndex');
}
$uriBuilder = $this->controllerContext->getUriBuilder();
$hasChildNodes = $children !== array() ? TRUE : FALSE;
$contentType = $node->getContentType()->getName();
$treeNode = array('key' => $node->getContextPath(), 'title' => $node->getContentType() === 'TYPO3.Phoenix.ContentTypes:Page' ? $node->getProperty('title') : $node->getLabel(), 'href' => $uriBuilder->reset()->setFormat('html')->setCreateAbsoluteUri(TRUE)->uriFor('show', array('node' => $node), 'Frontend\\Node', 'TYPO3.TYPO3', ''), 'isFolder' => $hasChildNodes, 'isLazy' => $hasChildNodes && !$expand, 'contentType' => $contentType, 'expand' => $expand, 'addClass' => implode(' ', $classes), 'name' => $node->getName());
if ($hasChildNodes) {
$treeNode['children'] = $children;
}
return $treeNode;
}
示例12: sendAttendeeRemovedEmail
/**
* @param NodeInterface $event
* @param NodeInterface $person
*
* @return void
*/
public function sendAttendeeRemovedEmail(NodeInterface $event, NodeInterface $person)
{
$personName = $person->getLabel();
$eventName = $event->getLabel();
$plainTextMessage = $personName . ' heeft zicht afgemeld voor ' . $eventName . '. Met vriendelijke groet Bu jitsu do';
$this->mailerService->sendEmail($this->eventMailSettings, 'Afmelding voor ' . $event->getLabel(), $this->eventMailSettings['templates']['removedAttendee'], ['person' => $person, 'event' => $event], $plainTextMessage);
}