Beispiel #1
0
         $allowTrigger = true;
         $nodeArr = array();
     }
     for ($i = 0; $i < sizeof($treeElements); $i++) {
         $typeController = 'Type_Controller_' . ucfirst($treeElements[$i]['tree_type']);
         $resArr = $nodeArr;
         $resArr[] = $treeElements[$i]['tree_id'];
         $resourse = implode('/', $resArr);
         //  echo $resourse."\n";
         $access = K_Access::aclTree()->isAllowed(K_Auth::getRoles(), $resourse, true);
         // var_dump(K_Access::aclTree()->lastResource);
         if (K_Access::aclTree()->lastResource == null) {
             $access = $allowTrigger;
         }
         if ($access || $treeElements[$i]['tree_id'] == '1') {
             if ($treeElements[$i]['subElements']) {
                 $nodeState = 'closed';
             } else {
                 $nodeState = '';
             }
             if ($treeElements[$i]['tree_type'] == 'list') {
                 $list = K_CupItems::getItems($treeElements[$i]['tree_id'], $treeElements[$i]['tree_type']);
                 $allowTypes = array_map('trim', explode(',', $list[0]['types']));
             } else {
                 $allowTypes = $typeController::$allowedChildren;
             }
             if (!in_array("all", $allowTypes)) {
                 $allows = array("types" => array("valid_children" => $allowTypes));
             }
             $treeStructure = array('attr' => array('id' => 'node_' . $treeElements[$i]['tree_id'], 'rel' => $access ? $treeElements[$i]['tree_type'] : "disable_n"), 'data' => array("title" => $treeElements[$i]['tree_title'], 'icon' => "/adm/img/tree/" . $treeElements[$i]['tree_type'] . ".png", "attr" => array("href" => "#", "class" => $access ? "" : "ui-state-disabled")), "metadata" => array('id' => $treeElements[$i]['tree_id']), 'state' => $nodeState);
             $treeStructure['metadata']["jstree"] = $allows;
             $treeStructureArr[] = $treeStructure;
             // $treeStructure['metadata']['jstree']=$allows;
         }
     }
     $this->putJSON($treeStructureArr);
 }
 /*
 Перемещяет нод в дереве
 $key, $base_key, $position = 'bottom'
 */
 public function moveAction()
 {
     $this->disableRender = true;
     $key = (int) $_POST['key'];
     $baseKey = (int) $_POST['base_key'];
     $position = $_POST['position'];
     $copy = (int) $_POST['copy'];
     $pasteKey = (int) $_POST['parent_key'];
     $node = K_Tree::getNode($key);
     if ($node['tree_bloked'] == '1') {
         $this->putAjax('{ "status" : false}');
     }
     if ($copy) {