Fixed the License name
User Story #885 Страница рейтингов

Feature: Изменения касаются страницы "Рейтинг" пример пути /exmo2010/monitoring/83/rating/
Страница "Рейтинг" в цикле мониторинга будет использоваться как основная страница цикла мониторинга для представителей организаций, пользователей без прав и анонимусов. Это необходимо чтобы скрыть внутреннюю логику работы системы, которая запутывает пользователей.
Изменения, которые необходимо сделать:
Изменить заголовок. Для анонимуса, пользователя без прав и представителя в заголовке вместо "Рейтинг" указывать название цикла мониторинга. Для эксперта А и эксперта Б страница "Рейтинг" отображается внутри раздела цикла мониторинга, по этой причине заголовок уже имеется и дополнительный заголовок не требуется.
Убрать поясняющий текст "Вы можете ознакомиться с рейтингом, построенным на основе: 1) всех параметров; 2) параметров на основе нормативных правовых актов; 3) выбранных вами параметров."
Заголовок переключателей "Вид рейтинга:" сделать стандартным форматированием h2 и переименовать в "Рейтинг".
Переименовать переключатели 1) "все параметры" в "общий"; 2) "параметры на основе НПА" в "правовой"; 3) "дополнительные параметры" в "экспертный"; 4) "пользовательский" не переименовывать. Сделать переключателям стандартное форматирование переключателей.
По правому краю страницы, на той же линии что и переключатели разместить иконку земного шара и ссылку "Карта", при нажатии открывается карта по циклу мониторинга. Только в случае, если к мониторингу прикреплена карта. Реализовано в требовании #1409, изменять не нужно.
Правее ссылки на карту разместить иконку со стрелочкой вниз и ссылку "Выгрузить в JSON", справа от нее - такая же иконка и ссылка "Выгрузить в CSV". При нажатии на иконку или ссылку происходит выгрузка данных по циклу мониторинга в выбранном формате (реализовано в #1209, изменять не нужно).
В 15 px ниже добавить на страницу форму фильтрации по названию организации:
Поле ввода названия организации должно иметь динамическую ширину, которая зависит от размера окна. По умолчанию в поле отображается текст "Организация" цвета 999999, который пропадает при фокусе на поле. При вводе текста в поле и нажатии на кнопку "Найти" фильтрует таблицу по наличию данного текста в названии организации.
Добавить кнопку "Найти" шириной 80 px, при нажатии на которую обрабатываются введенные данные.
В 15 px под фильтрацией располагается таблица с рейтингом организаций в цикле мониторинга. По сравнению с текущим представлением рейтинга она отличается стандартным форматированием таблицы и отсутствием объединения мест по строкам (если две или более организаций занимают одно место в рейтинге, то на каждой строке отображается это место). Кроме того меняются заголовки таблицы и её содержание:
Заголовок столбца "Позиция в рейтинге" меняется на "Место", по этому столбцу осуществляется сортировка по умолчанию.
Столбец "Организация" остается без изменений.
Заголовок столбца "Веб-адрес" меняется на "Сайт".
Заголовок столбца "Итоговый Кид" меняется на "Открытость". В качестве знака, отделяющего десятичную дробь, использовать запятую, а не точку.
Столбец "Первичный КИД" переименовывается в "Пер. открытость", но по умолчанию не показывается. В качестве знака, отделяющего десятичную дробь, использовать запятую, а не точку. Доступен для выбора и отображения всем авторизованным пользователям, анонимусам - не показывается.
Добавляется новый столбец, содержащий разницу между первичным и актуальным значением информационной открытости, имеет заголовок "Измен.". В качестве знака, отделяющего десятичную дробь, использовать запятую, а не точку. Справа от значения разницы отображается значок изменения: а) для положительного изменения направленный вверх треугольник цвета 006600, шириной 8 px, высотой 5 px; б) для отрицательного изменения направленный вниз треугольник цвета BB0000, шириной 8 px, высотой 5 px.
Все значения коэффициентов открытости и производные от них (изменение) должны выводиться со знаком процента после числа, без пробела (напр. 35,446%). Выравнивание таких значений: наибольшее значение по левому краю таблицы, остальные таким образом, чтобы запятая находилась на той же линии, что и у наибольшего значения.
Добавляется новый столбец, содержащий количество зарегистрированных и активных представителей с заголовком "Пред.". В столбце отображается информация в виде "4 / 3", где первая цифра количество зарегистрированных представителей, а вторая количество активных. По умолчанию столбец не показывается. Доступен для выбора и демонстрации только экспертам А и экспертам Б.
Количество зарегистрированных представителей есть количество пользователей, имеющих привязку к данной организации. Количество активных представителей есть количество пользователей, имеющих привязку к данной организации и оставлявших хотя бы один комментарий в задаче по данной конкретной организации.
Добавляется новый столбец, содержащий количество комментариев от представителей организации с заголовком "Коммен.". По умолчанию столбец не показывается. Доступен для выбора и демонстрации только экспертам А и экспертам Б.
Последняя строка таблицы "Среднее значение" остается такой как есть и всегда отображается строкой с белым фоном.
Информация о количестве организаций остается без изменений: для общего, правового и экспертного рейтинга "Всего в цикле мониторинга N организаций.", для пользовательского: "Всего в цикле мониторинга 79 организаций, из них 2 имеют хотя бы один релевантный параметр из пользовательской выборки.". Шрифт обычный.
В таблице в строке заголовка столбцов добавляется иконка настроек таблицы (только для авторизованных пользователей). Для настроек таблицы использовать иконку аналогичную иконке настроек для профиля пользователя. Иконка располагается в верхней правой части таблицы. При нажатии на иконку открывается модальное окно шириной 260 px и высотой 240 px, по центру окна браузера. Все изменения, сделанные во всплывающем окне, сохраняются в БД как настройки таблицы для пользователя.
http://myscreenshot.info/i/0003/744201380121696609704497372135.png
Всплывающее окно:
Заголовок "Настройки таблицы" формата h2. Отступ заголовка сверху 20 px.
В 10 px под заголовком группа чек-боксов:
"Представителей", отвечает за вывод столбца с количество зарегистрированных и активных представителей по каждой организации (заголовок столбца "Пред."). Показывается только эксперта А и экспертам Б.
"Кол-во комментариев", отвечает за вывод столбца с количеством оставленных комментариев по каждой организации (заголовок столбца "Коммен."). Показывается только эксперта А и экспертам Б.
"Первичная открытость", отвечает за вывод столбца со значением первичной оценки открытости организации (заголовок столбца "Пер. открытость").
"Актуальная открытость", отвечает за вывод столбца со значением актуальной оценки открытости организации (заголовок столбца "Открытость"). По умолчанию выбран.
"Изменение", отвечает за вывод столбца со значением разности актуальной и первичной оценки открытости (заголовок "Измен."). По умолчанию выбран.
В 20 px под чек-боксами кнопка "Изменить" шириной 100 px. При нажатии на кнопку сохраняются выбранные изменения, всплывающее окно закрывается, а в таблице появляются/пропадают выбранные столбцы.
В 20 px cправа от кнопки "Изменить" ссылка "Отмена" (середина высоты кнопки и ссылки совпадают), имеющая форматирование псевдоссылки. По нажатию на нее модальное окно должно закрываться без сохранения изменений.
http://myscreenshot.info/i/0003/491441380121734547751122777685.png
Изменение дизайна формы запроса пользовательского рейтинга:
Заголовок формы "Список параметров" опустить, отступ 2 px от списка параметров. Форматирование - стандартный текст с полужирным выделением.
Справа от него - псевдоссылка для изменения видимости списка параметров. Псевдоссылка содержит текст "(скрыть)" при развернутой форме и текст "(показать)" при свернутой. При нажатии на "(скрыть)" скрывается список параметров и кнопка "Сформировать рейтинг". При нажатии на "(показать)" раскрывается список параметров и кнопка "Сформировать рейтинг".
Кнопку "Сформировать рейтинг" расположить в 5 px под списком параметров. Кнопка должна быть неактивна, если не выбран ни один параметр из списка.
Удалить псевдоссылку "Скрыть список параметров" (она же "Показать список параметров") и иконку возле неё.
Между строками с параметрами - одинарный интервал.
Как сейчас:
http://myscreenshot.info/i/0002/915451376042778680367246653433.png
Как должно быть:
http://myscreenshot.info/i/0003/982541380121771355003664915509.png
Поведение формы: при входе в пользовательский рейтинг форма со списком параметров развернута, после нажатия на "Сформировать рейтинг" форма сворачивается, остается только заголовок.
Иконку со стрелочкой вниз для ссылок на скачиваемые файлы брать из нашего стандартного набора  http://www.small-icons.com/packs/24x24-free-application-icons.htm
Стиль заголовков таблицы.
Стандартный стиль таблицы был сделан в #1183, однако требуются доработки/исправления:
При наведении курсора на строку заголовка ее фон не должен меняться
Заголовок столбца, по которому идет сортировка, не должен иметь подчеркивания, все остальные должны иметь пунктирное подчеркивание. При наведении курсора пунктир не должен пропадать.
При нажатии на заголовок столбца таблица должна сортироваться по этому столбцу по возрастанию. При повторном нажатии на заголовок столбца, по которому таблица уже отсортирована, должна происходить сортировка по этому же столбцу по убыванию.
При сортировке по некоему столбцу к его заголовку через пробел должен добавляться символ стрелки, если отсортировано по возрастанию, то вниз (↓), если по убыванию то вверх (↑).
Fixed the project webpage in video
Fixed amishurov's name
Bug #1705 Косяки верстки рейтинга

