From e775aa21158b6b997c71b94075ead1f0c2ed38e1 Mon Sep 17 00:00:00 2001 From: Bhagyashree Date: Mar 12 2016 19:33:37 +0000 Subject: [PATCH 1/4] Fixing Issue #96 --- diff --git a/hubs/__init__.py b/hubs/__init__.py old mode 100644 new mode 100755 diff --git a/hubs/app.py b/hubs/app.py old mode 100644 new mode 100755 diff --git a/hubs/consumer.py b/hubs/consumer.py old mode 100644 new mode 100755 diff --git a/hubs/default_config.py b/hubs/default_config.py old mode 100644 new mode 100755 diff --git a/hubs/defaults.py b/hubs/defaults.py old mode 100644 new mode 100755 diff --git a/hubs/hinting.py b/hubs/hinting.py old mode 100644 new mode 100755 diff --git a/hubs/models.py b/hubs/models.py old mode 100644 new mode 100755 diff --git a/hubs/utils.py b/hubs/utils.py old mode 100644 new mode 100755 diff --git a/hubs/validators.py b/hubs/validators.py old mode 100644 new mode 100755 diff --git a/hubs/widgets/__init__.py b/hubs/widgets/__init__.py old mode 100644 new mode 100755 diff --git a/hubs/widgets/about.py b/hubs/widgets/about.py old mode 100644 new mode 100755 diff --git a/hubs/widgets/badges.py b/hubs/widgets/badges.py old mode 100644 new mode 100755 diff --git a/hubs/widgets/base.py b/hubs/widgets/base.py old mode 100644 new mode 100755 diff --git a/hubs/widgets/chrome.py b/hubs/widgets/chrome.py old mode 100644 new mode 100755 diff --git a/hubs/widgets/cobwebs.py b/hubs/widgets/cobwebs.py old mode 100644 new mode 100755 diff --git a/hubs/widgets/dummy.py b/hubs/widgets/dummy.py old mode 100644 new mode 100755 diff --git a/hubs/widgets/fedmsgstats.py b/hubs/widgets/fedmsgstats.py old mode 100644 new mode 100755 diff --git a/hubs/widgets/feed.py b/hubs/widgets/feed.py old mode 100644 new mode 100755 diff --git a/hubs/widgets/github_pr.py b/hubs/widgets/github_pr.py old mode 100644 new mode 100755 diff --git a/hubs/widgets/githubissues.py b/hubs/widgets/githubissues.py old mode 100644 new mode 100755 diff --git a/hubs/widgets/linechart.py b/hubs/widgets/linechart.py old mode 100644 new mode 100755 diff --git a/hubs/widgets/meetings.py b/hubs/widgets/meetings.py old mode 100644 new mode 100755 index 1dfd8ec..c3a8382 --- a/hubs/widgets/meetings.py +++ b/hubs/widgets/meetings.py @@ -16,19 +16,31 @@ chrome = panel('Reminders', key='meetings') def next_meeting(meetings): now = datetime.datetime.utcnow() for meeting in meetings: - string = "%s %s" % (meeting['meeting_date'], + start_string = "%s %s" % (meeting['meeting_date'], meeting['meeting_time_start']) - dt = datetime.datetime.strptime(string, "%Y-%m-%d %H:%M:%S") + start_dt = datetime.datetime.strptime(start_string, "%Y-%m-%d %H:%M:%S") - if now < dt: - meeting['human_time'] = arrow.get(dt).humanize() - meeting['start_date'] = dt.strftime('%b %d') + stop_string = "%s %s" % (meeting['meeting_date_end'], + meeting['meeting_time_stop']) + stop_dt = datetime.datetime.strptime(stop_string, "%Y-%m-%d %H:%M:%S") + + if now < start_dt: + meeting['human_time'] = arrow.get(start_dt).humanize() + meeting['start_date'] = start_dt.strftime('%b %d') + meeting['stop_date'] = stop_dt.strftime('%b %d') + meeting['display_time'] = True + meeting['display_duration'] = False # Just UTC for now until we do this on the client and can access # their local with moment.js. meeting['start_time'] = meeting['meeting_time_start'][:-3] + " UTC" + meeting['stop_time'] = meeting['meeting_time_stop'][:-3] + " UTC" meeting['location'] = meeting['meeting_location'] if '@' in meeting['location']: meeting['location'] = '#' + meeting['location'].split('@')[0] + if stop_dt - start_dt >= datetime.timedelta(hours=24) : + meeting['display_time'] = False + if stop_dt - start_dt > datetime.timedelta(hours=24) : + meeting['display_duration'] = True return meeting return None @@ -41,9 +53,15 @@ template = jinja2_environment.from_string(""" {% set next = items | next_meeting %} {% if next %}

