Bug #1056 Отвалилась регистрация.

Feature: При попытке зарегистрироваться вылетает ошибка 500:

Traceback (most recent call last):

  File "/home/boris/testing/venv/lib/python2.6/site-packages/django/core/handlers/base.py", line 111, in get_response
    response = callback(request, *callback_args, **callback_kwargs)

  File "/home/boris/testing/exmo/exmo/exmo2010/custom_registration/views.py", line 113, in register_test_cookie
    new_user = backend.register(request, **form.cleaned_data)

  File "/home/boris/testing/exmo/exmo/exmo2010/custom_registration/backends/custom/__init__.py", line 103, in register
    email, password, site)

  File "/home/boris/testing/venv/lib/python2.6/site-packages/django/db/transaction.py", line 217, in inner
    res = func(*args, **kwargs)

  File "/home/boris/testing/venv/lib/python2.6/site-packages/registration/models.py", line 85, in create_inactive_user
    registration_profile.send_activation_email(site)

  File "/home/boris/testing/venv/lib/python2.6/site-packages/registration/models.py", line 262, in send_activation_email
    ctx_dict)

  File "/home/boris/testing/venv/lib/python2.6/site-packages/django/template/loader.py", line 181, in render_to_string
    t = get_template(template_name)

  File "/home/boris/testing/venv/lib/python2.6/site-packages/django/template/loader.py", line 157, in get_template
    template, origin = find_template(template_name)

  File "/home/boris/testing/venv/lib/python2.6/site-packages/django/template/loader.py", line 134, in find_template
    source, display_name = loader(name, dirs)

  File "/home/boris/testing/venv/lib/python2.6/site-packages/django/template/loader.py", line 42, in __call__
    return self.load_template(template_name, template_dirs)

  File "/home/boris/testing/venv/lib/python2.6/site-packages/django/template/loader.py", line 48, in load_template
    template = get_template_from_string(source, origin, template_name)

  File "/home/boris/testing/venv/lib/python2.6/site-packages/django/template/loader.py", line 168, in get_template_from_string
    return Template(source, origin, name)

  File "/home/boris/testing/venv/lib/python2.6/site-packages/django/template/base.py", line 108, in __init__
    self.nodelist = compile_string(template_string, origin)

  File "/home/boris/testing/venv/lib/python2.6/site-packages/django/template/base.py", line 136, in compile_string
    return parser.parse()

  File "/home/boris/testing/venv/lib/python2.6/site-packages/django/template/base.py", line 239, in parse
    compiled_result = compile_func(self, token)

  File "/home/boris/testing/venv/lib/python2.6/site-packages/django/templatetags/i18n.py", line 279, in do_translate
    value, noop = TranslateParser(token.contents).top()

  File "/home/boris/testing/venv/lib/python2.6/site-packages/django/templatetags/i18n.py", line 275, in top
    raise TemplateSyntaxError("only option for 'trans' is 'noop'")

TemplateSyntaxError: only option for 'trans' is 'noop'

Scenario: Исправил кавычки в шаблоне.
Bug #1059 Съехала верстка в IE при большом количестве комментариев.

Feature: У эксперта Б в отчете по комментариям при большом их количестве в IE9 съехала верстка в таблице.
Scenario: Исправил верстку.
Bug #1052 Отображение имени комментирующего

Feature: Баг по второй части коммента в #919

        Суть бага в том, что у пользователя, если смотреть в админке, не заполнены поля "Имя", "Фамилия", "Email", а есть только username и пользователь не состоит ни в какой группе, то для всех комментарий, который был оставлен этим пользователем, отображается без указания автора.

        С целью удаления костылей и приведения логики к правильной, нужно сделать следующее:

        При сохранении комментария в поле таблицы django_comments.user_name должно сохраняться имя и фамилия пользователя. Если ни того ни другого нет, то вместо них нужно сохранить в этом поле auth_user.username. Для этого надо переделать user.profile.legal_name, чтобы он возвращал username вместо email, если это не затронет другого функционала.

        При просмотре комментариев отображаемое имя должно зависеть от прав пользователя.

            Суперпользователи, эксперты А и Б должны видеть в качестве имени автора комментария django_comments.user_name. Если это значение пусто, то user.profile.legal_name.
            Представители организаций (но не суперпользователь) должны видеть в качестве имени автора комментария разные значения в зависимости от автора комментария:

        а) Если автор комментария имеет права эксперта А или Б или суперпользователя, то в качестве имени должна быть строка "Эксперт Фонда Свободы Информации".
        б) для всех других авторов в качестве имени автора комментария django_comments.user_name. Если это значение пусто, то user.profile.legal_name.

        Пункт 1 также нужно реализовать для претензий и уточнений. Поскольку иные пользователи претензий и уточнений не видят, то других вариантов нет.
