Commit graph

13632 commits

Author SHA1 Message Date
Bill Fenner e38f1dc967 A little progress on the mailing list request tool.
- Legacy-Id: 177
2007-05-28 18:51:55 +00:00
Bill Fenner 2f56324baa Updates for model names: singular, more descriptive.
- Legacy-Id: 176
2007-05-28 18:51:03 +00:00
Bill Fenner 38c07bacf1 We don't actually use GroupIETF here, so don't try to import it.
(This is actually preparation for renaming it.)
 - Legacy-Id: 175
2007-05-28 18:38:08 +00:00
Henrik Levkowetz 243a1a8616 Fixed some pages which broke due to the field name change ballot_id => ballot in IDInternal
- Legacy-Id: 174
2007-05-28 15:07:34 +00:00
Henrik Levkowetz 0298388ae8 Added a favicon in order to be able to distinguish the test tracker tabs from the datatracker tabs in the browser
- Legacy-Id: 173
2007-05-28 14:20:54 +00:00
Henrik Levkowetz 003d730cd7 First cut at a ballot view. Comment and Discuss text is missing.
- Legacy-Id: 172
2007-05-28 09:23:45 +00:00
Henrik Levkowetz 51a3214d96 Something changed in the model? IDinternal edit form was broken, fixed it
- Legacy-Id: 171
2007-05-28 09:22:59 +00:00
Henrik Levkowetz a9110c09c6 Added a simple filter to return an item in square brackets, for the ballot view.
- Legacy-Id: 170
2007-05-28 09:20:53 +00:00
Henrik Levkowetz a9fb0f7de1 Cleaned away unnecessary hidden fields in IPR form
- Legacy-Id: 169
2007-05-28 09:18:43 +00:00
Henrik Levkowetz 4aa8b5810a Separating out utility functions into their own files.
- Legacy-Id: 168
2007-05-28 09:17:30 +00:00
Michael Lee 959274e048 * Add links to WG charters and agenda files
* Add special note
 * Need to display combined sessions
 - Legacy-Id: 167
2007-05-25 04:12:17 +00:00
Bill Fenner 95a5093e53 Finish non-wg wizard logic: update database, send email.
Still need several templates (most notably deletion preview and
wizard_done)
 - Legacy-Id: 166
2007-05-24 21:05:51 +00:00
Bill Fenner ec09ffa870 The email shouldn't be split out like this.
- Legacy-Id: 165
2007-05-24 21:03:55 +00:00
Bill Fenner edd08f3d10 Log sent mail.
Use the right template for the subject.
 - Legacy-Id: 164
2007-05-24 20:38:27 +00:00
Bill Fenner cb94159896 Allow login/logout/password change. The initial view once logged
in (unless it's a forced login) will be the (incomplete) "my" view.
Username and logout link are in the upper right corner while logged
in.
 - Legacy-Id: 163
2007-05-24 20:18:11 +00:00
Bill Fenner 78186c7406 Use the "standard" django way to get at the settings.
- Legacy-Id: 162
2007-05-24 17:36:25 +00:00
Bill Fenner b8aa94d007 Add preview and done to NonWgWizard.
- Legacy-Id: 161
2007-05-24 17:29:05 +00:00
Bill Fenner 0ceb9e2b0c Add helper function email() to PersonOrOrgInfo, which returns the
email address in a 2-tuple that email.Utils.formataddr() accepts.
 - Legacy-Id: 160
2007-05-24 17:26:08 +00:00
Bill Fenner 19d77b754a Add mail-sending module. It uses the django settings file for several
bits of configuration (e.g., mail server, any authentication required,
etc.)  It has different behavior based on the setting of the
SERVER_MODE setting:

 - 'development' or 'test': the message will be sent as an attachment
   to ietf.tracker.archive+SERVER_MODE@gmail.com; the actual destination
   supplied won't be used.

 - 'production': the message will be sent to the addressees and a
   copy sent to ietf.tracker.archive+production@gmail.com .

There are several functions to call, depending on what you want
to pass:

 - send_mail_text() takes a request, "To:" list, From header (or None
   to default), Subject text, Body text, an optional Cc: list, and
   an optional dict with extra headers.

 - send_mail() takes a template and a context instead of the body text,
   and renders the template with the given context.

 - send_mail_subj() takes a template for the subject as well as for the
   body.  It uses the same context to render both templates.
 - Legacy-Id: 159
2007-05-24 17:17:47 +00:00
Henrik Levkowetz fb5013e849 IPR disclosure form submission now works.
Closing the ipr_generic.cgi ticket, but leaving ipr.cgi and notify.cgi open
till further testing has been done.  Also adding a new task for the IPR
update form.

There may still be some dead code to clean out, but I'm committing what
I have now since it provides working form submission :-)
 - Legacy-Id: 158
