Example #1
0
 def getOneLineStr(self, columns):
     from groups.group import getGroupsForIssueId
     line = ""
     for column in columns:
         color = str(column.color)
         field = "" 
         if column.name == 'id':
             field = self.getShortIdStr()
         elif column.name == 'status':
             field = self.getStatusStr()
         elif column.name == 'title':
             field = self.getTitle()
         elif column.name == 'cdate':
             field = self.getCreatedDateStr()
         elif column.name == 'mdate':
             field = self.getModifiedDateStr()
         elif column.name == 'groups':
             field = ', '.join(getGroupsForIssueId(self.getIdStr()))
         
         line += color + truncateOrPadStrToWidth(field, column.length) + '  '
             
     return line
Example #2
0
def execute(args):
    issueIDs = _getFilteredListofIssueIDs(args)
    if issueIDs == None:
        print "Could not find issue: " + args.id
        return
    
    elif len(issueIDs) == 1:
        print IssueDisplayBuilder(issueIDs[0]).getFullIssueDisplay()
            
    else:
        columns = [display.COLUMNS['id'],
                   display.COLUMNS['status'],
                   display.COLUMNS['groups'],
                   display.COLUMNS['title'],
                   display.COLUMNS['mdate']]
        
        # We may have a lot of issues in the list that would make the output
        # run pretty long, therefore page it.
        PageOutputBeyondThisPoint()
        
        header = '  '.join([truncateOrPadStrToWidth(col.name, col.length) for col in columns])
        print header
        print '-' * len(header)        

        # Any sorting required?
        if args.sort != None:
            issueIDs = _sortIssues(issueIDs, args.sort)
            
        # Check to see if a default issue sort has been configured for this repository
        else:
            sort = getCmd('git config issue.ls.sort')
            if sort != None:
                issueIDs = _sortIssues(issueIDs, sort)

        # Group arg can be passed as parameter or via configured default
        if args.group or getCmd('git config issue.ls.group') == 'true':
            _displayGrouped(issueIDs, columns)        
        else:
            _displayUnGrouped(issueIDs, columns)