From e6f6799902fa37a76ff75dbaa5149cc7bacce7e3 Mon Sep 17 00:00:00 2001 From: Henrik Levkowetz Date: Tue, 5 May 2020 12:54:58 +0000 Subject: [PATCH 01/12] Added calendar icon links for webcal subscription and ical download to the Upcoming meetings page. Removed the display of agenda and call-in links for cancelled meetings. Moved the CANCELLED label into the freed-up space. Commit ready to merge. - Legacy-Id: 17735 --- ietf/templates/meeting/upcoming.html | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/ietf/templates/meeting/upcoming.html b/ietf/templates/meeting/upcoming.html index 192c9ff09..d2a6a523b 100644 --- a/ietf/templates/meeting/upcoming.html +++ b/ietf/templates/meeting/upcoming.html @@ -20,7 +20,14 @@
-

Upcoming Meetings

+

Upcoming Meetings + + + + + + +

For more on regular IETF meetings see here

@@ -68,11 +75,17 @@ {{ session.official_timeslotassignment.timeslot.utc_start_time | date:"Y-m-d H:i"}} - {{ session.official_timeslotassignment.timeslot.utc_end_time | date:"H:i e" }} {{ session.group.acronym }} - {{ session.meeting.number }}{% if session.current_status == 'canceled' %}  CANCELLED{% endif %} - - - {% include "meeting/interim_session_buttons.html" %} + {{ session.meeting.number }} + {% if session.current_status == 'canceled' %} + + CANCELLED + + {% else %} + + {% include "meeting/interim_session_buttons.html" with show_agenda=True %} + + {% endif %} {% endwith %} {% else %} Unexpected entry type: {{entry|classname}} From 2a290b4f0b9785859c1de6c3af7685b5e6d2026d Mon Sep 17 00:00:00 2001 From: Henrik Levkowetz Date: Tue, 5 May 2020 12:56:43 +0000 Subject: [PATCH 02/12] Added CSS styling to support superposition of Font-Awesome glyphs other than the builtin 1x on 2x sizes. Commit ready to merge. - Legacy-Id: 17736 --- ietf/static/ietf/css/ietf.css | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/ietf/static/ietf/css/ietf.css b/ietf/static/ietf/css/ietf.css index 28dc5082c..51e1220d8 100644 --- a/ietf/static/ietf/css/ietf.css +++ b/ietf/static/ietf/css/ietf.css @@ -771,6 +771,25 @@ ul.progress-section { .btn .fa-stack { width: 1em; height: 1em; } .btn .fa-stack .fa-stack-1x { line-height: 80%; } +.fa-stack-1 { + position: relative; + display: inline-block; + width: 1.28571429em; + height: 1em; + vertical-align: inherit; +} +.fa-stack-sm { + width: 100%; + text-align: center; + font-size: 0.7172em; + line-height: inherit; +} +.fa-stack-xs { + width: 100%; + text-align: center; + font-size: 0.5em; + line-height: inherit; +} /* ========================================================================== */ From 280c356e5d406e19af03b4362cdd2f19c5ab8071 Mon Sep 17 00:00:00 2001 From: Henrik Levkowetz Date: Tue, 5 May 2020 12:59:14 +0000 Subject: [PATCH 03/12] Fixed a problem with SchedTimeSessAssignment.slug() for sessions without historic_group information. Commit ready to merge. - Legacy-Id: 17737 --- ietf/meeting/models.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ietf/meeting/models.py b/ietf/meeting/models.py index e7ebbe324..382f6dc27 100644 --- a/ietf/meeting/models.py +++ b/ietf/meeting/models.py @@ -793,7 +793,7 @@ class SchedTimeSessAssignment(models.Model): if not self.timeslot: components.append("unknown") - if not self.session or not (getattr(self.session, "historic_group") or self.session.group): + if not self.session or not (getattr(self.session, "historic_group", None) or self.session.group): components.append("unknown") else: components.append(self.timeslot.time.strftime("%Y-%m-%d-%a-%H%M")) From 6f1186672fb606e759e6b9e0b267a3363250f05d Mon Sep 17 00:00:00 2001 From: Henrik Levkowetz Date: Tue, 5 May 2020 13:04:11 +0000 Subject: [PATCH 04/12] Merged in code from mark@painless-security.com in [17694] which provides historic_group information in the session_details() view, and a test case for same. Added 'now' information in the template dictionary, for use when rendering old (vs. upcoming) session details. Commit ready for merge. - Legacy-Id: 17738 Note: SVN reference [17694] has been migrated to Git commit 4df7e5531f8273892c71a363cf328bb324585204 --- ietf/meeting/tests_views.py | 6 ++++++ ietf/meeting/views.py | 18 +++++++++++++++++- 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/ietf/meeting/tests_views.py b/ietf/meeting/tests_views.py index 9a34bf1e8..b570ffb2e 100644 --- a/ietf/meeting/tests_views.py +++ b/ietf/meeting/tests_views.py @@ -1091,6 +1091,12 @@ class SessionDetailsTests(TestCase): self.assertTrue(all([x in unicontent(r) for x in ('slides','agenda','minutes','draft')])) self.assertNotContains(r, 'deleted') + q = PyQuery(r.content) + self.assertTrue(q('div.session_buttons#session_%s' % session.id), + 'Session detail page does not contain session tool buttons') + self.assertFalse(q('div.session_buttons#session_%s span.fa-arrows-alt' % session.id), + 'The session detail page is incorrectly showing the "Show meeting materials" button') + def test_session_details_past_interim(self): group = GroupFactory.create(type_id='wg',state_id='active') chair = RoleFactory(name_id='chair',group=group) diff --git a/ietf/meeting/views.py b/ietf/meeting/views.py index b28bd829a..2d1ae8826 100644 --- a/ietf/meeting/views.py +++ b/ietf/meeting/views.py @@ -78,6 +78,7 @@ from ietf.secr.proceedings.utils import handle_upload_file from ietf.secr.proceedings.proc_utils import (get_progress_stats, post_process, import_audio_files, create_recording) from ietf.utils.decorators import require_api_key +from ietf.utils.history import find_history_replacements_active_at from ietf.utils.log import assertion from ietf.utils.mail import send_mail_message, send_mail_text from ietf.utils.pipe import pipe @@ -1128,9 +1129,22 @@ def session_details(request, num, acronym): if not sessions: raise Http404 + # Find the time of the meeting, so that we can look back historically + # for what the group was called at the time. + meeting_time = datetime.datetime.combine(meeting.date, datetime.time()) + + groups = list(set([ s.group for s in sessions ])) + group_replacements = find_history_replacements_active_at(groups, meeting_time) + status_names = {n.slug: n.name for n in SessionStatusName.objects.all()} for session in sessions: + session.historic_group = None + if session.group: + session.historic_group = group_replacements.get(session.group_id) + if session.historic_group: + session.historic_group.historic_parent = None + session.type_counter = Counter() ss = session.timeslotassignments.filter(schedule=meeting.schedule).order_by('timeslot__time') if ss: @@ -1183,6 +1197,7 @@ def session_details(request, num, acronym): 'can_manage_materials' : can_manage, 'can_view_request': can_view_request, 'thisweek': datetime.date.today()-datetime.timedelta(days=7), + 'now': datetime.datetime.now(), }) class SessionDraftsForm(forms.Form): @@ -2237,7 +2252,7 @@ def past(request): def upcoming(request): '''List of upcoming meetings''' - today = datetime.date.today() + today = datetime.date.today()-datetime.timedelta(days=7) # Get ietf meetings starting 7 days ago, and interim meetings starting today ietf_meetings = Meeting.objects.filter(type_id='ietf', date__gte=today-datetime.timedelta(days=7)) @@ -2274,6 +2289,7 @@ def upcoming(request): 'menu_actions': actions, 'menu_entries': menu_entries, 'selected_menu_entry': selected_menu_entry, + 'now': datetime.datetime.now() }) From ad37d80aa8f4efa9b2ba6751e605c6f9d63cbf63 Mon Sep 17 00:00:00 2001 From: Henrik Levkowetz Date: Tue, 5 May 2020 15:38:43 +0000 Subject: [PATCH 05/12] Added a custom font with (currently) one glyph, the meetecho symbol, in order to be able to treat it the same way as other session-related links in the session link collection on agenda.html and upcoming.html. - Legacy-Id: 17742 --- ietf/static/ietf/font-datatracker/README.txt | 75 ++++++++++++++++++ ietf/static/ietf/font-datatracker/config.json | 24 ++++++ .../ietf/font-datatracker/css/datatracker.css | 58 ++++++++++++++ .../font-datatracker/css/font-datatracker.css | 48 +++++++++++ .../font-datatracker/font/datatracker.eot | Bin 0 -> 4072 bytes .../font-datatracker/font/datatracker.svg | 12 +++ .../font-datatracker/font/datatracker.ttf | Bin 0 -> 3892 bytes .../font-datatracker/font/datatracker.woff | Bin 0 -> 2348 bytes .../font-datatracker/font/datatracker.woff2 | Bin 0 -> 1840 bytes .../font/font-datatracker.eot | Bin 0 -> 4072 bytes .../font/font-datatracker.svg | 12 +++ .../font/font-datatracker.ttf | Bin 0 -> 3892 bytes .../font/font-datatracker.woff | Bin 0 -> 2348 bytes .../font/font-datatracker.woff2 | Bin 0 -> 1840 bytes 14 files changed, 229 insertions(+) create mode 100755 ietf/static/ietf/font-datatracker/README.txt create mode 100755 ietf/static/ietf/font-datatracker/config.json create mode 100755 ietf/static/ietf/font-datatracker/css/datatracker.css create mode 100755 ietf/static/ietf/font-datatracker/css/font-datatracker.css create mode 100755 ietf/static/ietf/font-datatracker/font/datatracker.eot create mode 100755 ietf/static/ietf/font-datatracker/font/datatracker.svg create mode 100755 ietf/static/ietf/font-datatracker/font/datatracker.ttf create mode 100755 ietf/static/ietf/font-datatracker/font/datatracker.woff create mode 100755 ietf/static/ietf/font-datatracker/font/datatracker.woff2 create mode 100755 ietf/static/ietf/font-datatracker/font/font-datatracker.eot create mode 100755 ietf/static/ietf/font-datatracker/font/font-datatracker.svg create mode 100755 ietf/static/ietf/font-datatracker/font/font-datatracker.ttf create mode 100755 ietf/static/ietf/font-datatracker/font/font-datatracker.woff create mode 100755 ietf/static/ietf/font-datatracker/font/font-datatracker.woff2 diff --git a/ietf/static/ietf/font-datatracker/README.txt b/ietf/static/ietf/font-datatracker/README.txt new file mode 100755 index 000000000..beaab3366 --- /dev/null +++ b/ietf/static/ietf/font-datatracker/README.txt @@ -0,0 +1,75 @@ +This webfont is generated by http://fontello.com open source project. + + +================================================================================ +Please, note, that you should obey original font licenses, used to make this +webfont pack. Details available in LICENSE.txt file. + +- Usually, it's enough to publish content of LICENSE.txt file somewhere on your + site in "About" section. + +- If your project is open-source, usually, it will be ok to make LICENSE.txt + file publicly available in your repository. + +- Fonts, used in Fontello, don't require a clickable link on your site. + But any kind of additional authors crediting is welcome. +================================================================================ + + +Comments on archive content +--------------------------- + +- /font/* - fonts in different formats + +- /css/* - different kinds of css, for all situations. Should be ok with + twitter bootstrap. Also, you can skip style and assign icon classes + directly to text elements, if you don't mind about IE7. + +- demo.html - demo file, to show your webfont content + +- LICENSE.txt - license info about source fonts, used to build your one. + +- config.json - keeps your settings. You can import it back into fontello + anytime, to continue your work + + +Why so many CSS files ? +----------------------- + +Because we like to fit all your needs :) + +- basic file, .css - is usually enough, it contains @font-face + and character code definitions + +- *-ie7.css - if you need IE7 support, but still don't wish to put char codes + directly into html + +- *-codes.css and *-ie7-codes.css - if you like to use your own @font-face + rules, but still wish to benefit from css generation. That can be very + convenient for automated asset build systems. When you need to update font - + no need to manually edit files, just override old version with archive + content. See fontello source code for examples. + +- *-embedded.css - basic css file, but with embedded WOFF font, to avoid + CORS issues in Firefox and IE9+, when fonts are hosted on the separate domain. + We strongly recommend to resolve this issue by `Access-Control-Allow-Origin` + server headers. But if you ok with dirty hack - this file is for you. Note, + that data url moved to separate @font-face to avoid problems with KW9RBF?50Y(w(s8EtwQTW1QLNNh|(mYh!Sn>^+#fR zt@Wm=`&1;-B) zens3BeKEvzNnD4tF7Amf=vh+{x7^&G*c1b?BNDMBnqtw-JZTq9GJr_DDU?{e`qIrW zCU1ZK4Je<3_Quy=TF91@ugqY4ALCmq+r8btpZ(pt82Z74%BrF{YmNofmf?#0naR

TVArJBJduFOq@><%Y)Wo)y#wA&%5_u(p z*O=YL*=#k7=Lvq;%{*1JD*R^^Y}f5{v(DH@*11R!JME71RByAZCbb*zvLNeeo;LE7 z7H943bZfem#f&!w>QhO%E)!yc3yz}GT9y!b^aYx3 zb*F0{!v;}t3aV`C#WjyQn|vNN16Y6#o_y`a1g4Ned@+%XI60;IEtMvgV} z3Zx=lm&gpXB6yHGFA*=5lBHs0T#F&TolvB|sGEiFsrMLP00RWVCk??Az{x>NxSD$`LX zU5)^)Nl27SVEr7a*;cz|xZ9V-$edKFBo&o?O(dm6Q_>RIC{)_hQYl%`+UlSweQA6d zSXI=gO_4A|c(5Xn{wZyZtOU}Nh8hyGXKY0V`n1%_7}&sAPMJsrCh`sD{jxk)lz|5q zN|}<9ejuesMk+0dSUaa}MHh;)@$X;L17kd?<+K76peiV%4DSrw9yTNCV;AKs32o7a zq@_^>?5(UWOKG*T#@zn)`+#e-260;JA_C)hO<)kAlG2Bn(mtj_V8t9Pv~M)2g0z?= zLx4~OOG>3i1mOrlL- z@vFI_K`DyeV-F?m7eT1@0$Dt7ebgUgLpLW?f$Qw>J^8&K9R7tegoV9*?28Ak0f>4azP^og{t?V$GkfHkmQy0RDd-&QQ(%(ADkG4lY`Y7#@Lk6hhPy91F#Md z@ZiGYPVf5eUJqiQtKdJd;KVZZzsAYaH@mWQ6VqZXl1qj74LK$cTefZn> zY#g8EZxPGk-F`b0L6Uzx}j^2S6C#W}Gz zks~o9e#&2+I)I-$;x`kSM1`K7$WoMOX(B7=FHU3)`Q}76knc`p3;8<}ITW|(M-w>` zb^7G;V0VAGxxO(<&R%{d$riK4)}qApudL|8*XL~<4b6380|pYhs74;CT^4ivHgTw=4Wr1$KN53*B*Zp zJ>K>z(CoOIE8lecz;YDRo_Gy$XV8v-oY4;*+C*IWpEwfm#B+DBeg)P|$JPki3t|C( ePl_9rC(-!fyWMdQA6X^*?S6mMU)dP2$$tRg;Fq2N literal 0 HcmV?d00001 diff --git a/ietf/static/ietf/font-datatracker/font/datatracker.svg b/ietf/static/ietf/font-datatracker/font/datatracker.svg new file mode 100755 index 000000000..cbd2186a6 --- /dev/null +++ b/ietf/static/ietf/font-datatracker/font/datatracker.svg @@ -0,0 +1,12 @@ + + + +Copyright (C) 2020 by original authors @ fontello.com + + + + + + + + \ No newline at end of file diff --git a/ietf/static/ietf/font-datatracker/font/datatracker.ttf b/ietf/static/ietf/font-datatracker/font/datatracker.ttf new file mode 100755 index 0000000000000000000000000000000000000000..d7ab48679ae022985c5421b8b79f2ccec444b42d GIT binary patch literal 3892 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 literal 0 HcmV?d00001 diff --git a/ietf/static/ietf/font-datatracker/font/datatracker.woff2 b/ietf/static/ietf/font-datatracker/font/datatracker.woff2 new file mode 100755 index 0000000000000000000000000000000000000000..239ca87fd2d3c21241ad2bffcbefd78fd876b4c9 GIT binary patch literal 1840 zcmV-02haF-Pew8T0RR9100%Gt3jhEB01q?(00!Xz0RR9100000000000000000000 z0000SR0dW6f^Z6vD2+-B1^@vz0we4aR)LRhzt>xq@-j&3+%QIP*8uSQQ3cE zU}*G&U5omg(DSun|CdwyG-JgM%vdh4H7K^RE_00008U@gV{dv13{h0& z#E>r%aK!>L^rOMSq#O|Bmj|f9&u)j@(d14Oz=4H0B?*~n37<^BOBRY`FFCyP>4{0L z&pY?d@$s{7QD}MzGgBKyn`uGcl#u8a7;+vk#0-EU%L8%FNsJh*M`ncO8B%Nimj1xC zw#uGMk>KK(ds4H%)Yad-OD5@-Lo{9yt-YkwJ`yvy?NvHP ziRoOnckY{Mb#~d~&c!JCDrKccRGg_NLjS11g{!f>HF$-1)Cuf5QUdBSPNv3nVfj)u zQ;pK?1(l=$&}(C)!djIdeY?G)LNv>4s-dCHU|vR{fN?0~-*=Y$%3Ac(5Z3Wh;WN@R;Ly?u$C>L(YILjPJ-kuK&k-?oN0T#~vxI~Pni^~=L)LZn?Y7^&&Z zYFX5|#zmNJX$T3|RD)t?J6lLwuX@bTje+9`;G9W`Me531ZT`mF0fv65AfR1LrnPX( zMvR8GhGV#~RZ3-+L6LK9H-KquL%$Cdh%d7tqurGm>bqX z0rLm+SM4`<^D(xA3%%#C`_eez|8Nai%y2FdB;6KH2xSu@t>&lrPEK}u6Giqp@tJR< znKq!5gW?6Esr;6IReIkI*&KJV0==TumgpiQr^ywvRu$J@U@=E2PEvrAiof%U_4X3~ zYVjDiaB--uh?~JVO={3nPiVeu-XpC!E0x7Sy6iOSu$OF;rcgQR`8wh0*OW+_q8Hc> zo?Z(^04LthiQ^A^wlQw!4vUlO^8mZ{mdcy4Qrs}!V9vcDu@lbmb5U(erx6JC}D5(9Oqb?yfXR0ntCrQ;m>uoAT=A_r9-|j&wQ1E!F&b~*_6X%r|0?v<3P#Y@ zt;@Ht7%{`xC`{EKfJ=%h?fxrX_9Bef7?FP?`HJT$Y?L$8gH^WMl&d0LNNvnzLMs`F zL-bR07p|To4#potYl=l+NMVN_T^VQe#E6Ou*Md8qlHK1omW_mM_*Xm&Zrt`T>7>O; zj2~2f7Dgf|x4Tk@`gdpvt=6Q^zbQ<1ReGAq3wr#swgIXK`3RV~mDT4-?6{kn$+_&B zntfp;mD&;T40A+SqGU*o-;nD;xS>H%CRGMUdBz@Gu@m52{lMz^>|6&=OymMER4Dr91=3Du9z`O%0s^didJ zfogy9@aiKZO)Z_Fux;$1|8I3i9Nyv|#m`cQEfZPNHW{GAavw!t+CkjDTe&%pL>?P0 zeAM59j^DzS(JfG!b+jyR%q_h+`OUVl^xEXtAcX*65Ilx65C9;UbWPc@wd=(Hg2+Dt z0DST3gQbnx?2mI01c={&Zh}$F_1k~QZR?v-{<)QrTh!s_12ugK4(=4<#xibuy4%K$JCA-&=8n!T zGyFi=VL!8q?0WKZZtJvN@xVay5wGOD)ki)NJ^VPsuFbv@Jd4$5*J-p)U@{XaYmZf< z(Xt&rl{hp5v)MCZ1Z@0rYEe0wqbbk?nUT@TXymQBMlw3#2!ky_GIvL>2RGrO6I#Y*sSNP$yw%i~#Qgo`@oAw<&3d}o%c5oP%z9S4%{Y0@E eT{&h22Rh^i%&bD*Tq;6_;EojTG1mbC2Mhso(R{4{ literal 0 HcmV?d00001 diff --git a/ietf/static/ietf/font-datatracker/font/font-datatracker.eot b/ietf/static/ietf/font-datatracker/font/font-datatracker.eot new file mode 100755 index 0000000000000000000000000000000000000000..b0f35e502d257115488ea41d3daa4c737cdf58d9 GIT binary patch literal 4072 zcmd^C-EUk+6`wO-_iI1w_KW9RBF?50Y(w(s8EtwQTW1QLNNh|(mYh!Sn>^+#fR zt@Wm=`&1;-B) zens3BeKEvzNnD4tF7Amf=vh+{x7^&G*c1b?BNDMBnqtw-JZTq9GJr_DDU?{e`qIrW zCU1ZK4Je<3_Quy=TF91@ugqY4ALCmq+r8btpZ(pt82Z74%BrF{YmNofmf?#0naR

