Update README.md

master
Kristof Zerbe 9 years ago
parent 723ba42420
commit 88e9e81cc8
  1. 119
      README.md

@ -1,2 +1,121 @@
# OpenAntrag # OpenAntrag
Quellcode der Website openantrag.de Quellcode der Website openantrag.de
Über das Portal OpenAntrag können Bürger über Fraktionen oder Einzelabgeordnete der Piratenpartei ihre Ideen und Wünsche einbringen.
Das Portal ist realisiert für:
Deutschland (openantrag.de. open-antrag.de)
Das Projekt wurde mit ASP.NET MVC umgesetzt. Als Datenbank kommt RavenDB zum Einsatz.
Um das Projekt lauffähig zu bekommen sind weitere Komponenten bzw. Dateien notwendig:
# RavenDB #
Als Backend kommt die NoSQL-Datenbank **RavenDB** zum Einsatz. Alle Objekte werden automatisch persistiert. Nach Installation von RavenDB und Anlegen einer 'OpenAntrag'-Datenbank ist lediglich die Anlage eines fixen Dokuments notwendig:
ProposalTags-1
{
"Items": [],
"CreatedAt": null,
"CreatedBy": null,
"Timestamp": 0
}
Dieses Dokument nimmt alle verfügbaren Themen (Schlagworte) auf und verknüpft sie mit den Anträgen (Proposals).
# Dateien #
## web.config ##
Nicht im Source-Code enthalten ist die web.config des Projekts, da sie in den AppSettings Logins und API-Keys enthält. Muster
## Roles.xml / Users.xml ##
Die Authentifizierung basiert auf den ASP.NET Xml Security Providers. Hierzu werden im Ordner \App_Data diese beiden XML-Dateien benötigt.
representation.xml
Alle verfügbaren Parlamente werden in dieser Datei unter \App_Data angelegt, die folgende Struktur hat:
<?xml version="1.0" encoding="utf-8" ?>
<representations>
<item id="999" key="testparlament" status="0" api-key="..."
label="Test" color="#999"
name="Test-Parlament" name2="Parlament (Test)"
level="4" federal="" map-url=""
group-type="1" group-name="Test"
link=""
phone="" twitter=""
mail="test@mail.de"
info-mail="test@mail.de">
<representatives>
<item id="1" key="hans-mustermann" name="Hans Mustermann"
mail="" phone="" twitter=""
twitter=""
party="Piratenpartei" />
</representatives>
<committees>
<item id="" key="" caption="" name="" url=""></item>
</committees>
<process>
<step id="1" def="eingang"
caption="Eingang des Antrags"
short-caption="Antragseingang">
<next>
<step id="2" />
</next>
</step>
<step id="2" def="pruefung"
caption="Antrag in Prüfung"
short-caption="Antrag in Prüfung">
<next>
<step id="3" />
</next>
</step>
...
<step id="..." def="erledigt" success-story="true"
caption="Antrag erledigt"
short-caption="Antrag erledigt">
<next />
</step>
</process>
</item>
</representations>
|Feld|Bedeutung|
|---|---|
|`item.id`|eindeutige fortlaufende Nummer des Parlaments|
|`item.key`|eindeutiger Schlüssel für das Parlament|
|`item.label`|Name der Region (Stadt, Kreis, Land)|
|`item.color`|individueller Farb-Code|
|`item.name`|Name des Parlaments|
|`item.name2`|Name des Parlaments mit vorangestelltem Namen der Region|
|`item.level`|Regierungsebene (Schlüssel auf GovernmentalLevels.xml)|
|`item.federal`|Bundesland (Schlüssel auf FederalStates.xml)|
|`item.map-url`|Link über http://geojson.io (Daten aus piratenmandate-frontend)|
|`item.group-type`|Gruppentyp (Schlüssel auf GroupTypes.xml)|
|`item.group-name`|Gruppenname|
|`item.link`|Website-Link der Gruppe|
|`item.phone`|Telefonnummer der Gruppe|
|`item.mail`|Mail-Adresse der Gruppe|
|`item.info-mail`|Info-Mail-Adresse der Gruppe (Versand der Benachrichtigungen)|
|`item.representatives.id`|eindeutige fortlaufende Nummer des Mandatsträgers innerhalb des Parlaments|
|`item.representatives.key`|eindeutiger Schlüssel für den Mandatsträger innerhalb des Parlaments|
|`item.representatives.name`|Name des Mandatsträgers|
|`item.representatives.mail`|Mail-Adresse des Mandatsträgers|
|`item.representatives.phone`|Telefonnummer des Mandatsträgers|
|`item.representatives.twitter`|Twitter-Account des Mandatsträgers|
|`item.representatives.party`|Partei des Mandatsträgers|
|`item.committees.id`|eindeutige fortlaufende Nummer des Ausschusses innerhalb des Parlaments|
|`item.committees.key`|eindeutiger Schlüssel für den Ausschuss innerhalb des Parlaments|
|`item.committees.caption`|Kurzname des Ausschusses|
|`item.committees.name`|vollständiger Name des Ausschusses|
|`item.committees.url`|Link zum Ausschuss (Ratssystem)|
|`item.process.step.id`|eindeutige fortlaufende Nummer des Antragsschritts innerhalb des Parlaments|
|`item.process.step.def`|Definion des Antragsschritts (Schlüssel auf ProcessStepDefinitions.xml)|
|`item.process.step.caption`|Kurzname des Antragsschritts (überschreibt den Kurznamen aus der Definition)|
|`item.process.step.short-caption`|Name des Antragsschritts (überschreibt den Namen aus der Definition)|

Loading…
Cancel
Save