Giter Site home page Giter Site logo

hitobito_skv's Introduction

hitobito logo

Welcome to Hitobito 人人

Hitobito is an open source web application to manage organisation and communities with complex group hierarchies with members, events, courses, mailings, communication and a lot more.

Maintenance Documentation Status GitHub Open Source Helpers Rails Lint and Test

User Guide

A generic user guide in German is available.

Development

Check out our development kit

More detailed development documentation can be found in doc/development.

This is where you also find some Deployment Instructions.

More information about interfaces, api, oauth and oidc is also avaible.

Architecture

The architecture documentation in German can be found in doc/architecture.

Two topics shall be mentioned here explicitly:

Group Hierarchy

Hitobito provides a powerful meta-model to describe group structures. Groups are always of a specific type and are arranged in a tree. Each group type may have several different role types.

This core part of Hitobito does not provide any specific group or role types. They have to be defined in a separate plugin, specific to your organization structure.

An example group type definition might look like this:

class Group::Layer < Group
  self.layer = true

  children Group::Layer, Group::Board, Group::Basic

  class Role < Leader
    self.permissions = [:layer_full, :contact_data]
  end


  class Member < Role
    self.permissions = [:group_read]
  end

  roles Leader, Member
end

A group type always inherits from the class Group. It may be a layer, which defines a set of groups that are in a common permission range. All subgroups of a layer group belong to this range unless a subgroup is a layer itself.

Then all possible child types of the group are listed. When creating subgroups, only these types will be allowed. As shown, types may be organized recursively.

For the ease of maintainability, role types may be defined directly in the group type. Each role type has a set of permissions. They are general indications of what and where. All specific abilities of a user are derived from the role permissions she has in her different groups.

See Gruppen- und Rollentypen for more details and hitobito_generic for a complete example group structure.

Plugin architecture

Hitobito is built on the plugin framework Wagons. With Wagons, arbitrary features and extensions may be created for Hitobito. As mentioned above, as there are no group types coming from Hitobito itself, at least one wagon is required to define group types in order to use Hitobito.

See Wagon Guidelines or Wagons for more information on wagons and its available rake tasks.

Contributing

You are invited to contribute new features, fixes, or updates, large or small; we are always thrilled to receive pull requests, and do our best to process them as fast as we can. Before opening any pull request or issue, please search for existing issues (open and closed) and read the contributing guidelines. If you are part of an organisation that uses Hitobito, please discuss your intent with the responsible person of your organisation.

Community

Hitobito made with 💙 and the incredible community:

  • Jungwacht Blauring Schweiz
  • Puzzle ITC GmbH
  • Pfadibewegung Schweiz
  • Hitobito AG
  • CEVI Regionalverband ZH-SH-GL / CEVI Schweiz
  • Pro Natura Jugend
  • Dachverband Schweizer Jugendparlamente DSJ
  • Insieme Schweiz
  • Forschungstelle Digitale Nachhaltigkeit
  • CH Open
  • Digital Impact Network
  • Schweizer Blasmusikverband
  • Grünliberale Partei Schweiz
  • Die Mitte
  • Stiftung für junge Auslandschweizer
  • Swiss Canoe
  • Schweizerischer Sportverband öffentlicher Verkehr (SVSE)
  • Schweizer Wanderwege

Please contact Hitobito if you want to be part of our community.

License

Hitobito is released under the GNU Affero General Public License.

The Hitobito logo is a registered trademark of Hitobito LTD, Switzerland.


btw: Hitobito 人人 means "everyone"

hitobito_skv's People

Contributors

carlobeltrame avatar chrusu avatar daniel-illi avatar kronn avatar luca-bruegger avatar mtnstar avatar njaeggi avatar severinraez avatar thewalkingleek avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

hitobito_skv's Issues

Mitgliederausweis --> kleine Changes

Auf dem Mitgliederausweis steht aktuell "Mitglied tbd Sektion Mitglieder"

Mitglied war früher die Mitgliedernummer, die kann weggelassen werden.

image

Sektion:
ist --> Name der Gruppe
soll --> Shortname des Layers

Tech-Spec

Datenmigration:

Muss noch definiert werden.

Swiss Canoe liefert Puzzle einen Beispiel-Export, damit Puzzle sich ein Bild von den Daten machen kann.