The {{ next.meeting_name }} is {{ next.human_time }}

+ {% if next.display_duration %} +

{{next.start_date}} - {{next.stop_date}}

+ {% else %}

{{next.start_date}}

+ {% endif %}
+ {% if next.display_time %} @{{next.start_time}}
+ {% endif %} {{next.location}}
{{next.meeting_information_html}}
diff --git a/hubs/widgets/pagure_pr.py b/hubs/widgets/pagure_pr.py old mode 100644 new mode 100755 diff --git a/hubs/widgets/pagureissues.py b/hubs/widgets/pagureissues.py old mode 100644 new mode 100755 diff --git a/hubs/widgets/rules.py b/hubs/widgets/rules.py old mode 100644 new mode 100755 diff --git a/hubs/widgets/stats.py b/hubs/widgets/stats.py old mode 100644 new mode 100755 diff --git a/hubs/widgets/sticky.py b/hubs/widgets/sticky.py old mode 100644 new mode 100755 diff --git a/hubs/widgets/subscriptions.py b/hubs/widgets/subscriptions.py old mode 100644 new mode 100755 diff --git a/hubs/widgets/test.py b/hubs/widgets/test.py old mode 100644 new mode 100755 From 7228454834dce91447271366f26ed129d15d91f2 Mon Sep 17 00:00:00 2001 From: Bhagyashree Date: Mar 12 2016 19:41:57 +0000 Subject: [PATCH 2/4] Revert Changes : Fixing Issue #96 --- diff --git a/hubs/widgets/meetings.py b/hubs/widgets/meetings.py old mode 100755 new mode 100644 index c3a8382..1dfd8ec --- a/hubs/widgets/meetings.py +++ b/hubs/widgets/meetings.py @@ -16,31 +16,19 @@ chrome = panel('Reminders', key='meetings') def next_meeting(meetings): now = datetime.datetime.utcnow() for meeting in meetings: - start_string = "%s %s" % (meeting['meeting_date'], + string = "%s %s" % (meeting['meeting_date'], meeting['meeting_time_start']) - start_dt = datetime.datetime.strptime(start_string, "%Y-%m-%d %H:%M:%S") + dt = datetime.datetime.strptime(string, "%Y-%m-%d %H:%M:%S") - stop_string = "%s %s" % (meeting['meeting_date_end'], - meeting['meeting_time_stop']) - stop_dt = datetime.datetime.strptime(stop_string, "%Y-%m-%d %H:%M:%S") - - if now < start_dt: - meeting['human_time'] = arrow.get(start_dt).humanize() - meeting['start_date'] = start_dt.strftime('%b %d') - meeting['stop_date'] = stop_dt.strftime('%b %d') - meeting['display_time'] = True - meeting['display_duration'] = False + if now < dt: + meeting['human_time'] = arrow.get(dt).humanize() + meeting['start_date'] = dt.strftime('%b %d') # Just UTC for now until we do this on the client and can access # their local with moment.js. meeting['start_time'] = meeting['meeting_time_start'][:-3] + " UTC" - meeting['stop_time'] = meeting['meeting_time_stop'][:-3] + " UTC" meeting['location'] = meeting['meeting_location'] if '@' in meeting['location']: meeting['location'] = '#' + meeting['location'].split('@')[0] - if stop_dt - start_dt >= datetime.timedelta(hours=24) : - meeting['display_time'] = False - if stop_dt - start_dt > datetime.timedelta(hours=24) : - meeting['display_duration'] = True return meeting return None @@ -53,15 +41,9 @@ template = jinja2_environment.from_string(""" {% set next = items | next_meeting %} {% if next %}

The {{ next.meeting_name }} is {{ next.human_time }}

- {% if next.display_duration %} -

{{next.start_date}} - {{next.stop_date}}

- {% else %}

{{next.start_date}}

