Commits on Apr 21, 2011
  1. Announcements send emails to people in that group. [bug 650101]

    Paul Craciunoiu
    Paul Craciunoiu committed Apr 19, 2011
    * Email is sent upon saving from the admin.
    * Announcements from the future are queued to be emailed around the time they become visible.
    * Also do some try/finally as safety for threadlocale default language activation.
Commits on Apr 20, 2011
  1. Refactor group dashboards to be properties of groups.

    Paul Craciunoiu
    Paul Craciunoiu committed Apr 19, 2011
    * Announcements are per group, independent of user's groups.
    * Tabs are all about user's groups. Tab titles are group names.
    * Add migration for unique group id in GroupDashboard because of OneToOneField.
    * Create to avoid circular imports.
  2. * Add group dashboard announcements and refactor announcements tests.

    Paul Craciunoiu
    Paul Craciunoiu committed Apr 18, 2011
    * Post-rebase, added with_save to announcements app as well.
  3. [bug 638478] Group locale dashboards.

    Paul Craciunoiu
    Paul Craciunoiu committed Apr 14, 2011
  4. Added method for checking unread message count and a context processo…

    rlr committed Apr 19, 2011
    …r for putting it in context. [bug 649992]
Commits on Apr 19, 2011
Commits on Apr 18, 2011
  1. Create Messages app and models.

    James Socol
    James Socol committed Apr 18, 2011
    Message storage based on separate models for Inbox and Outbox.
  2. Old kb/* redirects moved to the KB. [bug 650303]

    James Socol
    James Socol committed Apr 15, 2011
  3. Fix localized forum preview. [bug 648138]

    James Socol
    James Socol committed Apr 15, 2011
  4. s/notifications_/tidings_/

    rlr committed Apr 18, 2011
Commits on Apr 15, 2011
  1. [bug 629470] Validate submission of video/image to gallery.

    Paul Craciunoiu
    Paul Craciunoiu committed Apr 12, 2011
  2. [bug 623429] Add is_draft field to gallery models.

    Paul Craciunoiu
    Paul Craciunoiu committed Apr 12, 2011
  3. Add CSS transitions. Cool stuff.

    Paul Craciunoiu
    Paul Craciunoiu committed Apr 11, 2011
  4. Change video preview to individual row for consistency and less UI sh…

    Paul Craciunoiu
    Paul Craciunoiu committed Apr 11, 2011
  5. Refactor gallery frontend.

    Paul Craciunoiu
    Paul Craciunoiu committed Feb 7, 2011
    * [bug 623431] Remove ImageUploadAsync, VideoUploadAsync - they're not necessary.
    * Also subclass them both from MediaForm, sharing some code to make this more maintanable.
    * Add GalleryUpload object with plenty of comments and separation of concerns.
    * Use jinja macros heavily to make the upload form's HTML more readable
    * Consistency in error messages.
    * Preliminary File API client-side validation (extension and file size)
    * Stub for client side form validation (TODO)
    * Need to test for IE (TODO)
    * Set-up for CSS transitions, not implemented (TODO)
  6. Add a deprecated_redirect interstitial view.

    James Socol
    James Socol committed Apr 15, 2011
    sumo.views.deprecated_redirect shows a message informing the user that the
    URL has changed and they should update their bookmarks. It takes one required
    argument, `url` which is passed directly to `reverse()`. Any additional kwargs
    are also passed to `reverse()` as the `kwargs` argument.
Commits on Apr 14, 2011
  1. Iterate personal dashboard framework.

    erikrose committed Apr 14, 2011
    * Dashboard views are now responsible for passing the active dashboard signature into the template, since only they know the params (like the locale of a LocaleDashboard).
    * Tolerate non-dict Dashboard.params values to make views simpler in the common case.
    * When choosing active tab, compare the whole "signature" of a dashboard, not just the slug. IOW, take params into account.
    * Use class name instead of title in admin menu, since title is only defined on parametrized instances.
    * Hash slug instead of class, for consistency with signatures.
    * Make Dashboard._params private.
    * Get rid of signature_from_params(). We don't need it since I decided it would take the original string-params format. This also lets us make _digest_params() private and an instance method.
  2. L10N for article topics.

    rlr committed Apr 11, 2011
    * Added file with topic strings for l10n, and a command to generate this file.
    * Article page now links to article lists by topic (instead of category).
    * All non-default locales use their parent's topics for listing.
    [bug 623160]
Commits on Apr 13, 2011
  1. Upgrade to Waffle 0.6. [bug 649801]

    James Socol
    James Socol committed Apr 13, 2011
  2. Fix test indeterminacy.

    erikrose committed Apr 13, 2011
  3. Default to cached_db SESSION_ENGINE [bug 649452]

    James Socol
    James Socol committed Apr 13, 2011
  4. [bug 638477] [bug 649201] Add framework for mapping dashboards to gro…

    erikrose committed Apr 11, 2011
    * Add GroupDashboard model
    * Change dashboard_tabs from a macro to a helper so it can get at dashboards(). Rename it "user_dashboard_tabs". Remove explicit references to tabs; look them up from dashboards.user instead.
    * Enable Questions dashboard.
Commits on Apr 12, 2011
  1. Add ReverseProxyMiddleware to support running in a separate process.

    James Socol
    James Socol committed Apr 12, 2011
    Django's HttpRequest.is_secure() depends on an environment variable, which
    is great when we're running with mod_wsgi inside the Apache process and can
    rely on SetEnv HTTPS on, but when we're running as an isolated process (via
    gunicorn or uWSGI or what have you) that doesn't work.
    One of the upstream proxy servers (maybe even Zeus) will set an X-Scheme
    header to 'https' or 'http'. With this middleware, we check the header in
    is_secure() instead of relying on the environment variable.
    I'm leaving this to be installed in settings_local for now, since this is
    only for a test.