GROUPS: Rollen anpassen

Als Mitarbeiter:in des SKV möchte ich, dass einige Rollenberechtigungen angepasst werden, damit diese besser zum Tätigkeitsbereich der Mitglieder passen.

Neu sollen die folgenden Rollen angepasst werden:

  • Schweizerischer Kanu-Verband > Vorstand > Präsident*in: [:layer_and_below_read]
  • Schweizerischer Kanu-Verband > Vorstand > Finanzchef*in: [:layer_and_below_read, :finance]
  • Schweizerischer Kanu-Verband > Vorstand > Vorstandsmitglied: [:layer_and_below_read]
  • Schweizerischer Kanu-Verband > Geschäftsleitung > Mitarbeitende*r: > [:layer_and_below_full, :admin]
  • Schweizerischer Kanu-Verband > Mitarbeitende > Trainer*in: [:group_read]
  • Schweizerischer Kanu-Verband > Mitglieder > Mitglied: []
  • Global > Sektion > Vorstand > Präsident:in [::layer_and_below_full]
  • Global > Sektion > Vorstand > Kassier:in [:layer_and_below_full, :finance]
  • Global > Sektion > Vorstand > Sekretär:in [:layer_and_below_full]
  • Global > Sektion > Vorstand > Vorstandsmitglied [:layer_and_below_full]
  • Global > Sektion > Finanzchef*in: Rolle soll gelöscht werden

Tech-Spec

  • Die Anpassungen beziehen sich auf die aktuelle Struktur welche im README.md des SKV abgebildet ist.

ToDo

  • Die aufgelisteten Rollen anpassen
  • Specs ggf. anpassen
  • Mit angemessener Rolle "durchklicken"

PEOPLE: Verifikation des Mitgliederausweises

Hinter einer versteckten (hashed) URL, welche durch einen QR-Code zugänglich ist, ist ein verstecktes Mini-Profil eines Mitgliedes zugänglich, welches folgende Infos enthält:

  • Logo Swiss Canoe
  • Vorname Name
  • Foto, falls vorhanden
  • Hinweis, ob es sich um ein verifiziertes Mitglied handelt
    • grünes Gutzeichen, falls in DB und Mitglied
    • rotes Kreuz, falls in DB aber keine Rollen oder Rolle "externer Kontakt" (Rolle mit kind extern)
  • Zugriff auf diese Seite ist anhand Unique ID ohne Login/Session (devise) möglich
  • Seite ist auf Mobile optimiert, Navigation wird grundsätzlich nicht benötigt (Standalone page)

Tech Spec

  • Umsetzung im skv-Wagon
  • Neues Feld auf der Person welches einen zufälligen, unique String enthält
  • Neuer Controller der es erlaubt, das "Mini-Profil" der Person anzuzeigen
  • Sollte unter einer Route erreichbar sein die nur den random String enthält, keine Gruppen- oder Personen-Ids

GRUPPE: Clubmitglieder-ID auf der Paddle Level Card

Als Mitarbeiterin des SKV möchte ich, dass die Clubmitglieder-ID, wie sie auf dem Mitgliederausweis angezeigt wird, auch auf der Paddle Level Card ersichtlich ist.

Mockup

image

Tech-Spec

  • Die Umsetzung kann identisch zum Mitgliederausweis erfolgen.

ToDo

  • Specs schreiben
  • Mit angemessener Rolle "durchklicken"
  • CHANGELOG-Eintrag unter "unreleased" unten hinzufügen

Grundpaket: Mehrsprachigkeit

Gewünschte Sprachen DE, FR einbauen

  • settings.yml
  • transifex -> eigenes Projekt (für Wagon spezifische Übersetzungen)
  • model.yml erstellen und ins transifex pushen

See: #1

PERSON: Paddle Level / Paddle Stars

Das Paddle-Level ist ein Nachweis des Könnens des Benutzers. Es basiert auf dem EPP (European Paddle Level)

Auf der Personenseite sieht der Benutzer alle Informationen zu seinem Paddle Level.

PDF mit folgenden Informationen (DRAFT, wird aktualisiert, sobald mehr Infos vorliegen):

