Skip to content

Commit

Permalink
Really start with project
Browse files Browse the repository at this point in the history
Updated .gitignore and README as well
  • Loading branch information
Martin Pavlasek committed Feb 13, 2016
1 parent b3bc662 commit f54f45b
Show file tree
Hide file tree
Showing 41 changed files with 1,367 additions and 0 deletions.
3 changes: 3 additions & 0 deletions .gitignore
@@ -0,0 +1,3 @@
/venv/
*.pyc
.idea/
25 changes: 25 additions & 0 deletions README.md
@@ -1,3 +1,28 @@
# jizdoteka-web

[![Gitter](https://badges.gitter.im/jizdoteka/general.svg)](https://gitter.im/jizdoteka/general?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)

## Instalace

Pro účely vývoje/testování doporučuji použít `virtualenv` (pip install virtualenv)
```
pip install -r requirements.txt
```

Spuštění serveru: `./manage.py runserver`

Web je dostupný na: `http://localhost:8000`
Administrace (admin/admin): `http://localhost:8000/admin`

Pokud jste provedli nějaké změny v modelech: `./manage.py makemigrations` a následně `./manage.py migrate`

## Stav projektu
Rozpracováno (částečně funguje):
* model DB, dost tam toho ještě chybí, ale to nejdůležitější (jízdy jako takové) jsou z velké části udělané. Počítám s tím, že se lidé mohou přihlásit jen na část trasy, cena za úsek je nepovinná
* výpis jízd
* detail vybrané jízdy - vč. přihlášených lidí na úsecích

Chybí, je třeba opravit (hmm.. od čeho začít :)
* plnění webu day prozatím pouze skrze administraci (viz. link výše)
* (skrze administraci) lze přihlásit pasažéra i na trasu mimo jeho jízdu - toto budeme stejně ošetřovat už při vkládání do DB, takže to nakonec tak moc vadit nebude
* všechno ostatní ...
Empty file added apps/__init__.py
Empty file.
Empty file added apps/web/__init__.py
Empty file.
39 changes: 39 additions & 0 deletions apps/web/admin.py
@@ -0,0 +1,39 @@
from django.contrib import admin
from django.contrib.auth.models import User
import models

# Register your models here.
admin.site.register(models.Comment)
admin.site.register(models.Waypoint)
admin.site.register(models.Passanger)
admin.site.register(models.JourneyWaypoints)


class UserProfileInline(admin.TabularInline):
model = models.UserProfile


class UserAdmin(admin.ModelAdmin):
inlines = [
UserProfileInline
]

admin.site.unregister(User)
admin.site.register(User, UserAdmin)


class JourneyWaypointsInline(admin.TabularInline):
model = models.JourneyWaypoints


# class PassengerOnWaypointInline(admin.TabularInline):
# model = models.PassengerOnWaypoint


class JourneyAdmin(admin.ModelAdmin):
inlines = [
JourneyWaypointsInline,
# PassengerOnWaypointInline,
]

admin.site.register(models.Journey, JourneyAdmin)
7 changes: 7 additions & 0 deletions apps/web/apps.py
@@ -0,0 +1,7 @@
from __future__ import unicode_literals

from django.apps import AppConfig


class WebConfig(AppConfig):
name = 'web'
91 changes: 91 additions & 0 deletions apps/web/migrations.old/0001_initial.py
@@ -0,0 +1,91 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.9.2 on 2016-02-11 23:14
from __future__ import unicode_literals

from django.conf import settings
from django.db import migrations, models
import django.db.models.deletion


class Migration(migrations.Migration):

initial = True

dependencies = [
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
]

operations = [
migrations.CreateModel(
name='Comment',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('date', models.DateTimeField()),
('message', models.TextField()),
('author', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='user_author', to=settings.AUTH_USER_MODEL)),
('recipient', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='user_recipient', to=settings.AUTH_USER_MODEL)),
],
),
migrations.CreateModel(
name='Journey',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('price', models.FloatField(default=0)),
('currency', models.CharField(default='CZK', max_length=3)),
],
),
migrations.CreateModel(
name='JourneyWaypoints',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('order', models.IntegerField(default=0, verbose_name='Number of stop from start point')),
('journey', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='web.Journey')),
],
),
migrations.CreateModel(
name='UserProfile',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('phone_number', models.CharField(blank=True, max_length=13, verbose_name='Phone numberr')),
('reputation', models.IntegerField(blank=True, default=0)),
('modeid', models.CharField(blank=True, max_length=100)),
('num_journeys', models.IntegerField(blank=True, default=0)),
('driven_km', models.IntegerField(blank=True, default=0)),
('drive_years', models.IntegerField(blank=True, default=0)),
('user', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
],
),
migrations.CreateModel(
name='Waypoint',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('city', models.CharField(max_length=100)),
('label', models.CharField(blank=True, default='', max_length=100)),
],
),
migrations.AddField(
model_name='journeywaypoints',
name='waypoint',
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='web.Waypoint'),
),
migrations.AddField(
model_name='journey',
name='city_from',
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='wpt_from', to='web.Waypoint'),
),
migrations.AddField(
model_name='journey',
name='city_to',
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='wpt_to', to='web.Waypoint'),
),
migrations.AddField(
model_name='journey',
name='comments',
field=models.ManyToManyField(blank=True, to='web.Comment'),
),
migrations.AddField(
model_name='journey',
name='driver',
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL),
),
]
36 changes: 36 additions & 0 deletions apps/web/migrations.old/0002_auto_20160211_2320.py
@@ -0,0 +1,36 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.9.2 on 2016-02-11 23:20
from __future__ import unicode_literals

