/** * Create a sub folder of this one. * Does not store to the database. * @return FOLDER */ public function new_folder() { $Result = parent::new_folder(); $Result->options_id = $this->options_id; return $Result; }
/** * @param FOLDER $fldr * @param integer $state * @param string $title * @param string $allow_id * @access private */ protected function _add_folder($fldr, $state, $title, $allow_id = 'all') { $this->_log("Adding folder [{$title}]..."); $Result = $fldr->new_folder(); $Result->title = $title; $Result->state = $state; $Result->store(); $sec = $Result->security_definition(); $sec->set_inherited(false); if ($allow_id) { if ($allow_id == 'all') { $p = $sec->new_permissions(Privilege_kind_user); $p->ref_id = Baseline_test_owner1_id; $p->set(Privilege_set_folder, Privilege_view, true); $p->set(Privilege_set_entry, Privilege_view, true); $p->set(Privilege_set_comment, Privilege_view, true); $p->set(Privilege_set_folder, Privilege_view_hidden, true); $p->set(Privilege_set_entry, Privilege_view_hidden, true); $p->set(Privilege_set_comment, Privilege_view_hidden, true); $p->store(); $p = $sec->new_permissions(Privilege_kind_user); $p->ref_id = Baseline_test_owner2_id; $p->set(Privilege_set_folder, Privilege_view, true); $p->set(Privilege_set_entry, Privilege_view, true); $p->set(Privilege_set_comment, Privilege_view, true); $p->store(); } else { $p = $sec->new_permissions(Privilege_kind_user); $p->ref_id = Baseline_test_owner1_id; $p->set(Privilege_set_folder, Privilege_view, true); $p->set(Privilege_set_entry, Privilege_view, true); $p->set(Privilege_set_comment, Privilege_view, true); $p->store(); $p = $sec->new_permissions(Privilege_kind_user); $p->ref_id = Baseline_test_owner2_id; $p->set(Privilege_set_folder, Privilege_view, true); $p->set(Privilege_set_entry, Privilege_view, true); $p->set(Privilege_set_comment, Privilege_view, true); $p->store(); } } return $Result; }