Changeset 99
- Timestamp:
- 04/06/08 13:59:47 (8 months ago)
- Files:
-
- trunk/tracforums/model.py (modified) (2 diffs)
- trunk/tracforums/models/forum.py (modified) (1 diff)
- trunk/tracforums/models/main.py (modified) (2 diffs)
- trunk/tracforums/models/message.py (modified) (4 diffs)
- trunk/tracforums/models/topic.py (modified) (1 diff)
- trunk/tracforums/orm.py (modified) (1 diff)
- trunk/tracforums/templates/tracforums/forum/_defs.cs (modified) (2 diffs)
- trunk/tracforums/templates/tracforums/forum/edit.cs (modified) (2 diffs)
- trunk/tracforums/templates/tracforums/message/_defs.cs (modified) (2 diffs)
- trunk/tracforums/templates/tracforums/profile/_defs.cs (modified) (1 diff)
- trunk/tracforums/templates/tracforums/topic/_defs.cs (modified) (1 diff)
- trunk/tracforums/templates/tracforums/topic/view.cs (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/tracforums/model.py
r98 r99 171 171 self.req.session[name] = value 172 172 173 def wikiToOneLiner(self,text,shorten= True,absurls=False):173 def wikiToOneLiner(self,text,shorten=False,absurls=False): 174 174 return wiki_to_oneliner(text,self.env,self.env.get_db_cnx(),shorten,absurls) 175 175 … … 220 220 return self.env.config.get("tracforums","profilepath",'/') 221 221 222 def getSynopsisLength(self): 223 return int(self.env.config.get("tracforums","synopsis_length",'100')) 224 222 225 def getAvatarMetrics(self): 223 226 return { 224 "number": self.env.config.get("tracforums","max_avatars",10),225 "size": self.env.config.get("tracforums","max_avatar_bytes",15000),226 "width": self.env.config.get("tracforums","max_avatar_width",100),227 "height": self.env.config.get("tracforums","max_avatar_height",100)227 "number": int(self.env.config.get("tracforums","max_avatars",10)), 228 "size": int(self.env.config.get("tracforums","max_avatar_bytes",15000)), 229 "width": int(self.env.config.get("tracforums","max_avatar_width",100)), 230 "height": int(self.env.config.get("tracforums","max_avatar_height",100)) 228 231 } 229 232 trunk/tracforums/models/forum.py
r98 r99 64 64 self.moderatorsList = ", ".join(map(lambda x: x.username,self.moderators)) 65 65 self.userIsModerator = self.formatContext.getAuthname() in self.moderators 66 67 synopsisLength = self.formatContext.getSynopsisLength() 68 self.synopsis = self.description 69 if self.synopsis and len(self.synopsis) > synopsisLength: 70 self.synopsis = self.synopsis[:synopsisLength] + "..." 71 self.synopsishtml = self.formatContext.wikiToOneLiner(self.synopsis) 66 72 67 73 def _canView(self): trunk/tracforums/models/main.py
r98 r99 54 54 for forum in ForumModelWithRecentPost(self.db,self).getMany({"projectid": self.getProjectId(),"categoryid":0}): 55 55 if forum.canView: plainForums.append(forum) 56 57 56 58 57 return ("main/index.cs",{ 59 58 "returnto": self.req.abs_href.forums() + "main/index", … … 64 63 "canWatch": self.isForumUser(), 65 64 "watching": ProjectWatchModelWithProfile(self.db,self).getMany({"projectid": self.getProjectId()}), 66 }) 65 }) 67 66 68 67 def doManage(self): trunk/tracforums/models/message.py
r98 r99 22 22 "avatarid": ORMColumn(type="int"), 23 23 "modifiedby": ORMColumn(type="str"), 24 "modcount": ORMColumn(type="int" , default=-1),24 "modcount": ORMColumn(type="int"), 25 25 26 26 # synthetic columns … … 47 47 def format(self): 48 48 #TODO: replace with a smarter, wiki 'null formatter' 49 self.synopsis = self.body 50 if self.synopsis and len(self.synopsis) > 100: self.synopsis = self.synopsis[:97] + "..." 49 self.synopsis = self.body 50 synopsisLength = self.formatContext.getSynopsisLength() 51 if self.synopsis and len(self.synopsis) > synopsisLength: 52 self.synopsis = self.synopsis[:synopsisLength] + "..." 51 53 self.synopsishtml = self.formatContext.wikiToOneLiner(self.synopsis) 52 54 if self.modcount == None: … … 72 74 # set the author as an editor 73 75 self.modifiedby = profileModel.username; 74 self.modcount = self.modcount + 175 76 self.modified = self.formatContext.epochNow() 76 77 … … 161 162 if x.id == message.avatarid: 162 163 message.avatar = x 163 print "X: ",message.avatarid,x,"\n" 164 164 message.avatarid = x.id 165 165 preview = True 166 166 elif action == "save": 167 message.modcount = message.modcount + 1 167 168 authorProfile.save() 168 169 message.save() trunk/tracforums/models/topic.py
r98 r99 245 245 if args.get("viewid",0) != 0: 246 246 topic.load({"topicid": args["viewid"]}) 247 topic.leadmessage = MessageModel(self.db,self).load({"id":topic.leadmessageid} )247 topic.leadmessage = MessageModel(self.db,self).load({"id":topic.leadmessageid},debug=True) 248 248 messageAuthor = topic.leadmessage.author 249 249 else: trunk/tracforums/orm.py
r97 r99 130 130 @staticmethod 131 131 def wiki(formatContext,value): 132 return wiki_to_html(value, formatContext.env, formatContext.req)132 return formatContext.wikiToHTML(value) 133 133 134 134 @staticmethod 135 135 def oneliner(formatContext,value): 136 return wiki_to_oneliner(value,formatContext.env,shorten=False,absurls=False)136 return formatContext.wikiToOneLiner(value,shorten=False,absurls=False) 137 137 138 138 @staticmethod trunk/tracforums/templates/tracforums/forum/_defs.cs
r85 r99 21 21 </a> 22 22 <div class='description'> 23 <?cs var:forum. descriptionhtml ?>23 <?cs var:forum.synopsishtml ?> 24 24 <?cs if:len(forum.moderators) > 0?> 25 25 <div class="moderators"> … … 39 39 </td> 40 40 <td class="forum-listing-lastpost"> 41 [<?cs var:forum.recentpostid?>] 41 42 <?cs if: forum.recentPostId != 0?> 42 43 <?cs call:displayMessagePreview(forum.recentpost)?> trunk/tracforums/templates/tracforums/forum/edit.cs
r98 r99 52 52 <input type="hidden" id="returnto" name="returnto" value="<?cs var:forums.returnto?>"> 53 53 <input type="hidden" id="action" name="action" value="preview"> 54 55 <fieldset> 56 <legend>General</legend> 57 54 55 <fieldset id="general"> 56 <legend>General <a href="#edit"></a></legend> 57 58 58 59 <label for="name">Forum Name:</label> 59 60 <input type="text" name="name" id="name" value="<?cs var:forums.forum.name?>"> 60 61 61 <br >62 <br/> 62 63 <label for="hidden">Hidden:</label> 63 64 <select name="hidden" id="hidden"> … … 103 104 <fieldset id="edit"> 104 105 <legend>Forum Description</legend> 105 <?cs call:displayWikiField(80,"description",forums.forum.description,"forum_description_rows",forum.forum_description_rows)?> 106 <?cs var:forums.forum_description_rows?> 107 <?cs call:displayWikiField(80,"description",forums.forum.description,"forum_description_rows",forums.forum_description_rows)?> 106 108 </fieldset> 107 109 <br> trunk/tracforums/templates/tracforums/message/_defs.cs
r98 r99 3 3 <?cs def:displayMessagePreview(message)?> 4 4 <div class="description"> 5 <?cs var:message.synopsis ?>5 <?cs var:message.synopsishtml?> 6 6 <br> 7 7 <?cs call:displayMiniPortrait(message.profile,message.avatar)?> … … 60 60 <legend>Message Properties</legend> 61 61 <div class="field"> 62 <label for="avatarid"> DefaultAvatar:</label>62 <label for="avatarid">Avatar:</label> 63 63 <select id="avatarid" name="avatarid" onchange=" 64 64 value = this.options[this.selectedIndex].value; trunk/tracforums/templates/tracforums/profile/_defs.cs
r98 r99 23 23 <div class="portrait"> 24 24 <a href="<?cs var:trac.href.forums ?>/profile/view/<?cs var:profile.username?>"> 25 <?cs if: !avatar&& profile.defaultavatarid != 0 && profile.defaultAvatar.id != 0 ?>25 <?cs if: len(avatar) == 0 && profile.defaultavatarid != 0 && profile.defaultAvatar.id != 0 ?> 26 26 <?cs call:displayAvatar(profile,profile.defaultAvatar,"portrait")?> 27 27 <?cs /if?> 28 <?cs if: avatar?>28 <?cs if: len(avatar) != 0?> 29 29 <?cs call:displayAvatar(profile,avatar,"portrait")?> 30 30 <?cs /if?> trunk/tracforums/templates/tracforums/topic/_defs.cs
r97 r99 29 29 <td class="forum-listing-lastpost"> 30 30 <?cs if: topic.recentPostId != 0 && topic.recentPostId != topic.leadmessageid?> 31 <?cs call:displayMessagePreview(topic. leadmessage)?>31 <?cs call:displayMessagePreview(topic.recentpost)?> 32 32 <?cs /if?> 33 33 </td> trunk/tracforums/templates/tracforums/topic/view.cs
r97 r99 21 21 </div> 22 22 <br/> 23 <div class='description'> 23 <div class='description'> 24 24 <div class="moderators"> 25 25 <?cs if:len(forums.forum.moderators) > 0?>