import datetime
from django.db import migrations, models


class Migration(migrations.Migration):

dependencies = [
('web', '0001_initial'),
]

operations = [
migrations.AddField(
model_name='journey',
name='approx',
field=models.BooleanField(default='', verbose_name='Driver is not sure about exact time of departure'),
),
migrations.AddField(
model_name='journey',
name='approx_note',
field=models.CharField(blank=True, max_length=100, verbose_name='If approx is applied, this can be used for short note to departure'),
),
migrations.AddField(
model_name='journey',
name='date',
field=models.DateTimeField(default=datetime.datetime(2016, 2, 11, 23, 20, 43, 417232), verbose_name='Date/time of start of journey'),
),
migrations.AddField(
model_name='journey',
name='waypoints',
field=models.ManyToManyField(through='web.JourneyWaypoints', to='web.Waypoint'),
),
]
21 changes: 21 additions & 0 deletions apps/web/migrations.old/0003_auto_20160211_2321.py
@@ -0,0 +1,21 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.9.2 on 2016-02-11 23:21
from __future__ import unicode_literals

from django.db import migrations, models
import django.utils.timezone


class Migration(migrations.Migration):

dependencies = [
('web', '0002_auto_20160211_2320'),
]

operations = [
migrations.AlterField(
model_name='journey',
name='date',
field=models.DateTimeField(default=django.utils.timezone.now, verbose_name='Date/time of start of journey'),
),
]
49 changes: 49 additions & 0 deletions apps/web/migrations.old/0004_auto_20160212_0905.py
@@ -0,0 +1,49 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.9.2 on 2016-02-12 09:05
from __future__ import unicode_literals

from django.db import migrations, models
import django.db.models.deletion


class Migration(migrations.Migration):

dependencies = [
('web', '0003_auto_20160211_2321'),
]

operations = [
migrations.CreateModel(
name='Group',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('name', models.CharField(max_length=128)),
],
),
migrations.CreateModel(
name='Membership',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('date_joined', models.DateField()),
('invite_reason', models.CharField(max_length=64)),
('group', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='web.Group')),
],
),
migrations.CreateModel(
name='Person',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('name', models.CharField(max_length=128)),
],
),
migrations.AddField(
model_name='membership',
name='person',
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='web.Person'),
),
migrations.AddField(
model_name='group',
name='members',
field=models.ManyToManyField(through='web.Membership', to='web.Person'),
),
]
25 changes: 25 additions & 0 deletions apps/web/migrations.old/0005_auto_20160212_0907.py
@@ -0,0 +1,25 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.9.2 on 2016-02-12 09:07
from __future__ import unicode_literals

from django.db import migrations


class Migration(migrations.Migration):

dependencies = [
('web', '0004_auto_20160212_0905'),
]

operations = [
migrations.RenameField(
model_name='membership',
old_name='group',
new_name='group1',
),
migrations.RenameField(
model_name='membership',
old_name='person',
new_name='person1',
),
]
36 changes: 36 additions & 0 deletions apps/web/migrations.old/0006_auto_20160212_0921.py
@@ -0,0 +1,36 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.9.2 on 2016-02-12 09:21
from __future__ import unicode_literals

from django.db import migrations


class Migration(migrations.Migration):

dependencies = [
('web', '0005_auto_20160212_0907'),
]

operations = [
migrations.RemoveField(
model_name='group',
name='members',
),
migrations.RemoveField(
model_name='membership',
name='group1',
),
migrations.RemoveField(
model_name='membership',
name='person1',
),
migrations.DeleteModel(
name='Group',
),
migrations.DeleteModel(
name='Membership',
),
migrations.DeleteModel(
name='Person',
),
]
20 changes: 20 additions & 0 deletions apps/web/migrations.old/0007_journeywaypoints_partial_price.py
@@ -0,0 +1,20 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.9.2 on 2016-02-12 09:25
from __future__ import unicode_literals

from django.db import migrations, models


class Migration(migrations.Migration):

dependencies = [
('web', '0006_auto_20160212_0921'),
]

operations = [
migrations.AddField(
model_name='journeywaypoints',
name='partial_price',
field=models.FloatField(blank=True, default=None, null=True, verbose_name='Price between previous and this waypoint (currency is same).'),
),
]

0 comments on commit f54f45b

Please sign in to comment.