Online-Mitgliedsantrag

50px Dieser Artikel ist veraltet. Es wird geprüft, ob er gelöscht oder aber aktualisiert wird. Du kannst den Artikel aber auch auf den neuesten Stand bringen oder archivieren.

Dieser Artikel ist seit 4294 Tagen ohne Bearbeitung.archivieren

Der Online-Mitgliedsantrag ist ein Partei-internes Software-Projekt: Es wird ein Web-Formular und Skript geschrieben, womit Interessenten per Web einen Mitgliedsantrag stellen können.

- STATUS: Ausgesetzt - siehe Online-Mitgliedsantrag#Status -

Zu dieser Wiki-Seite: Sie wird von dem Koordinator (s.u.) gepflegt - Antworten / Ergänzungen bitte stets absetzen und signieren. Eine echte Diskussion, die über technische Fragen hinaus geht, kann ggf. auf der Diskussion-Seite geführt werden.

Anforderungen

  1. Dateneingabemaske nur über ssl aufrufbar
    Richtig, auf welchem Server geht das?
    Auf jedem, CA-Cert-ssl-Zertifikat kann ich jederzeit für diesen Dienst erstellen. --Jamasi
    Dann kommt aber eine Warnung ...
    => Diskussionsseite
    Welche Umgebung läuft da (PHP-Version; auch MySQL oder gar PostgreSQL wäre fein)? Wer ist der Ansprechpartner für mich (Admin)? Bernd
    Im Zweifelsfalle, das, was man eben braucht. --Jamasi
  2. Versenden der Formulardaten per gecrpyteter E-Mail
    Aus dem PHP-Skript? .. Hmm, da wäre eine kleine DB wohl die einfachere Lösung.
    Warum nicht aus dem PHP? An die Mail hängt man dann noch ein ebenfalls gecpytetes "UPDATE-Statement" für die (offline-)DB beim GenSek an. --> Keine Daten auf dem Server gespeichert. --Jamasi
    Einige (fast alle?) LVs wickeln die Mitgliedsanträge über sich ab. Ziel dieser Onlinelösung ist ja auch einen besseren Kontakt zwischen lokalen Gruppen und dem Neumitglied zu schaffen. Wäre es daher nicht sinnvoller die Daten gleich an den LV oder Kreisverband zu schicken? Brg
    Frage wird durch die Satzung geklärt, siehe unten. Bernd
  3. Generierung eines ausdruckbaren Antrag (direkt im Browser oder besser ein PDF)
    Ok, gibts auf dem Server denn eine PDFlib - oder eine andere (freie) PDF-Lösung für PHP?
    Gibt es, und kann/sollte man dann installieren. --Jamasi
  4. Das Bundesland soll in einer Drop-Down-Liste ausgewählt werden.
    Der E-Mail-Empfänger ist abhängig vom ausgewählten Bundesland.
    Unzureichend, da nach Satzung § 3 Abs. 2 die Befugnis für Aufnahme bei der niedrigsten Gliederung liegt, nicht zwingend dem LV. Flaschenhals würde anschließend nur eine Ebene tiefer liegen. Alternative: verwaltende Infrastruktur, die den Antrag möglichst automatisch an die entsprechende Stelle zur weiteren Bearbeitung sendet --B.pwned 20:26, 19. Feb. 2008 (CET)
    Überall, wo "LV" steht, könnte auch "Landes/Regionalverband stehen". Wenn ein Regionalverband gegründet wurde, dann kann dieser IMHO auch die Neumitglieder aufnehmen, oder er delegiert das an den Landes-Gensek. Vielleicht ist eine Tabelle mit Radio-Buttons bei vielen LV/RV übersichtlicher. => Weitere Diskussion erstmal unten bei "offene Fragen". Bernd

Ressourcen

