Diff for /basket/basket.py between versions 1.7 and 1.8

version 1.7, 2006/04/05 17:26:19 version 1.8, 2006/04/06 16:49:14
Line 38  class BasketBasis(OrderedFolder): Line 38  class BasketBasis(OrderedFolder):
     """Basis class for BasketFolder and Baskets"""      """Basis class for BasketFolder and Baskets"""
           
     security=ClassSecurityInfo()      security=ClassSecurityInfo()
       
       def checkPermission(self,modus):
           """check permission"""
           if modus=='open':
               return True
           elif modus=='private':
               return self.groupFolder.isMemberOf('admin')
           elif modus=='admin':
               return self.groupFolder.isMemberOf('admin')
           elif modus=='edit':
               return (self.groupFolder.isMemberOf('editor') or self.groupFolder.isMemberOf('admin'))
           elif modus=='publish':
               return self.groupFolder.isMemberOf('publish')
           elif modus=='authorized':
               if self.getActualUserName().lower() == "anonymous user":
                   return False
               else:
                   return True
               
        
     def getNewId(self):      def getNewId(self):
         """createIds"""          """createIds"""
         last=getattr(self,'last',0)          last=getattr(self,'last',0)
Line 67  class BasketBasis(OrderedFolder): Line 87  class BasketBasis(OrderedFolder):
         id=self.getNewId()          id=self.getNewId()
         manage_addBasketText(self,str(id),'','',RESPONSE=None)          manage_addBasketText(self,str(id),'','',RESPONSE=None)
         if REQUEST:          if REQUEST:
             REQUEST.RESPONSE.redirect(self.absolute_url()+"/manageBasket")              REQUEST.RESPONSE.redirect(self.absolute_url()+"/manageBasket#"+str(id))
           
     def addBasketExternalLink(self,REQUEST=None):      def addBasketExternalLink(self,REQUEST=None):
         """add an external link"""          """add an external link"""
Line 75  class BasketBasis(OrderedFolder): Line 95  class BasketBasis(OrderedFolder):
                   
         manage_addBasketExternalLink(self,str(id),"","","","",RESPONSE=None)          manage_addBasketExternalLink(self,str(id),"","","","",RESPONSE=None)
         if REQUEST:          if REQUEST:
             REQUEST.RESPONSE.redirect(self.absolute_url()+"/manageBasket")              REQUEST.RESPONSE.redirect(self.absolute_url()+"/manageBasket#"+str(id))
                   
     def deleteObject(self,id,REQUEST=None):      def deleteObject(self,id,REQUEST=None):
         """delete object"""          """delete object"""
Line 87  class BasketBasis(OrderedFolder): Line 107  class BasketBasis(OrderedFolder):
         """move id one up"""          """move id one up"""
         self.moveObjectsUp([id], 1)          self.moveObjectsUp([id], 1)
         if REQUEST:          if REQUEST:
             REQUEST.RESPONSE.redirect(self.absolute_url()+"/manageBasket")              REQUEST.RESPONSE.redirect(self.absolute_url()+"/manageBasket#"+id)
           
     def moveDown(self,id,REQUEST=None):      def moveDown(self,id,REQUEST=None):
         """move id one up"""          """move id one up"""
         self.moveObjectsDown([id], 1)          self.moveObjectsDown([id], 1)
         if REQUEST:          if REQUEST:
             REQUEST.RESPONSE.redirect(self.absolute_url()+"/manageBasket")              REQUEST.RESPONSE.redirect(self.absolute_url()+"/manageBasket#"+id)
                           
     def moveTop(self,id,REQUEST=None):      def moveTop(self,id,REQUEST=None):
         """move to top"""          """move to top"""
         self.moveObjectsToTop([id])          self.moveObjectsToTop([id])
         if REQUEST:          if REQUEST:
             REQUEST.RESPONSE.redirect(self.absolute_url()+"/manageBasket")              REQUEST.RESPONSE.redirect(self.absolute_url()+"/manageBasket#"+id)
       
     def moveBottom(self,id,REQUEST=None):      def moveBottom(self,id,REQUEST=None):
         """move to top"""          """move to top"""
         self.moveObjectsToBottom([id])          self.moveObjectsToBottom([id])
         if REQUEST:          if REQUEST:
             REQUEST.RESPONSE.redirect(self.absolute_url()+"/manageBasket")              REQUEST.RESPONSE.redirect(self.absolute_url()+"/manageBasket#"+id)
           
     security.declareProtected('View','getOwner')      security.declareProtected('View','getOwner')
                       
Line 113  class BasketBasis(OrderedFolder): Line 133  class BasketBasis(OrderedFolder):
         """get Owner as string"""          """get Owner as string"""
         return self.owner          return self.owner
           
     def isAuthorized(self,role="read"):  
         """check whether actual user is authorized"""  
         #TODO replace occurences with checkPermission  
         return True  
           
     def getActualUserName(self):      def getActualUserName(self):
         """get username of actual user"""          """get username of actual user"""
Line 149  class BasketFolder(BasketBasis): Line 166  class BasketFolder(BasketBasis):
             return ret              return ret
         elif mode=='open_intern':          elif mode=='open_intern':
             print "open_intern"              print "open_intern"
             if self.groupFolder.isMemberOf('user'):              if self.checkPermission('authorized'):
                 print "---public"                  print "---public"
                 for object in self.getObjects():                  for object in self.getObjects():
                     print object.getId(),object.publicationStatus                      print object.getId(),object.publicationStatus
                     if object.publicationStatus=='open_intern':                      if object.publicationStatus=='open_intern' or object.publicationStatus=='open':
                         ret.append(object)                          ret.append(object)
                 return ret                  return ret
             else:              else:
Line 256  class Basket(BasketBasis): Line 273  class Basket(BasketBasis):
         {'label':'manage main','action':'changeBasketForm'},          {'label':'manage main','action':'changeBasketForm'},
         )          )
           
     def checkPermission(self,modus):   
         """check permission"""      def saveButton(self,actualId):
         if modus=='open':          """return the save button"""
             return True          ret="""
         elif modus=='private':          <a class="editLink" style="cursor:pointer"
             return self.groupFolder.isMemberOf('admin')                      'onClick="forms.changeSetContents.actualId.value='%s';forms.changeSetContents.submit();">save</a> -
         elif modus=='admin':      
             return self.groupFolder.isMemberOf('admin')          """%actualId
         elif modus=='edit':          return ret
             return self.groupFolder.isMemberOf('edit')  
         elif modus=='publish':  
             return self.groupFolder.isMemberOf('publish')  
             
     def manageUserRights_html(self):      def manageUserRights_html(self):
         """manage user rights"""          """manage user rights"""
Line 395  class Basket(BasketBasis): Line 409  class Basket(BasketBasis):
   
         
         if REQUEST:          if REQUEST:
             REQUEST.RESPONSE.redirect(self.absolute_url()+"/manageBasket")                REQUEST.RESPONSE.redirect(self.absolute_url()+"/manageBasket#"+form.get('actualId',''))  
                               
   
     def selectThisBasketAsCurrent(self,REQUEST=None):      def selectThisBasketAsCurrent(self,REQUEST=None):
Line 430  class Basket(BasketBasis): Line 444  class Basket(BasketBasis):
             manage_addBasketXRef(self,str(id),title,comment,xref)              manage_addBasketXRef(self,str(id),title,comment,xref)
                   
         if REQUEST:          if REQUEST:
             import random              #import random
             rd=random.random()              #rd=random.random()
             REQUEST.RESPONSE.redirect(REQUEST['HTTP_REFERER']+'&-dummy='+str(rd))              urlSplit=REQUEST['HTTP_REFERER'].split("?")
               if len(urlSplit)>1:
                   parsed=cgi.parse_qs(urlSplit[1])
                   parsed['-link']=link
                   qs=urllib.urlencode(parsed,doseq=True)
                   
               else:
                   qs=""
                   
               REQUEST.RESPONSE.redirect(urlSplit[0]+"?"+qs)
         else:          else:
             return True              return True
   
Line 454  def manage_addBasket(self,id,title,comme Line 477  def manage_addBasket(self,id,title,comme
     if RESPONSE is not None:      if RESPONSE is not None:
         RESPONSE.redirect('manage_main')          RESPONSE.redirect('manage_main')
             
 class BasketBasis(SimpleItem):  class BasketObject(SimpleItem):
     """basic class for baskets"""      """basic class for baskets"""
           
     #security=ClassSecurityInfo()      #security=ClassSecurityInfo()
Line 506  class BasketBasis(SimpleItem): Line 529  class BasketBasis(SimpleItem):
             pt.content_type="text/html"              pt.content_type="text/html"
             return pt()              return pt()
   
 class BasketFile(BasketBasis,File):  class BasketFile(BasketObject,File):
     """class for fileupload"""      """class for fileupload"""
     meta_type="BasketFile"      meta_type="BasketFile"
           
Line 581  def manage_addBasketFile(self,id,title,c Line 604  def manage_addBasketFile(self,id,title,c
     if REQUEST is not None:      if REQUEST is not None:
         REQUEST['RESPONSE'].redirect(self.absolute_url()+'/manage_main')          REQUEST['RESPONSE'].redirect(self.absolute_url()+'/manage_main')
                   
 class BasketXRef(BasketBasis):  class BasketXRef(BasketObject):
     """class for internal references based on xrefs"""      """class for internal references based on xrefs"""
           
     #security=ClassSecurityInfo()      #security=ClassSecurityInfo()
Line 634  def manage_addBasketXRef(self,id,title,c Line 657  def manage_addBasketXRef(self,id,title,c
     if RESPONSE is not None:      if RESPONSE is not None:
         RESPONSE.redirect('manage_main')          RESPONSE.redirect('manage_main')
                 
 class BasketInternalLink(BasketBasis):  class BasketInternalLink(BasketObject):
     """class for internal referencens based on links"""      """class for internal referencens based on links"""
           
     #security=ClassSecurityInfo()      #security=ClassSecurityInfo()
Line 690  def manage_addBasketInternalLink(self,id Line 713  def manage_addBasketInternalLink(self,id
         RESPONSE.redirect('manage_main')          RESPONSE.redirect('manage_main')
                 
           
 class BasketExternalLink(BasketBasis):  class BasketExternalLink(BasketObject):
     """class for external links"""      """class for external links"""
           
     #security=ClassSecurityInfo()      #security=ClassSecurityInfo()
Line 745  def manage_addBasketExternalLink(self,id Line 768  def manage_addBasketExternalLink(self,id
         RESPONSE.redirect('manage_main')          RESPONSE.redirect('manage_main')
                 
           
 class BasketText(BasketBasis):  class BasketText(BasketObject):
     """class for text elements in baskets"""      """class for text elements in baskets"""
           
     #security=ClassSecurityInfo()      #security=ClassSecurityInfo()

Removed from v.1.7  
changed lines
  Added in v.1.8


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>