2007-05-23 20:11:34 +00:00
Bill Fenner 2d3bbede29 Allow day_id to be NULL, since breakfast time is stored that way.
Expand the sessions() helper function in MeetingTime to iterate over
the sessions and set the room_id helper attribute to the correct room.
This means that for the list returned by sessions(), s.room_id is the
correct room for this time.  It also changes the return value from
a QuerySet to a list, so you can't filter it further like a QuerySet -
but I don't think anything is using this functionality.

I didn't do the same for combined_sessions because I don't actually
know what that's used for - if it should be part of sessions, or
if it's even used.
 - Legacy-Id: 157
2007-05-23 17:22:16 +00:00
Bill Fenner 5528a04cd9 Use get() instead of filter()[0]. This results in a better exception
on failure (DoesNotExist instead of IndexError).

Call the database query once and store it in a temp variable instead
of doing the same query twice.

Handle day_id=NULL for the morning beverages/breakfast time.

Use the DoesNotExist exception instead of a generic except: for
the area - except: is likely to hide things that you didn't expect.
 - Legacy-Id: 156
2007-05-23 16:56:07 +00:00
Bill Fenner 4a5a5b1d59 Introduce initial authentication/authorization linkage. This has a
couple of aspects:

 - ietfauth.auth.EmailBackEnd is a django.contrib.auth backend to allow
   two modified authentication methods:

   - using email address (stored in django user table) as login username

   - using htpasswd-style "crypt" passwords (for compatability with
     existing user database).  On the first successful login, the
     password will be re-hashed to the django-hash style password.

 - ietfauth.models.UserMap: a mapping from django user to IETF
   person.  This is configured as the profile table, meaning
   that if you have a django user (e.g., from the RequestContext),
   you can use user.get_profile.person to get to the IETF person.

 - ietfauth.models has models for the "legacy" username/person mapping
   tables (LiaisonUser aka "users" and WgPassword aka "wg_password").
   This is to allow mapping of legacy permissions to django permissions
   by walking these tables and applying permissions to users.  The plan
   is to discard these tables eventually.
 - Legacy-Id: 155
2007-05-23 16:10:32 +00:00
Henrik Levkowetz d4d3b47ad1 Template formatting changes, to more easily see what's going on. And sorting on area within the timeslot.
- Legacy-Id: 154
2007-05-22 22:31:32 +00:00
Henrik Levkowetz 65f15c77bf Reverting to revision [151] -- committed way too much by mistake
- Legacy-Id: 153
Note: SVN reference [151] has been migrated to Git commit fca8b30b51
2007-05-22 22:29:28 +00:00
Henrik Levkowetz d981d5a617 Template formatting changes, to more easily see what's going on. And sorting on area within the timeslot.
- Legacy-Id: 152
2007-05-22 22:15:13 +00:00
Henrik Levkowetz fca8b30b51 The 'area' returned from the AreaGroup.objects is itself a foreign key,
which means we need to look up area_acronym, but that's also a foreign
key, so again we look up the value we want: acronym.  Simply doing
dictsort in the template on area would sort on the FK, I assume --
at least it didn't resolve things to 3 levels, each time looking up the
key we were interested in...
 - Legacy-Id: 151
2007-05-22 21:50:42 +00:00
Michael Lee b2f8368971 Need to order WG sessions by area
- Legacy-Id: 150
2007-05-22 20:27:36 +00:00
Bill Fenner 41b788ad30 Rearrange nwg model to get the fields in the right order.
Allow nwg wizard to have a per-step template.

Write templates for step 0 and add/edit step 1.
 - Legacy-Id: 149
2007-05-22 19:56:20 +00:00
Bill Fenner 5c1254f2df Add a block for sticking something into the head, and
one for local css.
 - Legacy-Id: 148
2007-05-22 19:54:08 +00:00
Bill Fenner 405ff8cb7a Allow specifying querysets.
Given the number of kwargs that some constructors take, perhaps the
better thing would be to be able to say "this field gets these
kwargs", so we could instead pass something like
other = { 'foo': {'queryset': Foo.objects.all()}, 'bar': {'fwip': 'baz'} }.
 - Legacy-Id: 147
2007-05-22 19:53:28 +00:00
Bill Fenner 1a5402da0b Add static method Areas.active_area_choices() for choice fields
Find business name or department from postal_addresses if there is
 no first or last name for person_or_org_info's __str__.
 - Legacy-Id: 146