Logo Swiss Canoe
Vorname Name
Geburtsdatum
Paddle Level (1-5) (mit Farbkodierung)
hinweis auf EPP (based on European Paddle Pass)
EPP-Logo

Paddle Stars ist die Ausführung für die Junioren

Swiss Canoe - Mitgliederausweis - Person

PERSON: PDF-Download Mitgliederausweis

Auf der Personenseite kann der Benutzer seinen Mitgliederausweis als PDF herunterladen.
Leute mit Schreibrecht auf die Person, können den Mitgliederausweis herunterladen.

PDF mit folgenden Informationen:

  • Logo & Adresse Swiss Canoe, gleich wie Logo der hitobito-Instanz
  • Vorname Name
  • Adresse
  • PLZ Ort
  • Gültigkeit (jeweils bis Ende Jahr)
  • Sektion: lokaler Kanuclub (Primary Group, oder von einer beliebigen Rolle falls keine Primary Group)
    • Shortname
    • Fallback auf Name
  • QR-Code auf der rechten Seite (zur einfachen Verifikation ob ein Mitglied auch tatsächlich Mitglied ist) mit Link zu #11
  • Benutzer, welche lediglich die Rolle "Externe Kontakte" haben, kriegen keinen Mitgliederausweis
  • "Gilt als Wettkampflizenz / Is regarded as competition licence" steht auf jedem Mitgliederausweis.
    • Sprache vom User (Logged-In-Sprache) + Englisch
  • Format egal, optimiert auf Handy (hochformat)
  • Sponsoren im unteren Bereich (siehe Kommentar)

mitgliederausweis

Tech-Spec

  • Person#verify_membership_token beim Ausstellen des PDFs generieren falls noch nicht vorhanden

Grundpaket: Wagon erstellen

Ein neuer Wagon "hitobito_skv"

https://github.com/hitobito/hitobito/blob/master/doc/development/04_wagons.md

Gruppenstruktur

  • Swiss Canoe --> Layer
    • Vorstand
      • [Präsident: layer_and_below_read_write]
      • [Kassier: layer_and_below_read]
      • [Mitglied: layer_read]
    • Kantonalverbände (Bern, Zürich, etc.) --> Layer
      • Vereine (KCBM, Kanuclub Spiez, etc.) --> Layer
        • Vorstand
          • [Präsident: layer_and_below_read_write]
          • [Kassier: layer_and_below_read]
          • [Mitglied: layer_read]
        • [Leitung: layer_read_write]
        • [Mitglied: layer_read]

See: #1

PERSON: Zusätzliche Felder auf Person (für Datenimport)

  • Nr. ?
  • Mitgliedernummer ?
  • Nachname
  • Vorname
  • Name 2
    • nicht mehr benötigt?
  • Bemerkung
    • Zusätzliche Angaben?
  • Adresse
  • Adresse 2
    • nicht mehr benötigt?
  • PLZ
  • Ort
  • Land
  • NEU: Beruf
    • Textfeld
  • Telefon
  • Handy
  • Jahrgang
    • immer ausgefüllt
    • Zusätzliches Feld?
  • Geburtstag
    • teilweise ausgefüllt
  • Jahrgang
    • doppelt
  • Geburtstag
    • doppelt
  • Ehrenmitglied SKV
    • Rolle?
  • Junior Mitglied
    • Rolle?
  • E-Mail
  • Webseite
  • NEU: SKV Eintritt
    • Textfeld: Jahr
    • zahlencheck einbauen
  • AHV-Nummer
    • noch nötig?
  • Geschlecht
  • Wünscht keine Werbung
    • Abo: Newsletter/Werbung
  • Was machen mit Usern ohne Mail?
  • Haben kein Login

ToDo

  • Mitgliedernummer in Mitgliederausweis (PDF) anzeigen (passes/membership)

PERSON: PDF-Download Paddle Level / Paddle Star

Auf der Personenseite kann der Benutzer seinen Paddle-Star-Ausweis als PDF herunterladen.
Leute mit Schreibrecht auf die Person, können den Paddle-Star-Ausweis herunterladen.

Das Paddle-Level ist ein Nachweis des Könnens des Benutzers. Es basiert auf dem EPP (European Paddle Level)

  • Boolean Flag auf Qualifikationsart ergänzen: Erscheint auf Paddle Pass (ja/nein)

