Exemplo n.º 1
0
 /**
  * Create a ktapi session
  */
 function setUp()
 {
     $this->ktapi = new KTAPI();
     $this->session = $this->ktapi->start_system_session();
     $this->root = $this->ktapi->get_root_folder();
     $this->bulk = new KTAPI_BulkActions($this->ktapi);
 }
Exemplo n.º 2
0
 /**
  * Create a ktapi session
  */
 function setUp()
 {
     $this->ktapi = new KTAPI();
     $this->session = $this->ktapi->start_system_session();
     $this->root = $this->ktapi->get_root_folder();
     $this->assertTrue($this->root instanceof KTAPI_Folder);
 }
Exemplo n.º 3
0
 function testSystemLogin()
 {
     $ktapi = new KTAPI();
     $session = $ktapi->start_system_session();
     $this->assertTrue(is_a($session, 'KTAPI_SystemSession'));
     $this->assertTrue($session->is_active());
     $session->logout();
     $this->assertFalse($session->is_active());
 }
Exemplo n.º 4
0
 /**
  * Setup the session, add and index the document
  *
  */
 function setUp()
 {
     $this->ktapi = new KTAPI();
     $this->session = $this->ktapi->start_system_session();
     $this->root = $this->ktapi->get_root_folder();
     $doc = array();
     $docId = array();
     // Add documents to DB and lucene index
     $filename = 'Test987.txt';
     $title = 'Test987';
     $this->addNewDocument($title, $filename, 0);
     $filename = 'Test654.txt';
     $title = 'Test654';
     $content = 'Searchable text: abcde ghijk 4567';
     $this->addNewDocument($title, $filename, 1, $content);
     $filename = 'Test321.txt';
     $title = 'Test321';
     $content = 'Searchable text: abcde mnopqr 891011';
     $this->addNewDocument($title, $filename, 2, $content);
 }
Exemplo n.º 5
0
 function setUp()
 {
     $this->ktapi = new KTAPI();
     $this->session = $this->ktapi->start_system_session();
 }
Exemplo n.º 6
0
 /**
  * Add folder permission
  *
  * @author KnowledgeTree Team
  * @access public
  * @param string
  * @param string
  * @param int
  *
  */
 public function add_folder_user_permissions($username, $folder_id, $namespace, $sig_username = '', $sig_password = '', $reason = '')
 {
     $response = $this->_check_electronic_signature($folder_id, $sig_username, $sig_password, $reason, $reason, 'ktcore.transactions.permissions_change');
     if ($response['status_code'] == 1) {
         return $response;
     }
     if (is_null($this->session)) {
         return array("status_code" => 1, "message" => "Your session is not active");
     }
     /* First check that user trying to add permission can actually do so */
     $folder = KTAPI_Folder::get($this, $folder_id);
     $permissions = $folder->getPermissionAllocation();
     $detail = $permissions->permissions;
     if (!in_array("Manage security", $detail)) {
         return array("status_code" => 1, "message" => "User does not have permission to manage security");
     }
     /* We need to create a new instance of KTAPI to get another user */
     $user_ktapi = new KTAPI();
     $user_ktapi->start_system_session($username);
     $folder = KTAPI_Folder::get($user_ktapi, $folder_id);
     if (PEAR::isError($folder)) {
         $user_ktapi->session_logout();
         return array("status_code" => 1, "message" => $folder->getMessage());
     }
     $permission = KTAPI_Permission::getByNamespace($namespace);
     if (PEAR::isError($permission)) {
         $user_ktapi->session_logout();
         return array("status_code" => 1, "message" => $permission->getMessage());
     }
     $user = KTAPI_User::getByUsername($username);
     if (PEAR::isError($user)) {
         $user_ktapi->session_logout();
         return array("status_code" => 1, "message" => $user->getMessage());
     }
     $permissions = $folder->getPermissionAllocation();
     $permissions->add($user, $permission);
     $permissions->save();
 }
Exemplo n.º 7
0
 /**
  * Add folder permission
  *
  * @author KnowledgeTree Team
  * @access public
  * @param string
  * @param string
  * @param int
  *
  */
 public function add_folder_user_permissions($username, $folder_id, $namespace)
 {
     if (is_null($this->session)) {
         return array("status_code" => 1, "message" => "Your session is not active");
     }
     /* First check that user trying to add permission can actually do so */
     $folder = KTAPI_Folder::get($this, $folder_id);
     $permissions = $folder->getPermissionAllocation();
     $detail = $permissions->permissions;
     if (!in_array("Manage security", $detail)) {
         return array("status_code" => 1, "message" => "User does not have permission to manage security");
     }
     /* We need to create a new instance of KTAPI to get another user */
     $user_ktapi = new KTAPI();
     $user_ktapi->start_system_session($username);
     $folder = KTAPI_Folder::get($user_ktapi, $folder_id);
     if (PEAR::isError($folder)) {
         $user_ktapi->session_logout();
         return array("status_code" => 1, "message" => $folder->getMessage());
     }
     $permission = KTAPI_Permission::getByNamespace($namespace);
     if (PEAR::isError($permission)) {
         $user_ktapi->session_logout();
         return array("status_code" => 1, "message" => $permission->getMessage());
     }
     $user = KTAPI_User::getByUsername($username);
     if (PEAR::isError($user)) {
         $user_ktapi->session_logout();
         return array("status_code" => 1, "message" => $user->getMessage());
     }
     $permissions = $folder->getPermissionAllocation();
     $permissions->add($user, $permissions);
     $permissions->save();
 }