Commit graph

128 commits

Author SHA1 Message Date
Henrik Levkowetz 3ec9d7b678 Updated the role handling to use GroupFeatures.groupman_roles consistently for group management access. Fixes a IRTF RG delegate permissions issue.
- Legacy-Id: 16160
2019-04-25 13:19:30 +00:00
Henrik Levkowetz 137159fd41 Removed the GroupFeatures.has_dependencies field.
- Legacy-Id: 15971
2019-02-25 21:04:16 +00:00
Henrik Levkowetz 8f0cca05db Backed out the removal of the has_dependencies field (and database column), to be done in the next release, to avoid unnecessary issues with disappearing columns during deployment
- Legacy-Id: 15962
2019-02-25 12:20:33 +00:00
Henrik Levkowetz 720943af72 Removed the has_dependencies GroupFeature, and used has_documents instead in the one place it was used.
- Legacy-Id: 15934
2019-02-07 15:56:48 +00:00
Henrik Levkowetz 0885422534 Added new docman and groupman GroupFeature fields.
- Legacy-Id: 15920
2019-01-30 15:55:23 +00:00
Henrik Levkowetz d1f1be5b01 Second correction to the default values of the GroupFeatures JSONField fields, and updated the migration to match.
- Legacy-Id: 15915
2019-01-24 20:22:44 +00:00
Henrik Levkowetz 6590e4f4ad Corrected the default values of the GroupFeatures JSONField fields, and updated the migration to match.
- Legacy-Id: 15914
2019-01-24 20:08:29 +00:00
Henrik Levkowetz 37f46183db Added some copyright and encoding strings.
- Legacy-Id: 15910
2019-01-23 18:38:16 +00:00
Henrik Levkowetz 57a4c9f41f Added 9 new group features, and changed list-like char fields to json fields, to get better support for using the values as lists. Modified code to use the group features instead of explicit lists of group types in many places in the code.
- Legacy-Id: 15908
2019-01-22 18:11:46 +00:00
Henrik Levkowetz 2daef52bea This commit replaces the code defined group features with features held
in a database table:

- Added a GroupFeatures model to the group models, and removed the old 
  features.py
- Added a agenda type for future use in showing different group types on
  different agendas.
- Renamed the group feature has_materials to has_nonsession_materials.
- Added API resources and admin support for the new tables.
- Added a Directorate (with reviews) group type as complement to
  Directorate, to distinguish between directorates with and without reviews.
- Adjusted tests as needed.
- Updated the fixtures, and fixed the generate_fixtures script to include
  the new AgendaTypeName objects.

There still exists about 70 instances of code comparing the group type
with a list of types; most of these should probably be replaced with new
features, instead, to make it possible to add new group types through the
database table, rather than having to edit the code.  That was the purpose
of this refactoring from the start, but the presence of this large number
of comparisons of group type against lists of types defeats the goal until
we add appropriate features and replace the group type list comparisons.
 - Legacy-Id: 15316
2018-07-12 10:51:48 +00:00
Henrik Levkowetz 5638cf3da3 Changed all usage of ForeignKey and OneToOneFiled in model.py files to the compatibility versions from ietf.utils.models.
- Legacy-Id: 14661
2018-02-20 15:36:05 +00:00
Henrik Levkowetz cbda2679a9 Removed some unreachable code.
- Legacy-Id: 14150
2017-09-22 14:45:21 +00:00
Henrik Levkowetz d2395f9521 Merged in [13832] from rjsparks@nostrum.com:
Treat Area Groups similar to Working Groups and Research Groups where it makes sense to do so.
 - Legacy-Id: 13836