Auf der Personenseite kann der Benutzer sein Paddle-Level Ausweis als PDF herunterladen.

PDF mit folgenden Informationen:

  • Logo & Adresse Swiss Canoe
  • Vorname/Name
  • Sektion: lokaler Kanuclub (Primary Group, oder von einer beliebigen Rolle falls keine Primary Group)
    • Shortname
    • Fallback auf Name
  • Paddle Level (1-5) --> Nur Qualifikationen anzeigen die das oben beschriebene Flag gesetzt haben. (Bsp aus der Praxis: SUP, Whitewater Kajak, Touring)
    • Datum der Erfassung der Qualifikation, falls dies nicht zu kompliziert ist.
    • Qualifikationen auf der Person
  • hinweis auf EPP (based on European Paddle Pass): based on the Euro Paddle Pass Standard, www.europaddlepass.eu
  • EPP-Logo
    • THI liefet das logo
  • Layout senkrecht statt quer (THI klärt ab)
    epp

paddle-stars

Die Assessors vorerst noch nicht umsetzen. Diese wird wohl auf bestimmten Rollen basieren.

GROUPS: Neue Rolle "Anschlussmitglied"

Eine Person kann beim SKV Mitglied in verschiedenen Sektionen sein. Verrechnet wird ihm der Mitgliederbeitrag jedoch immer nur in der Hauptsektion.
Bisher wurde mit Tags gearbeitet um die Hauptmitgliedschaft und Anschlussmitgliedschaften auseinander halten zu können.
Zukünftig soll dies mit einer neuen Rolle "Anschlussmitgliedschaft" Auf der Ebene Sektion gelöst werden.
Ein Anschlussmitglied soll die gleichen Berechtigungen haben, wie ein Mitglied auf der gleichen Ebene.

Mockup

Image

Tech-Spec

  • sinngebende Zielrichtung
  • besondere/bekannte Bedingungen und Grenzfälle
  • technische Einschränkungen
  • Ein- und Ausgabeformate beschreiben
  • Umsetzungsplan ergänzen oder anpassen

ToDo

  • Migration erstellen
  • Domainklasse erstellen oder anpassen
  • Model/View/Controller anpassen
  • Neues Feature mit FeatureGate deaktivierbar machen
  • Specs schreiben
  • Kunde wegen Übersetzungen informieren
  • Mit angemessener Rolle "durchklicken"
  • CHANGELOG-Eintrag unter "unreleased" unten hinzufügen

PEOPLE: Qualifikationen erfassen

Als Mitarbeiterin des SKV möchte ich, dass ich den Personen, auf welchen ich Schreibrechte habe, Qualifikation über den Erstellen-Button unten rechts hinzufügen kann. (Analog Bruno Schmid vom SVSE)
Hierfür wurde bereits die Gruppe "Mitarbeitende" für die Erstellung von Kursen freigegeben.
Dies funktioniert so aber nicht, da die Berechtigungsabfrage bei Ability nur den Layer berücksichtigt, auf welchem die Kurse aktiviert wurden.

Neu soll der Layer Schweizerischer Kanu-Verband für Event-Kurse aktiviert werden.

Mockup

Screenshot from 2022-10-14 16-45-12

Tech-Spec

  • Qualifikation über den Erstellen-Button hinzufügbar machen
  • Berechtigungsabfrage Ability berücksichtigt Layer und keine Gruppen
  • Layer Schweizerischer Kanu-Verband für Event-Kurse aktivieren

ToDo

  • Layer Schweizerischer Kanu-Verband für Event-Kurse aktivieren
  • Sicherstellen dass Erstellen-Button verfügbar ist
  • Mit angemessener Rolle "durchklicken"
  • CHANGELOG-Eintrag unter "unreleased" unten hinzufügen

PEOPLE: Anpassungen Gruppenstruktur

@chrusu commented on Tue Nov 16 2021