Слева и справа от псевдоссылки "скрыть" пробелы. Пробелы пропадают после нажатия на псевдоссылку. Но их вообще там быть не должно.
http://myscreenshot.info/i/0003/499951380800258733158962377367.png
Расстояние от заголовка "Список параметров" до самого списка существенно больше 2 px.
Текст о количестве организаций выделен жирным, хотя не должен быть.
http://myscreenshot.info/i/0003/636461380800529157412709034739.png
Выравнивание в столбцах с процентами сделано не по запятой.
http://myscreenshot.info/i/0003/606751380800579367649343466630.png
При 100% в столбце "Изменение" иконка стрелки съезжает на следующую строку:
http://myscreenshot.info/i/0003/493531380807233027273204760136.png
Только в браузере Firefox. Кнопка "найти" больше, чем поле для ввода организации
http://myscreenshot.info/i/0003/757141380872467767701015787180.png
User Story #1656 Вычислять первичный КИД по всем параметрам.

Сейчас первичный КИД оценок сохраняется в БД в момент перехода мониторинга в стадию взаимодействия. Почему это не хорошо: если на стадии взаимодействия какой-нибудь параметр признать нерелевантным, то первичный КИД уже не будет отображать действительность, так как был рассчитан в момент, когда выбранный параметр еще был релевантен.
Первичный КИД должен вычисляться из соответствующих ему оценок в каждый конкретный момент времени.
Bug #1712 Ошибка сервера на странице рейтинга когда нет задач

