A webapp/form for people to join pEp coop. Fork of Cultural Commons Collecting Society (C3S) SCE
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Arian Sanusi (p≡p Foundation) 7de7442d08
Merge branch 'c3s-master'
4 years ago
alembic Merge branch 'c3s-master' 4 years ago
c3smembership Merge branch 'c3s-master' 4 years ago
certificate remark about certificates folder 8 years ago
customization@3896c279f6 switch to pepcoop-customization 5 years ago
docs docs/development/setup_and_run: add missing package 5 years ago
import import the founders 8 years ago
membership_list_pdflatex Rename PDF membership list column 'Ant.' to 'Anteile'. 6 years ago
.gitignore Ignore Sublime Text settings. 5 years ago
.gitmodules switch to pepcoop-customization 5 years ago
CHANGES.rst Merge branch 'release/1.20.5' 4 years ago
CONTRIBUTORS.md Added list of contributors. 8 years ago
COPYRIGHT.rst Introduce design chapter with explanations and UML diagrams. 7 years ago
LICENSE.md Added copyright and license information for core application and redistributes works. 8 years ago
README.rst Add sentence in membership application form to clarify notice period 5 years ago
SqliteDecimal.py member col for member_type, fee 5 years ago
VERSION Set version number to 1.20.5 4 years ago
alembic.ini staffers can send out confirmation emails for signatures and payment 9 years ago
ci.sh bash safemode for ci.sh and i18n.sh 5 years ago
development.ini fix webdriver tests 7 years ago
i18n.sh bash safemode for ci.sh and i18n.sh 5 years ago
production.ini invitations for BarCamp and GeneralAssembly 2015 8 years ago
setup.cfg move localization to customization submodule 5 years ago
setup.py bump python-gnupg to 0.4.2 (current, unbreaks gpg > 2.13) 5 years ago
webdrivertest.ini fix webdriver tests 7 years ago


c3sMembership README

This Pyramid app handles membership for C3S SCE
(Cultural Commons Collecting Society SCE mit beschränkter Haftung.

The app that once started as a form to gain new members has
grown to a membership administration system catering to the needs of a
growing european cooperative (C3S SCE) with around 1000 members as of now.

Some features:

* Internationalisation (i18n)
* Membership information is persisted in a database.
* GnuPG encrypted mail with details submitted is sent to C3S staff.
* Once the email is verified, form submission data is used to populate a pdf with form fields
(using fdf and pdftk) and the resulting PDF is ready for download.
* Membership certificates (pdflatex)
* Membership Dues (pdflatex)


There is plenty of documentation under /docs, both in this repository
and in the running app (if you have sphinx compile the docs to HTML):

cd docs
make html

A compiled version of the documentation is available at:


Install dependencies:


$ sudo apt-get install python-pip python-dev python2.7-dev python-virtualenv libxml2-dev libxslt1-dev build-essential pdftk zlib1g-dev phantomjs


The .odt files for the membership application in pdftk require the font
Signika which can be downloaded at:

LaTeX pdf compilation:

$ sudo apt-get install texlive-latex-base texlive-latex-recommended texlive-latex-extra texlive-fonts-recommended texlive-fonts-extra pgf texlive-lang-german texlive-luatex


$ virtualenv env
$ env/bin/python setup.py develop

You might have to update the version of setuptools in your virtual environment
to get a recent version, then repeat the step above:
> mock requires setuptools>=17.1. Aborting installation
> error: Setup script exited with 1

$ env/bin/pip install -U setuptools


$ sudo apt-get install graphviz openjdk-7-jre-headless
$ mkdir utils
$ wget 'http://downloads.sourceforge.net/project/plantuml/plantuml.jar' -O utils/plantuml.jar
$ env/bin/pip install sphinx sphinxcontrib-plantuml

Creating an initial database:

$ env/bin/initialize_c3sMembership_db development.ini

Run (in development mode)


$ env/bin/pserve development.ini --reload

The app will rebuild templates and reload code whenever there are changes by
using --reload.

Migrate database if database model changed (changed models.py?)
$ cp c3sMembership.db c3sMembership.db.$(date "+%Y-%m-%d_%H-%M-%S")
$ env/bin/alembic upgrade head

see https://yes.c3s.cc/docs/development/changes_branches_releases.html#the-production-branch

Run (in production mode, daemon mode)

$ pserve production.ini start