diff --git a/fixtures/sitetree.json b/fixtures/sitetree.json index 37c28c9a7f07f70b9b0918a8ae3e619690d0ecc2..941770ca9052805a3924165d0c69b836b23921b8 100644 --- a/fixtures/sitetree.json +++ b/fixtures/sitetree.json @@ -59,7 +59,7 @@ "model": "sitetree.treeitem", "pk": 7, "fields": { - "title": "Call for Proposals (Closed)", + "title": "Call for Proposals", "hint": "", "url": "/program/call-for-proposals", "urlaspattern": false, @@ -75,7 +75,7 @@ "access_restricted": false, "access_perm_type": 1, "parent": 24, - "sort_order": 39, + "sort_order": 4, "access_permissions": [] } }, @@ -88,7 +88,7 @@ "url": "/attend", "urlaspattern": false, "tree": 1, - "hidden": false, + "hidden": true, "alias": null, "description": "", "inmenu": true, @@ -199,6 +199,54 @@ "access_permissions": [] } }, +{ + "model": "sitetree.treeitem", + "pk": 14, + "fields": { + "title": "Reporting an Incident", + "hint": "", + "url": "/code-of-conduct/harassment-incidents", + "urlaspattern": false, + "tree": 1, + "hidden": false, + "alias": null, + "description": "", + "inmenu": true, + "inbreadcrumbs": true, + "insitetree": true, + "access_loggedin": false, + "access_guest": false, + "access_restricted": false, + "access_perm_type": 1, + "parent": 8, + "sort_order": 15, + "access_permissions": [] + } +}, +{ + "model": "sitetree.treeitem", + "pk": 15, + "fields": { + "title": "Staff Procedures", + "hint": "", + "url": "/code-of-conduct/harassment-staff-procedures", + "urlaspattern": false, + "tree": 1, + "hidden": false, + "alias": null, + "description": "", + "inmenu": true, + "inbreadcrumbs": true, + "insitetree": true, + "access_loggedin": false, + "access_guest": false, + "access_restricted": false, + "access_perm_type": 1, + "parent": 8, + "sort_order": 17, + "access_permissions": [] + } +}, { "model": "sitetree.treeitem", "pk": 17, @@ -400,7 +448,7 @@ "url": "/wiki", "urlaspattern": false, "tree": 1, - "hidden": false, + "hidden": true, "alias": null, "description": "", "inmenu": true, @@ -472,7 +520,7 @@ "url": "/program/events", "urlaspattern": false, "tree": 1, - "hidden": false, + "hidden": true, "alias": null, "description": "", "inmenu": true, @@ -483,7 +531,7 @@ "access_restricted": false, "access_perm_type": 1, "parent": 24, - "sort_order": 4, + "sort_order": 32, "access_permissions": [] } }, @@ -541,7 +589,7 @@ "fields": { "title": "How to Pitch Your Manager", "hint": "", - "url": "/attend/business-case", + "url": "/attend/business-cases", "urlaspattern": false, "tree": 1, "hidden": false, @@ -606,101 +654,5 @@ "sort_order": 36, "access_permissions": [] } -}, -{ - "model": "sitetree.treeitem", - "pk": 38, - "fields": { - "title": "Transparency Reports", - "hint": "", - "url": "/about/transparency", - "urlaspattern": false, - "tree": 1, - "hidden": true, - "alias": null, - "description": "", - "inmenu": true, - "inbreadcrumbs": true, - "insitetree": true, - "access_loggedin": false, - "access_guest": false, - "access_restricted": false, - "access_perm_type": 1, - "parent": 1, - "sort_order": 38, - "access_permissions": [] - } -}, -{ - "model": "sitetree.treeitem", - "pk": 39, - "fields": { - "title": "Accepted Talks", - "hint": "", - "url": "/schedule/general-sessions/list/", - "urlaspattern": false, - "tree": 1, - "hidden": false, - "alias": null, - "description": "", - "inmenu": true, - "inbreadcrumbs": true, - "insitetree": true, - "access_loggedin": false, - "access_guest": false, - "access_restricted": false, - "access_perm_type": 1, - "parent": 24, - "sort_order": 32, - "access_permissions": [] - } -}, -{ - "model": "sitetree.treeitem", - "pk": 40, - "fields": { - "title": "Financial Aid", - "hint": "", - "url": "/attend/finaid", - "urlaspattern": false, - "tree": 1, - "hidden": false, - "alias": null, - "description": "", - "inmenu": true, - "inbreadcrumbs": true, - "insitetree": true, - "access_loggedin": false, - "access_guest": false, - "access_restricted": false, - "access_perm_type": 1, - "parent": 8, - "sort_order": 40, - "access_permissions": [] - } -}, -{ - "model": "sitetree.treeitem", - "pk": 42, - "fields": { - "title": "Guide Index", - "hint": "", - "url": "/guides", - "urlaspattern": false, - "tree": 1, - "hidden": false, - "alias": null, - "description": "", - "inmenu": true, - "inbreadcrumbs": true, - "insitetree": true, - "access_loggedin": false, - "access_guest": false, - "access_restricted": false, - "access_perm_type": 1, - "parent": 8, - "sort_order": 42, - "access_permissions": [] - } } ] diff --git a/pinaxcon/templates/_footer.html b/pinaxcon/templates/_footer.html index 73ebf60264603a45958bcf976373cc511bb71f6e..be02d2ce8d2db2422e57ae5413f05bbb42703d0e 100644 --- a/pinaxcon/templates/_footer.html +++ b/pinaxcon/templates/_footer.html @@ -9,10 +9,11 @@
+ + + {% comment %} {% include "registrasion/dashboard_widget.html" %} - + {% endcomment %} +The Golden Gate Bridge is well-known to San Franciscans as being approximately 8,000 miles long and shrouded in fog, so few ever cross up into the North Bay. Happily, the drive north is easy and it can be swift. There are many ways to get to Petaluma, we've covered driving, public transit, and flights on the How to Get Here page.
-When you get here, you're sure to find a nice place to stay that fits your budget. You can find a range of options, and some special discounts, available on the Where to Stay page.
+When you get here, you're sure to find a nice place to stay that fits your budget. {%comment %}You can find a range of options, and some special discounts, available on the Where to Stay page.{%endcomment%} We'll have group rates and discounts at local hotels when tickets are available.
{% endblock %} diff --git a/pinaxcon/templates/static_pages/about/team.html b/pinaxcon/templates/static_pages/about/team.html index 68cea272b40f67bc2f7a7b1240f06a0a30431583..78ac7a92e552d4518b33d5ff8b66db64cfa7e74a 100644 --- a/pinaxcon/templates/static_pages/about/team.html +++ b/pinaxcon/templates/static_pages/about/team.html @@ -35,18 +35,18 @@ Our team of North Bay and Bay Area locals has years of experience building commuChristopher is a Python developer who lives in glorious Petaluma, California, though he's originally from the the city of Hobart in Tasmania, Australia. A serial conference organizer, he has been a core organiser of PyCon Australia for a number of years, was director of linux.conf.au 2017, and a good number of his open source contributions help power the website this conference runs on. He was made a fellow of the Python Software Foundation in 2013 in recognition for his contributions to building the Australian Python community. (@chrisjrn on Twitter)
+Christopher is a Python developer who lives in glorious Petaluma, California, though he's originally from the the city of Hobart in Tasmania, Australia. A serial conference organizer, he has been a core organiser of PyCon Australia for a number of years, was director of linux.conf.au 2017, and a good number of his open source contributions help power the website this conference runs on. He was made a fellow of the Python Software Foundation in 2013 in recognition for his contributions to building the Australian Python community. (@chrisjrn on Twitter)
Sam is a Python developer and distributed-systems "enthusiast" hailing from Seattle by birth, New York by nurture, and the Bay Area by choice. Five years ago he attended his first PyCon US and hasn't been able to break the habit; after making the jump from audience to stage in 2014 and speaking regularly at events around the world, he was thrilled to join team when invited by Chris and Josh. Sam currently works at Nuna building healthcare data infrastructure for the U.S. Medicaid and Medicare programs and resides in Oakland with his husband Kameron. (@skimbrel on Twitter)
+Sam is a Python developer and distributed-systems "enthusiast" hailing from Seattle by birth, New York by nurture, and the Bay Area by choice. Five years ago he attended his first PyCon US and hasn't been able to break the habit; after making the jump from audience to stage in 2014 and speaking regularly at events around the world, he was thrilled to join the team when invited by Chris and Josh. Sam currently works at Nuna building healthcare data infrastructure for the U.S. Medicaid and Medicare programs and resides in Oakland with his husband Kameron. (@skimbrel on Twitter)
Andrew is a Django and Python developer who originally hails from London but moved to the Bay Area four years ago. He's been writing open source software for over a decade as well as working in various different parts of the technology industry, and currently works at Eventbrite. He regularly speaks at Python (and other) events around the world, and has a keen interest in building communities and inclusivity. (@andrewgodwin on Twitter)
+Andrew is a Django and Python developer who originally hails from London but moved to the Bay Area four years ago. He's been writing open source software for over a decade as well as working in various different parts of the technology industry, and currently works at Eventbrite. He regularly speaks at Python (and other) events around the world, and has a keen interest in building communities and inclusivity. (@andrewgodwin on Twitter)
Josh is a community organizer and web developer with a penchant for armchair philosophy who was born and raised in the North Bay. He spent 4.5 years building Web & Interactive Media Professionals (WIMP), a local community with over 600 members, before moving on to do community management for O'Reilly Media. These days Josh works on the Google Open Source outreach team and serves as a board member and volunteer CFO for Open Source Initiative. (@joshsimmons on Twitter)
+Josh is a community organizer and web developer with a penchant for armchair philosophy who was born and raised in the North Bay. He spent 4.5 years building Web & Interactive Media Professionals (WIMP), a local community with over 600 members, before moving on to do community management for O'Reilly Media. These days Josh works on the Google Open Source outreach team and serves as a board member and volunteer CFO for Open Source Initiative. (@joshsimmons on Twitter)
… and it's only an hour away from San Francisco (on a good day).
+… and it's only an hour away from San Francisco (on a good day).
A pre-conference event with local meetup group, Web & Interactive Media Professionals (WIMP). At least three of the North Bay Python organizers will be present at this potluck-style event at Santa Rosa Junior College. Find more information and join us!
-We are running a free speaker training the day before the conference. Everyone is invited to attend, but seating is limited so people who are accepted to speak at the conference are given priority.
- -You must register to attend. Due to the location, the training is only open to people age 21 and older.
- -The Blue Room
- Jamison's Roaring Donkey
- 146 Kentucky Street
- Petaluma, CA 94952
Getting into town early? Come meet other attendees at the Pre-conference Social Hour! We have a table reserved for 20, come find us and say hello. The venue is quite large so once the table fills up we'll just start seeding tables in unreserved space.
- -Brewster's
- 229 Water Street North
- Petaluma, CA 94952
This year's main event will run from 10:00am to about 6:15pm each day with check-in starting at 8:30am on Saturday. There are 20 sessions and 2 keynotes that make up the North Bay Python 2017 program.
- -There will be a variety of official and unofficial events running during the conference, each day before opening, during lunch, and after closing. You can find a regularly updated list of events on the Attendee Wiki. You can find events, and organize your own, on the Meetups page.
- -Come hear some awesome talks and then have lunch with your favorite women and non-binary programmers and their friends!
- -It's free to join and lunch is on us, but space is limited so you must register to attend.
+{% endcomment %} {% endblock %} diff --git a/pinaxcon/templates/static_pages/terms_and_conditions.md b/pinaxcon/templates/static_pages/terms_and_conditions.md index c77b26fe552b481baf24cee3002d4d0f1116e955..f1cf240d292dd9806fb60140144c4451e47c231e 100644 --- a/pinaxcon/templates/static_pages/terms_and_conditions.md +++ b/pinaxcon/templates/static_pages/terms_and_conditions.md @@ -15,14 +15,14 @@ All transactions are performed through a payment gateway facility and use SSL en Cancellation Policy ------------------- -**Cancellations made prior to November 2, 2017**: Incur a cancellation fee of $25 or 15% of the ticket cost, whichever is greater, which will be deducted from any registration fee paid. The balance will be refunded. +**Cancellations made prior to October 2, 2018**: Incur a cancellation fee of $25 or 15% of the ticket cost, whichever is greater, which will be deducted from any registration fee paid. The balance will be refunded. -**Cancellations made after November 2, 2017**: No refund. +**Cancellations made after October 2, 2018**: No refund. Substitutions ------------- -You may substitute another person, however you must contact us with this person's details. If you wish to substitute after November 2, 2017 please note that we will not be able to provide any personalized items. +You may substitute another person, however you must contact us with this person's details. If you wish to substitute after October 2, 2018 please note that we will not be able to provide any personalized items. Privacy Notice -------------- @@ -77,7 +77,7 @@ Attendees will have a way to visibly signal their preference for photography at * Permission required: Ask before photographing * Opt-out: Photographs are never okay, don't ask -Attendees who are not visibly signaling their preference should be asked for permission before photographing. There is no prior opt-in for audio or video recordings. You must always ask before recording. +Attendees who are not visibly signaling their preference should be asked for permission before photographing. There is no prior opt-in for audio or video recordings. You must always ask before recording. The event may have one or more staff taking photographs and/or audio or video recordings during the event. These staff will respect attendees' preferences regarding photography and recordings. @@ -114,4 +114,4 @@ Immigration/Entry Requirements Anyone who lives outside the United States will need a passport and may require a visa to gain entry into the United States. Please contact your local United States embassy to determine your travel needs. You should take into account the Cancellation Policy above and do this well in advance of the event. -Where a letter of invitation is required, one will be issued by event organizers for presenters whose submissions have been accepted. \ No newline at end of file +Where a letter of invitation is required, one will be issued by event organizers for presenters whose submissions have been accepted. diff --git a/pinaxcon/templatetags/nbpy_tags.py b/pinaxcon/templatetags/nbpy_tags.py index 4bbf3206106df97cca2633937c1f0bb7bd63c6ba..e1a28e17fe8f82a6c270a6cc1eb871646e789da6 100644 --- a/pinaxcon/templatetags/nbpy_tags.py +++ b/pinaxcon/templatetags/nbpy_tags.py @@ -74,11 +74,12 @@ def special(context, user): speaker = user.speaker_profile.presentations.count() != 0 except Exception: speaker = False - volunteer = "Volunteer" in ticket_type(context) + tt = ticket_type(context) + volunteer = "Volunteer" in tt if organiser: return "Organizer" - elif speaker: + elif speaker or "Speaker" in tt: return "Speaker" elif volunteer: return "Staff" diff --git a/pinaxcon/urls.py b/pinaxcon/urls.py index b1caf840893f5808e8fcd2b521df299068046819..6c6e58073ba5e4a555ca971f3badc0606c461d75 100644 --- a/pinaxcon/urls.py +++ b/pinaxcon/urls.py @@ -34,27 +34,27 @@ urlpatterns = [ url(r"^cfp$", RedirectView.as_view(url="program/call-for-proposals")), # attend - url(r"^attend$", TemplateView.as_view(template_name="static_pages/attend/attend.html"), name="attend/attend"), - url(r"^tickets$", RedirectView.as_view(url="attend")), - url(r"^tickets/buy$", views.buy_ticket, name="buy_ticket"), - url(r"^attend/business-case$", TemplateView.as_view(template_name="static_pages/attend/business-case.html"), name="attend/business-case"), - url(r"^attend/finaid$", TemplateView.as_view(template_name="static_pages/attend/finaid.html"), name="attend/finaid"), +# url(r"^attend$", TemplateView.as_view(template_name="static_pages/attend/attend.html"), name="attend/attend"), +# url(r"^tickets$", RedirectView.as_view(url="attend")), +# url(r"^tickets/buy$", views.buy_ticket, name="buy_ticket"), +# url(r"^attend/business-case$", TemplateView.as_view(template_name="static_pages/attend/business-case.html"), name="attend/business-case"), +# url(r"^attend/finaid$", TemplateView.as_view(template_name="static_pages/attend/finaid.html"), name="attend/finaid"), url(r"^attend/travel$", TemplateView.as_view(template_name="static_pages/attend/travel.html"), name="attend/travel"), - url(r"^attend/hotels$", TemplateView.as_view(template_name="static_pages/attend/hotels.html"), name="attend/hotels"), - url(r"^attend/tshirt$", TemplateView.as_view(template_name="static_pages/attend/tshirt.html"), name="attend/tshirt"), - url(r"^attend/accessibility-and-accommodations$",TemplateView.as_view(template_name="static_pages/attend/accommodations.html"), name="attend/accessibility-and-accommodations"), - url(r"^accessibility$", RedirectView.as_view(url="attend/accessibility-and-accommodations")), - url(r"^guides$",TemplateView.as_view(template_name="static_pages/attend/guides.html"), name="attend/guides"), - url(r"^guide$", RedirectView.as_view(url="guides")), +# url(r"^attend/hotels$", TemplateView.as_view(template_name="static_pages/attend/hotels.html"), name="attend/hotels"), +# url(r"^attend/tshirt$", TemplateView.as_view(template_name="static_pages/attend/tshirt.html"), name="attend/tshirt"), +# url(r"^attend/accessibility-and-accommodations$",TemplateView.as_view(template_name="static_pages/attend/accommodations.html"), name="attend/accessibility-and-accommodations"), +# url(r"^accessibility$", RedirectView.as_view(url="attend/accessibility-and-accommodations")), +# url(r"^guides$",TemplateView.as_view(template_name="static_pages/attend/guides.html"), name="attend/guides"), +# url(r"^guide$", RedirectView.as_view(url="guides")), url(r"^safety$", TemplateView.as_view(template_name="static_pages/safety.html"), name="safety"), url(r"^emergencies$", RedirectView.as_view(url="safety")), url(r"^emergency$", RedirectView.as_view(url="safety")), - url(r"^attend/food$", TemplateView.as_view(template_name="static_pages/attend/food.html"), name="attend/food"), - url(r"^food$", RedirectView.as_view(url="attend/food")), - url(r"^attend/transit$", TemplateView.as_view(template_name="static_pages/attend/transit.html"), name="attend/transit"), - url(r"^transit$", RedirectView.as_view(url="attend/transit")), +# url(r"^attend/food$", TemplateView.as_view(template_name="static_pages/attend/food.html"), name="attend/food"), +# url(r"^food$", RedirectView.as_view(url="attend/food")), +# url(r"^attend/transit$", TemplateView.as_view(template_name="static_pages/attend/transit.html"), name="attend/transit"), +# url(r"^transit$", RedirectView.as_view(url="attend/transit")), url(r"^code-of-conduct$", TemplateView.as_view(template_name="static_pages/code_of_conduct/code_of_conduct.html"), name="code-of-conduct"), url(r"^code-of-conduct/harassment-incidents$", TemplateView.as_view(template_name="static_pages/code_of_conduct/harassment_procedure_attendee.html"), name="code-of-conduct/harassment-incidents"), diff --git a/static/images/footer-clouds-gradient.svg b/static/images/footer-clouds-gradient.svg new file mode 100644 index 0000000000000000000000000000000000000000..ee3a9d482202873b62096fbc3b9e40cf716ee0c9 --- /dev/null +++ b/static/images/footer-clouds-gradient.svg @@ -0,0 +1,593 @@ + + + + diff --git a/static/images/hills-footer.svg b/static/images/hills-footer.svg index c7e9348a14c12580cb4ec0c94239c26243ad83e2..4fb6aed4ffb85246f393acdda3679e66d07e687f 100644 --- a/static/images/hills-footer.svg +++ b/static/images/hills-footer.svg @@ -16,7 +16,7 @@ id="svg4324" version="1.1" inkscape:version="0.91 r13725" - sodipodi:docname="hills-footer.svg"> + sodipodi:docname="hills-to-ground.svg">o_Y9qil(O5b>K5tN=TyROSs$4Fn-!bgAUR{^AL5Yv9e
ze6~zdmJVrBtk{BKfD)`o0w1KE8`Q Dci6H@R^LY)xkBzpwf+b>g-kr%8B^n^+L4x
zB!-=vQZ&3oipvsixQOuhxEe`^5b@*a%YlhY`w+k(%e)aBaNBJ=HjmmLl3sKsD7_Ou
z=?520XcbcR^QyqEl~szoLcTNmQl6mNoVp4b!=RqbPoMZw=`ANoiqk|g7E}W?xPfig
zKsqpGfXh5Jk-r{e$8}$%&*RF`VV2wGOL|~nAVV&aw+|VV9aRNPAgq30+rP0igto}Y
zNQh0Jr;Qw;xAS^0fx8JdA8C4;wC~{C)@R4@MNRS+HWjJakFSCb?&$UVC=prps$}!G
z6l5$ieTIo($2Wj`bAShT3Rs@M1vs~vi?_P(3Q-g_%s@Xq3isOEwC5IRIA `QC9%PxL
z>tJTgVo;i=wzD*(U79#)XWG|y+DOaLvrS+pM4^)^;;hzd4n#_IpSl+8p1(p@A!H1k
z&SRid@b|I-C@(`!+Mbr?IM{e`=CoRisrhmVSUz@=sns`8F#r pu
zOmnZp-vtT~FS~IwYtxT4$KlM~X>`Kh-U2q;(O
zNl9sTnc#03xw4vP{^8a4ai$JUx4}kH?`<>rw|}xX?o=_jGQ?00D&5Eu6u>SZMP_2k
z*wNE3@@z!AsF`V?dAYk*XJF;lT20sh|GCw2JD+T~PEr4bMreP*BEIiy9TMMpjoirz
zuEB*3k%c`)k9V_V!V|9?R@RNt$P+q!r67&nec3(Y0tMTx1YbgWs?el)qP!Lp6#Snu
zA`+n
VaDop~T6uA8pWbP)e2Y)@E_uzdFTybYT#D*p$nX`IB5LNP_Hs7Ja~gTunIF
z(6lA}D_7siaDt|{=)m6sRGTHr%G83A@q)&Sv~1j^E5X3t<&PDFehaQf;Q6XuT(3#w
z6P=H!*zb$EBfKvR`VcrA>Ssj2lx>*(WwWUf;+l5PmI|03rXXmj&+vc|3;s8d?6)A6
z;EOZFHpDs1J1|B@@vIrB=hT
zTeD
=*|gPy2#cu3H8?Q-`85
z8VOlNb;G)5zm9T{&y1Y$psCH~hlD-x$i
ePKb>A`_T9Vj6$Rxa6y}BB{^?_*n^8xu$Z>k8cJaC(Skw
z2&mK-Dxe!3IOpH^&o!qL2%q`E!;T5G!33WB0!-j2WlHO#{`E`>3(j+?4NZ4%(?0S6
zhY(#XS5xbpq)qXS-}sQe*W0vrlyq3|DJ*$6MZ>w0;s>2i*oanre=XG8i1JTZTTty<
z|F3`j>sJVi{`>JBB{5Aoz!h_tb9~@;zx&<1%9;w(-rQ+Q*N&KtU#0?~8n6wF|Ao+8
zPWg++$BQwMBBqDpqld~v e;s5r}*^`A9H6U{XK9PBxS
zdnw)5BG5^UPYqGS1IBE*m3+@9FNahaM@$~8{T9!j%V~s{lbVMB-iZ&HK@_hdc-}ll
zS)l1je`(C}%b_RGRqGxxkVN0=@99tDlJB*EshnMI+FLpd-ntGy_Sj0nyG=9`#iD@h<((p|K?$8#?NsVvlySQh;O-GP$?ewdvd5kMh`Jw#s{
z!yPIoTI`fUs(dg@PMh`RtiU(begP$0_y(m~}2-)L!Rso1}N|7mZ$@x~=c
z2!G0y)LEhZUjH@66!O95kU0h_dk1<=Z-2Mx>po_NyC!SW{aD5xZ9m;FeWIA4TNwLz
z#D7|wv8c4b6c?75;`|a*fJ6NpM4EwP17^=Suq%@K`g+4u>^8*v|5&qT&8EeR7r%ms
zUD!%COa}%0Dli@2&VDn50#YL4$h4GgCBt0jzWL^xe~cdCe4LzyJT>+d4Y(;OEyhGP
z7bW9}8D{ukkfwVOkD3ER0~}d0ZII*OAWk-iY0Zae*_j)s_EoKYXpm%}ZbV+d^k%MS@^9>jVf4G8OwGO1(jyl4bgasz
zlcSk41I<(g4M;!_{Kn`?57y}+?waf+y7Z8&-%Du2d+D(>zcr+mqesMRke}v5nqdNw
zqn8V0MoSyjJ5%CyMcH)N9+Hx(KI8d8RSn3B)NRz!R`giUs_Z3%f^94&u>S(EKQO)n
zu^$T01Y?#{J5>5+8&0fMl`bAipGn?