Если в цикле мониторинга нет ни одной задачи, то обращение к странице рейтинга вызывает ошибку сервера. Баг появился после последних изменений страницы рейтинга.
В норме в такой ситуации должна отображаться страница рейтинга с пустой таблицей (так же, как если в цикле есть задачи, но ни одна из них не одобена)
Bug #1714 Страница рейтинга. Иконка значка положительного изменения открытости

Особенно на мониторах небольшого размера отчетливо видно, что у зеленого значка справа есть пятно:
http://myscreenshot.info/i/0003/268391380892438026598742761052.png
Не критично, но в глаза бросается.
Bug #1713 Страница рейтинга. Столбец первичной открытости.

Столбец "Первичный КИД" переименовывается в "Пер. открытость", но по умолчанию не показывается. В качестве знака, отделяющего десятичную дробь, использовать запятую, а не точку. Доступен для выбора и отображения всем авторизованным пользователям, анонимусам - не показывается.
Проблемы:
Столбец первичной открытости по умолчанию показывается
Всегда показывается анонимусам.
Bug #1722 Страница рейтинга. Верстка всплывающего окна.

В задании написано:
При нажатии на иконку открывается модальное окно шириной 260 px и высотой 240 px, по центру окна браузера.
Для экспертов А и Б. По линейке в Firefox 260рх на 240рх выглядит так:
http://myscreenshot.info/i/0003/948791381134517433584597527174.png
В браузере IE, окно тоже узкое, из-за этого "Количество комментариев" располагается на 2-х строчках.
http://myscreenshot.info/i/0003/498201381134711214383111489695.png
В 20 px под чек-боксами кнопка "Изменить" шириной 100 px.
Расстояние по линейке 10-11 рх:
http://myscreenshot.info/i/0003/502131381135907844604146618988.png
В 20 px cправа от кнопки "Изменить" ссылка "Отмена"
По линейки расстояние между кнопками 32px:
http://myscreenshot.info/i/0003/454051381135996960549121019557.png
Bug #1719 Страница рейтинга. Неверное количество зарегистрированных представителей.

