Online event coordination and survey application
Switch branches/tags
Nothing to show
Clone or download
Latest commit 4e0692f Aug 25, 2018
Permalink
Failed to load latest commit information.
locale new language templates Aug 25, 2018
.gitignore new maintenance-mode feature Apr 15, 2016
.htaccess better encoding solution May 17, 2016
License Copyright information adopted Jan 21, 2010
Makefile translation changes Aug 25, 2018
README.md fix typos Feb 16, 2017
about.cgi translation changes Aug 25, 2018
access_control.rb translation changes Aug 25, 2018
advanced.rb translation changes Aug 25, 2018
atom.rb translation changes Aug 25, 2018
authorization_required.cgi translation changes Aug 25, 2018
charset.rb translation changes Aug 25, 2018
check.cgi translation changes Aug 25, 2018
classic.css translation changes Aug 25, 2018
config_defaults.rb translation changes Aug 25, 2018
config_sample.rb translation changes Aug 25, 2018
customize.cgi implemented choose-css Nov 26, 2009
customize.rb translation changes Aug 25, 2018
date_locale.rb Change Eesti locale to et Oct 7, 2016
default.css translation changes Aug 25, 2018
delete_poll.rb translation changes Aug 25, 2018
dudle.rb translation changes Aug 25, 2018
dudle_cleanup.sh add a cleanup cronjob which deletes old polls Apr 14, 2016
edit_columns.rb translation changes Aug 25, 2018
error.cgi translation changes Aug 25, 2018
example.cgi translation changes Aug 25, 2018
favicon.ico favicon added Oct 20, 2008
hash.rb translation changes Aug 25, 2018
history.rb translation changes Aug 25, 2018
html.rb translation changes Aug 25, 2018
index.cgi translation changes Aug 25, 2018
invite_participants.rb translation changes Aug 25, 2018
log.rb translation changes Aug 25, 2018
maintenance.cgi translation changes Aug 25, 2018
not_found.cgi translation changes Aug 25, 2018
overview.rb translation changes Aug 25, 2018
participate.rb translation changes Aug 25, 2018
poll.rb translation changes Aug 25, 2018
pollhead.rb translation changes Aug 25, 2018
print.css translation changes Aug 25, 2018
timepollhead.rb translation changes Aug 25, 2018
timestring.rb translation changes Aug 25, 2018
vcs_git.rb translation changes Aug 25, 2018
vcs_test.rb translation changes Aug 25, 2018

README.md

Authors

  • Benjamin Kellermann
  • a lot of contributors of small code pieces

License

GNU AGPL v3 or higher (see file License)

Requirements

  • ruby >=1.9
  • git >=1.6.5
  • ruby-gettext (for localization)
  • gettext, potool, make (optional, if you want to generate localization files)

Installation

  1. Place this application into a directory where cgi-scripts are evaluated.

  2. If you want to change some configuration, state it in the file config.rb (see config_sample.rb for help) to start with a default configuration.

  3. The webserver needs the permission to write into the directory

  4. You need .mo files in order to use localisation. You have 2 possibilities:

    1. Run this small script to fetch the files from the main server:

      cd $DUDLE_INSTALLATION_PATH
      for i in locale/??; do
      	wget -O $i/dudle.mo https://dudle.inf.tu-dresden.de/locale/`basename $i`/dudle.mo
      done
    2. Build them on your own. This requires gettext, ruby-gettext, potool, and make to be installed.

      sudo aptitude install gettext potool make
      make
  5. In order to let access control work correctly, the webserver needs auth_digest support. It therefore may help to type:

    sudo a2enmod auth_digest
  6. In order to get atom-feed support you need ruby-ratom to be installed. E.g.:

    sudo aptitude install ruby-dev libxml2-dev zlib1g-dev
    sudo gem install ratom
  7. To make titles with umlauts working you need to check the encoding in .htaccess, e.g.

    SetEnv LC_ALL "en_US.UTF-8"
  8. It might be the case, that you have to set some additional Variables in your .htaccess:

    SetEnv GIT_AUTHOR_NAME="http user"
    SetEnv GIT_AUTHOR_EMAIL=foo@example.org
    SetEnv GIT_COMMITTER_NAME="$GIT_AUTHOR_NAME"
    SetEnv GIT_COMMITTER_EMAIL="$GIT_AUTHOR_EMAIL"
  9. If you installed dudle to a subdirectory (i.e. http://$YOUR_SERVER/$SOMEDIR/...), than you want to adopt the ErrorDocument directives in your .htaccess. (You need an absolute path here!)

  10. Try to open http://$YOUR_SERVER/check.cgi to check if your config seems to work.

  11. You may want to install a cronjob to cleanup dudle polls. See dudle_cleanup.sh for an example.

  12. You can enable a maintenance mode if you need to change something with your installation. Using this mode, all users will see a static message and are not able to change anything. In order to enable this mode, create a file named /maintenance.html which may include a custom message. E.g.:

    echo "<div>We are updating the servers and expect to be online on 0 am, January 1st, 1970 (UTC).</div>" > $DUDLE_INSTALLATION_PATH/maintenance.html

Docker image

There are two docker image available

Pimp your Installation

Translators

If you set $DUDLE_POEDIT_AUTO to your lang, poedit will launch automatically when building the application. E.g.:

export DUDLE_POEDIT_AUTO=fr
git pull
make # will launch poedit if new french strings are to be translated
  • To add a new translation
  • first add a new folder for your language under $DUDLE_HOME_FOLDER/locale,
  • copy the dudle.pot file into your folder and name it dudle.po
  • translate sentences and phrases in your dudle.po file
  • add an entry for your language in dudle/dudle.rb at line 245