-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathREADME.t2t
98 lines (68 loc) · 11.1 KB
/
README.t2t
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
Проект Вече
= 0. Как работать с документом =
Для написания этого текста используется формат [txt2tags http://txt2tags.org/], Который представляет из себя простой текст с минимальным форматированием. Для обозначения различных способов форматировния используется один из общепринятых способов обозначения форматировани: двойной подчерк - для обозначения подчёриквания, двойная косая черта для наклонного шрифта, двойная звёздочка - для жирного и так далее. Полное описание формата на русском языке можно посмотреть [здесь http://txt2tags.org/ru/markup-ru.html]. К сожалению, на эту страницу нет ссылки с основного сайт. Или она очень хорошо закопана.
Для преобразования исходного документа в другие форматы (простой текст, HTML, PDF и другие) используется программа на языке Python - [txt2tags http://txt2tags.org/download.html]. Практически во всех дистрибутивах Linux и дригих *nix интерпретатор этого языка уже установлен, да и сама эта программа может присутствовать в репозитарии, а пользователям Windows нужно будет скачать и установить интерпретатор. Например, с [официального сайта http://python.org/download/] разработчиков этого языка или бесплатную коммерческую версию [ActivePython http://www.activestate.com/activepython/downloads] с сайта ActiveState. Возможно, есть ещё какие-то, но я не искал - мне как-то без надобности.
Основным является документ README.t2t, остальные сохраняются только для удобства чтения. Для преобразования документа сразу во все форматы, сохраняемые в репозитарий, используется скрипт //makedoc//. Желающие могут добавть и другие варианты.
Обсуждение ведётся в рассылке [email protected] (подписаться можно [здесь https://groups.google.com/group/veche]) и в ЖЖ автора проекта по тэгу [veche http://taris-marh.livejournal.com/tag/veche].
= 1. Цели =
Целью проекта является создание и поддержка площадки для общественного контроля над муниципальными структурами управления. На первом этапе предполагается создание возможности для отслеживания общественных слущаний, информация о которых усиленно закапывается в глубины сайта городской администрации вместо вывешивания на главной странице или на специальной странице, на которую ведёт ссылка с главной странице. Собственно, функцию это специальной страницы я и попытаюсь реализовать.
= 2. Задачи =
+ Публикация тем общественных слушаний (и вообще любых подобных проблем), полной сопутствующей информации (зеркалирование на сайт документов, аудио и видеозаписей), публикация новостей по слушаниям.
+ Хранение истории изменений всех относящихся к теме документов, чтобы можно было отслеживать телодвижения заинтересованных сторон.
+ Обеспечение возможности общения по заявленным слушаниям. Высказывания на сайте должно быть возможно с использованием OpenID.
+ Уведомления о новых собитиях.
+ Срочные уведомления в случае неожиданных изменений.
+ Предоставлять возможность голосования по проблеме. Желательно даже, чтобы оно имело какую-то юридически признанную форму, принимаемую к рассмотрению. То есть голосование поимённое, никаких безликих студентов, никаких выдуманных персонажей, только настоящие граждане, проживающие в городе. Город должен знать своих героев. Для голосования OpenID недостаточно, должна быть процедура однозначной идентификации личности. Фотография морды лица и развёрнутый паспорт в одном кадре? И привязка при голосовании к паспорту. Город же должен знать своих героев.
= 3. Концепция хранения данных =
Основными объектами хранения являются:
- тема (слушание);
- документ, относящийся к теме;
- история документа;
- комментарии к документу;
- комментарии к теме ;
- результаты голосования по теме;
- история результатов голосования.
Вероятно, стоит сделать тему слушания разновидностью документа, не имеющего оригинала. Документ хранится одновременно в формате (X)HTML или txt2tags и в исходном формате (чаще всего, это doc/docx/rtf). Преобразование исходного документа в человекочитаемый формат произодится полностью автоматически, чтобы можно было иметь однозначные читаемые различия между версиями документа.
Каждый документ является заглавным сообщением темы обсуждения, таким образом получается что-то среднее между блогом и форумом. Каким-то образом надо срастить эту систему с форумом, чтобы можно было обсуждать и технические вопросы, не привязанные к конкретным темам.
Предлагаемая структура базы данных в том, что касается документов:
+ **Тема** - вопрос выставленный на слушание
+ ID вопроса
+ заголовок вопроса
+ текст вопроса (t2t)
+
+ **Документ**. Содержит:
+ представление документа для непосредственного отображение, чтения, сравнения (txt, html, txt2tags, что-то ещё?)
+ ссылку на оригинал/сам документ в бинарном поле BLOB (пока неясно, как будет удобнее)
+ ссылку родительский документ (тему)
+ служебную информацию
+
+ **Сообщение** (комментарии, высказывания) по документу
+ ссылка на родительский документ
+ ссылка на родительское сообщение (//опционально//, только если предусматривать древовидную структуру комментариев)
+ текст сообщения
+
+ **История документа**
+ номер версии
+ ссылка на последнюю версию документа (id)
+ читаемое представление версии документа
+ ссылка на версию документа (версия документа в исходном виде в BLOB)
+
= 4. Пользовательский интерфейс =
== Главная страница ==
На главной странице отображаются темы, с самыми поздними изменениями и новости. При внесении изменения в тему, комментарий к этому изменению автоматически отображается в виде новости (из него формируется новость). Так же там должны отображаться:
+ календарь;
+ поисковая форма;
+ рубрикатор;
+ ссылка на RSS/Atom агрегатор;
+ формы для подписки на рассылки по почте и SMS.
Тема состоит из заголовка, текстового описания ()
== Страница темы ==
+ заголовок темы;
+ краткое описание темы;
+ список основных документов;
+ ссылка на полный список документов, если их много;
+ последние события по теме (в том же формате, что и новости на главной, по сути, это те же новости, только выборочно, по теме);
+ последние комментарии по теме;
+
== Страница документа ==
Возможно в двух вариантах: документ в HTML + ссылка на сохранённый оригинал + ссылка на оригинальный документ на исходном месте или крактое описание документа и ссылки на HTML, оригинал, оригинал в исходном месте. Ссылка на оригинал в исходном месте в обоих случаях сопровождается статусом доступоности и изменений. Ссылка на сохранённый оригинал сопровождается номером версии, являющимся ссылкой на систему контроля версий.