Пункт задания в #885:
Добавляется новый столбец, содержащий количество зарегистрированных и активных представителей с заголовком "Пред.". В столбце отображается информация в виде "4 / 3", где первая цифра количество зарегистрированных представителей, а вторая количество активных. По умолчанию столбец не показывается. Доступен для выбора и демонстрации только экспертам А и экспертам Б.
Количество зарегистрированных представителей есть количество пользователей, имеющих привязку к данной организации. Количество активных представителей есть количество пользователей, имеющих привязку к данной организации и оставлявших хотя бы один комментарий в задаче по данной конкретной организации.
Внимание на выделенное жирным в тексте задания.
По факту при вводе кода приглашения в рейтинге изменяется вторая цифра (количество активных представителей). А после написания комментария, значения в рейтинге не изменяются вообще.
При этом не имеет значения был ли представитель организации привязан к какой-либо задаче до этого.
Подготовка теста:
Создать цикл мониторинга.
Добавить минимум 2 организации и хотя бы 1 параметр.
Создать задачи по этим организациям.
Оценить параметр/параметры. Закрыть и одобрить задачу.
Перевести цикл на этап "Взаимодействие".
Тест 1:
Аккаунт с правами Organization, у которого ранее были привязки к задачам в других циклах.
Взять код первой организации и в настройках аккаунта ввести код.
Перейти на главную страницу ЭКСМО и проверить, что представитель получил доступ к задаче цикла.
Под аккаунтом с правами ExpertsA (эксперта А):
Зайти в цикл мониторинга, меню "Рейтинг".
Ожидаемый правильный результат: в столбце "Пред." у указанной организации должно быть значение 1/0.
Полученный результат: в столбце "Пред." у указанной организации значение 0/1.
Тест 2:
Взять код второй одобренной организации в цикле.
Зарегистрировать нового пользователя, как представителя организации, указав при регистрации код второй организации в цикле.
Перейти на главную страницу ЭКСМО и проверить, что представитель получил доступ к задаче цикла.
Под аккаунтом с правами ExpertsA (эксперта А):
Зайти в цикл мониторинга, меню "Рейтинг".
Ожидаемый правильный результат: в столбце "Пред." у указанной организации должно быть значение 1/0.
Полученный результат: в столбце "Пред." у указанной организации значение 0/1.
Тест 3:
Под аккаунтом представителя организации (из теста 1 или 2), зайти в задачу и оставить хотя бы 1 комментарий.
Под аккаунтом с правами ExpertsA (эксперта А):
Зайти в цикл мониторинга, меню "Рейтинг".
Ожидаемый правильный результат: в столбце "Пред." у указанной организации должно быть значение 1/1.
Полученный результат: в столбце "Пред." у указанной организации значение 0/1.
User Story #1261 Страница "Рейтинги"