Scenario: Сделал вывод имени и фамилии, если их нет: вывод username, если его нету, вывод почтового адреса.
              Текст "Аналитик фонда" заменил на текст "Эксперт Фонда Свободы Информации".
Bug #1058 Сортировка страницы сообщений.

Feature:  Описание
         Delete

         Для не обработанных комментариев:

          http://myscreenshot.info/i/0002/201171360934924200777769960211.png
         Когда комменты за одно число, то они должны сортироваться по времени в соответствии с правилом:
         "В необработанных комментариях/уточнениях/претензиях более старые должны быть сверху (увеличение даты идет сверху вниз)"
         Т.е. на приведенном скрине самый старый коммент за 14-06 и он должен быть первым, а не последним.

          http://myscreenshot.info/i/0002/168231360935053327389051562468.png
         Когда даты разные, то первым должен быть самый старый коммент "14-05 от 01.02.13". Но если есть несколько комментов от одной даты, то сортироваться они должны так же, как я написала выше.

         В уточнениях для не обработанных сортировака сделана так, как она должна быть. Для комментов должно быть так же.

         Обработанные уточнения и претензии.

         А у них должно быть так же, как сделано у обработанных комментов. У обработанных комментов все сделано правильно. Самые новые (по дате и времени) должны быть первыми.

Scenario: Исправил querysets
Bug #1064 Type Error: Format Requires Mapping при оставлении Уточнения

Feature:  Честно говоря непонятно, как этот баг появился.
         Но почему-то в этот раз проявился. Хотя все тестировалось.

         Type Error: Format Requires Mapping

         В модели с уточнением.

         unicode использует %s формат с именованными параметрами и получает кортеж, а не словарь для списка.

Scenario: Исправил формат, и на всякий случай перевел в юникод логику метода legal_name.
Task #1065 Какой админу надо показывать цвет комментов для экспертов Б и А

Feature: Ничего не изменилось для эксперта А и Б. У них по прежнему выделяется цветом комментарий админа на странице параметра. Только у админа его же комментарии перестали выделяться цветом.

Scenario: Сейчас с дампом базы (что на демо) все нормально тестируется. Я нашел и исправил ошибку. Я там user.profile писал вместо user.userprofile.
Task #1066 Право редактировать на странице перечня мониторингов

Feature: Когда мониторинг опубликован, админ не имеет право отредактировать или удалить цикл мониторинга. Из-за этого эксперт А и Админ попадают на разные страницы опубликованного мониторинга при заходе в него с главной страницы ЭКСМО. Эксперт А попадает на страницу задач, а админ на страницу рейтинга.

Scenario: Добавил аналогичные проверки в шаблон перечня мониторинга.
Bug #1062 Ошибка 500 при выборе завершенного цикла в статистике.

В статистике по завершенным циклам мониторинга, если выбрать в выпадающем списке любой цикл мониторинга, то ошибка 500:
TypeError: 'Monitoring' object is not iterable
Bug #1061 В текущих циклах статистики отображаются завершенные мониторинги

В статистике в разделе "Текущие циклы мониторинга" выводятся все опубликованные циклы.
В этом разделе должны выводиться все циклы, находящиеся до стадии "Результаты опубликованы" Т.е. начиная со стадии "Подготовка" и до стадии "Подведение итогов".
Bug #1063 Представитель не видит скрытый мониторинг после опубликования

После опубликования скрытого мониторинга представитель, который привязан к одной из задач этого цикла, перестает видеть у себя этот цикл.
В задании сказано, что после опубликования права на просмотр должны сохраняться для оргов, если они привязаны к задаче.
https://www.djangoproject.com/weblog/2013/feb/19/security/
Task #1068 Сортировка не обработанных комментариев,уточнений и претензий.

Feature:  по тикету #1058

         Сортировка не обработанных комментов, уточнений и претензий приведена к единому стилю. Это хорошо.

         Плохо - сортироваться должно ровно наоборот.

         Еще раз подчеркну - до внесения изменений #1058 для не обработанных(и только для них) эталоном были уточнения. У них сортировка была сделана так, как надо.

Scenario: Заменил сортировку.
Bug #1061 В текущих циклах статистики отображаются завершенные мониторинги

В статистике в разделе "Текущие циклы мониторинга" выводятся все опубликованные циклы.
В этом разделе должны выводиться все циклы, находящиеся до стадии "Результаты опубликованы" Т.е. начиная со стадии "Подготовка" и до стадии "Подведение итогов".
Task #1057 У админа не выводится столбец "выполнено %" на странице задач.

