function onBeforeWrite()
 {
     parent::onBeforeWrite();
     if (isset($_REQUEST["MergeID"])) {
         $mergeID = intval($_REQUEST["MergeID"]);
         if ($mergeID) {
             $this->mergeInto = WebPortfolioWhatWeDidDescriptor::get()->byID($mergeID);
         }
     }
     if ($page = WebPortfolioPage::get()->first()) {
         $link = $page->Link() . 'show/' . $this->Code . "/";
         $this->Code = $page->generateURLSegment($this->Name);
     }
 }
 function onBeforeWrite()
 {
     parent::onBeforeWrite();
     if (isset($_REQUEST["AddWhatWeDid"])) {
         $name = Convert::raw2sql($_REQUEST["AddWhatWeDid"]);
         if ($name) {
             $this->newWhatWeDid = WebPortfolioWhatWeDidDescriptor::get()->filter(array("Name" => $name))->first();
             if (!$this->newWhatWeDid) {
                 $this->newWhatWeDid = new WebPortfolioWhatWeDidDescriptor();
                 $this->newWhatWeDid->Name = $name;
                 $this->newWhatWeDid->write();
                 //TO DO - does not work!!!
             }
         }
     }
 }
 function FilterList()
 {
     $items = WebPortfolioWhatWeDidDescriptor::get()->innerJoin("WebPortfolioItem_WhatWeDid", " \"WebPortfolioItem_WhatWeDid\".\"WebPortfolioWhatWeDidDescriptorID\" = \"WebPortfolioWhatWeDidDescriptor\".\"ID\"");
     foreach ($items as $item) {
         if ($item->Code == $this->currentCode) {
             $item->LinkingMode = "current";
         } else {
             $item->LinkingMode = "link";
         }
     }
     return $items;
 }