Changeset 3780
- Timestamp:
- 06/03/08 17:55:24 (7 months ago)
- Files:
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
peerreviewplugin/branches/2.1-toddler/codereview/peerReviewPerform.py
r3452 r3780 89 89 90 90 def process_request(self, req): 91 92 data = {} 93 91 94 if req.perm.has_permission('CODE_REVIEW_MGR'): 92 req.hdf['manager'] = 195 data['manager'] = 1 93 96 else: 94 97 req.perm.assert_permission('CODE_REVIEW_DEV') 95 req.hdf['manager'] = 0 96 97 #get some link locations for the template 98 req.hdf['trac.href.peerReviewMain'] = self.env.href.peerReviewMain() 99 req.hdf['trac.href.peerReviewNew'] = self.env.href.peerReviewNew() 100 req.hdf['trac.href.peerReviewSearch'] = self.env.href.peerReviewSearch() 101 req.hdf['trac.href.peerReviewOptions'] = self.env.href.peerReviewOptions() 98 data['manager'] = 0 102 99 103 100 #for top-right navigation links 104 req.hdf['main'] = "no"105 req.hdf['create'] = "no"106 req.hdf['search'] = "no"107 req.hdf['options'] = "no"101 data['main'] = "no" 102 data['create'] = "no" 103 data['search'] = "no" 104 data['options'] = "no" 108 105 109 106 #get the fileID from the request arguments … … 111 108 self.fileID = idFile 112 109 #if the file id is not set - display an error message 113 if idFile == None:114 req.hdf['error.type'] = "TracError"115 req.hdf['error.title'] = "File ID Error"116 req.hdf['error.message'] = "No file ID given - unable to load page."117 return 'error.cs', None110 if idFile == None: 111 data['error.type'] = "TracError" 112 data['error.title'] = "File ID Error" 113 data['error.message'] = "No file ID given - unable to load page." 114 return 'error.cs', data, None 118 115 119 116 #get the database … … 126 123 #make the thumbtac image global so the line annotator has access to it 127 124 self.imagePath = self.env.href.chrome() + '/hw/images/thumbtac11x11.gif' 128 #get image and link locations129 req.hdf['trac.href.peerReviewCommentCallback'] = self.env.href.peerReviewCommentCallback()130 req.hdf['trac.href.peerReviewView'] = self.env.href.peerReviewView()131 req.hdf['trac.htdocs.thumbtac'] = self.imagePath132 req.hdf['trac.htdocs.plus'] = self.env.href.chrome() + '/hw/images/plus.gif'133 req.hdf['trac.htdocs.minus'] = self.env.href.chrome() + '/hw/images/minus.gif'134 125 135 126 #if the file is not found in the database - display an error message 136 127 if resultFile == None: 137 req.hdf['error.type'] = "TracError"138 req.hdf['error.title'] = "File ID Error"139 req.hdf['error.message'] = "Unable to locate given file ID in database."140 return 'error.cs', None128 data['error.type'] = "TracError" 129 data['error.title'] = "File ID Error" 130 data['error.message'] = "Unable to locate given file ID in database." 131 return 'error.cs', data, None 141 132 142 133 #get the respository 143 134 repos = self.env.get_repository(req.authname) 144 135 #get the file attributes 145 req.hdf['review.path'] = resultFile.Path146 req.hdf['review.version'] = resultFile.Version147 req.hdf['review.lineStart'] = resultFile.LineStart148 req.hdf['review.lineEnd'] = resultFile.LineEnd149 req.hdf['review.reviewID'] = resultFile.IDReview136 data['review_path'] = resultFile.Path 137 data['review_version'] = resultFile.Version 138 data['review_lineStart'] = resultFile.LineStart 139 data['review_lineEnd'] = resultFile.LineEnd 140 data['review_reviewID'] = resultFile.IDReview 150 141 #make these global for the line annotator 151 142 self.lineEnd = resultFile.LineEnd … … 154 145 #if the repository can't be found - display an error message 155 146 if(repos == None): 156 req.hdf['error.type'] = "TracError"157 req.hdf['error.title'] = "Subversion Repository Error"158 req.hdf['error.message'] = "Unable to acquire subversion repository."159 return 'error.cs', None147 data['error.type'] = "TracError" 148 data['error.title'] = "Subversion Repository Error" 149 data['error.message'] = "Unable to acquire subversion repository." 150 return 'error.cs', data, None 160 151 161 152 #get the correct location - using revision number and repository path … … 163 154 #if the node can't be found - display error message 164 155 if(node == None): 165 req.hdf['error.type'] = "TracError"166 req.hdf['error.title'] = "Subversion Node Error"167 req.hdf['error.message'] = "Unable to locate subversion node for this file."168 return 'error.cs', None156 data['error.type'] = "TracError" 157 data['error.title'] = "Subversion Node Error" 158 data['error.message'] = "Unable to locate subversion node for this file." 159 return 'error.cs', data, None 169 160 170 161 # Generate HTML preview - this code take from Trac - refer to their documentation … … 190 181 #assign the preview to a variable for clearsilver 191 182 context = Context.from_request(req, 'source', path, node.created_rev) 192 req.hdf['file'] = mimeview.preview_data(context, content, len(content), 193 mime_type, node.created_path, 194 None, 195 annotations=['performCodeReview']) 196 183 preview_data = mimeview.preview_data(context, content, len(content), 184 mime_type, node.created_path, 185 None, 186 annotations=['performCodeReview']) 187 188 data['file'] = preview_data['rendered']; 189 190 add_stylesheet(req, 'common/css/browser.css') 197 191 add_stylesheet(req, 'common/css/code.css') 198 add_stylesheet(req, 'common/css/browser.css') 199 200 return 'peerReviewPerform.cs', None 192 return 'peerReviewPerform.html', data, None 201 193 202 194 # ITemplateProvider methods
