예제 #1
0
 /**
  * Удаляет лист 
  */
 public function delete()
 {
     if (empty($this->nId)) {
         throw new SystemRegisterException('Deletion failed! Attribute `id` empty');
     }
     SystemRegisterSample::delete($this->parent, $this->nId, false);
 }
예제 #2
0
 public function delete($key)
 {
     //
     $aNewPath = SystemRegisterHelper::responsePath($key);
     // Если путь больше чем 1
     if (sizeof($aNewPath) > 1) {
         return SystemRegisterHelper::delegate($this->aCurrentPath, $aNewPath, 'delete', array());
     } else {
         // Если текущий уровень - первый, то вставки и обновления запрещены
         $this->checkFirstLevel();
         // Получаем элемент
         $element = $this->get($key);
         // Если это просто лист
         if ($element instanceof SystemRegisterPrimitive) {
             $element->delete();
         } else {
             // Из папки
             $aChilds = SystemRegisterSample::selectChild($element->getId());
             // Удаляем из бд
             foreach ($aChilds as $key => $element2) {
                 $element->delete($element2['name']);
             }
             SystemRegisterSample::delete($this, $element->getId());
         }
     }
 }