Note: SVN reference [13832] has been migrated to Git commit 2c92aa213d
2017-07-11 21:57:01 +00:00
Robert Sparks 2c92aa213d Treat Area Groups similar to Working Groups and Research Groups where it makes sense to do so. Commit ready for merge.
- Legacy-Id: 13832
2017-07-11 19:12:21 +00:00
Henrik Levkowetz 900174ae57 Added log.unreachable() calls to some functions believed to be unused.
- Legacy-Id: 13818
2017-07-09 15:01:21 +00:00
Henrik Levkowetz dcc1bca058 Added assertion logging for found group parent loops to is_decendant_of().
- Legacy-Id: 13687
2017-06-20 13:18:33 +00:00
Henrik Levkowetz e87e3eb661 Added circular parent relationship detection in the Group.is_decendant_of() method and in the group edit form data cleaning.
- Legacy-Id: 13686
2017-06-19 23:34:52 +00:00
Henrik Levkowetz a28940fc1e Name/email formatting tweaks, to complement [13536].
- Legacy-Id: 13540
Note: SVN reference [13536] has been migrated to Git commit 55d36e284d
2017-06-06 08:11:31 +00:00
Henrik Levkowetz 55d36e284d Changed the '%s <%s>'%(name,email) idiom in several places to use email.utils.formataddr() instead, to avoid future problems with names that would need quotes. Added comments in 2 places where this change would not be appropriate.
- Legacy-Id: 13536
2017-06-05 22:40:11 +00:00
Lars Eggert 8a70e9773d Fix various "RemovedInDjango20Warning" warnings. Commit ready for merge.
- Legacy-Id: 13112
2017-03-25 19:16:45 +00:00
Henrik Levkowetz 483d5f9a2a Silenced an unnecessary error which could occur when looking for charter documents for groups (such as bofs) without them, by asking the API for a group description.
- Legacy-Id: 13025
2017-03-19 19:24:37 +00:00
Henrik Levkowetz 58dae78a43 Modified the REST API to provide group descriptions taken from the group charters if group.description is blank.
- Legacy-Id: 12993
2017-03-11 13:46:19 +00:00
Henrik Levkowetz 089f23f011 Added ordering to Role, and a roles section at the top of the personal profile page.
- Legacy-Id: 12931
2017-02-28 19:33:28 +00:00
Henrik Levkowetz 988a2b808f Added explicit charset setting and consistent encoding to several email paths through the datatracker. After introducing support for non-ascii names in email addresses, using role.formatted_email() to insert names into email content doesn't work any more, since uncode names will now be rfc2047-encoded in formatted_email(). Added another method role.name_and_email() for this case. Replaced another case of '%s <%s>' name-and-email formatting with formataddr(). Fixed some tests which did not send unicode email bodies to the email functions. Fixes issue #2017.
- Legacy-Id: 12896
2017-02-21 19:17:10 +00:00
Henrik Levkowetz cf4a4b02a7 Reworked the email address handling in order to be able to support non-ascii names as part of email address fields. Reworked the generation of user names in the test suite to generate names from multiple non-ascii locales. Fixes issue #2080.
- Legacy-Id: 12872
2017-02-18 21:50:18 +00:00
Henrik Levkowetz e553ff80d8 Added an is_bof flag to json_agenda. Also added group state information. Changed the group information to use historic information instead of current.
- Legacy-Id: 12009
2016-09-20 20:28:22 +00:00
Robert Sparks 9b2d73b365 add status reports to proceedings. add a view for the applicable status report for a given meeting. Commit ready for merge.
- Legacy-Id: 11766
2016-08-09 15:42:40 +00:00
Henrik Levkowetz 8b6d8c9f44 Replaced the hardcoded 'Area Director' approval role with a group-dependent list of approval roles. Fixes issue #1980.
- Legacy-Id: 11575
2016-07-09 16:59:50 +00:00
Robert Sparks eda3f8fba5 Add an entry to GROUP_EVENT_CHOICES for status updates. Fixes #1948. Commit ready for merge.
- Legacy-Id: 11116
2016-04-08 17:41:01 +00:00
Russ Housley 858530c214 Cleaned up the checking permission for a user to manage a group. Also, cleanly handle a set of group parent links did for a loop.
- Legacy-Id: 11082
2016-04-02 21:06:33 +00:00
Russ Housley 1c509cd64c The secretariat and the Team Chair can now edit team groups. In addition, if the team in within the IETF, Area Directors can edit it. And, if the team is within the IRTF, the IRTF Chair can edit it. Fixes #1915.
- Legacy-Id: 11064
2016-04-02 15:10:10 +00:00
Robert Sparks 1a277b00ec This release improves visibility into where and when the datatracker
sends email. It makes where the datatracker sends email for a given 
action data driven, and it shows where email will be sent for actions
on documents and groups.