Organization Hierarchy

  • Schweizerischer Kanu-Verband
    • Vorstand
      • Präsident*in: [:group_full]
      • Finanzchef*in: [:group_full, :finance]
      • Vorstandsmitglied: [:group_read]
    • Geschäftsleitung
      • Mitarbeitende*r: [:layer_and_below_full]
    • Mitarbeitende
      • Trainer*in: [:group_full]
      • Mitarbeitende*r: [:group_read]
      • Back-Office [:layer_and_below_full, :admin]
    • Externe Kontakte
      • Externer Kontakt: []
      • Swiss Canoe Partner: []
    • Fachkommission
      • Chef*in: [:group_full]
      • Mitglied: [:group_read]
    • Mitglieder
      • Mitglied: [:group_read]
      • Ehrenmitglied: []
      • Nachwuchsmitglied: []
    • Paddle Level
      • Anbieter*in: [:group_read]
      • Assessor*in: [:group_read]
      • Koordinator*in: [:group_read]
    • Nationalmannschaft
      • Trainer*in: [:group_full]
      • Kaderathlet*in: [:group_read]
    • Regionale Leistungszentrum
      • Leitung: [:group_full]
      • Mitglied: [:group_read]
  • Kantonalverband
    • Vorstand
      • Präsident*in: [:layer_and_below_full]
      • Vorstandsmitglied: [:layer_and_below_full]
      • Finanzchef*in: [:group_read, :finance]
  • Global
    • Sektion (LAYER)
      • Vorstand
        • Präsident:in [:group_full]
        • Kassier:in [:finance]
        • Sekretär:in [:group_full]
        • Vorstandsmitglied [:group_full]
      • Projektgruppe
        • Mitglied [:group_read]
        • Leitung [:group_full]
      • Finanzchef*in: [:group_read, :finance]
      • J+S Coach: [:group_full]
      • Junior*in: [:group_read]
      • Aktivmitglied: [:group_read]
      • Passivmitglied: [:group_read]
      • Ehrenmitglied: []

ToDo

  • Sektionen als Layer statt Gruppe
  • neue Rolle Back-Office unter Mitarbeitende
  • ggf. Seeds anpassen
  • Integrationsumgebung neu Seeden, Secure Password setzen

PEOPLE: Mitgliedernummer auf Mitgliederausweis

@chrusu commented on Thu Jan 20 2022

Der Mitgliederausweis soll um die Mitgliedernummer ergänzt werden.
Die Mitgliedernummer berechnet sich folgendermassen:

Format: XXX-XXX
Ableitung mit person.id (analog PBS)

BSP: Mitglied: 000-042

Auf person#show als Attribut anzeigen.

Tech-Spec

Grundpaket: Gruppenstruktur

Definition der Gruppenstuktur

  • Gruppen

  • Rollen

  • Seeds anpassen

  • Fixtures anpassen

  • Basis-Specs sicherstellen

  • Gruppenstruktur in der Integration seeden

  • Swiss Canoe (Layer)

    • Vorstand (Gruppe)
      • Finanzchef:in [:group_full, :finance]
      • Präsident:in [:group_full]
      • Vorstandsmitglied [:group_read]
    • Geschäftsleitung (Gruppe)
      • Mitarbeitende:r [:layer_and_below_full]
        • Dürfen Paddle Level vergeben --> als Qualifikationen
    • Mitarbeitende (Gruppe)
      • Trainer:in (auf Level SKV) [:group_full]
      • Mitarbeitende [:group_read]
    • Mitglieder (Gruppe)
      • Mitglied [:group_read]
      • Ehrenmitglied (Stufe Swiss Canoe & Stufe Verein) [:none]
      • Nachwuchsmitglied (Junior, Swiss Canoe, Verein) [:none]
    • Externe Kontakte (Gruppe)
      • Externer Kontakt (Sehen nur sich selber) [:none]
      • Swiss Canoe Partner (Sehen nur sich selber) [:none]
    • Paddle Level (Gruppe)
      • Anbieter (Organisationen, welche Kurse anbieten) [:group_read]
      • Assessor (Durchführung / Verteilung) [:group_read]
      • Koordinator (Ansprechspartner für Swiss Canoe) [:group_read]
    • FAKO (Gruppe)
      • SUP, Kanupolo, Slalom, Abfahrt, Regatta, Drachenboot, Tourenwesen, Seekajak, Gewässerkommission, Ausbildungskommission (Gruppen)
        • Chef:in [:group_full]
        • Mitglied [:group_read]
  • Kantonalverband (Layer)

    • Vorstand (Gruppe)
      • Präsident [:layer_and_below_full]

      • Vorstandsmitglied [:layer_and_below_full]

      • Finanzchef [:group_read, :finance]

      • Sektion (Lokalverein, kann entweder dem Kanton oder dem Dachverband zugeordnet sein.) (Layer)

        • Vorstand
          • Präsident:in [:layer_and_below_full]
          • Kassier:in [:finance]
          • Sekretär:in [:layer_and_below_full]
          • Vorstandsmitglied [:group_full]
        • J+S Coach [:group_read_write]
        • Junior [:group_read]
        • Aktivmitglied [:group_read]
        • Passivmitglied [:group_read]
        • Ehrenmitglied [:none]
        • Projektgruppe (Gruppe, optional)
          • Mitglied [:group_read]
          • Leitung [:group_full]
  • Regionale Leistungszentren (Gruppe)

    • Leitung [:group_full]
    • Mitglieder [:group_read]
  • Nationalmannschaften (Gruppe)

    • Slalom, Abfahrt, Regatta, Kanupolo, Drachenboot (Gruppen)
      • Trainer (Rolle) [:group_full]
      • Kaderathlet (Rolle) [:group_read]

