Update secr.rolodex app to deactivate old Users when replaced on edit. Fixes#2001.
- Legacy-Id: 13735
Note: SVN reference [13726] has been migrated to Git commit a251076903
Fix issue where deferring a ballot causes 500 error in Telechat app. Fixes#1342.
- Legacy-Id: 13360
Note: SVN reference [13336] has been migrated to Git commit 7542e8daa3
Move primary but inactive email to the most recently touched active email for a Person. If a person has more than one primary email, make all but the first be not primary. Fixes#2214.
- Legacy-Id: 12937
Note: SVN reference [12932] has been migrated to Git commit 572e373f95
Use the Role email associated with a reviewer as the From when emailing a review. Fixes#2201.
- Legacy-Id: 12936
Note: SVN reference [12930] has been migrated to Git commit 8577a5e84a
to the draft parser (incorporating patch from trunk), store the
extracted country instead of trying to turn it into an ISO country
code, add country and continent name models and add initial data for
those, add helper function for cleaning the countries, add author
country and continent charts, move the affiliation models to
stats/models.py, fix a bunch of bugs.
- Legacy-Id: 12846
in order to autogenerate dotted path url pattern names. Updated a number
of url reverses to use dotted path, and removed explicit url pattern names
as needed.
Changed some imports to prevent import of ietf.urls before django
initialization was complete.
Changed 3 cases of form classes being curried to functions; django 1.10
didn't accept that.
Started converting old-style middleware classes to new-style middleware
functions (incomplete).
Tweaked a nomcom decorator to preserve function names and attributes, like
a good decorator should.
Replaced the removed django templatetag 'removetags' with our own version
which uses bleach, and does sanitizing in addition to removing explicitly
mentionied html tags.
Rewrote the filename argument handling in a management command which had
broken with the upgrade.
- Legacy-Id: 12818
Also add a model for registering an alias for an affiliation so that
we can group affiliations that are considered the same for statistical
purposes, and a model for registering unimportant endings like Inc.
and GmbH.
Affiliation grouping is done through three means: stripping
uninteresting endings, merging entries that only differ in case and
aliases that map from case-insensitive alias to name.
Stripping endings and merging based on case seem to reduce the number
of needed manually maintained aliases greatly.
- Legacy-Id: 12785
DocumentAuthor, rename author field to email and make it optional (for
modeling old email-less submissions), remove the authors many to many
referencing field from Document as it is not really pointing the right
place.
Update the Secretariat tools to show affiliation and country.
Add migration for getting rid of the fake email addresses that the
migration script created some years ago (just set the author email
field to null).
- Legacy-Id: 12739
review requests page.
Add importer for importing review data from the existing Perl tool
(WIP, gets most but not all of the interesting information out).
Fix various bugs.
- Legacy-Id: 11508
Have person.formatted_email() return the primary address if one is so marked. Fixes#1928.
- Legacy-Id: 11150
Note: SVN reference [11129] has been migrated to Git commit 2fd2b3a8e6
(reusing code previously written for the community lists) instead of
the a custom MD5 scheme, add tests of all views, rewrite custom form
handling code to use plain forms and ensure that the data is properly
validated and errors visible in the UI. Move help texts on the Person
form up to the model.
- Legacy-Id: 11136
Simplified the edit nominee form.
Replaced the merge nominee form with a request to the secretariat to merge Person records. Fixes#1847.
Added merging nominees to the secretariat's person merging script.
Restructured the person merging script to make it testable.
Updated some tests to match changes to the mailtriggers that hadn't made it to the fixtures.
- Legacy-Id: 10625
Inform the secretariat when a duplicate Alias.name is created that isn't already a duplicate Person.name. Improve the message that's sent when either duplicate Person or Alias names are detected.
- Legacy-Id: 8893
Note: SVN reference [8870] has been migrated to Git commit 8e1abfa833f528bccf0f61a2a767f3923255e137
enhances a number of pages in the datatracker where forms contain fields
where a person should be chosen, such as for instance when choosing the
shepherd of a document, so that they uniformly display choices which show
both email address and name.
Furthermore, changes have been made so as to make the email address
uniformly act as reference to the person record.
Autocompletion is now consistently provided when looking for the email
address or name of the person to choose.
This solves a number of issues where it has been difficult to choose the
correct Person/Email combination, and where the correct email address to use
for an association has been unavailable previously.
- Legacy-Id: 8472
Note: SVN reference [8471] has been migrated to Git commit d62f2343e8
From mcr@sandelman.ca:
Refactor to remove dajaxice.
Modified the URLs that address schedules:
- urls now always start with /agenda, removing the mix of /agenda and /schedule prefixes
- urls to a given schedule include the schedule owner (by email address)
Corrected issue that prevented deleting sessions.
Changed comment mechanism in timeslot_edit.js
Migration to change the email address for (System)
Fixes bug #1426
- Legacy-Id: 8319
Note: SVN reference [8229] has been migrated to Git commit fc512680d8
email addresses have associated Datatracker accounts - this takes
effect immediately for the JS auto-complete thing, but the actual
validation afterwards doesn't actually require it yet (check commented
out for the time being), as it appears there are still a few people
without accounts in active groups
- Legacy-Id: 8277
update to version 1.6 of jquery.tokeninput.js and fix problem with
reloading EmailsField pages by adding a data-pre attribute instead of
hacking the value attribute
- Legacy-Id: 8264
Refactor to remove dajaxice.
Modified the URLs that address schedules:
- urls now always start with /agenda, removing the mix of /agenda and /schedule prefixes
- urls to a given schedule include the schedule owner (by email address)
Corrected issue that prevented deleting sessions.
Changed comment mechanism in timeslot_edit.js
Migration to change the email address for (System)
Fixes bug #1426
Commit ready to merge
- Legacy-Id: 8229
Django 1.6 refuses to load them because they have dangling foreign
keys, and in rewriting them it turns out it is easier to do so in code
- so refactor the test data generation code to have a separate
function with the unchanging base data and call that from the global
fixture setup
- Legacy-Id: 6917
Added support and scripts for generation of wg- and draft-aliases. Fixes issue #713.
- Legacy-Id: 5937
Note: SVN reference [5902] has been migrated to Git commit e5b551f4ce
Note: SVN reference [5904] has been migrated to Git commit e68e51cc55
(-r5194:5465 from branch/iola/shimfree). Copying relevant
commit messages here:
- Removed .related many to many relationship, it's not really useful
since we always have to restrict on the relationship type anyway,
instead add two helpers for doing the necessary queries (in both
directions)
- Added migration for transforming the .desc on the new_revision events
into something more akin to what is actually shown in the history page
- Added migration for blanking IESG notes that just consist of "RFC
XXXX", these have been superfluous for some time
- Grant stream chairs access to changing the stream on a draft
- Hacked the format_history_text filter to be less weird, using the same
formatting for snippets and full text, also link up legacy ballot set
events
- Moved the decoraters + utilities to new ietfauth/utils.py file
- Added simple helper to Email to identify invalid email addresses (from
legacy author entries)
- Used new new_revision .desc format for when drafts are submitted
- Improved the looks of the button class by adding extra contrast and a
linear gradient. Currently the gradient is only visible in fairly
recent browsers.
- Rewrote draft and RFC tabs in terms of the new schema, porting
write-up and history tabs as well
- Fixed two bugs in RFC Editor syncing: make sure documents we don't know
beforehand get a "draft" type and make sure individually submitted
drafts get the type="individ" group instead of NULL
- Made the CSS-styled button feel a bit nicer to use by flattening the
active state, also introduce some temporary styles until browsers
catch up with the standard syntax
- Added migrations for fixing 1) a dummy RFC entry, 2) three stand-alone
RFCs that didn't get their doc.type set, 3) a big bunch of historic
stand-alone RFCs that have doc.group=None - set these to the
individual submission "none" group for the time being so the view code
doesn't have to deal with a special case.
In some cases this is wrong since there actually was a WG associated
but unfortunately fixing them properly requires detective work
(probably parsing the RFCs) and in at least some cases recreating
historic WGs. In case someone ends up doing this, the documents to
check can still be found with
Document.objects.filter(name__startswith="rfc", group__type="individ")
since there are almost no new RFCs that didn't went through the I-D
process.
- Merged the I-D and RFC views by showing I-D information on RFCs too.
I-Ds that have been published as RFCs redirect to the RFC URL. Also
support alias URLs so e.g. /doc/bcpXXXX redirects to /doc/rfcXXXX.
- Fixed revision augmentation so events after RFC publication gets a "RFC"
designation
- Fixed a bug with tabs not using provided name but rather doc.name
- Displaying draft-iesg state rather than doc.friendly_state as IESG state,
also show a notice that the IESG state refers to post-RFC processing
if it does, like the old separate RFC page did
- Fixed the RFC number doc.note migration to catch combined "RFC XXX; BCP
XXX" notes too, use the opportunity to remove inserted HTML tags from
notes and rely on linebreaksbr filter instead (the other thing was a
left-over from the Perl days), update the various uses of the note to
reflect that
- Refactored slightly to make views_doc.py independent of other idrfc code
- Moveed idrfc/views_doc.py to doc/ with associated templates, replace the
somewhat fragile simple URL tests for views_doc.py with ordinary unit
tests. The new tests are still fairly basic but at least test more
than the URL tests did.
- Made sure RFC's (and BCP/STD/FYI) are stored as RFC123 instead of
RFC0123 in the alias table with a new migration and a change to the
RFC Editor sync, this in turn makes /doc/std1/ do the right thing
- Now /doc/std1/ works, we can actually do a local link in
urlize_ietf_docs rather than linking to the tools.ietf.org server
- Fixed history text formatter: sanitize HTML before adding linebreaks and
non-breaking spaces, this cuts the time to render a history page with
long comments in half
- Added a test crawler that walks through the crawlable part of the site,
reporting errors and slow pages
- Got rid of initial "No record" positions when showing old positions,
it's just noise
- Added a .select_related() to the document main tab to reduce the number
of DB queries, unfortunately it seems it doesn't really help with
Django 1.2.x due to a bug (Document inherits from DocumentInfo which
makes things a bit more complicated)
- Introduced a simple cache in doc.get_state so repeated reads don't
cause a DB query
- Cleaned up the search code in preparation for removal of the shim-layer;
use a static button and don't send extraneous GET parameters
- Removed dead code in several places
- Legacy-Id: 5830
"begins with" (to allow, e.g., searching by last name);
and (2) limits results to 10 entries (to limit server
load and limit effectiveness of email-scraping attacks)
- Legacy-Id: 5519