Commit ready for merge.
 - Legacy-Id: 10186
2015-10-10 23:08:09 +00:00
Henrik Levkowetz 02cd366ff0 Merged in trunk@9440, containing the changes for version 5.13.1; and updated tests which look at HTML content to work with the facelift changes.
- Legacy-Id: 9446
2015-04-11 18:24:20 +00:00
Henrik Levkowetz 625347cd2f Merged trunk@9354 to facelift copy
- Legacy-Id: 9357
2015-04-02 06:51:34 +00:00
Robert Sparks 16662f6448 Cleanup: remove transition methods for group.ad. Commit ready for merge.
- Legacy-Id: 9349
2015-03-27 05:00:56 +00:00
Henrik Levkowetz e379df0053 Removed the obsolete field Group._ad, and added a migration for the change.
- Legacy-Id: 9147
2015-03-04 17:50:18 +00:00
Ole Laursen a225fd5069 Make new branch from trunk and merge facelift-r9007 into it, fixing a few merge conflicts
- Legacy-Id: 9072
2015-02-12 10:43:52 +00:00
Henrik Levkowetz 7ecfac6308 Merged in personal/henrik/django-1.7@9020 which upgrades Django from 1.6.0 to 1.7.4 and applies the needed changes to the datatracker code to work with release 1.7.x.
- Legacy-Id: 9028
2015-02-08 21:16:44 +00:00
Henrik Levkowetz 028b7e315a Reverted to [9025] because commit [9026] failed (it was incomplete with a broken working dir).
- Legacy-Id: 9027
Note: SVN reference [9026] has been migrated to Git commit 4a3749a66b
2015-02-08 20:03:16 +00:00
Henrik Levkowetz 4a3749a66b Merged in personal/henrik/django-1.7@9020 which upgrades Django from 1.6.0 to 1.7.4 and applies the needed changes to the datatracker code to work with release 1.7.x.
- Legacy-Id: 9026
2015-02-08 19:16:46 +00:00
Ole Laursen eccd8d27c4 Make new branch from trunk (r9007) and merge facelift-r8876 into it, fixing a few merge conflicts
- Legacy-Id: 9014
2015-02-06 14:08:34 +00:00
Ole Laursen 4087a9837f End help_texts with period consistently - the default error rendering in the bootstrap3 library depends on it
- Legacy-Id: 8940
2015-01-28 13:25:21 +00:00
Robert Sparks 65804be683 This is the second step towards ADs out of GroupInfo into Role.
The use of group.ad has been scrubbed from the code and templates.
  - Those places that set group.ad have been directly manipulate Role objects instead
  - Most places that read group.ad now use a new group.ad_role() that returns a Role object, simplifing some views.

Related to #1555 and #1557.

Commit ready for merge.
 - Legacy-Id: 8854
2015-01-09 18:52:06 +00:00
Robert Sparks 4c9db8f250 This is the first step towards using Role to represent Area directors. It
- Migrates the information captured in GroupInfo.ad to Role objects.
- Renames GroupInfo.ad to GroupInfo._ad (retaining the current column name) to prepare for deletion of that field.
- Provides ad property accessor and setter methods implemented using the group's role_set (so that the existing view code continues to work with minimal changes)
- Improved selection in many querysets that assumed only groups of type 'area' would have area directors.

Related to #1557 and #1555.

Commit ready to merge.
 - Legacy-Id: 8851