See: #1

Spezielle Berechtigungen

  • Kontakte von bestimmten Geschäftsstellen (Vorstand, Geschäftsleitung, Fachkomissionen, Vereinsvorstände, Regionale Leistungszentren) sollten von aussen erreichbar sein. --> via Kontaktperson der Gruppe

PERSON: Mitgliederausweis

Auf der Personenseite sieht der Benutzer seinen Mitgliederausweis mit folgenden Informationen (DRAFT, wird aktualisiert, sobald mehr Infos vorliegen):

  • Logo Swiss Canoe
  • Vorname Name
  • Geburtsdatum
  • lokaler Kanuclub
  • QR-Code (zur einfachen Verifikation ob ein Mitglied auch tatsächlich Mitglied ist)
    • Verlinkt auf eine "nicht erratbare" Seite, welche mit einem Hash versehen und die nötigsten Infos zur Verifikation des Swiss-Canoe-Mitgliedes bereithält.

Siehe: #11

Swiss Canoe - Mitgliederausweis - Person

Grundpaket: Rollen und Berechtigungen

Rollen und Berechtigungen anlegen

  • Swiss Canoe
    • Vorstand (Gruppe)
      • Finanzchef:in (Kassier)
      • Präsident:in
      • Vorstandsmitglied
    • Geschäftsleitung (Gruppe)
      • Mitarbeitende:r (Dürfen Paddle Level vergeben --> als Qualifikationen)
    • Mitarbeitende (Gruppe)
      • Trainer:in (auf Level SKV)
      • Mitarbeitende
    • Mitglied
    • Externer Kontakt (Sehen nur sich selber)
    • Ehrenmitglied (Stufe Swiss Canoe & Stufe Verein)
    • Nachwuchsmitglied (Junior, Swiss Canoe, Verein)
    • Paddle Level Anbieter (Organisationen, welche Kurse anbiete) (Rechte wie normales Mitglied)
    • Paddle Level Assessor (Durchführung / Verteilung) (Rechte wie normales Mitglied)
    • Paddle Level Koordinator (Ansprechspartner für Swiss Canoe) (Rechte wie normales Mitglied)
    • Swiss Canoe Partner (Sehen nur sich selber)
    • FAKO (Gruppe)
      • SUP, Kanupolo, Slalom, Abfahrt, Regatta, Drachenboot, Tourenwesen, Seekajak (Gruppen) (jeder sieht jeden)
        • Chef:in (darf Mitglied bearbeiten, hinzufügen, entfernen)
        • Mitglied
    • Gewässerkommission (Gruppe) (identisch wie SUP, Kanupolo, etc.)
      • Chef:in (darf Mitglied bearbeiten, hinzufügen, entfernen)
      • Mitglied
    • Ausbildungskommission (Gruppe) (identisch wie SUP, Kanupolo, etc.)
      • Chef:in (darf Mitglied bearbeiten, hinzufügen, entfernen)
      • Mitglied
    • Clubkontakt Wettkampfsport (Als Abo abbilden)
    • Clubkontakt Freizeitsport (Als Abo abbilden)
    • Clubkontakt Tourenwesen (Als Abo abbilden)
    • Delegierte*r (Wer nimmt an DVs teil / Nicht zwingend der Päsident) --> DEVs
  • Vereine
    • Clubpräsident*in
    • Clubkassier*in
    • Clubmitgliederadministrator*in
    • Vorstandsmitglied
    • J+S Coach
    • Junior
    • Aktivmitglied
    • Passivmitglied
    • Ehrenmitglied