Erledigte Fragen

  • Wie ist der 'Workflow' zu den Landes/regionalverbänden (auch unter Datenschutz-Aspekten, Datenvermeidung / -minimierung)?:
    1. Sollen diese a) ebenfalls eine (zweite) Email von dem Skript bekommen oder b) von dem Gensek, vielleicht auch erst, wenn der unterschriebene Antrag eingeht?
      • wie schon in der mailingliste erwaehnt wurde, ist laut satzung die niedrigste parteigliederung fuer den erwerb der mitgliedschaft zustaendig. die daten muessen also nur an die niedrigste parteigliederung. der bundesgeneralsekraeter bekommt dann die daten, wenn das mitglied aufgenommen wurde. -- mauk 15:08, 19. Feb. 2008 (CET)
        • Gut, so sei es - an Jamasi: Welche Voraussetzungen bestehen auf Seite der empfangenden Länder-Verantwortlichen zum Empfang der verschlüsselten Emails? Wir sollten da ein FAQ aufsetzen, denn nicht jeder Landes-Sek ist ein Nerd ... Bernd
          • Mit Thunderbird+Enigmail+gpg ist das ganze recht einfach zu bedienen, passende Anleitungen (die wir evtl. noch aufbereiten könnten) gibt es im Netz. von den Jeweiligen Verantwortlichen muß dem Script nur jeweils der Public-Key und die E-Mail-Adresse bekannt sein. --Jamasi
        • Auch die Bandverbindung kann vom Lokalverband abhängig gemacht werden. Bernd
    2. Wie benennen die LVs einen für Mitgliederfragen Zuständigen, an dessen Email dann diese Daten gehen?
      • für Mitgliederdaten ist doch der jeweilige Generalsekretär zuständig. -- mauk
        • In Berlin zB gibt es nur "Vorstand" und keinen Landes-Gensek. Also, auch wegen der technischen Fragen, das müssen wir mit den einzelnen LVs klären. Bernd
  • Wollen wir nur Mitglieder haben, die eine Email haben?
    • nein. wir wissen sowieso nicht, wo die e-mails landen. -- mauk 15:08, 19. Feb. 2008 (CET)
      • Im Mitgliedantrag.pdf steht jetzt jedoch: "Ein funktionierendes E-Mail-Konto ist .. unerlässlich." => Diskussionsseite
        • => Aktive-Diskussion: Eine Email-Adresse ist nicht notwendig, um Pirat zu werden. Bernd

Bastian schlug vor, auf eine Datenbank zu verzichten. Damit stellen sich zwei Fragen (die sonst mit einer DB gelöst würden):

  • Wie bzw. wer trägt die Daten (Bankverbindung, Email) aus den LVs in das Skript (oder include-Datei) ein?
    Mitglieder des Bundesvorstandes. Aber vielleicht hat sich die Auswahl erledigt, da bei der letzten Vorstandssitzung (26.02.) überwiegend gegen eine Auswahl und für ein Formular mit einer Adresse (die der Geschäftsstelle).
    Die Satzung ist doch in diesem Punkt eindeutig, siehe oben: "niedrigste parteigliederung fuer den erwerb der mitgliedschaft zustaendig". Für den LV Berlin kann ich nur ausdrücken, dass wir diese Vorgabe auch umgesetzt haben wollen; und ich werde andere LVs danach fragen. Sorry ... Bernd
  • Wie wird der aktuelle Stand der Id ermittelt oder synchronisiert (ein Webserver ist ja ein Multiuser-System...)?
    Mmmhh, da kenn ich mich Programmiertechnisch nicht so aus, vielleicht kann man z.B. IDs in 10er Schritten generieren oder man baut eine Pause mit ein, bei der ein Timer angezeigt wird so was ähnliches. (Bastian)
    Man braucht jedenfalls eine zentrale Stelle, an der mehrere ggf. parallel laufende Web-Prozesse nachsehen, was die letzte ID war und die neue dort ablegen. Wer dafür keine DB will, möge bitte die Alternative nennen - eine Datei zB? Bernd
    Man braucht nicht zwingend eine zentrale Stelle um eindeutige IDs zu erzeugen. z.B. (mit Datum gesalzener) Hash über Namen+Geburtsdatum oder andere Felder des Formulars. --Jamasi 03:46, 2. Mär. 2008 (CET)
    Ein Hash als ID? - Das ist von der Handhabung etwas umständlich (Überweisung, Abgleich), und dann als Mitgliedsnummer auch nicht tauglich. Jetzt sind wir IMHO nicht mehr an dem Punkt zu erklären, warum jemand "unbedingt eine Datenbank" haben wolle, sondern warum man die unbedingt vermeiden müsse. - Also, einmal CREATE SEQUENCE und dann ein SELECT nevtval() ist simpel und löst alle Probleme. Wenn da jetzt keine profunden Gegenargumente kommen ... Bernd
  • Vielleicht kann man ja noch ein Captcha mit einbauen, so das SPAMs verhindert werden. (Bastian)
    • Eine Plausibilitätsprüfung (PLZ, Email, Name etc) würde man ja machen; aber da ohnehin nichts veröffentlicht wird (anders als in einem Forum o.ä.), sähe ich für Spambots wenig Nutzen. Bernd

