public function tagGalleryPhotos()
 {
     $galleryNodeRef = $this->NodeRefService->parseFromString('media-gallery:test-gallery');
     $interval = 25;
     $offset = 0;
     $nq = new NodeQuery();
     $nq->setParameter('Elements.in', 'image');
     $nq->setParameter('NodeRefs.only', true);
     $nq->setOrderBy('ActiveDate', 'DESC');
     $nq->setLimit($interval);
     $nq->setOffset($offset);
     $nq = $this->NodeService->findAll($nq, true);
     $nodes = $nq->getResults();
     while (count($nodes) > 0) {
         foreach ($nodes as $node) {
             $tag = new Tag($node->getElement()->getSlug(), $node->getSlug(), '#media-gallery-items');
             try {
                 $this->NodeService->addOutTag($galleryNodeRef, $tag);
                 echo $node->Slug . "\n";
             } catch (Exception $e) {
                 echo $node->Slug . " error: " . $e->getMessage() . "\n";
             }
         }
         $offset = $offset + $interval;
         unset($nodes);
         $nq->setLimit($interval);
         $nq->setOffset($offset);
         $nq->clearResults();
         $nq = $this->NodeService->findAll($nq, true);
         $nodes = $nq->getResults();
     }
 }
 protected function getNodeRef()
 {
     $noderef = $this->Request->getParameter('nodeRef');
     if ($noderef == null) {
         $elementSlug = $this->Request->getParameter('ElementSlug');
         $nodeSlug = $this->Request->getParameter('NodeSlug');
     } else {
         if (($i = strpos($noderef, '#')) === FALSE) {
             return $this->NodeRefService->parseFromString($noderef);
         } else {
             return array($this->NodeRefService->parseFromString(substr($noderef, 0, $i)), substr($noderef, $i));
         }
     }
     if (empty($elementSlug) && empty($nodeSlug)) {
         return null;
     }
     $element = $this->ElementService->getBySlug($elementSlug);
     if ($nodeSlug == '') {
         $noderef = new NodeRef($element);
     } else {
         $noderef = new NodeRef($element, $nodeSlug);
     }
     return $noderef;
 }