public function Link($action = null)
 {
     $cModField = ContentModuleField::curr();
     $link = '';
     if ($cModField) {
         $link = ContentModuleField::curr()->Link('modulefield');
         $query = '';
         if (stripos($link, '?') !== false) {
             $parts = explode('?', $link);
             $link = $parts[0];
             $query = '?' . $parts[1];
         }
         $link = Controller::join_links($link, $this->getName(), $action, $query);
     } else {
         $link = parent::Link($action);
     }
     return $link;
 }
 public function Link($action = null)
 {
     $cModField = ContentModuleField::curr();
     $link = '';
     if ($cModField) {
         $link = ContentModuleField::curr()->Link('modulefield');
         $query = '';
         if (stripos($link, '?') !== false) {
             $parts = explode('?', $link);
             $link = $parts[0];
             $query = '?' . $parts[1];
         }
         $name = $this->name;
         if (($pos = stripos($name, '[')) !== false) {
             $name = substr($name, 0, $pos);
             $action = substr($this->name, $pos + 1, strlen($this->name) - 1 - ($pos + 1)) . 'Tree';
         }
         $link = Controller::join_links($link, $name, $action, $query);
     } else {
         $link = parent::Link($action);
     }
     return $link;
 }