Coder Social home page Coder Social logo

spf-uio / spbm Goto Github PK

View Code? Open in Web Editor NEW
5.0 1.0 4.0 1.07 MB

The Student Personnel Booking Manager, by and for the Student Cellar Pub Personnel Organsiation at the University of Oslo.

Python 64.62% Shell 5.17% CSS 1.23% JavaScript 0.27% Dockerfile 0.36% Jinja 28.36%
django payroll student-management invoicing booking spbm

spbm's Introduction

SPFs "SPBM"

Build Status coverage status Maintainability Code quality

Her er koden for Studentkjellernes personalforening sitt nåværende nettbaserte system for grovhåndtering av diverse utlån og leier av lokaler, studentansatte, fakturering av medlemsforeninger, samt lønnsrapportering for utbetaling av lønn.
This is the code for the Student basement pubs society current web-based system for roughly managing our various bookings and rentals of our collective premises, student employees, invoicing our member societies, as well as wage reporting to facilitate payroll.

For funksjonalitetsønsker, problemer, og spørsmål kan du opprette et issue her på GitHub.
For feature requests, problems, and questions, please create an issue here on GitHub.

Getting Started

You need Docker and Docker Compose to get started locally. You may use Docker on its own, but it'll require setting the containers up manually.

To get started with a Gunicorn-based development environment with live reloads use docker-compose:

$ docker-compose up

You'll get a local development environment with SPBM, NGINX and PostgreSQL (available at localhost:80).

If you'd rather use the built-in Django development server (at localhost:8000) you may do so.

$ docker-compose run spbm ./manage.py runserver 0.0.0.0:8000

Use docker-compose to perform other typical things while developing, such as migrating or loading.

$ docker-compose run spbm ./manage.py showmigrations --plan
$ docker-compose run spbm ./manage.py migrate
$ docker-compose run spbm ./manage.py loaddata User SpfUser Society Invoice Worker Employment Event NorlonnReport Shift
$ docker-compose run spbm ./manage.py ...

You may also use Poetry and a virtualenv for smoother development, but be careful and test your changes using the Docker container too to ensure that everything works the way it should.

Production

Make sure to override default environment variables for SPBM, and PostgreSQL if you're using Docker Compose.

$ docker-compose -f docker-compose.yml -f docker-compose.prod.yml up

Translations and i18n

  1. Make sure to add strings using ugettext and similarly, such as ugettext_lazy in models. For more information, see Django's own documentation on how to mark strings as localiseable.

  2. Once strings have been added in the code, extract and combine the strings into the locale's PO files:

    $ ./manage.py extract && ./manage.py merge

    This will extract all the localizable strings into locale/templates, followed by a merge with locale/xx_XX. Both extract and merge are provided by puente.
    Do not use Django's makemessages!

  3. Once you've translated the strings in locale/xx_XX/django.po, you'll want to compile the strings. You'll want to do this every time you're working locally and you want to see the changes.

    $ ./manage.py compilemessages

Contributing

Any help is much appreciated. Take a look at our issues in the issue tracker, and go crazy.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.