Существующую сейчас страницу "Рейтинги" нужно полностью переделать для более удобного использования.
Элементы:
Заголовок "Рейтинги".
Фильтрация по названию цикла:
Поле ввода названия цикла должно иметь динамическую ширину, которая зависит от размера окна. По умолчанию в поле отображается текст "Цикл мониторинга" цвета 999999, который пропадает при фокусе на поле. При вводе текста в поле и нажатии на кнопку "Найти" фильтрует таблицу по наличию данного текста в названии цикла мониторинга.
Кнопка "Найти" шириной 80 px, при нажатии на которую обрабатываются введенные данные.
Таблицу сделать стандартным форматированием с возможностью сортировки по столбцам. Должна состоять из следующих столбцов:
"Цикл мониторинга", отображает название цикла мониторинга.
Столбец без названия, в котором отображается кликабельная иконка земного шара, если по циклу мониторинга есть ссылка на карту. Что это такое смотреть в #1410 и #1411.
"Опубликовано", отображает дату публикации результатов, взятую из календаря мониторинга. По умолчанию таблица отсортирована по этому столбцу. Формат отображаемой даты "23 ноября 2012".
"Сайтов", отображает количество организаций в цикле мониторинга.
"Средняя открытость", отображает средний коэффициент информационной открытости цикла мониторинга. Для малых разрешений заголовок столбца писать в две строки.
На странице отображать только те циклы мониторинга которые имеют статус "результаты опубликованы".
Скрытые опубликованные циклы мониторинга отображаются на странице только если пользователь имеет к ним доступ, в противном случае они не отображаются. Подробнее про скрытые циклы тут #972
Для анонима, пользователя без прав и представителя отображать данную страницу в хлебных крошках вместо страницы "Циклы мониторинга", то есть, сейчас на странице рейтинга цикла в крошках аноним и представитель видят "Home > Циклы мониторинга > Рейтинг", а должны видеть "Home > Рейтинги > Рейтинг"
Bug #1723 Страница рейтинга. Кнопка "Сформировать" в пользовательстком рейтинге.

По заданию #885:
Кнопку "Сформировать рейтинг" расположить в 5 px под списком параметров. Кнопка должна быть неактивна, если не выбран ни один параметр из списка.
Баг - кнопка активна всегда.
Тест:
Зайти в цикл мониторинга на страницу "Рейтинг".
Выбрать вид рейтинга "Пользовательский"
Ожидаемый результат: на экране появится форма со списком параметров. Ни один параметр в списке не отмечен.
Под формой расположена кнопка "Сформировать рейтинг", состояние неактивное.
Только после выбора хотя бы 1 параметра кнопка активируется. Если пользователь снял все галки, то кнопка перестает быть активной.
Полученный результат: Появилась форма со списком параметров. Ни один параметр не отмечен. Кнопка "Сформировать рейтинг" активна и по клику происходит сворачивание формы со списком и построение рейтинга на основе всех параметров (общий рейтинг).
User Story #1656 (fix) Вычислять первичный КИД по всем параметрам.

Падение при попытке получить место в рейтинге. Попытка сложения числа
(int) и пусто (None).
User Story #1656 (fix) Вычислять первичный КИД по всем параметрам.

Падение при попытке получить место в рейтинге. Попытка сложения числа (int) и пусто (None).
User Story #1656 (fix 1) Вычислять первичный КИД по всем параметрам.

Изменения сломали исправленное в #1713, а так же испортили верстку шапки таблицы рейтинга.
Bug #1719 Страница рейтинга. Неверное количество зарегистрированных представителей.

