// // // // Originally written by Laurent Julliard 2004, Codendi Team, Xerox // $project_manager = ProjectManager::instance(); $project = $project_manager->getProject($group_id); $project_svnroot = $project->getSVNRootPath(); $dao = new SVN_AccessFile_DAO(); $path = realpath(dirname(__FILE__) . '/../../../templates/svn/'); $renderer = TemplateRendererFactory::build()->getRenderer($path); $request->valid(new Valid_String('post_changes')); $request->valid(new Valid_String('SUBMIT')); if ($request->isPost() && $request->existAndNonEmpty('post_changes')) { $vAccessFile = new Valid_Text('form_accessfile'); $vAccessFile->setErrorMessage($Language->getText('svn_admin_access_control', 'upd_fail')); if ($request->valid($vAccessFile)) { $saf = new SVNAccessFile(); $form_accessfile = null; //store the custom access file in db if ($request->exist('submit_new_version')) { $form_accessfile = trim($saf->parseGroupLines($project, $request->get('form_accessfile'), true)); $dao->saveNewAccessFileVersionInProject($group_id, $form_accessfile); } else { $form_accessfile = $saf->parseGroupLines($project, $request->get('other_version_content'), true); $version_id = $request->get('version_selected'); $dao->updateAccessFileVersionInProject($group_id, $version_id); } $buffer = svn_utils_read_svn_access_file_defaults($project_svnroot); $buffer .= $form_accessfile; $ret = svn_utils_write_svn_access_file($project_svnroot, $buffer);
if (!user_monitor_forum($forum_id, user_getid())) { if (!forum_thread_add_monitor($forum_id, $request->get('thread_id'), user_getid())) { $feedback .= $Language->getText('forum_forum_utils', 'insert_err'); } } } } // Note: there is a 'msg_id' send but not used here. $vFollowUp = new Valid_UInt('is_followup_to'); $vFollowUp->required(); $vSubject = new Valid_String('subject'); $vSubject->required(); $vSubject->setErrorMessage($GLOBALS['Language']->getText('forum_forum_utils', 'include_body_and_subject')); $vBody = new Valid_Text('body'); $vBody->required(); $vBody->setErrorMessage($GLOBALS['Language']->getText('forum_forum_utils', 'include_body_and_subject')); if ($request->valid($vThreadId) && $request->valid($vFollowUp) && $request->valid($vSubject) && $request->valid($vBody)) { post_message($request->get('thread_id'), $request->get('is_followup_to'), $request->get('subject'), $request->get('body'), $forum_id); } } /* set up some defaults if they aren't provided */ // Offset if ($request->valid(new Valid_UInt('offset'))) { $offset = $request->get('offset'); } else { $offset = 0; } // Style if ($request->valid(new Valid_WhiteList('style', forum_utils_get_styles()))) {