2015-01-08 20:22:23 +00:00
Henrik Levkowetz b5dad67b05 Fix django 1.7 deprecation warnings: get_query_set() --> get_queryset().
- Legacy-Id: 8827
2014-12-22 17:38:49 +00:00
Henrik Levkowetz 09f654b1f4 Merged in branch/iola/team-support from olau@iola.dk. This generalises and extends the group support for WGs and RGs so that also other groups, such as for instance the Edu Team, can have pages.
- Legacy-Id: 8013
2014-07-02 19:30:07 +00:00
Ole Laursen 63dabff779 Fix some bugs in previous commit
- Legacy-Id: 7806
2014-05-30 16:17:21 +00:00
Ole Laursen 976d0b9d68 Turn charter page for non-chartering groups into about page, fix a bunch of potentially broken links due to the split between group-type prefixed URLs and /group/ ones
- Legacy-Id: 7805
2014-05-30 15:59:02 +00:00
Ole Laursen 9579525ca4 Add simple materials page, tie up some of the loose ends in group generalization work
- Legacy-Id: 7768
2014-05-22 15:53:20 +00:00
Ole Laursen 0144ef366b Add description field on group, enable most group info page views to
work without a group type to pave the way for /group/<acronym>/ URLs,
make charter page more generic, enable it to handle descriptions and
walk over all personnel instead of picking out specific types
of roles, add a redirect view on /group/<acronym>/ to lead to either
documents/ or charter/, add simple group.features() class to be able
to condition on group features rather than specific group types,
adjust group pages menu accordingly
 - Legacy-Id: 7758
2014-05-20 10:19:26 +00:00
Robert Sparks 1221f79af9 Updates and bugfixes to the agenda editing features
* Removes the pattern of using ScheduledSession m2m objects with one of the relationships left as None
* Improves scheduled session state handling
* Simplifies sending email to scheduled session requestors
* Improved timeslot purpose and room editing
* Improved access controls to editing forms
* Better test coverage for the meeting views
* Improvements to the javascript driven by prototyping automated tests
* Better initialization of a new meeting
On the session request form:
  - Allows specifiying room resources (projectors, meetecho)
  - Allows specifying what people must be present
On the schedule editing page:
  - correctly calculates conflict levels
  - displays conflicts in and out of each session separately
  - italicizes BoFs
  - shows resource and people conflicts
Adds automated placement as a management command

Commit ready for merge.
 - Legacy-Id: 7561
2014-04-01 22:17:18 +00:00
Ryan Cross 0fafe56381 allow edit of timeslots, changes to scheduled notifications, support non-official schedules
- Legacy-Id: 7554
2014-03-28 23:16:41 +00:00
Henrik Levkowetz 2a551bb35b Made ietf/group/ pyflakes-clean.
- Legacy-Id: 7465
2014-03-15 17:02:52 +00:00
Henrik Levkowetz 5bef5d11ae Made doc/ pyflakes-clean.
- Legacy-Id: 7462
2014-03-15 16:09:47 +00:00
Robert Sparks ad2784962f ported forward from personal/rjs/trunk-7174. Still one existing test failing
- Legacy-Id: 7449
2014-03-08 10:37:24 +00:00
Henrik Levkowetz bcbc22f45b Only show a link to the tools page for a group if the tools page is likely to exist, i.e., the group is a WG and it is or has been active.
- Legacy-Id: 7264
2014-02-19 14:41:29 +00:00
Ole Laursen b92a49b216 Remove verify_exists=False from URLField, it is now obsolete
- Legacy-Id: 6875
2013-12-11 15:31:18 +00:00
Ole Laursen 9457669310 Merge in changes from the old shimfree branch
- Legacy-Id: 6764
2013-11-27 12:55:50 +00:00
Henrik Levkowetz a3c8adfdf6 Merged in the contents of commit [6337] from mcr@sandelman.ca, with some changes to take out dead code that inadvertently came back in.
- Legacy-Id: 6344
Note: SVN reference [6337] has been migrated to Git commit d0d1d949a9328da6c4e30d8f5e0d14ffb204e678
2013-10-02 21:53:28 +00:00
Henrik Levkowetz 083f60dd93 Renamed model .url() methods to .json_url() or .base_url(), depending on function. Replaced the use of custom django method request.get_host_protocol() with standard request.build_absolute_uri(). Removed an uncaught Http403 exception. Fixed a typo /venus_addr/venue_addr/. Removed relurl() methods; no longer needed. Removed some debug functions.
- Legacy-Id: 6309
2013-09-29 21:14:07 +00:00
Henrik Levkowetz 6154b9922d This commit isn't tested. It captures the state after merging in branch/ssw/agenda/v4.70.
- Legacy-Id: 6273
2013-09-26 19:56:17 +00:00
Ole Laursen 5924024513 Swap the arguments to group.has_role so they match the arguments to
the existing has_role
 - Legacy-Id: 6218
