Changeset 1921


Ignore:
Timestamp:
08/08/07 15:07:10 (12 years ago)
Author:
jukka
Message:

More fixes on groups. Still needs to write tests.

Location:
trunk
Files:
11 edited

Legend:

Unmodified
Added
Removed
  • trunk/BlogPost.py

    r1919 r1921  
    8282        if hasattr(container, 'recent_posts'): 
    8383            container.addRecent_post(self.getId()) 
    84         mtool = getToolByName(self, 'portal_membership') 
    85         memberfolder=mtool.getHomeFolder() 
    86         if memberfolder!=None: 
    87             memberfolder.note_action(self.UID(), item.portal_type, 'afterAdd') 
    8884        syn_tool = getToolByName(self, 'portal_syndication', None) 
    8985        if syn_tool is not None: 
     
    110106            except: 
    111107                pass 
    112         mtool = getToolByName(self, 'portal_membership') 
    113         memberfolder=mtool.getHomeFolder() 
    114         if memberfolder!=None: 
    115             memberfolder.note_action(uid, self.portal_type, 'post_edit') 
     108 
    116109 
    117110                 
  • trunk/GroupBlog.py

    r1919 r1921  
    164164 
    165165    def at_post_edit_script(self): 
    166         mtool = getToolByName(self, 'portal_membership') 
    167         memberfolder=mtool.getHomeFolder() 
    168         if memberfolder!=None: 
    169             memberfolder.note_action(self.UID(), self.portal_type, 'post_edit') 
    170166        self.recalculateScore() 
    171167             
     
    325321        if mid not in users: 
    326322            return False 
    327         users=users.remove(mid) 
     323        users.remove(mid) 
    328324        self.setGroupMembers(users) 
     325        if len(users)==0: 
     326            # Deleting group. 
     327            # safe but uncertain method: some links can still work, especially after reindexing 
     328            self.content_status_modify(workflow_action='delete', msg='Resource deleted')  
     329            self.unindexObject() 
    329330        return True      
    330331         
  • trunk/LargeSectionFolder.py

    r1919 r1921  
    870870        """ sometimes it is easier to just get it directly from btreefolder """ 
    871871        return getattr(self, id, None) 
    872  
    873  
    874872 
    875873    def mergeLatestPostsInMyGroups(self): 
  • trunk/Resources.py

    r1919 r1921  
    919919        mtool = getToolByName(self, 'portal_membership') 
    920920        lmtool = getToolByName(self, 'lemill_usertool') 
    921         group = self.getGroupsEditing() 
     921        group = self.getGroupEditing() 
    922922        if not group: 
    923923            return True # This should happen often 
     
    999999            return None             
    10001000        # If no discussion found and we do_create, then we create one 
    1001         group=self.getGroupsEditing() 
     1001        group=self.getGroupEditing() 
    10021002        if not group: 
    10031003            group=self.community.unassigned_discussions 
  • trunk/skins/lemill/document_byline.pt

    r1907 r1921  
    5252        </tal:cond> 
    5353 
    54         <tal:group define="edit_group target/getGroupsEditing | nothing" condition="edit_group"> 
     54        <tal:group define="edit_group target/getGroupEditing | nothing" condition="edit_group"> 
    5555        <div> 
    5656            <span tal:omit-tag="" i18n:domain="lemill" i18n:translate="text_byline_group">group:</span> 
    5757                <a href="#" tal:condition="not:nolinks|nothing" 
    58                     tal:attributes="href string:${portal_url}/community/${edit_group}" 
    59                     tal:content="python:gtool.getGroupareaFolder(str(edit_group)).TitleOrId()" 
     58                    tal:attributes="href edit_group/absolute_url" 
     59                    tal:content="edit_group/TitleOrId" 
    6060                    >PLACEHOLDER</a> 
    6161                <span tal:condition="nolinks|nothing" 
    62                     tal:content="python:gtool.getGroupareaFolder(str(edit_group)).TitleOrId()" 
     62                    tal:content="edit_group/TitleOrId" 
    6363                    >PLACEHOLDER</span> 
    6464        </div> 
  • trunk/skins/lemill/group_create.cpt

    r1601 r1921  
    1111 
    1212<div metal:fill-slot="main" 
    13      tal:define="errors python:request.get('errors', {}); 
    14                  portal_roles mtool/getPortalRoles;"> 
     13     tal:define="errors python:request.get('errors', {})"> 
    1514 
    1615      <div id="content" class="documentEditable"> 
  • trunk/skins/lemill/group_edit.cpt

    r694 r1921  
    1111 
    1212<div metal:fill-slot="main" 
    13      tal:define="errors python:request.get('errors', {}); 
    14                  portal_roles mtool/getPortalRoles; 
    15                  groupname here/getId; 
    16                  group python:gtool.getGroupById(groupname); 
    17                  grouptitle python:group.getProperty('title','') ; 
    18                  groupdescription python:group.getProperty('description',''); 
    19                  grouptags python:', '.join(group.getProperty('tags',''))"> 
     13     tal:define="errors python:request.get('errors', {})"> 
    2014 
    2115      <div id="content" class="documentEditable"> 
     
    3933 
    4034        <h1 i18n:domain="plone" i18n:translate="heading_edit_groupproperties"> 
    41             Edit group properties of <span tal:content="grouptitle | default" tal:omit-tag="" i18n:name="groupname">unavailable</span> 
     35            Edit group properties of <span tal:content="here/TitleOrId" tal:omit-tag="" i18n:name="groupname">unavailable</span> 
    4236        </h1> 
    4337 
    4438            <fieldset> 
    4539                <legend i18n:domain="plone" i18n:translate="label_group_properties">Group Properties</legend> 
    46                 <input type="hidden" name="groupname" value="groupname" id="groupname" tal:attributes="value groupname | string: "/> 
    4740 
    4841                <label for="title" i18n:domain="plone" i18n:translate="label_name">Name</label> 
     
    5245                <div class="formHelp" id="title_help" i18n:translate="help_title_changing">Suggested name can and should be changed</div> 
    5346                <input type="text" name="title" id="title" size="35" value="" 
    54                                 tal:attributes="value grouptitle; tabindex tabindex/next" /> 
     47                                tal:attributes="value here/Title | nothing; tabindex tabindex/next" /> 
    5548                <br /> 
    5649                <label for="description" i18n:domain="plone" i18n:translate="label_description">Description</label> 
    5750                <div class="formHelp" id="description_help" i18n:translate="description_help">Short declaration of purpose for the group</div> 
    5851                <textarea name="description" id="description" rows="6" cols="35" 
    59                                 tal:content="groupdescription" tal:attributes="tabindex tabindex/next"></textarea> 
     52                                tal:content="here/description | nothing" tal:attributes="tabindex tabindex/next"></textarea> 
    6053                <br />                
    6154                <label for="tags" i18n:translate="label_tags">Tags</label> 
    6255                <div class="formHelp" id="tags_help" i18n:translate="help_group_tags">Tags are keywords that help other people find this group. Separate tags with commas.</div> 
    6356                <textarea name="tags" id="tags" rows="6" cols="35"  
    64                         tal:attributes="tabindex tabindex/next" tal:content="grouptags"></textarea> 
     57                        tal:attributes="tabindex tabindex/next" tal:content="here/tags | nothing"></textarea> 
    6558 
    6659                                 
  • trunk/skins/lemill/group_invite.cpt

    r1217 r1921  
    3535 
    3636        <tal:defs define="invited here/getMemberFolder; 
    37                           inviter mtool/getAuthenticatedMember;                           
    38                           inviter python: mtool.getHomeFolder(inviter.id);                           
     37                          inviter mtool/getHomeFolder;                           
    3938                          groupslist inviter/getGroups; 
    4039                          inviteds_grouplist invited/getGroups; 
     
    4847        <span tal:repeat="gr groupslist" tal:omit-tag=""> 
    4948         
    50         <div tal:define="group python:gtool.getGroupareaFolder(gr)"> 
     49        <div tal:define="group python:context.getGroupById(gr)"> 
    5150        <input type="checkbox" name="groupname" id="groupname" value="True" tal:attributes=" 
    5251        disabled python:gr in inviteds_grouplist; 
  • trunk/skins/lemill/join_a_group.cpt

    r1919 r1921  
    1414        <h1 i18n:translate="heading_join_a_group_to_edit">Join a group</h1> 
    1515 
    16         <metal:block define-macro="join_a_group" tal:define="group_editing context/getGroupsEditing"> 
     16        <metal:block define-macro="join_a_group" tal:define="group_editing context/getGroupEditing"> 
    1717        <div id="join_a_group" 
    1818            tal:condition="group_editing"> 
     
    2525        <span i18n:name="group_name"> 
    2626            <a href=""  
    27                 tal:attributes="href python:portal.portal_groups.getGroupareaFolder(group_editing.getId()).absolute_url()" 
    28                 tal:content="python:gtool.getGroupareaFolder(str(group_editing)).TitleOrId()">link to group</a> 
     27                tal:attributes="href group_editing/absolute_url" 
     28                tal:content="group_editing/TitleOrId">link to group</a> 
    2929        </span> 
    3030        working with this resource. Do you want to go on, join the group and start to edit the resource? 
  • trunk/skins/lemill/portlet_member.pt

    r1919 r1921  
    5454                         <li> 
    5555                            <a href="#"  tal:attributes="href groupish/getURL"  
    56                              tal:content="groupish/Title">  
    57                                 PLACEHOLDER 
    58                            </a> 
     56                             tal:content="groupish/Title" />  
    5957                        </li> 
    6058                    </ul> 
  • trunk/skins/lemill/validate_user.vpy

    r1556 r1921  
    1818    state.setError(field, _(u'This user name is alredy in use.'), 'existing_user') 
    1919 
    20 mtool = context.portal_membership 
    21 for id in mtool.listMemberIds(): 
    22     if username and cmp(username.lower(), id.lower())==0: 
    23         invalid('username') 
    2420 
    25 gtool = context.portal_groups 
    26 for id in gtool.getGroupIds(): 
    27     if username and cmp(username.lower(), id.lower())==0: 
    28         invalid('username') 
     21if hasattr(context.community, id): 
     22    invalid('username') 
    2923 
    3024if not lastname: 
Note: See TracChangeset for help on using the changeset viewer.