TVArJBJduFOq@><%Y)Wo)y#wA&%5_u(p z*O=YL*=#k7=Lvq;%{*1JD*R^^Y}f5{v(DH@*11R!JME71RByAZCbb*zvLNeeo;LE7 z7H943bZfem#f&!w>QhO%E)!yc3yz}GT9y!b^aYx3 zb*F0{!v;}t3aV`C#WjyQn|vNN16Y6#o_y`a1g4Ned@+%XI60;IEtMvgV} z3Zx=lm&gpXB6yHGFA*=5lBHs0T#F&TolvB|sGEiFsrMLP00RWVCk??Az{x>NxSD$`LX zU5)^)Nl27SVEr7a*;cz|xZ9V-$edKFBo&o?O(dm6Q_>RIC{)_hQYl%`+UlSweQA6d zSXI=gO_4A|c(5Xn{wZyZtOU}Nh8hyGXKY0V`n1%_7}&sAPMJsrCh`sD{jxk)lz|5q zN|}<9ejuesMk+0dSUaa}MHh;)@$X;L17kd?<+K76peiV%4DSrw9yTNCV;AKs32o7a zq@_^>?5(UWOKG*T#@zn)`+#e-260;JA_C)hO<)kAlG2Bn(mtj_V8t9Pv~M)2g0z?= zLx4~OOG>3i1mOrlL- z@vFI_K`DyeV-F?m7eT1@0$Dt7ebgUgLpLW?f$Qw>J^8&K9R7tegoV9*?28Ak0f>4azP^og{t?V$GkfHkmQy0RDd-&QQ(%(ADkG4lY`Y7#@Lk6hhPy91F#Md z@ZiGYPVf5eUJqiQtKdJd;KVZZzsAYaH@mWQ6VqZXl1qj74LK$cTefZn> zY#g8EZxPGk-F`b0L6Uzx}j^2S6C#W}Gz zks~o9e#&2+I)I-$;x`kSM1`K7$WoMOX(B7=FHU3)`Q}76knc`p3;8<}ITW|(M-w>` zb^7G;V0VAGxxO(<&R%{d$riK4)}qApudL|8*XL~<4b6380|pYhs74;CT^4ivHgTw=4Wr1$KN53*B*Zp zJ>K>z(CoOIE8lecz;YDRo_Gy$XV8v-oY4;*+C*IWpEwfm#B+DBeg)P|$JPki3t|C( ePl_9rC(-!fyWMdQA6X^*?S6mMU)dP2$$tRg;Fq2N literal 0 HcmV?d00001 diff --git a/ietf/static/ietf/font-datatracker/font/font-datatracker.svg b/ietf/static/ietf/font-datatracker/font/font-datatracker.svg new file mode 100755 index 000000000..cbd2186a6 --- /dev/null +++ b/ietf/static/ietf/font-datatracker/font/font-datatracker.svg @@ -0,0 +1,12 @@ + + + +Copyright (C) 2020 by original authors @ fontello.com + + + + + + + + \ No newline at end of file diff --git a/ietf/static/ietf/font-datatracker/font/font-datatracker.ttf b/ietf/static/ietf/font-datatracker/font/font-datatracker.ttf new file mode 100755 index 0000000000000000000000000000000000000000..d7ab48679ae022985c5421b8b79f2ccec444b42d GIT binary patch literal 3892 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 literal 0 HcmV?d00001 diff --git a/ietf/static/ietf/font-datatracker/font/font-datatracker.woff2 b/ietf/static/ietf/font-datatracker/font/font-datatracker.woff2 new file mode 100755 index 0000000000000000000000000000000000000000..239ca87fd2d3c21241ad2bffcbefd78fd876b4c9 GIT binary patch literal 1840 zcmV-02haF-Pew8T0RR9100%Gt3jhEB01q?(00!Xz0RR9100000000000000000000 z0000SR0dW6f^Z6vD2+-B1^@vz0we4aR)LRhzt>xq@-j&3+%QIP*8uSQQ3cE zU}*G&U5omg(DSun|CdwyG-JgM%vdh4H7K^RE_00008U@gV{dv13{h0& z#E>r%aK!>L^rOMSq#O|Bmj|f9&u)j@(d14Oz=4H0B?*~n37<^BOBRY`FFCyP>4{0L z&pY?d@$s{7QD}MzGgBKyn`uGcl#u8a7;+vk#0-EU%L8%FNsJh*M`ncO8B%Nimj1xC zw#uGMk>KK(ds4H%)Yad-OD5@-Lo{9yt-YkwJ`yvy?NvHP ziRoOnckY{Mb#~d~&c!JCDrKccRGg_NLjS11g{!f>HF$-1)Cuf5QUdBSPNv3nVfj)u zQ;pK?1(l=$&}(C)!djIdeY?G)LNv>4s-dCHU|vR{fN?0~-*=Y$%3Ac(5Z3Wh;WN@R;Ly?u$C>L(YILjPJ-kuK&k-?oN0T#~vxI~Pni^~=L)LZn?Y7^&&Z zYFX5|#zmNJX$T3|RD)t?J6lLwuX@bTje+9`;G9W`Me531ZT`mF0fv65AfR1LrnPX( zMvR8GhGV#~RZ3-+L6LK9H-KquL%$Cdh%d7tqurGm>bqX z0rLm+SM4`<^D(xA3%%#C`_eez|8Nai%y2FdB;6KH2xSu@t>&lrPEK}u6Giqp@tJR< znKq!5gW?6Esr;6IReIkI*&KJV0==TumgpiQr^ywvRu$J@U@=E2PEvrAiof%U_4X3~ zYVjDiaB--uh?~JVO={3nPiVeu-XpC!E0x7Sy6iOSu$OF;rcgQR`8wh0*OW+_q8Hc> zo?Z(^04LthiQ^A^wlQw!4vUlO^8mZ{mdcy4Qrs}!V9vcDu@lbmb5U(erx6JC}D5(9Oqb?yfXR0ntCrQ;m>uoAT=A_r9-|j&wQ1E!F&b~*_6X%r|0?v<3P#Y@ zt;@Ht7%{`xC`{EKfJ=%h?fxrX_9Bef7?FP?`HJT$Y?L$8gH^WMl&d0LNNvnzLMs`F zL-bR07p|To4#potYl=l+NMVN_T^VQe#E6Ou*Md8qlHK1omW_mM_*Xm&Zrt`T>7>O; zj2~2f7Dgf|x4Tk@`gdpvt=6Q^zbQ<1ReGAq3wr#swgIXK`3RV~mDT4-?6{kn$+_&B zntfp;mD&;T40A+SqGU*o-;nD;xS>H%CRGMUdBz@Gu@m52{lMz^>|6&=OymMER4Dr91=3Du9z`O%0s^didJ zfogy9@aiKZO)Z_Fux;$1|8I3i9Nyv|#m`cQEfZPNHW{GAavw!t+CkjDTe&%pL>?P0 zeAM59j^DzS(JfG!b+jyR%q_h+`OUVl^xEXtAcX*65Ilx65C9;UbWPc@wd=(Hg2+Dt z0DST3gQbnx?2mI01c={&Zh}$F_1k~QZR?v-{<)QrTh!s_12ugK4(=4<#xibuy4%K$JCA-&=8n!T zGyFi=VL!8q?0WKZZtJvN@xVay5wGOD)ki)NJ^VPsuFbv@Jd4$5*J-p)U@{XaYmZf< z(Xt&rl{hp5v)MCZ1Z@0rYEe0wqbbk?nUT@TXymQBMlw3#2!ky_GIvL>2RGrO6I#Y*sSNP$yw%i~#Qgo`@oAw<&3d}o%c5oP%z9S4%{Y0@E eT{&h22Rh^i%&bD*Tq;6_;EojTG1mbC2Mhso(R{4{ literal 0 HcmV?d00001 From 5e56f16e7c7da91ba77db715c69d19b36dd9e8a8 Mon Sep 17 00:00:00 2001 From: Henrik Levkowetz Date: Tue, 5 May 2020 15:40:55 +0000 Subject: [PATCH 06/12] Added the css for font-datatracker to base.html - Legacy-Id: 17743 --- ietf/templates/base.html | 1 + 1 file changed, 1 insertion(+) diff --git a/ietf/templates/base.html b/ietf/templates/base.html index 9cbf25784..bdefe9d63 100644 --- a/ietf/templates/base.html +++ b/ietf/templates/base.html @@ -19,6 +19,7 @@ {% endcomment %} + From 9485de63710a3b44a1d35402f567cc69831b94f2 Mon Sep 17 00:00:00 2001 From: Henrik Levkowetz Date: Tue, 5 May 2020 15:44:23 +0000 Subject: [PATCH 07/12] Tweaked the spacing of the calendar symbol link on the session details page to match the spacing otherwise used for session detail links. - Legacy-Id: 17744 --- ietf/templates/meeting/session_details.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ietf/templates/meeting/session_details.html b/ietf/templates/meeting/session_details.html index 0415f0b84..d8b821929 100644 --- a/ietf/templates/meeting/session_details.html +++ b/ietf/templates/meeting/session_details.html @@ -17,7 +17,7 @@