Пункт задания в #885:
Добавляется новый столбец, содержащий количество зарегистрированных и активных представителей с заголовком "Пред.". В столбце отображается информация в виде "4 / 3", где первая цифра количество зарегистрированных представителей, а вторая количество активных. По умолчанию столбец не показывается. Доступен для выбора и демонстрации только экспертам А и экспертам Б.
Количество зарегистрированных представителей есть количество пользователей, имеющих привязку к данной организации. Количество активных представителей есть количество пользователей, имеющих привязку к данной организации и оставлявших хотя бы один комментарий в задаче по данной конкретной организации.
Внимание на выделенное жирным в тексте задания.
По факту при вводе кода приглашения в рейтинге изменяется вторая цифра (количество активных представителей). А после написания комментария, значения в рейтинге не изменяются вообще.
При этом не имеет значения был ли представитель организации привязан к какой-либо задаче до этого.
Подготовка теста:
Создать цикл мониторинга.
Добавить минимум 2 организации и хотя бы 1 параметр.
Создать задачи по этим организациям.
Оценить параметр/параметры. Закрыть и одобрить задачу.
Перевести цикл на этап "Взаимодействие".
Тест 1:
Аккаунт с правами Organization, у которого ранее были привязки к задачам в других циклах.
Взять код первой организации и в настройках аккаунта ввести код.
Перейти на главную страницу ЭКСМО и проверить, что представитель получил доступ к задаче цикла.
Под аккаунтом с правами ExpertsA (эксперта А):
Зайти в цикл мониторинга, меню "Рейтинг".
Ожидаемый правильный результат: в столбце "Пред." у указанной организации должно быть значение 1/0.
Полученный результат: в столбце "Пред." у указанной организации значение 0/1.
Тест 2:
Взять код второй одобренной организации в цикле.
Зарегистрировать нового пользователя, как представителя организации, указав при регистрации код второй организации в цикле.
Перейти на главную страницу ЭКСМО и проверить, что представитель получил доступ к задаче цикла.
Под аккаунтом с правами ExpertsA (эксперта А):
Зайти в цикл мониторинга, меню "Рейтинг".
Ожидаемый правильный результат: в столбце "Пред." у указанной организации должно быть значение 1/0.
Полученный результат: в столбце "Пред." у указанной организации значение 0/1.
Тест 3:
Под аккаунтом представителя организации (из теста 1 или 2), зайти в задачу и оставить хотя бы 1 комментарий.
Под аккаунтом с правами ExpertsA (эксперта А):
Зайти в цикл мониторинга, меню "Рейтинг".
Ожидаемый правильный результат: в столбце "Пред." у указанной организации должно быть значение 1/1.
Полученный результат: в столбце "Пред." у указанной организации значение 0/1.
BUG #1701 История назначения задач при массовом назначении

При массовом назначении задач первый эксперт, которому была назначена
задача, не записывается в историю.

Тест:
Под экспертом А зайти в цикл мониторинга
Перейти в пункт "Назначение задач"
Назначить нескольким экспертам задачи
Перейти в пункт "Задачи"
Зайти в каждую из назначенных задач, пункт "История"

Ожидаемый результат: в истории должна появиться запись о том, кому была
назначена задача.

Полученный результат: История пустая.
User Story #1686 Первичный КИД по выборке параметров.

Для выборки параметров, которая содержит не все параметры цикла, должна быть возможность вычислить первичное значение КИО.
Значения первичного КИО должны отображаться на странице рейтинга цикла мониторинга во всех видах рейтинга: по всем параметрам, по экспертным (согласованным) параметрам, по остальным параметарм, по пользовательской выборке параметров.
Стиль отображения - как в рейтинге по всем параметрам.
Столбец с первичным КИО должен быть на этапах "взаимодействие", "подведение итогов" и "опубликован".
User Story #1686 (fix) Первичный КИД по выборке параметров

При вычислении среднего значения первичной и итоговой открытости общее
количество задач, стоящее в знаменателе, неверно: в него входят также
задачи, имеющие кид none. На самом деле для расчета средних значений
открытостей в любом виде рейтинга (по всем параметрам, по нормативным, и
т.п.) должны использоваться только одобренные задачи, имеющие кид
отличный от None.
В особом случае, когда задач с существующим кидом нет вообще, рейтинг
падает.