2013-09-20 13:46:47 +00:00
Ole Laursen 0eed4ad9e5 Add has_role(role_name, user) utility to group, used like
group.has_role("chair", request.user). Remove the NomCom specific
group utilities, apparently they're not actually used.
 - Legacy-Id: 6217
2013-09-20 11:23:17 +00:00
Henrik Levkowetz 175a9dba80 Refactored group membership code, adding advisors and liaisons to the membership list. Needed for the nomcom code.
- Legacy-Id: 5996
2013-08-08 12:29:59 +00:00
Henrik Levkowetz 6baea429aa Merged in the nomcom app from ejimenez@yaco.es and esanchez@yaco.es, and accompanying dbtemplate app and the (standard) docutils module. Added some tweaks to get all tests to pass and migrations to run.
- Legacy-Id: 5948
2013-08-06 10:09:29 +00:00
Ole Laursen 6e89f3b606 Merge changes from old milestones branch
- Legacy-Id: 5198
2013-01-15 16:45:19 +00:00
Emilio Jiménez cca4924597 Create views skel for private area.
Create new decorators to test if user is nocom member
News function in Group model to get the group members
Move util functions to utils.py module
Improve passes_test_decorator function so test_func accept more params.
See #919
 - Legacy-Id: 5161
2012-12-29 00:52:52 +00:00
Emilio Jiménez 8984e888f6 Refactor with new funcions: group.is_chair(user) and group.get_chair()
See #904
 - Legacy-Id: 5070
2012-11-22 11:26:48 +00:00
Ole Laursen 49fc493526 Clean up doc.json view, only export plain fields and fields requested
in RFC 6359, more can be added later if necessary; export more info on
the group
 - Legacy-Id: 4869
2012-09-20 12:29:14 +00:00
Ole Laursen 1d0ba6c341 Make sure MilestoneHistory doesn't have an auto_now on the time field
- Legacy-Id: 4580
2012-07-03 23:25:49 +00:00
Ole Laursen 8929413a71 Merged in changes from former milestones branch
- Legacy-Id: 4516
2012-06-26 18:09:43 +00:00
Ole Laursen 6c1e87b773 Move milestones branch out of the way to prepare for merge with trunk to get latest charter changes in
[[Split portion of a mixed commit.]]
 - Legacy-Id: 4514.1
2012-06-26 17:47:53 +00:00
Henrik Levkowetz afe3ee71b8 Merged in fixes from Ole, from branch/charter:r4382-4407, and some changes from Henrik (removing the use of pos.blocked in views_ballot.py, and setting a ballot id in idrfc/testsREDESIGN.py) to make idrfc.EditPositionTestCase succeed.
- Legacy-Id: 4444
2012-06-10 16:22:16 +00:00
Ole Laursen 07382a07a4 Add an entry to the group history when closing a group is being
requested and use that to put a notice on the WG page.
 - Legacy-Id: 4399
2012-05-04 17:46:35 +00:00
Ole Laursen 562773a081 Turn Group acronym into a SlugField, make the admin prepopulate the acronym
- Legacy-Id: 4012
2012-03-01 13:07:47 +00:00
Ole Laursen e784dc5786 Add blank=True to unused_states and unused_tags since they don't have
to be filled in
 - Legacy-Id: 4003
2012-02-29 16:06:37 +00:00
Ole Laursen dbf5e6ab84 Remove a bunch of old admin files, fix a couple of issues with the new ones, add admin for meeting
- Legacy-Id: 3995
2012-02-28 17:29:52 +00:00
Ole Laursen 980d4e6444 Move new schema models from redesign/ to ietf/
- Legacy-Id: 3855
2012-01-24 17:17:24 +00:00
Renamed from redesign/group/models.py (Browse further)