https://files.puzzle.ch/apps/files/?dir=/swe/projects/SKV_Schweizerischer_Kanuverband_Swiss_Canoe/hitobito/1_Dokumentation/Datenbank&fileid=3940245

  • Rollen anlegen
  • Berechtigungen vergeben
  • Rollen den Gruppen zuordnen
  • Fixtures anpassen
  • Seeds ggf. anpassen
  • Basis-Specs sicherstellen

See: #1

GRUPPE: Qualifikationsarten verfügbar machen

Als Mitarbeiterin des SKV möchte ich, dass die Qualifikationsarten verfügbar sind.
Hierfür muss die Gruppe "Mitarbeitende" für die Erstellung von Kursen freigegeben werden.

Neu sollen die Qualifikationsarten für den SKV verfügbar sein.

ToDo

  • Die Gruppe "Mitarbeitende" soll für das Erstellen von Kursen freigegeben werden

Grundpaket: Integrationsumgebung

Setup der Integrationsumgebung, die via skv.puzzle.ch sein soll.

  • Openshift-Projekt
  • Basic setup mit Secrets
  • kustomize-overlay
  • mailtrap
  • dns (skv.puzzle.ch)
  • composition-repo
  • apply-config
  • jenkins-job
  • Credentials im Cryptopus
  • Github Actions

See: #1

PERSON: Filtern nach Hauptklub

Um eine Rechnung an einen Klub zu stellen, muss der SKV wissen, wieviele aktive Paddler bei einem Klub vorhanden sind.
Ein Paddler kann dabei bei mehreren Klubs aktiv sein, bezahlt aber nur einmal den Mitgliederbeitragsanteil für den SKV.
Gibt es eine Möglichkeit, nur die Personen eines Klubs anzuzeigen, bei welchen dieser als Hauptklub definiert wurde?

Grundpaket SKV

Ziel: Aufbau Grundpaket/Umgebung für die SKV

Inhalt:

  • Wagon
  • Integrationsumgebung
  • Gruppenstruktur
  • Rollen und Berechtigung
  • Anpassungen am Design
  • Mehrsprachigkeit
  • Produktionsumgebung
  • Github Actions

Bereits in Integration/Produktionsumgebung-Issues enthalten?

  • Wartung und Support

Grundpaket: Anpassungen am Design

Da Hitobito ja ein nationales Tool ist, möchten wir uns an die blaue Farbwelt halten (also blaue/weisse Logos, blauer Hintergrund usw.).

  • Farbschema
  • Logo
  • weitere SCSS-Anpassungen

See: #1

image

PEOPLE: Personen Import mit PLZ > 4 stellen (z.b. Frankreich)

Beim Personen Import auf der Gruppe können aktuell keine Adressen aus dem Ausland (z.B. Frankreich) importiert werden, weil die Postleitzahlen zu lange sind.

Tech-Spec

ToDo

  • Import Spec mit entsprechender PLZ ergänzen
  • Validierung fixen

Grundpaket: Produktionsumgebung

Vorbereitung der produktiven Umgebung

  • composition-repo um production-branch erweitern
  • APPUiO-Projekt anlegen
  • labels setzen
  • initial-setup mit cia
  • kustomize-overlay
  • apply-config
  • jenkins-job
  • Credentials im Cryptopus
    • secret-key-base
    • root-user
  • manueller Adress-Import: bundle exec rake address:import
    /2681)
  • Rechnungsbriefe aktivieren
  • Monitoring
    • ServiceMonitor "freischalten lassen" und einrichten
    • PR für Blackbox-Checks
  • mailkonten Verifikation
  • DNS: db.swisscanoe.ch

See: #1

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.