{{ meeting }} : {{ acronym }} {% if meeting.date >= thisweek %} - + {% endif %}

From 9d72b65c2d2c708ffb80a3a836f0d731c735ee02 Mon Sep 17 00:00:00 2001 From: Henrik Levkowetz Date: Tue, 5 May 2020 15:52:48 +0000 Subject: [PATCH 08/12] Changed the session details panel to not show icalendar links if the session has been cancelled, and to do show the full set of session agenda links if not cancelled. - Legacy-Id: 17746 --- .../meeting/session_details_panel.html | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/ietf/templates/meeting/session_details_panel.html b/ietf/templates/meeting/session_details_panel.html index 99dc7cb62..24e923765 100644 --- a/ietf/templates/meeting/session_details_panel.html +++ b/ietf/templates/meeting/session_details_panel.html @@ -1,12 +1,25 @@ {% load origin ietf_filters textfilters tz dateformat %}{% origin %} {% for session in sessions %} + {% with item=session.official_timeslotassignment %}

{% if sessions|length > 1 %}Session {{ forloop.counter }} : {% endif %} {% for time in session.times %}{% if not forloop.first %}, {% endif %} {{time|dateformat:"l Y-m-d H:i T"}} {% if time.tzinfo.zone != "UTC" %}({{time|utc|dateformat:"H:i T"}}){% endif %}{% endfor %} {% if session.cancelled %}CANCELLED{% else %}{{ session.status }}{% endif %} {% if session.name %} : {{ session.name }}{% endif %} - {% if meeting.date >= thisweek %} - + {% if not session.cancelled %} + + {% if meeting.type.slug == 'interim' %} + {% include "meeting/interim_session_buttons.html" with show_agenda=False show_empty=False %} + {% else %} + {% with schedule=meeting.schedule %} + {% include "meeting/session_buttons_include.html" %} + {% endwith %} + {% endif %} + + {% if now < item.timeslot.end_time %} + + {% endif %} + {% endif %}