2007-05-22 19:50:52 +00:00
Henrik Levkowetz 56f5fb5a98 Adding TransactionMiddleware to the setup.
- Legacy-Id: 145
2007-05-21 20:56:09 +00:00
Henrik Levkowetz 255e2e5a1a IPR Form stuff:
* Added validation code for RFCs and Drafts.
 * Some stylesheet tweaks.
 - Legacy-Id: 144
2007-05-21 20:36:21 +00:00
Henrik Levkowetz d7b47093a7 * Added alternating colours for the entry rows in the form tables
* Fixed yes/no radio button layout
 * Fixed submitter contact information copying for generic form
 - Legacy-Id: 143
2007-05-21 19:07:13 +00:00
Henrik Levkowetz f9c6c5c7d3 * Added IPR form fields for listing rfcs and drafts
* Some style tweaks
 - Legacy-Id: 142
2007-05-21 16:49:26 +00:00
Michael Lee 68970cb597 Two new methods have been added to proceedings/models.py to display meeting dates
- Legacy-Id: 141
2007-05-21 15:35:15 +00:00
Henrik Levkowetz 64dc0f83c6 * Some code reorganization, moving the large new-disclosure functiality
into view_new.py
 * Added error indication of the top of the page, in case there are any
   errors further down.
 * Set more fields to required, matching the old perl code
 * Various other tweaks.
 - Legacy-Id: 140
2007-05-20 23:42:39 +00:00
Henrik Levkowetz b0f1f5d845 More ipr form stuff.
- Legacy-Id: 139
2007-05-18 18:46:55 +00:00
Henrik Levkowetz 8d7053fc5c * Removed InternationalPhoneNumber class, instead using the form creation
callback to provide a RegexpField class.
 * Added checkbox for submitter contact information being the same as
   IETF contact information; with javascript support and validation
   support.
 * Cleaned out the old split_form() and mk_formatting_form() functions from
   ietf.utils.
 - Legacy-Id: 138
2007-05-18 15:50:30 +00:00
Michael Lee 8b2e90f212 * Display more session data
* Add 'area' to class ResolveAcronym
 * MeetingTime.session returns WgMeetingSession objects, BUT STILL NEED TO FIGURE OUT WHICH sched_room_id[1|2|3] TO USE
 - Legacy-Id: 137
2007-05-17 04:43:21 +00:00
Henrik Levkowetz 63fb17f4fd Changeset [133] needs a patched Django to work. Rather than requiring patches
to Django, work around this in our code.  Sort the session list with Python
code, rather than doing it as part of the query.  Since the session list is
very short, there is no problem with memory consumption in doing it this way.
 - Legacy-Id: 136
Note: SVN reference [133] has been migrated to Git commit 587d2baafe
2007-05-16 06:32:53 +00:00
Michael Lee 9e5d36c1d1 * Roll back WgMeetingSession.group_acronym_id per Bill
* add a method, acronym_name to ResolveAcronym
 * Sunday sessions displaying is done
 * Need to figure out how to increment date by one day in a template
 - Legacy-Id: 135
2007-05-16 04:32:17 +00:00
Bill Fenner 22518e16c0 Switch from pickle to str(). This may be wallpapering over the
problem, but apparently data that looks the same was pickling
differently, so was causing a checksum failure.
 - Legacy-Id: 134
2007-05-16 03:47:53 +00:00
Michael Lee 587d2baafe There is a known bug with order_by clause that returns error message when tables are joined with different field name. Please look up http://code.djangoproject.com/ticket/2210. I downloaded the patch file, replaced the existing -dir/django/db/models/query.py, and order_by in joined tables worked fine.
Updated query.py is attached.
 - Legacy-Id: 133
2007-05-15 19:47:43 +00:00
Michael Lee 1e1a2bb989 Display Meeting Agenda for Sunday
- Legacy-Id: 132
2007-05-15 05:02:03 +00:00
Henrik Levkowetz 6b65c11369 Ignore *.pyc, *.swp
- Legacy-Id: 131
2007-05-12 16:29:22 +00:00
Henrik Levkowetz cf20093762 * Moved utility functions into utils/ directory, and started breaking out
utilities into separate files.
 * Added a log() function in ietf/utils.  It uses syslog, but adds some
   information about where it was called from.
 - Legacy-Id: 130
2007-05-11 15:48:45 +00:00
Henrik Levkowetz 5315578c5d Added __version__ string
- Legacy-Id: 129
2007-05-11 15:45:45 +00:00
Bill Fenner 147d34aa19 Reorder urlize and linebreaks, to give urlize a better chance at
the email addresses.
 - Legacy-Id: 128
2007-05-10 23:39:33 +00:00