Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
7
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Open sidebar
AE
Sith
Commits
a01fc63a
Commit
a01fc63a
authored
Jul 28, 2016
by
Skia
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Begin launderette
parent
4c628168
Pipeline
#77
failed with stage
in 1 minute and 54 seconds
Changes
31
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
31 changed files
with
871 additions
and
61 deletions
+871
-61
core/management/commands/populate.py
core/management/commands/populate.py
+13
-0
core/models.py
core/models.py
+1
-1
core/static/core/style.css
core/static/core/style.css
+5
-0
core/templates/core/login.jinja
core/templates/core/login.jinja
+3
-13
core/templates/core/page.jinja
core/templates/core/page.jinja
+1
-1
counter/migrations/0010_auto_20160728_1820.py
counter/migrations/0010_auto_20160728_1820.py
+38
-0
launderette/__init__.py
launderette/__init__.py
+0
-0
launderette/admin.py
launderette/admin.py
+3
-0
launderette/migrations/0001_initial.py
launderette/migrations/0001_initial.py
+47
-0
launderette/migrations/0002_auto_20160728_1858.py
launderette/migrations/0002_auto_20160728_1858.py
+39
-0
launderette/migrations/0003_launderette_sellers.py
launderette/migrations/0003_launderette_sellers.py
+20
-0
launderette/migrations/0004_auto_20160728_1922.py
launderette/migrations/0004_auto_20160728_1922.py
+19
-0
launderette/migrations/__init__.py
launderette/migrations/__init__.py
+0
-0
launderette/models.py
launderette/models.py
+76
-0
launderette/templates/launderette/counter_click.jinja
launderette/templates/launderette/counter_click.jinja
+79
-0
launderette/templates/launderette/counter_edit.jinja
launderette/templates/launderette/counter_edit.jinja
+13
-0
launderette/templates/launderette/counter_main.jinja
launderette/templates/launderette/counter_main.jinja
+55
-0
launderette/templates/launderette/launderette_book.jinja
launderette/templates/launderette/launderette_book.jinja
+21
-0
launderette/templates/launderette/launderette_detail.jinja
launderette/templates/launderette/launderette_detail.jinja
+13
-0
launderette/templates/launderette/launderette_list.jinja
launderette/templates/launderette/launderette_list.jinja
+23
-0
launderette/templates/launderette/launderette_main.jinja
launderette/templates/launderette/launderette_main.jinja
+21
-0
launderette/templates/launderette/product_list.jinja
launderette/templates/launderette/product_list.jinja
+23
-0
launderette/templates/launderette/producttype_list.jinja
launderette/templates/launderette/producttype_list.jinja
+24
-0
launderette/templates/launderette/user_account.jinja
launderette/templates/launderette/user_account.jinja
+86
-0
launderette/tests.py
launderette/tests.py
+3
-0
launderette/urls.py
launderette/urls.py
+17
-0
launderette/views.py
launderette/views.py
+62
-0
locale/fr/LC_MESSAGES/django.mo
locale/fr/LC_MESSAGES/django.mo
+0
-0
locale/fr/LC_MESSAGES/django.po
locale/fr/LC_MESSAGES/django.po
+155
-45
sith/settings_sample.py
sith/settings_sample.py
+10
-1
sith/urls.py
sith/urls.py
+1
-0
No files found.
core/management/commands/populate.py
View file @
a01fc63a
...
...
@@ -52,6 +52,7 @@ class Command(BaseCommand):
c
.
edit_groups
=
[
g
]
c
.
save
()
self
.
reset_index
(
"counter"
)
Counter
(
name
=
"Eboutic"
,
club
=
main_club
,
type
=
'EBOUTIC'
).
save
()
p
=
Page
(
name
=
'Index'
)
p
.
set_lock
(
root
)
p
.
save
()
...
...
@@ -132,6 +133,18 @@ Welcome to the wiki page!
p
.
save
()
PageRev
(
page
=
p
,
title
=
"Aide sur la syntaxe"
,
author
=
skia
,
content
=
"""
Cette page vise à documenter la syntaxe *Markdown* utilisée sur le site.
"""
).
save
()
p
=
Page
(
name
=
'Services'
)
p
.
save
()
p
.
set_lock
(
skia
)
p
.
view_groups
=
[
settings
.
SITH_GROUPS
[
'public'
][
'id'
]]
p
.
save
()
PageRev
(
page
=
p
,
title
=
"Services"
,
author
=
skia
,
content
=
"""
| | | |
| :---: | :---: | :---: |
| [Eboutic](/eboutic) | [Laverie](/launderette) | Matmat |
| SAS | Weekmail | Forum|
"""
).
save
()
# Adding README
p
=
Page
(
name
=
'README'
)
...
...
core/models.py
View file @
a01fc63a
...
...
@@ -447,7 +447,7 @@ class Page(models.Model):
return
'/'
.
join
([
self
.
parent
.
get_full_name
(),
self
.
name
])
def
get_display_name
(
self
):
return
self
.
get_full_name
()
return
self
.
revisions
.
last
().
title
class
PageRev
(
models
.
Model
):
"""
...
...
core/static/core/style.css
View file @
a01fc63a
...
...
@@ -166,6 +166,11 @@ tbody>tr:hover {
padding
:
4px
;
line-height
:
120%
;
}
textarea
{
white-space
:
pre
;
width
:
98%
;
margin-top
:
10px
;
}
/*--------------------------------FOOTER-------------------------------*/
footer
{
...
...
core/templates/core/login.jinja
View file @
a01fc63a
...
...
@@ -17,19 +17,9 @@
<form
method=
"post"
action=
"
{{
url
(
'core:login'
)
}}
"
>
{%
csrf_token
%}
<table>
<tr>
<td>
{{
form.username.label_tag
()
}}
</td>
<td>
{{
form.username
}}
</td>
</tr>
<tr>
<td>
{{
form.password.label_tag
()
}}
</td>
<td>
{{
form.password
}}
</td>
</tr>
</table>
<input
type=
"submit"
value=
"
{%
trans
%}
login
{%
endtrans
%}
"
/>
<input
type=
"hidden"
name=
"next"
value=
"
{{
next
}}
"
/>
{{
form.as_p
()
}}
<input
type=
"hidden"
name=
"next"
value=
"
{{
next
}}
"
>
<p><input
type=
"submit"
value=
"
{%
trans
%}
login
{%
endtrans
%}
"
></p>
</form>
{# Assumes you setup the password_reset view in your URLconf #}
...
...
core/templates/core/page.jinja
View file @
a01fc63a
...
...
@@ -15,7 +15,7 @@
{%
macro
print_page_name
(
page
)
%}
{%
if
page
%}
{{
print_page_name
(
page.parent
)
}}
>
<a
href=
"
{{
url
(
'core:page'
,
page_name
=
page.get_full_name
())
}}
"
>
{{
page.name
}}
</a>
<a
href=
"
{{
url
(
'core:page'
,
page_name
=
page.get_full_name
())
}}
"
>
{{
page.
get_display_
name
()
}}
</a>
{%
endif
%}
{%
endmacro
%}
...
...
counter/migrations/0010_auto_20160728_1820.py
0 → 100644
View file @
a01fc63a
# -*- coding: utf-8 -*-
from
__future__
import
unicode_literals
from
django.db
import
migrations
,
models
class
Migration
(
migrations
.
Migration
):
dependencies
=
[
(
'counter'
,
'0009_auto_20160721_1902'
),
]
operations
=
[
migrations
.
AlterModelOptions
(
name
=
'counter'
,
options
=
{
'verbose_name'
:
'counter'
},
),
migrations
.
AlterModelOptions
(
name
=
'permanency'
,
options
=
{
'verbose_name'
:
'permanency'
},
),
migrations
.
AlterModelOptions
(
name
=
'product'
,
options
=
{
'verbose_name'
:
'product'
},
),
migrations
.
AlterModelOptions
(
name
=
'producttype'
,
options
=
{
'verbose_name'
:
'product type'
},
),
migrations
.
AlterModelOptions
(
name
=
'refilling'
,
options
=
{
'verbose_name'
:
'refilling'
},
),
migrations
.
AlterModelOptions
(
name
=
'selling'
,
options
=
{
'verbose_name'
:
'selling'
},
),
]
launderette/__init__.py
0 → 100644
View file @
a01fc63a
launderette/admin.py
0 → 100644
View file @
a01fc63a
from
django.contrib
import
admin
# Register your models here.
launderette/migrations/0001_initial.py
0 → 100644
View file @
a01fc63a
# -*- coding: utf-8 -*-
from
__future__
import
unicode_literals
from
django.db
import
migrations
,
models
class
Migration
(
migrations
.
Migration
):
dependencies
=
[
]
operations
=
[
migrations
.
CreateModel
(
name
=
'Launderette'
,
fields
=
[
(
'id'
,
models
.
AutoField
(
serialize
=
False
,
auto_created
=
True
,
verbose_name
=
'ID'
,
primary_key
=
True
)),
(
'name'
,
models
.
CharField
(
max_length
=
30
,
verbose_name
=
'name'
)),
],
options
=
{
'verbose_name'
:
'Launderette'
,
},
),
migrations
.
CreateModel
(
name
=
'Machine'
,
fields
=
[
(
'id'
,
models
.
AutoField
(
serialize
=
False
,
auto_created
=
True
,
verbose_name
=
'ID'
,
primary_key
=
True
)),
(
'name'
,
models
.
CharField
(
max_length
=
30
,
verbose_name
=
'name'
)),
(
'is_working'
,
models
.
BooleanField
(
default
=
True
,
verbose_name
=
'is working'
)),
(
'launderette'
,
models
.
ForeignKey
(
to
=
'launderette.Launderette'
,
related_name
=
'machines'
,
verbose_name
=
'launderette'
)),
],
options
=
{
'verbose_name'
:
'Machine'
,
},
),
migrations
.
CreateModel
(
name
=
'Token'
,
fields
=
[
(
'id'
,
models
.
AutoField
(
serialize
=
False
,
auto_created
=
True
,
verbose_name
=
'ID'
,
primary_key
=
True
)),
(
'name'
,
models
.
CharField
(
max_length
=
30
,
verbose_name
=
'name'
)),
(
'type'
,
models
.
CharField
(
choices
=
[(
'WASHING'
,
'Washing'
),
(
'DRYING'
,
'Drying'
)],
max_length
=
10
,
verbose_name
=
'type'
)),
(
'launderette'
,
models
.
ForeignKey
(
to
=
'launderette.Launderette'
,
related_name
=
'tokens'
,
verbose_name
=
'launderette'
)),
],
options
=
{
'verbose_name'
:
'Token'
,
},
),
]
launderette/migrations/0002_auto_20160728_1858.py
0 → 100644
View file @
a01fc63a
# -*- coding: utf-8 -*-
from
__future__
import
unicode_literals
from
django.db
import
migrations
,
models
class
Migration
(
migrations
.
Migration
):
dependencies
=
[
(
'subscription'
,
'0002_auto_20160718_1805'
),
(
'launderette'
,
'0001_initial'
),
]
operations
=
[
migrations
.
CreateModel
(
name
=
'Slot'
,
fields
=
[
(
'id'
,
models
.
AutoField
(
primary_key
=
True
,
serialize
=
False
,
verbose_name
=
'ID'
,
auto_created
=
True
)),
(
'start_date'
,
models
.
DateTimeField
(
verbose_name
=
'start date'
)),
(
'type'
,
models
.
CharField
(
max_length
=
10
,
verbose_name
=
'type'
,
choices
=
[(
'WASHING'
,
'Washing'
),
(
'DRYING'
,
'Drying'
)])),
(
'machine'
,
models
.
ForeignKey
(
verbose_name
=
'machine'
,
related_name
=
'slots'
,
to
=
'launderette.Machine'
)),
],
),
migrations
.
AlterField
(
model_name
=
'token'
,
name
=
'name'
,
field
=
models
.
IntegerField
(
verbose_name
=
'name'
),
),
migrations
.
AddField
(
model_name
=
'slot'
,
name
=
'token'
,
field
=
models
.
ForeignKey
(
verbose_name
=
'token'
,
related_name
=
'slots'
,
to
=
'launderette.Token'
),
),
migrations
.
AddField
(
model_name
=
'slot'
,
name
=
'user'
,
field
=
models
.
ForeignKey
(
verbose_name
=
'user'
,
related_name
=
'slots'
,
to
=
'subscription.Subscriber'
),
),
]
launderette/migrations/0003_launderette_sellers.py
0 → 100644
View file @
a01fc63a
# -*- coding: utf-8 -*-
from
__future__
import
unicode_literals
from
django.db
import
migrations
,
models
class
Migration
(
migrations
.
Migration
):
dependencies
=
[
(
'subscription'
,
'0002_auto_20160718_1805'
),
(
'launderette'
,
'0002_auto_20160728_1858'
),
]
operations
=
[
migrations
.
AddField
(
model_name
=
'launderette'
,
name
=
'sellers'
,
field
=
models
.
ManyToManyField
(
to
=
'subscription.Subscriber'
,
verbose_name
=
'sellers'
,
related_name
=
'launderettes'
),
),
]
launderette/migrations/0004_auto_20160728_1922.py
0 → 100644
View file @
a01fc63a
# -*- coding: utf-8 -*-
from
__future__
import
unicode_literals
from
django.db
import
migrations
,
models
class
Migration
(
migrations
.
Migration
):
dependencies
=
[
(
'launderette'
,
'0003_launderette_sellers'
),
]
operations
=
[
migrations
.
AlterField
(
model_name
=
'launderette'
,
name
=
'sellers'
,
field
=
models
.
ManyToManyField
(
blank
=
True
,
to
=
'subscription.Subscriber'
,
verbose_name
=
'sellers'
,
related_name
=
'launderettes'
),
),
]
launderette/migrations/__init__.py
0 → 100644
View file @
a01fc63a
launderette/models.py
0 → 100644
View file @
a01fc63a
from
django.db
import
models
from
django.utils.translation
import
ugettext_lazy
as
_
from
django.conf
import
settings
from
django.core.urlresolvers
import
reverse
from
core.models
import
User
from
subscription.models
import
Subscriber
# Create your models here.
class
Launderette
(
models
.
Model
):
name
=
models
.
CharField
(
_
(
'name'
),
max_length
=
30
)
sellers
=
models
.
ManyToManyField
(
Subscriber
,
verbose_name
=
_
(
'sellers'
),
related_name
=
'launderettes'
,
blank
=
True
)
class
Meta
:
verbose_name
=
_
(
'Launderette'
)
def
is_owned_by
(
self
,
user
):
"""
Method to see if that object can be edited by the given user
"""
if
user
.
is_in_group
(
settings
.
SITH_GROUPS
[
'launderette-admin'
][
'name'
]):
return
True
return
False
def
can_be_viewed_by
(
self
,
user
):
return
user
.
is_in_group
(
settings
.
SITH_MAIN_MEMBERS_GROUP
)
def
__str__
(
self
):
return
self
.
name
def
get_absolute_url
(
self
):
return
reverse
(
'launderette:launderette_list'
)
class
Machine
(
models
.
Model
):
name
=
models
.
CharField
(
_
(
'name'
),
max_length
=
30
)
launderette
=
models
.
ForeignKey
(
Launderette
,
related_name
=
'machines'
,
verbose_name
=
_
(
'launderette'
))
is_working
=
models
.
BooleanField
(
_
(
'is working'
),
default
=
True
)
class
Meta
:
verbose_name
=
_
(
'Machine'
)
def
is_owned_by
(
self
,
user
):
"""
Method to see if that object can be edited by the given user
"""
if
user
.
is_in_group
(
settings
.
SITH_GROUPS
[
'launderette-admin'
][
'name'
]):
return
True
return
False
class
Token
(
models
.
Model
):
name
=
models
.
IntegerField
(
_
(
'name'
))
launderette
=
models
.
ForeignKey
(
Launderette
,
related_name
=
'tokens'
,
verbose_name
=
_
(
'launderette'
))
type
=
models
.
CharField
(
_
(
'type'
),
max_length
=
10
,
choices
=
[(
'WASHING'
,
_
(
'Washing'
)),
(
'DRYING'
,
_
(
'Drying'
))])
class
Meta
:
verbose_name
=
_
(
'Token'
)
def
is_owned_by
(
self
,
user
):
"""
Method to see if that object can be edited by the given user
"""
if
user
.
is_in_group
(
settings
.
SITH_GROUPS
[
'launderette-admin'
][
'name'
]):
return
True
return
False
class
Slot
(
models
.
Model
):
start_date
=
models
.
DateTimeField
(
_
(
'start date'
))
type
=
models
.
CharField
(
_
(
'type'
),
max_length
=
10
,
choices
=
[(
'WASHING'
,
_
(
'Washing'
)),
(
'DRYING'
,
_
(
'Drying'
))])
machine
=
models
.
ForeignKey
(
Machine
,
related_name
=
'slots'
,
verbose_name
=
_
(
'machine'
))
token
=
models
.
ForeignKey
(
Token
,
related_name
=
'slots'
,
verbose_name
=
_
(
'token'
))
user
=
models
.
ForeignKey
(
Subscriber
,
related_name
=
'slots'
,
verbose_name
=
_
(
'user'
))
def
full_clean
(
self
):
return
super
(
Slot
,
self
).
full_clean
()
launderette/templates/launderette/counter_click.jinja
0 → 100644
View file @
a01fc63a
{%
extends
"core/base.jinja"
%}
{%
macro
add_product
(
id
,
content
)
%}
<form
method=
"post"
action=
"
{{
url
(
'counter:click'
,
counter_id
=
counter.id
,
user_id
=
customer.user.id
)
}}
"
class=
"inline"
style=
"display:inline"
>
{%
csrf_token
%}
<input
type=
"hidden"
name=
"action"
value=
"add_product"
>
<button
type=
"submit"
name=
"product_id"
value=
"
{{
id
}}
"
>
{{
content
}}
</button>
</form>
{%
endmacro
%}
{%
macro
del_product
(
id
,
content
)
%}
<form
method=
"post"
action=
"
{{
url
(
'counter:click'
,
counter_id
=
counter.id
,
user_id
=
customer.user.id
)
}}
"
class=
"inline"
style=
"display:inline"
>
{%
csrf_token
%}
<input
type=
"hidden"
name=
"action"
value=
"del_product"
>
<button
type=
"submit"
name=
"product_id"
value=
"
{{
id
}}
"
>
{{
content
}}
</button>
</form>
{%
endmacro
%}
{%
block
content
%}
<h3>
{%
trans
%}
Counter
{%
endtrans
%}
</h3>
<h4>
{{
counter
}}
</h4>
<p><strong>
{%
trans
%}
Club:
{%
endtrans
%}
</strong>
{{
counter.club
}}
</p>
<div>
<h5>
{%
trans
%}
Customer
{%
endtrans
%}
</h5>
<p>
{{
customer.user.get_display_name
()
}}
,
{{
customer.amount
}}
€
</p>
</div>
{%
if
counter.type
==
'BAR'
%}
<div>
<h5>
{%
trans
%}
Refilling
{%
endtrans
%}
</h5>
<form
method=
"post"
action=
"
{{
url
(
'counter:click'
,
counter_id
=
counter.id
,
user_id
=
customer.user.id
)
}}
"
>
{%
csrf_token
%}
{{
refill_form.as_p
()
}}
<input
type=
"hidden"
name=
"action"
value=
"refill"
>
<input
type=
"submit"
value=
"
{%
trans
%}
Go
{%
endtrans
%}
"
/>
</form>
</div>
{%
endif
%}
<div>
<h5>
{%
trans
%}
Selling
{%
endtrans
%}
</h5>
{%
if
request.session
[
'not_enough'
]
%}
<p><strong>
{%
trans
%}
Not enough money
{%
endtrans
%}
</strong></p>
{%
endif
%}
<form
method=
"post"
action=
"
{{
url
(
'counter:click'
,
counter_id
=
counter.id
,
user_id
=
customer.user.id
)
}}
"
>
{%
csrf_token
%}
<input
type=
"hidden"
name=
"action"
value=
"code"
>
<input
type=
"input"
name=
"code"
value=
""
autofocus
/>
<input
type=
"submit"
value=
"
{%
trans
%}
Go
{%
endtrans
%}
"
/>
</form>
<p>
{%
trans
%}
Basket:
{%
endtrans
%}
</p>
<ul>
{%
for
id
,
infos
in
request.session
[
'basket'
]
|
dictsort
%}
{%
set
product
=
counter.products.
filter
(
id
=
id
)
.
first
()
%}
{%
set
s
=
infos
[
'qty'
]
*
infos
[
'price'
]
/
100
%}
<li>
{{
del_product
(
id
,
'-'
)
}}
{{
infos
[
'qty'
]
}}
{{
add_product
(
id
,
'+'
)
}}
{{
product.name
}}
:
{{
"%0.2f"
|
format
(
s
)
}}
€
</li>
{%
endfor
%}
</ul>
<p><strong>
{%
trans
%}
Total:
{%
endtrans
%}{{
"%0.2f"
|
format
(
basket_total
)
}}
€
</strong></p>
<form
method=
"post"
action=
"
{{
url
(
'counter:click'
,
counter_id
=
counter.id
,
user_id
=
customer.user.id
)
}}
"
>
{%
csrf_token
%}
<input
type=
"hidden"
name=
"action"
value=
"finish"
>
<input
type=
"submit"
value=
"
{%
trans
%}
Finish
{%
endtrans
%}
"
/>
</form>
<form
method=
"post"
action=
"
{{
url
(
'counter:click'
,
counter_id
=
counter.id
,
user_id
=
customer.user.id
)
}}
"
>
{%
csrf_token
%}
<input
type=
"hidden"
name=
"action"
value=
"cancel"
>
<input
type=
"submit"
value=
"
{%
trans
%}
Cancel
{%
endtrans
%}
"
/>
</form>
<p><strong>
{%
trans
%}
Products:
{%
endtrans
%}
</strong>
{%
for
p
in
counter.products.all
()
%}
{{
add_product
(
p.id
,
p.name
)
}}
{%
endfor
%}
</p>
</div>
{%
endblock
%}
launderette/templates/launderette/counter_edit.jinja
0 → 100644
View file @
a01fc63a
{%
extends
"core/base.jinja"
%}
{%
block
content
%}
<h2>
{%
trans
%}
Edit counter
{%
endtrans
%}
</h2>
<form
action=
""
method=
"post"
>
{%
csrf_token
%}
{{
form.as_p
()
}}
<p><input
type=
"submit"
value=
"
{%
trans
%}
Save
{%
endtrans
%}
"
/></p>
</form>
{%
endblock
%}
launderette/templates/launderette/counter_main.jinja
0 → 100644
View file @
a01fc63a
{%
extends
"core/base.jinja"
%}
{%
macro
barman_logout_link
(
user
)
%}
<form
method=
"post"
action=
"
{{
url
(
'counter:logout'
,
counter_id
=
counter.id
)
}}
"
class=
"inline"
>
{%
csrf_token
%}
<input
type=
"hidden"
name=
"user_id"
value=
"
{{
user.id
}}
"
>
<button
type=
"submit"
name=
"submit_param"
value=
"submit_value"
class=
"link-button"
>
{{
user.get_display_name
()
}}
</button>
</form>
{%
endmacro
%}
{%
block
content
%}
<h3>
{%
trans
counter_name
=
counter
%}{{
counter_name
}}
counter
{%
endtrans
%}
</h3>
<div>
<h3>
{%
trans
%}
Sellings
{%
endtrans
%}
</h3>
{%
if
last_basket
%}
<h4>
{%
trans
%}
Last selling:
{%
endtrans
%}
</h4>
<p>
{%
trans
%}
Client:
{%
endtrans
%}{{
last_customer
}}
-
{%
trans
%}
New amount:
{%
endtrans
%}{{
new_customer_amount
}}
€.
</p>
<ul>
{%
for
s
in
last_basket
%}
<li>
{{
s
}}
</li>
{%
endfor
%}
</ul>
<p><strong>
{%
trans
%}
Total:
{%
endtrans
%}{{
last_total
}}
€
</strong></p>
{%
endif
%}
{%
if
barmen
%}
<p>
{%
trans
%}
Enter client code:
{%
endtrans
%}
</p>
<form
method=
"post"
action=
"
{{
url
(
'counter:details'
,
counter_id
=
counter.id
)
}}
"
>
{%
csrf_token
%}
{{
form.as_p
()
}}
<p><input
type=
"submit"
value=
"
{%
trans
%}
validate
{%
endtrans
%}
"
/></p>
</form>
{%
else
%}
<p>
{%
trans
%}
Please, login
{%
endtrans
%}
</p>
{%
endif
%}
</div>
{%
if
counter.type
==
'BAR'
%}
<div>
<h3>
{%
trans
%}
Barman:
{%
endtrans
%}
</h3>
<ul>
{%
for
b
in
barmen
%}
<li>
{{
barman_logout_link
(
b
)
}}
</li>
{%
endfor
%}
</ul>
<form
method=
"post"
action=
"
{{
url
(
'counter:login'
,
counter_id
=
counter.id
)
}}
"
>
{%
csrf_token
%}
{{
login_form.as_p
()
}}
<p><input
type=
"submit"
value=
"
{%
trans
%}
login
{%
endtrans
%}
"
/></p>
</form>
</div>
{%
endif
%}
{%
endblock
%}
launderette/templates/launderette/launderette_book.jinja
0 → 100644
View file @
a01fc63a
{%
extends
"core/base.jinja"
%}
{%
block
title
%}
{%
trans
%}
Launderette
{%
endtrans
%}
{%
endblock
%}
{%
block
content
%}
{%
if
request.user.is_in_group
(
settings.SITH_MAIN_MEMBERS_GROUP
)
%}
<ul>
{%
for
l
in
launderette_list
%}
<li><a
href=
"
{{
url
(
'launderette:book_slot'
,
launderette_id
=
l.id
)
}}
"
>
{{
l
}}
</a></li>
{%
endfor
%}
</ul>
{%
endif
%}
{%
endblock
%}
launderette/templates/launderette/launderette_detail.jinja
0 → 100644
View file @
a01fc63a
{%
extends
"core/base.jinja"
%}
{%
block
title
%}
{%
trans
%}
Launderette admin
{%
endtrans
%}
{%
endblock
%}
{%
block
content
%}
Admin
{%
endblock
%}
launderette/templates/launderette/launderette_list.jinja
0 → 100644
View file @
a01fc63a
{%
extends
"core/base.jinja"
%}
{%
block
title
%}
{%
trans
%}
Launderette admin list
{%
endtrans
%}
{%
endblock
%}
{%
block
content
%}
<p><a
href=
"
{{
url
(
'launderette:launderette_new'
)
}}
"
>
{%
trans
%}
New launderette
{%
endtrans
%}
</a></p>
{%
if
launderette_list
%}
<h3>
{%
trans
%}
Launderette admin list
{%
endtrans
%}
</h3>
<ul>
{%
for
l
in
launderette_list
%}
<li><a
href=
"
{{
url
(
'launderette:launderette_details'
,
launderette_id
=
l.id
)
}}
"
>
{{
l
}}
</a>
-
<a
href=
"
{{
url
(
'launderette:launderette_edit'
,
launderette_id
=
l.id
)
}}
"
>
{%
trans
%}
Edit
{%
endtrans
%}
</a></li>
{%
endfor
%}
</ul>
{%
else
%}
{%
trans
%}
There is no launderette in this website.
{%
endtrans
%}
{%
endif
%}
{%
endblock
%}
launderette/templates/launderette/launderette_main.jinja
0 → 100644
View file @
a01fc63a
{%
extends
"core/base.jinja"
%}
{%
block
title
%}
{%
trans
%}
Launderette
{%
endtrans
%}
{%
endblock
%}
{%
block
content
%}
{%
if
request.user.is_in_group
(
settings.SITH_GROUPS
[
'launderette-admin'
][
'name'
])
%}
<p><a
href=
"
{{
url
(
'core:page_edit'
,
page_name
=
page.get_full_name
())
}}
"
>
{%
trans
%}
Edit presentation page
{%
endtrans
%}
</a></p>
{%
endif
%}
{%
if
request.user.is_in_group
(
settings.SITH_MAIN_MEMBERS_GROUP
)
%}
<p><a
href=
"
{{
url
(
'launderette:book_main'
)
}}
"
>
{%
trans
%}
Book launderette slot
{%
endtrans
%}
</a></p>
{%
endif
%}
{{
page.revisions.last
()
.
content
|
markdown
}}
{%
endblock
%}
launderette/templates/launderette/product_list.jinja
0 → 100644
View file @
a01fc63a
{%
extends
"core/base.jinja"
%}
{%
block
title
%}
{%
trans
%}
Product list
{%
endtrans
%}
{%
endblock
%}
{%
block
content
%}