Edgewall Software

Ticket #1942: ct-restrict-owner-fix.patch

File ct-restrict-owner-fix.patch, 2.9 KB (added by shoffmann, 6 months ago)

small fix and configurable datetime formatting and parsing added by user_time

  • trac/ticket/query.py

    # HG changeset patch
    # Parent e44f51de5a9ef32c96ed814c182eec8b0e54b251
    Restore list type lost in previous changeset(s) and add `user_time` for
    custom (i18n aware) date/time formatting and parsing available after [10571].
    
    diff --git a/trac/ticket/query.py b/trac/ticket/query.py
    a b  
    10671067                add_warning(req, error) 
    10681068 
    10691069        context = web_context(req, 'query') 
    1070         owner_field = query.fields.by_name('owner', None) 
     1070        owner_field = [query.fields.by_name('owner', None)] 
    10711071        if owner_field: 
    10721072            TicketSystem(self.env).eventually_restrict_owner(owner_field[0]) 
    10731073        data = query.template_data(context, tickets, orig_list, orig_time, req) 
  • trac/ticket/web_ui.py

    diff --git a/trac/ticket/web_ui.py b/trac/ticket/web_ui.py
    a b  
    3737from trac.ticket.notification import TicketNotifyEmail 
    3838from trac.timeline.api import ITimelineEventProvider 
    3939from trac.util import as_bool, as_int, get_reporter_id 
    40 from trac.util.datefmt import format_datetime, format_date, format_datetime, from_utimestamp, \ 
    41                               get_date_format_hint, get_datetime_format_hint, \ 
    42                               pretty_timedelta, parse_date, to_utimestamp, utc 
     40from trac.util.datefmt import format_datetime, format_date, format_datetime, \ 
     41                              from_utimestamp, get_date_format_hint, \ 
     42                              get_datetime_format_hint, pretty_timedelta, \ 
     43                              parse_date, to_utimestamp, user_time, utc 
    4344from trac.util.text import exception_to_unicode, obfuscate_email_address, \ 
    4445                           shorten_line, to_unicode 
    4546from trac.util.presentation import separated 
     
    705706            fields.pop('checkbox_' + each, None)    # See Ticket.populate() 
    706707        for field, value in fields.iteritems(): 
    707708            if field in ticket.time_fields: 
    708                 fields[field] = parse_date(value, req.tz, 'datetime') \ 
     709                fields[field] = user_time(req, parse_date, value) \ 
    709710                                if value else None 
    710711        ticket.populate(fields) 
    711712        # special case for updating the Cc: field 
     
    16841685        if format == 'age' and relative: 
    16851686            return pretty_timedelta(value) if value else '' 
    16861687        elif format == 'date': 
    1687             return format_date(value, '%Y-%m-%d', tzinfo=req.tz) \ 
    1688                    if value else '' 
     1688            return user_time(req, format_date, value) if value else '' 
    16891689        else: 
    1690             return format_datetime(value, '%Y-%m-%d %H:%M:%S', tzinfo=req.tz) \ 
    1691                    if value else '' 
     1690            return user_time(req, format_datetime, value) if value else '' 
    16921691 
    16931692    def grouped_changelog_entries(self, ticket, db=None, when=None): 
    16941693        """Iterate on changelog entries, consolidating related changes