Projekte/Einführung CiviCRM
CiviCRM ist eine auf Drupal aufbauende Software welche verschiedene Aspekte von gemeinnützigen Organisationen abdeckt:
- Verwaltung von Kontakten und Organsisationen samt Kontakthistorie
- Erstellung von personalisierten Mailings an Kontakte / Gruppen von Kontakten
- Verwaltung von Spenden inkl. Abwicklung der Zahlung und Verbuchung auf Bankkonten
- Verwaltung von Mitgliedschaften, analog zu Spenden
Einfach nur installiert ist das System nur bedingt einsatzfähig. Spendenseiten zum Einsammeln von Spenden oder Erfassung von Mitgliedschaften lassen sich zwar mit CiviCRM erzeugen, in der Praxis sind sie aber nicht flexibel konfigurierbar und die Vorgaben nicht den Anforderungen von Wikimedia entsprechend.
Wikimedia Schweden hat das System seit 2010 im Einsatz und mit eigenen Modulen erweitert, die mit der API von CiviCRM kommunizieren. Damit ist es möglich die CiviCRM zugrundeliegende Infrastruktur zu nutzen und trotzdem eigene Spenden- und Mitgliederformulare zu verwenden. Insbesondere die Verwendung von Spendenarten als Buchungskonten für alle Ein- und Ausgaben des Vereins ermöglicht es die gesamte Buchhaltung in CiviCRM zu erledigen - auch wenn dies eigentlich nicht vorgesehen ist.
Entwicklung
Der Quellcode der eigenen Module steht unter GPL im Subversion von Wikimedia zur Verfügung:
Holger von Wikimedia Schweden und Manuel von Wikimedia Österreich haben gemeinsam die bestehenden Module von Wikimedia Schweden auf CiviCRM 4 (Drupal 7) portiert und so erweitert, dass sie auch ausserhalb von Schweden universell eingesetzt werden können.
Eigene Module
Basismodul
wmse_base
Beschreibung
Beinhaltet allgemeine Funktionen zur Zahlungsabwicklung. Es gibt eine Schnittstelle zu selbstgebauten Zahlungsmodulen. Derzeit funktionieren Payson (Wikimedia Schweden), Lastschriften und Überweisungen.
Todo
Spenden
wmse_donate
Parameter
- individuelle Parameter werden von Zahlungsmodulen eingebunden
Beschreibung
Das Spendenmodul zeigt ein allgemeines Spendenformular und erfasst Spenden. Diese werden direkt verbucht. Über das Basismodul können die Spenden online bezahlt werden, bei positiver Rückmeldung werden die zugehörigen Buchungen als erledigt markiert.
Todo
- Paypal Zahlungsmodul
- Export Lastschriften nach ELBA
- wiederkehrende Spenden
Mitgliedschaftsanmeldung
wmse_membership
Parameter
Beschreibung
Zeigt ein Formular zur Mitgliedschaftsanmeldung. Legt automatisch auch den passenden Mitgliedsbeitrag an und ermöglicht die Zahlung des Beitrags über die Zahlmodule im Basismodul. Entsprechend wird bei erfolgter Bezahlung diese verbucht.
Über einen personalisierten Link können Mitglieder ihre Mitgliedschaft aufrufen und verlängern, dh. die es wird eine neue Buchung zum Mitgliedsbeitrag angelegt welche online beglichen werden kann.
Todo
MediaWiki-Parser
wmse_mediawikiparser
Parameter
- URL zu einer MediaWiki-API
Beschreibung
Stellt einen neuen Content-Type in Drupal zur Verfügung. Inhalte von diesem Content-Type werden durch die MediaWiki-API geparst, der von der API erstellte HTML-Quellcode wird in die Ausgabe der Drupalseite einbunden. Das erlaubt es ua. auch Vorlagen aus dem angebundenen MediaWiki zu verwenden oder dort vorhandenen Bilder einzubinden - auch von externen Bildarchiven, bspw. Wikimedia Commons, wenn dies im Wiki konfiguriert wurde.
TODO
- erledigt, funktioniert
Verwenden wir in Kombination mit dem Mitglieder-Wiki um einige Inhalte nur einmal pflegen zu müssen. Inhalte, die im Wiki vorhanden sind wie Statuten, Impressum oder aktuelle Projekte werden so per Vorlageneinbindung in der Drupal-Webseite angezeigt.
Arbeitsplan Hackfest 7. - 10. Oktober
Folgende Abläufe sollen am Ende des Hackfest funktionieren:
Mitglieder
- Registrierung eines Mitglieds - Status als neu, Benachrichtigung an Vorstand
- halb-manueller Versand einer Willkommensmeldung setzt Status? (Vorlage erstellen, Ablauf definieren)
- Versand von Mitgliedschaftserneuerungsmails (Link mit Hash)
- Rundmail an alle Mitglieder funktioniert (Vorlage erstellen)
Spenden
- Spenden müssen als "neu" erfasst werden
- Weiterleitung an Paypal muss funktionieren
- Rückmeldung von Paypal setzt Status als "erledigt" oder "fehlgeschlagen"
- Lastschriften werden in ELBA-Datei exportiert
- Import von Transaktionen via ELBA setzt Status als "erledigt" oder "fehlgeschlagen"
- Weiterleitung an Paypal muss funktionieren
Berichte
- alten Fundraisingbericht anpassen so dass er läuft
- Budgetübersicht
Arbeitsplan 21.12.2011
A
sehr wichtig bzw. sehr schnell zu machen
- done F Transfer Spenden nach Elba
- 2 Fehlermeldungen bei Klicken auf Tasks
- Die Direct Debit open Tasks listet auch Spenden mit anderen Zahlungsweisen auf
- Lösung: Code durchsehen und checken warum die Filterung nicht funktioniert
- Holger Direct Debit alle Contributions auflisten die zu einem EDIFACT Batch gehören (batch_id in generate_dirdeb_edifact)
- Lösung über Option Feld mit der batch id als prefix + aktuellen timestamp
- Zusätzlich die trnx_id auf batch_id + contribution id setzen (muss eindeutig sein)
- Funktionalität um alle diese Contributions als bezahlt zu markieren mit liste und checkboxen
- Bank Einzugsermächtigung erteilt Feld wird nicht gesetzt (schein null zu sein)
- Das ist ein Bug im donations modul
- F Direct Debit Export ist leer
- Keine Fehlermeldung, die Datei hat 0 bytes
- done F Ein "Abbrechen" Button für die Direct Debit Liste, nachdem etwas exportiert wurde
Holger:
Fehlermeldung beim absenden von regelmässigen spenden:PDOException: in locale() (Zeile 703 von /var/www/localhost/htdocs/u00044/www/modules/locale/locale.module).nur ein cache-Problem.
- Mitglied werden:
- Layout (Zweispaltigkeit) kaputt
- Land kann nicht ausgewählt werden
- Datumsformat Geburtsdatum - kann das geändert werden oder ein Kalender zum Auswählen eingeblendet werden?
B
kompliziertere, nicht ganz so wichtige Dinge
- http://www.wikimedia.at/wmse/tasksPaypal Spenden die komplett sind, werden nicht unbedingt als komplett im CiviCRM markiert
- Grund: Falls die Zahlung bei PayPal abgeschlossen wurde, dann aber der Benutzer nicht gewartet hat bis er zurück auf unserer Seite war
- Lösung A: Button um nochmal bei PayPal zu prüfen ob die Zahlung abgeschlossen ist
- Lösung B: Instant Payment Notifications implementieren
Holger:
- Warning: Missing argument 1 for wmse_tasks_thankyou_list_generate(), called in /var/www/localhost/htdocs/u00044/www/sites/all/modules/wmse_tasks/inc/wmse_tasks_thankyou.php on line 18 and defined in wmse_tasks_thankyou_list_generate() (Zeile 50 von /var/www/localhost/htdocs/u00044/www/sites/all/modules/wmse_tasks/inc/wmse_tasks_thankyou.php).
- Warning: Missing argument 2 for wmse_tasks_thankyou_list_generate(), called in /var/www/localhost/htdocs/u00044/www/sites/all/modules/wmse_tasks/inc/wmse_tasks_thankyou.php on line 18 and defined in wmse_tasks_thankyou_list_generate() (Zeile 50 von /var/www/localhost/htdocs/u00044/www/sites/all/modules/wmse_tasks/inc/wmse_tasks_thankyou.php).
- Warning: array_keys() expects parameter 1 to be array, null given in wmse_tasks_contributions_action_needed() (Zeile 6 von /var/www/localhost/htdocs/u00044/www/sites/all/modules/wmse_tasks/inc/wmse_tasks_contributions_action_needed.php).
Warning: array_pop() expects parameter 1 to be array, null given in wmse_tasks_contributions_action_needed() (Zeile 6 von /var/www/localhost/htdocs/u00044/www/sites/all/modules/wmse_tasks/inc/wmse_tasks_contributions_action_needed.php).
Members Modul:
* Holger: default Land - Österreich
* Holger: letzte Zeile des 3. häkchens: Newsletter erhalten entfernen (Text) [Holger zugewiesen]
- Legenden und Text kollidieren
* Holger: New-Member - Wie im Donations Formular, sollte der Inhalt aller <fieldset> tags (abgesehen von <label>) in folgendes div gewrappt sein. Dann stimmt der Abstand zw dem grauen fieldset label und dem Rest. Keine Ahnung warum die form von drupal anders generiert wird.
<div class="fieldset-wrapper">
2. Seite
* Kommentar nicht rechts
* Holger: Kein Abstand zwischen Angaben (Geb-Datum, Nickname, ..)
- Unter "Dein Mitgliedsbeitrag" - Betrag raus
3. Seite:
* Holger: Warning: Invalid argument supplied for foreach() in wmse_membership_form_step3() (Zeile 23 von/var/www/localhost/htdocs/u00044/www/sites/all/modules/wmse_membership/inc/wmse_membership_form_step3.php).
** Holger: Membership Status - Konfigurierbar machen
Holger:
- Warning: call_user_func() expects parameter 1 to be a valid callback, function 'wmse_base_payment__validate' not found or invalid function name in wmse_membership_form_validate_step2() (Zeile 384 von /var/www/localhost/htdocs/u00044/www/sites/all/modules/wmse_membership/inc/wmse_membership_form_step2.php).
Array ( [version] => 3 [check_permissions] => [contact_id] => 324 [group_id] => 9 ) Array ( [is_error] => 0 [version] => 3 [count] => 3 [values] => Array ( [not_added] => 0 [added] => 1 [total_count] => 1 ) ) redirecting...
C
in sich abgeschlossene, grössere Projekte Neue Features
- Recurring Spenden
- Muss im Hintergrund neue 'normale' Contributions erstellen
- Button für alle mntl. Spenden in ELBA exportiern
- Button für alle jährl. Spenden in ELBA exportiern
- Implementation
- API Funktion für recurring contributions direct in den civicrm core
- CRON Job der aus recurring contributions regelmäßig normale contributions erstellen
- Migration: Alle normalen contributions die die option group recurring gesetzt haben in recurring contributions konvertieren
- letzter Spenderkommentar mit Text statt Bild (wie jetzt) mit definierter Zeichenanzahl, Link weiterführend auf last-donations-modul