- {% endif %}
- {% if next.display_time %} @{{next.start_time}}
- {% endif %} {{next.location}}
{{next.meeting_information_html}}
From 682f69918139a5a9685420266593e01cec9ef61e Mon Sep 17 00:00:00 2001 From: Bhagyashree Date: Mar 12 2016 19:44:31 +0000 Subject: [PATCH 3/4] Fixing Issue #96 - No extra files in commit this time --- diff --git a/hubs/widgets/meetings.py b/hubs/widgets/meetings.py old mode 100644 new mode 100755 index 1dfd8ec..c3a8382 --- a/hubs/widgets/meetings.py +++ b/hubs/widgets/meetings.py @@ -16,19 +16,31 @@ chrome = panel('Reminders', key='meetings') def next_meeting(meetings): now = datetime.datetime.utcnow() for meeting in meetings: - string = "%s %s" % (meeting['meeting_date'], + start_string = "%s %s" % (meeting['meeting_date'], meeting['meeting_time_start']) - dt = datetime.datetime.strptime(string, "%Y-%m-%d %H:%M:%S") + start_dt = datetime.datetime.strptime(start_string, "%Y-%m-%d %H:%M:%S") - if now < dt: - meeting['human_time'] = arrow.get(dt).humanize() - meeting['start_date'] = dt.strftime('%b %d') + stop_string = "%s %s" % (meeting['meeting_date_end'], + meeting['meeting_time_stop']) + stop_dt = datetime.datetime.strptime(stop_string, "%Y-%m-%d %H:%M:%S") + + if now < start_dt: + meeting['human_time'] = arrow.get(start_dt).humanize() + meeting['start_date'] = start_dt.strftime('%b %d') + meeting['stop_date'] = stop_dt.strftime('%b %d') + meeting['display_time'] = True + meeting['display_duration'] = False # Just UTC for now until we do this on the client and can access # their local with moment.js. meeting['start_time'] = meeting['meeting_time_start'][:-3] + " UTC" + meeting['stop_time'] = meeting['meeting_time_stop'][:-3] + " UTC" meeting['location'] = meeting['meeting_location'] if '@' in meeting['location']: meeting['location'] = '#' + meeting['location'].split('@')[0] + if stop_dt - start_dt >= datetime.timedelta(hours=24) : + meeting['display_time'] = False + if stop_dt - start_dt > datetime.timedelta(hours=24) : + meeting['display_duration'] = True return meeting return None @@ -41,9 +53,15 @@ template = jinja2_environment.from_string(""" {% set next = items | next_meeting %} {% if next %}

The {{ next.meeting_name }} is {{ next.human_time }}

+ {% if next.display_duration %} +

{{next.start_date}} - {{next.stop_date}}

+ {% else %}

{{next.start_date}}

+ {% endif %}
+ {% if next.display_time %} @{{next.start_time}}
+ {% endif %} {{next.location}}
{{next.meeting_information_html}}
From 5f0f7e814910805c2e399e49a27f7849880b4319 Mon Sep 17 00:00:00 2001 From: Bhagyashree Date: Mar 12 2016 21:10:01 +0000 Subject: [PATCH 4/4] Updated Design for github PR widget(like Pagure PR widget) --- diff --git a/hubs/widgets/github_pr.py b/hubs/widgets/github_pr.py index 6a33091..ff890aa 100755 --- a/hubs/widgets/github_pr.py +++ b/hubs/widgets/github_pr.py @@ -17,47 +17,52 @@ log = logging.getLogger(__name__) chrome = panel("Github: Pull Requests") template = jinja2.Template(""" -
- {% for i in range(display_number) %} -
- - - - - -
- #{{ pulls[i]['number'] }} - - {{ pulls[i]['title'] }} -
- - - - - -
- - Opened by {{ pulls[i]['user'] }} - {% if pulls[i]['assignee']|string() == "None" %} -
Unclaimed - {% else %} -
Assigned by {{ pulls[i]['assignee'] }} - {% endif %} -
-
- - - -
-
- {% endfor %} - {% if more != 0 %} - - {% endif %} + + Organization Github Page + +
+ + {% for pr in pulls[:display_number] %} +
  • + +
    +

    + {{ organization }} - + + {{ pr['title'] }} {% if + pr['title'] | length > 45 %} ... {% endif %} + +

    + Opened by: + + {{ pr['user'] }} + + -- + {% if pr['assignee'] %} + Assigned to: + + {{ pr['assignee'] }} + + {% else %} + Unassigned + {% endif %} +
    +
  • + {% endfor %} + {% if all_pr | length > display_number %} +
  • + And {{ all_pr | length - display_number }} more ... +
  • + {% endif %} + """)