---
# System prepended metadata

title: '4. Aukce: prodej a nákup zboží a majetku prostřednictvím dražby'

---

# 4. Aukce: prodej a nákup zboží a majetku prostřednictvím dražby

## Autoři

- Pavlína Auerová (xauero00@stud.fit.vutbr.cz)
    - databáze
- Radek Maňák (xmanak20@stud.fit.vutbr.cz)
    - back-end
- Martin Benovič (xbenov00@stud.fit.vutbr.cz)
    - front-end


## Uživatelé systému pro testování

|Login|Heslo|Role|
|-----|-----|----|
|admin|admin|admin|
|licitator|licitator|licitator|
|licitator2|licitator|licitator|
|user|user|user|
|user2|user|user|

### Stránka pro testování - https://iisaukce2021.tk/

## Implementace
<p>Stručná dokumentace k implementaci, která popisuje, které části projektu (např. PHP skripty) implementují jednotlivé případy použití.</p>

### Databáze

Grafické schéma relační databáze.
<!--![](https://i.imgur.com/JaY4vlz.jpg)-->
Přístup k databázi je řešeni pomocí ojektově relačního mapování pomocí python knihovny SQLAlchemy
![](https://i.imgur.com/KMnXQxx.png)



## Instalace

### Pro vývoj

#### Nainstalovat potřebné balíky (fedora)
```python pipenv ```

#### Nainstalovat python balíky do virtuálního prostředí pomocí `pipenv` 
Spusťte ```pipenv install``` v adresáří projektu

#### 
Pomocí ```./start.sh``` scriptu spusťte vývojářský server

### Na server

#### Balíky pro produkční server (fedora)
```python pipenv python3-psycopg2 postgresql-server```

#### Nainstalovat python balíky do virtuálního prostředí pomocí `pipenv`
Spusťte ```pipenv install``` v adresáří projektu

#### Nastavení databáze
Nastavte postgresql databázi a vytvořte uživatele a prázdnou databázi.

#### Nastavení a spuštění serveru
1. V souboru ```./start.sh``` zakomenujte spuštení vývojového serveru
2. Vyplnte DATABASE_URI a náhodný SECRET_KEY
3. Pomocí ```./start.sh``` scriptu spusťte produkční server

#### Nastavte doménu na váš server (out of scope)
1. Kupte doménu
2. Nainstalujte nginx
3. Nainstalujte certbot
4. Pomocí certbotu od let's encrypt získejte certifikát pro vaši doménu
5. Nastavte nginx tak, aby přeposílal požadavky na váš server

## Známé problémy

- Neregistrovaný uživatel nemůže vytvářet aukce. Musí první registrovat.
- U uživatelů může administrátor pouze měnit role (nemůže je mazat, spravovat atd.)
- V "Profile" nelze měnit heslo ani nastavit profilový obrázek - z časových důvodů jsou tam jen nachystané inputy (chybí i tlačítko odeslání změn)