Funktion

  1. Einstiegsseite: Hier wird nur der Landes-/Regionalverband ausgewählt, dazu Hinweise, a) welche Bedeutung die Auswahl dieses Verbandes hat, d.h. die Struktur der Basisorganisation und b) dass und wo man auch anders Mitglied werden kann (bei Treffen, bei Veranstaltungen, per PDF mit Brief / Fax). Der LV wird per POST-Variable an die Formularseite übergeben.
    UPDATE: Übergabe per GET, damit ein LV direkt einen Link auf seine Seite setzen kann, etwa: ../pp_antrag.php?LV=HH
  2. Formularseite: Der Aufruf erfolgt aus der Einstiegsseite oder via Links der LVs, in beiden Fällen wird der LV/RV per POST-Variable übernommen. Über dem Formular steht "Ja, ich will Pirat werden!" und ein Link auf die Satzung, dann sind Name und Adresse sowie Email (kein Muss) einzutragen, dann <Submit>.
  3. Verarbeitung: Das Skript ermittelt 1. die Antrags-ID aus der DB-Sequence (die evt. zur Mitgliedsnummer wird) und dann 2. aus dem LV/RV und einer internen Tabelle (include-Datei zB), den a) Email-Empfänger und die b) Bankverbindung. Eine verschlüsselte Email mit Name, Adresse, Email und Antrags-ID wird an den LV-Empfänger gesandt, eine Kopie an den GenSek. Außerdem erzeugt das Skript:
  4. Bestätigungsseite: Zur Bestätigung des empfangenen Antrags werden die Daten sowie die Antrags-ID noch einmal ausgegeben und der Mitgliedsantrag bestätigt (kann ausgedruckt werden und dient ggf. als vorläufiger Mitgliedsausweis). Außerdem steht hier nun die Aufforderung, den ersten Mitgliedsbeitrag zu überweisen, dazu die (oben ermittelte) Bankverbindung. Hinweis dazu etwa: "Wir bitten um Verständnis für diese Regelung, da uns dadurch viel Verwaltungsarbeit gespart wird. Spätere Zahlungen können auch per Abbuchung oder ggf. in bar erfolgen."
  5. Weiterverarbeitung (also nicht mit diesem Skript): Der GenSek prüft regelmäßig (zB alle 2 Wochen) anhand der ID, ob zu den Formular(-Email-)Anträgen auch die Zahlungen eingegangen sind - und fragt andernfalls per Email beim LV oder (falls der LV nicht selbst verwaltet) beim Antragsteller nach.

Termin

Das Formular / Skript soll getestet, abgenommen und nutzbar sein bis:

  • 15. März 2008 => verlängert um 14 Tage: 29. März

Status

  • Startschuss vom Bundesvorstand - erteilt (Bastian 18.2.)
  • Anforderungenanalyse - erledigt
  • Weitere Schritte sind von der Server-Umgebung für die Test-Installation abhängig. Hier warten wir auf die Identifikation eines zuständigen Admins und Servers seitens des Vorstands.
    Bis dahin habe ich, per Email an Bastian, die Arbeit an dem Projekt ausgesetzt. Bernd 12:47, 20. Mär. 2008 (CET)

Organisation

Folgende Arbeiten sind zu tun - Verantwortlichen bitte mit Signatur dahinter setzen:

  1. Serverumgebung:
    • Postgresql DB anlegen / hinzufügen, dort CREATE SEQUENCE und Rechtevergabe
    • Pfad / Zugriff für a) Test- und b) Produktivumgebung einrichten
    • SSL-Cert a) beantragen und b) einrichten
  2. Anwendung:
    • Formular Programmieren (siehe oben "Funktion")
    • Test (Betatester)
    • Freigabe
    • Bekanntmachung / Einrichtung von Links auf den LV-Sites etc.
  3. Organisatorisches:
    • Ansprechpartner (Email) und Bankverbindung erfragen, wo LV/RVs eigene Abwicklung betreiben
    • PGP-Schlüssel für Email-Versand mit diesem klären