Feature:  У админа страница задач выглядит так:
         http://myscreenshot.info/i/0002/926671361191540099404963267906.png

         Вместо % выполнения задачи пустота.
Scenario: Добавил проверку на суперюзера в шаблон.
Bug #963 Статистика, когда нет мониторингов

Feature:     На странице /exmo2010/reports/monitoring/inprogress/, в случае, если текущих мониторингов нет, нету никакой полезной инфы:

         http://pix.am/RXb8.png

         Нужно: если нет ни одного текущего мониторинга, скрыть строки пагинатора ("Страница 1 из 1");
         Поместить текстовое сообщение "В настоящее время нет текущих циклов мониторинга."

             То же самое для страницы завершенных циклов мониторинга /exmo2010/reports/monitoring/finished/.

         Нужно: если нет ни одного завершенного мониторинга, то скрывать строки пагинатора и выводить текст: "Нет ни одного завершенного цикла мониторинга."
Scenario: Добавил в шаблон проверку на наличие комментариев.
Bug #918 Выбор согласованных параметров, кнопка "Сбросить выделение"

Feature: На странице выбора согласованных параметров ( Например,  http://office.svobodainfo.org:8011/exmo2010/monitoring/72/set_npa_params/ ) кнопка "Сбросить выделение" сбрасывает галки, установленные до момента сохранения. Галки, которые были сохранены остаются выделенными.

        Поведение, которое должно быть:
        При нажатии на кнопку "Сбросить выделение" должны сняться все установленные галки.

Scenario: Добавил js в шаблон, исправил 500-ю ошибку (user has no profile) для анонимуса.
Bug #843 Не активированный аккаунт

Feature:  Некоторые пользователи забывают перейти по ссылке из письма регистрации либо не получают этого письма из-за спам-фильтров.
         Сейчас при попытке входа они получают сообщение
         "Эта учетная запись отключена."

         Нужно изменить сообщение на
         "Эта учетная запись не активирована. Вы получили письмо со ссылкой для подтверждения регистрации?"

         Под этим сообщением должна быть ссылка "Выслать письмо подтверждения повторно", по нажатию на которую пользователь должен переходить на новую страницу с текстом и формой, похожую на страницу восстановления пароля ( http://office.svobodainfo.org:8011/exmo2010/accounts/password/reset/).
         Заголовок страницы: "Активация учетной записи"
         Текст: "Для повторной активации учетной записи введите ваш e-mail. Вам будет отправлено письмо со ссылкой, по которой нужно перейти для завершения активации."
         Текст на кнопке: "Отправить"
         После нажатия на кнопку пользователю должно быть отправлено письмо активации. Сам пользователь при этом должен перейти на страницу  http://office.svobodainfo.org:8011/exmo2010/accounts/register/complete/ также, как после регистрации.

Scenario: Переписал вью, форму и шаблон для входа в систему, добавил форму, вью и шаблон для отправки повтороного письма активации.
Bug #1069 Не выводится емейл, если не заполнены поля имя, фамилия

Feature:  Если у аккаунта не заполнены поля Имя, Фамилия то выводится "Добро пожаловать,", вместо того, чтобы выводить email.
         http://myscreenshot.info/i/0002/344701361441667764508681035296.png

         Так же у админа снова не выводится его обозначение, если он оставил претензию или уточнение.
         http://myscreenshot.info/i/0002/690491361441871459042446228933.png

         Это было уже в #1015, тем не менее повторилось после перезаливки базы.

         Алгоритм воспроизведения:
         Заполнила поля имени, фамилиии, отчества в настройках - они появились в верхнем меню "Добро пожаловать ...".
         Удалила поля в настройках, вместо емейла выводится пустота.
         Если смотреть в админке, то в поле имя стоит пробел, который и выводится везде в качестве имени.

Scenario: Исправил логику заполнения поля first_name во время регирстрации и во время настроек.
update copy_monitoring for new models
Bug #976 Нарушения лицензии

Feature:  Для закрытия всех вопросов с нарушениями лицензии AGPL, доделать следующее:

             Добавить лицензию для файла selector.css
             Удалить из проекта exmo/exmo2010/static/exmo2010/socialauth/VK.png, exmo/exmo2010/static/exmo2010/socialauth/f_logo.png за ненадобностью, удалить упоминание о них в COPYING
             Сменить иконку для календаря на  http://png.findicons.com/files/icons/2181/34al_volume_3_2_se/24/001_44.png

         (указать в COPYING ссылку на сайт  http://www.icojam.com/blog/?p=139, там же текст лицензии)
         Старую иконку календаря и ее упоминание в COPYING - удалить.

Scenario: В файле  selector.css уже была лицензия, остальное исправил, дополнительно добавил в новые шаблоны лицензии, куда забывал добавлять.