{% if session.agenda_note %}

{{session.agenda_note}}

{% endif %} @@ -141,4 +154,5 @@ {% endif %}

+ {% endwith %} {% endfor %} From 7ea7ea031191315fb0477f96c6baa69b63241114 Mon Sep 17 00:00:00 2001 From: Henrik Levkowetz Date: Tue, 5 May 2020 15:56:02 +0000 Subject: [PATCH 09/12] Whitespace changes only. Reindented and reformatted a template. - Legacy-Id: 17747 --- .../meeting/session_details_panel.html | 258 +++++++++--------- 1 file changed, 129 insertions(+), 129 deletions(-) diff --git a/ietf/templates/meeting/session_details_panel.html b/ietf/templates/meeting/session_details_panel.html index 24e923765..3a87dff7f 100644 --- a/ietf/templates/meeting/session_details_panel.html +++ b/ietf/templates/meeting/session_details_panel.html @@ -2,10 +2,10 @@ {% for session in sessions %} {% with item=session.official_timeslotassignment %} -

{% if sessions|length > 1 %}Session {{ forloop.counter }} : {% endif %} - {% for time in session.times %}{% if not forloop.first %}, {% endif %} {{time|dateformat:"l Y-m-d H:i T"}} {% if time.tzinfo.zone != "UTC" %}({{time|utc|dateformat:"H:i T"}}){% endif %}{% endfor %} - {% if session.cancelled %}CANCELLED{% else %}{{ session.status }}{% endif %} - {% if session.name %} : {{ session.name }}{% endif %} +

