/**
  * Parses head contents
  *
  * @param DOMNode $node 
  * @return void
  */
 private function parseHead(DOMNode $node)
 {
     if ($node->hasChildNodes()) {
         $nList = $node->childNodes;
         foreach ($nList as $n) {
             if ($n->nodeName == self::REMOVE) {
                 if ($key = $n->getAttribute('key')) {
                     if (array_key_exists($key, $this->headData)) {
                         unset($this->headData[$key]);
                     } else {
                     }
                 }
             } else {
                 if ($n->nodeName == self::TITLE) {
                     if ($n->getAttribute('type') == 'append') {
                         Fox::getHelper('core/head')->addTitle($n->nodeValue, TRUE);
                     } else {
                         if ($n->getAttribute('type') == 'prepend') {
                             Fox::getHelper('core/head')->addTitle($n->nodeValue, FALSE);
                         } else {
                             Fox::getHelper('core/head')->setTitle($n->nodeValue);
                         }
                     }
                 } else {
                     if ($n->nodeName == self::META_DESCRIPTION) {
                         if ($n->getAttribute('type') == 'append') {
                             Fox::getHelper('core/head')->addMetaDescription($n->nodeValue, TRUE);
                         } else {
                             if ($n->getAttribute('type') == 'prepend') {
                                 Fox::getHelper('core/head')->addMetaDescription($n->nodeValue, FALSE);
                             } else {
                                 Fox::getHelper('core/head')->setMetaDescription($n->nodeValue);
                             }
                         }
                     } else {
                         if ($n->nodeName == self::META_KEYWORD) {
                             if ($n->getAttribute('type') == 'append') {
                                 Fox::getHelper('core/head')->addMetaKeywords($n->nodeValue, TRUE);
                             } else {
                                 if ($n->getAttribute('type') == 'prepend') {
                                     Fox::getHelper('core/head')->addMetaKeywords($n->nodeValue, FALSE);
                                 } else {
                                     Fox::getHelper('core/head')->setMetaKeywords($n->nodeValue);
                                 }
                             }
                         } else {
                             if ($n->hasAttributes()) {
                                 if ($n->nodeName == self::SCRIPT) {
                                     $n->appendChild($n->ownerDocument->createTextNode(''));
                                     $kSrc = 'src';
                                 } else {
                                     $kSrc = 'href';
                                 }
                                 $nSrc = $n->getAttribute($kSrc);
                                 if ($n->hasAttribute(self::_GLOBAL)) {
                                     $n->setAttribute($kSrc, Fox::getSiteUrl() . $nSrc);
                                     $n->removeAttribute(self::_GLOBAL);
                                 } else {
                                     $n->setAttribute($kSrc, Fox::getThemeUrl($nSrc));
                                 }
                                 if ($nSrc) {
                                     $this->headData[$nSrc] = array('type' => $kSrc, 'node' => $n);
                                 } else {
                                     $this->headData[] = array('type' => $kSrc, 'node' => $n);
                                 }
                             }
                         }
                     }
                 }
             }
         }
     }
 }