function createWorkspace($ws_name, $parentWS_ids = null)
 {
     try {
         DB::beginWork();
         $color = rand(0, 24);
         $project_data = array('name' => $ws_name, 'description' => '', 'show_description_in_overview' => false, 'color' => $color);
         $project = new Project();
         $project->setFromAttributes($project_data);
         $project->save();
         $permission_columns = ProjectUsers::getPermissionColumns();
         $auto_assign_users = owner_company()->getAutoAssignUsers();
         // We are getting the list of auto assign users. If current user is not in the list
         // add it. He's creating the project after all...
         if (is_array($auto_assign_users)) {
             $auto_assign_logged_user = false;
             foreach ($auto_assign_users as $user) {
                 if ($user->getId() == logged_user()->getId()) {
                     $auto_assign_logged_user = true;
                 }
             }
             // if
             if (!$auto_assign_logged_user) {
                 $auto_assign_users[] = logged_user();
             }
         } else {
             $auto_assign_users[] = logged_user();
         }
         // if
         $project->clearUsers();
         foreach ($auto_assign_users as $user) {
             $project_user = new ProjectUser();
             $project_user->setProjectId($project->getId());
             $project_user->setUserId($user->getId());
             if (is_array($permission_columns)) {
                 foreach ($permission_columns as $permission) {
                     $project_user->setColumnValue($permission, true);
                 }
             }
             // if
             $project_user->save();
         }
         // foreach
         $this->setParents($project, $parentWS_ids);
         $id_parent = $project->getPID($project->getDepth() - 1);
         $proj_id = $project->getId();
         ImportLogger::instance()->log("Workspace created: {$proj_id} {$ws_name} [{$id_parent}]");
         print "Workspace created: {$proj_id} {$ws_name} [{$id_parent}]\r\n";
         DB::commit();
     } catch (Exception $e) {
         print "ERROR: {$e}\r\n";
         DB::rollback();
     }
     return $proj_id;
 }