PHP Classes

File: README.sl.md

Recommend this page to a friend!
  Packages of Andraž   BB   README.sl.md   Download  
File: README.sl.md
Role: Documentation
Content type: text/markdown
Description: Documentation
Class: BB
Badminton tournament management application
Author: By
Last change:
Date: 15 days ago
Size: 3,013 bytes
 

Contents

Class file image Download

? Upravljavnik za turnirje

Badminton Tournament Manager je CakePHP aplikacija za vodenje turnirjev v badmintonu.

Glavna ideja: - ima? turnir, - znotraj njega dogodke (kategorije), - na dogodek prijavi? tekmovalce (posamezniki ali pari), - aplikacija samodejno generira vse pare (brez ponavljanja), - ob vnosu ali spremembi rezultata ponovno prera?una zmage, poraze in statistiko.

? Funkcionalnosti

  • ? Turnirji (tournaments) Ustvarjanje in urejanje turnirjev (naziv, datum, lokacija, opis).
  • ? Dogodki (tournament_events) Kategorije znotraj turnirja (npr. "Mo?ki pari", "?enske posamezno", "Mix"). Vsak dogodek ima svoje tekmovalce in svoje tekme.
  • ? Igralci (players) Centralni seznam vseh igralcev (ime, klub ipd.).
  • ? Tekmovalci (competitors) Povezava igralcev na konkreten dogodek. Tekmovalec je lahko: - posameznik (1 igralec) ali - par (2 igralca), odvisno od tipa dogodka.
  • ? Tekme (tournament_matches) Za vsak dogodek se generirajo pari med tekmovalci: - algoritmi?no se ustvarijo vse kombinacije tekmovalcev, - isti par se ne ponovi ve?krat, - ob spremembi rezultata se statistika za oba tekmovalca ponovno izra?una.
  • ? Statistika Po dogodku lahko vidi?: - ?tevilo odigranih tekem, - zmage / poraze, - to?ke (?e jih vna?a?), - razmerje.

?? Tehni?ne informacije

  • Framework: CakePHP (4/5 ? odvisno od tvoje verzije)
  • Baza: MariaDB / MySQL (lahko prilagodi? tudi na PostgreSQL)
  • Struktura: klasi?en CakePHP MVC (Table, Entity, Controller, Template)
  • Migrate/Seed: uporablja migracije in seed podatke za osnovno strukturo in testne vnose

Tipi?ne tabele (poimenovanje se sklada z CakePHP konvencijo):

  • `tournaments`
  • `tournament_events`
  • `tournament_matches`
  • `players`
  • `competitors`

? Namestitev (osnovni koraki)

Namesti git, docker in docker composer. Navodila.

git clone https://github.com/USERNAME/badminton-tournament.git
cd badminton-tournament

cp config/app_local.example.php config/app_local.php
# v config/app_local.php nastavi povezavo na bazo

Nastavitve baze - na mesto pod 'default' v config/app_local.php dodaj.

'default' => [
            'className' => \Cake\Database\Connection::class,
            'driver' => \Cake\Database\Driver\Sqlite::class,
            'database' => ROOT . DS . 'db' . DS . 'tournament.sqlite',
            'encoding' => 'utf8',
            'persistent' => false,
            'timezone' => 'UTC',
            'cacheMetadata' => true,
            'log' => true,
        ],

Po?enemo docker z ukazom

docker compose up

Vstopimo v contejner

docker compose exec app bash

Odpremo dodatno terminalno okno in gremo v izvajanje:

composer install

bin/cake migrations migrate
bin/cake migrations seed

Avtorji

  • Andra? Prin?i?
  • Rok Megli?