{% if sessions|length > 1 %}Session {{ forloop.counter }} : {% endif %} + {% for time in session.times %}{% if not forloop.first %}, {% endif %} {{time|dateformat:"l Y-m-d H:i T"}} {% if time.tzinfo.zone != "UTC" %}({{time|utc|dateformat:"H:i T"}}){% endif %}{% endfor %} + {% if session.cancelled %}CANCELLED{% else %}{{ session.status }}{% endif %} + {% if session.name %} : {{ session.name }}{% endif %} {% if not session.cancelled %} {% if meeting.type.slug == 'interim' %} @@ -20,139 +20,139 @@ {% endif %} - {% endif %} -

- {% if session.agenda_note %}

{{session.agenda_note}}

{% endif %} + {% endif %} + + {% if session.agenda_note %}

{{session.agenda_note}}

{% endif %} - {% if can_manage_materials %} - {% if session.current_status == 'sched' or session.current_status == 'schedw' %} -
- {% if can_view_request %} - Meeting Details + {% if can_manage_materials %} + {% if session.current_status == 'sched' or session.current_status == 'schedw' %} +
+ {% if can_view_request %} + Meeting Details + {% endif %} +
+ {% if not session.type_counter.agenda %} + This session does not yet have an agenda + {% endif %} + {% endif %} + {% endif %} + + {% if meeting.type.slug == 'interim' and session.remote_instructions %} +
+ Remote instructions: + {% if "https://ietf.webex.com" in session.agenda_note|first_url %} + + + {% elif "https://ietf.webex.com" in session.remote_instructions|first_url %} + + + {% endif %} + {{ session.remote_instructions }} +
+ {% endif %} + +
+
Agenda, Minutes, and Bluesheets
+
+ + {% for pres in session.filtered_artifacts %} + + {% url 'ietf.doc.views_doc.document_main' name=pres.document.name as url %} + + {% if user|has_role:"Secretariat" or can_manage_materials %} + + {% endif %} + + {% endfor %} +
+ {{pres.document.title}} + ({{ pres.document.name }}) + + {% if pres.document.type.slug == 'minutes' %} + {% url 'ietf.meeting.views.upload_session_minutes' session_id=session.pk num=session.meeting.number as upload_url %} + {% elif pres.document.type.slug == 'agenda' %} + {% url 'ietf.meeting.views.upload_session_agenda' session_id=session.pk num=session.meeting.number as upload_url %} + {% else %} + {% url 'ietf.meeting.views.upload_session_bluesheets' session_id=session.pk num=session.meeting.number as upload_url %} + {% endif %} + {% if pres.document.type.slug != 'bluesheets' or user|has_role:"Secretariat" or meeting.type.slug == 'interim' and can_manage_materials %} + Upload Revision + {% endif %} +
+ {% if can_manage_materials %} + {% if not session.type_counter.agenda %} + Upload Agenda + {% endif %} + {% if not session.type_counter.minutes %} + Upload Minutes + {% endif %} + {% endif %} + {% if user|has_role:"Secretariat" and not session.type_counter.bluesheets or meeting.type.slug == 'interim' and can_manage_materials and not session.type_counter.bluesheets %} + Upload Bluesheets {% endif %}
- {% if not session.type_counter.agenda %} - This session does not yet have an agenda - {% endif %} - {% endif %} - {% endif %} - - {% if meeting.type.slug == 'interim' and session.remote_instructions %} -
- Remote instructions: - {% if "https://ietf.webex.com" in session.agenda_note|first_url %} - - - {% elif "https://ietf.webex.com" in session.remote_instructions|first_url %} - - - {% endif %} - {{ session.remote_instructions }} -
- {% endif %} - -
-
Agenda, Minutes, and Bluesheets
-
- - {% for pres in session.filtered_artifacts %} - - {% url 'ietf.doc.views_doc.document_main' name=pres.document.name as url %} - - {% if user|has_role:"Secretariat" or can_manage_materials %} - - {% endif %} - - {% endfor %} -
- {{pres.document.title}} - ({{ pres.document.name }}) - - {% if pres.document.type.slug == 'minutes' %} - {% url 'ietf.meeting.views.upload_session_minutes' session_id=session.pk num=session.meeting.number as upload_url %} - {% elif pres.document.type.slug == 'agenda' %} - {% url 'ietf.meeting.views.upload_session_agenda' session_id=session.pk num=session.meeting.number as upload_url %} - {% else %} - {% url 'ietf.meeting.views.upload_session_bluesheets' session_id=session.pk num=session.meeting.number as upload_url %} - {% endif %} - {% if pres.document.type.slug != 'bluesheets' or user|has_role:"Secretariat" or meeting.type.slug == 'interim' and can_manage_materials %} - Upload Revision - {% endif %} -
- {% if can_manage_materials %} - {% if not session.type_counter.agenda %} - Upload Agenda - {% endif %} - {% if not session.type_counter.minutes %} - Upload Minutes - {% endif %} - {% endif %} - {% if user|has_role:"Secretariat" and not session.type_counter.bluesheets or meeting.type.slug == 'interim' and can_manage_materials and not session.type_counter.bluesheets %} - Upload Bluesheets - {% endif %}
-
-
-
Slides
-
- - - {% for pres in session.filtered_slides %} - - {% url 'ietf.doc.views_doc.document_main' name=pres.document.name as url %} - - {% if can_manage_materials %} - - {% endif %} - - {% endfor %} - -
- {{pres.document.title}} - ({{ pres.document.name }}) - - Upload Revision - Remove -
- {% if can_manage_materials %} - Upload New Slides - {% elif request.user.is_authenticated and not session.is_material_submission_cutoff %} - Propose Slides - {% endif %} -
- {% if can_manage_materials %} - - {% endif %} -
-
-
Drafts -
-
- - {% for pres in session.filtered_drafts %} - - + {% endif %} + + {% endfor %} + +
+
+
Slides
+
+ + + {% for pres in session.filtered_slides %} + {% url 'ietf.doc.views_doc.document_main' name=pres.document.name as url %} - {{pres.document.title}} ({{ pres.document.name }}) {% if pres.rev %}Version {{pres.rev}}{% endif %} - - {% if can_manage_materials %} - - {% endif %} - - {% endfor %} -
- Remove + + {{pres.document.title}} + ({{ pres.document.name }})
+ {% if can_manage_materials %} +
+ Upload Revision + Remove +
+ {% if can_manage_materials %} + Upload New Slides + {% elif request.user.is_authenticated and not session.is_material_submission_cutoff %} + Propose Slides + {% endif %} +
{% if can_manage_materials %} - - Link additional drafts to session - + {% endif %}
-
+
+
Drafts +
+
+ + {% for pres in session.filtered_drafts %} + + + {% if can_manage_materials %} + + {% endif %} + + {% endfor %} +
+ {% url 'ietf.doc.views_doc.document_main' name=pres.document.name as url %} + {{pres.document.title}} ({{ pres.document.name }}) {% if pres.rev %}Version {{pres.rev}}{% endif %} + + Remove +
+ {% if can_manage_materials %} + + Link additional drafts to session + + {% endif %} +
+
{% endwith %} {% endfor %} From 2bace097aed6a965d0cb9d62c248da7121ef7864 Mon Sep 17 00:00:00 2001 From: Henrik Levkowetz Date: Tue, 5 May 2020 15:59:17 +0000 Subject: [PATCH 10/12] Updated the interim meeting agenda-links template to show appropriate things both for past and future meetings. Added support for items with video_stream() set, to support future meetecho streamed interims. - Legacy-Id: 17748 --- .../meeting/interim_session_buttons.html | 52 ++++++++++++++++--- 1 file changed, 46 insertions(+), 6 deletions(-) diff --git a/ietf/templates/meeting/interim_session_buttons.html b/ietf/templates/meeting/interim_session_buttons.html index 447bed654..d58223790 100644 --- a/ietf/templates/meeting/interim_session_buttons.html +++ b/ietf/templates/meeting/interim_session_buttons.html @@ -1,9 +1,9 @@ {# Copyright The IETF Trust 2015, All Rights Reserved #} -{% load textfilters %} {% load origin %} - {% origin %} - {% if session.agenda %} - {% with session.official_timeslotassignment as item %} +{% load staticfiles %} +{% load textfilters %} +{% origin %} + {% if session.agenda and show_agenda %} {% include "meeting/session_agenda_include.html" %} @@ -11,10 +11,12 @@ - {% endwith %} - {% endif %} + {% endif %} + + {# show stream buttons up till end of session, then show archive buttons #} + {% if now < item.timeslot.end_time %} @@ -33,10 +35,48 @@ href="{{item.timeslot.location.webex_url|format:session }}" title="Webex session"> + {% elif item.timeslot.location.video_stream_url %} + + {% else %} {% endif %} + {% else %} + + + + + {% with session.recordings as recordings %} + {% if recordings %} + {# There's no guaranteed order, so this is a bit messy: #} + + {% for r in recordings %}{% with href=r.get_href %} + {% if 'audio' in href %} + + {% endif %} + {% endwith %}{% endfor %} + + {% for r in recordings %}{% with href=r.get_href %} + {% if 'youtu' in href %} + + {% endif %} + {% endwith %}{% endfor %} + + {% for r in recordings %}{% with href=r.get_href %} + {% if not 'audio' in href and not 'youtu' in href %} + + {% endif %} + {% endwith %}{% endfor %} + {% elif show_empty %} + + {% endif %} + {% endwith %} + {% endif %} + + \ No newline at end of file From 42473ecfb4bdd5d2c1a65e1f333429fad93713d0 Mon Sep 17 00:00:00 2001 From: Henrik Levkowetz Date: Tue, 5 May 2020 16:03:54 +0000 Subject: [PATCH 11/12] Moved the agenda-popup template include for the meeting agenda page into the button-list include, to simplify agenda.html. Reduced variable dereferencing one level in many places in the agenda-popup template. Changed the look of the session-agenda links to reduce the business of the IETF agenda page and match the look of the upcoming meetings page. - Legacy-Id: 17749 --- ietf/templates/meeting/agenda.html | 11 +- .../meeting/session_buttons_include.html | 189 ++++++++---------- 2 files changed, 88 insertions(+), 112 deletions(-) diff --git a/ietf/templates/meeting/agenda.html b/ietf/templates/meeting/agenda.html index 9e85116d2..8897ae8e0 100644 --- a/ietf/templates/meeting/agenda.html +++ b/ietf/templates/meeting/agenda.html @@ -229,15 +229,12 @@ CANCELLED {% endif %} - {% if item.session.agenda %} - {% include "meeting/session_agenda_include.html" %} - {% endif %} - + {% endif %} {% else %} @@ -72,6 +77,10 @@ {% endif %} {% endwith %}{% endfor %} + {% elif item.timeslot.location.video_stream_url %} + {% elif show_empty %} {% endif %}