diff --git a/lingo/manager/static/css/style.scss b/lingo/manager/static/css/style.scss
index 1fb43fc..e1aeb0c 100644
--- a/lingo/manager/static/css/style.scss
+++ b/lingo/manager/static/css/style.scss
@@ -1,3 +1,5 @@
+$mobile-limit: 760px;
+
li span.identifier {
font-size: 80%;
opacity: 0.6;
@@ -22,6 +24,46 @@ div.paragraph {
}
}
+a.button.button-paragraph {
+ text-align: left;
+ box-sizing: border-box;
+ display: block;
+ max-width: 100%;
+ margin-bottom: 1rem;
+}
+
+a.button.button-paragraph p {
+ font-weight: normal;
+ color: #333;
+ margin: 0;
+ line-height: 150%;
+}
+
+a.button.button-paragraph p:last-child {
+ padding-bottom: 5px;
+}
+
+a.button.button-paragraph:hover p {
+ color: white;
+}
+
+#lingo-manager-main {
+ background: none bottom right no-repeat;
+ // TODO background-image
+ min-height: 80vh;
+ background-size: 600px auto;
+ @media screen and (max-width: 1200px) {
+ background-size: 100% auto;
+ }
+ width: 99%;
+ height: 90%;
+ @media screen and (max-width: $mobile-limit) {
+ background: none !important;
+ min-height: 0;
+ height: auto;
+ }
+}
+
.sortable {
span.handle {
cursor: move;
diff --git a/lingo/manager/templates/lingo/manager_base.html b/lingo/manager/templates/lingo/manager_base.html
index c28d9be..c0835b3 100644
--- a/lingo/manager/templates/lingo/manager_base.html
+++ b/lingo/manager/templates/lingo/manager_base.html
@@ -1,7 +1,12 @@
{% extends "lingo/base.html" %}
-{% load static %}
+{% load i18n static %}
{% block extrascripts %}
{{ block.super }}
{% endblock %}
+
+{% block breadcrumb %}
+{{ block.super }}
+{% trans "Payments" %}
+{% endblock %}
diff --git a/lingo/manager/templates/lingo/manager_homepage.html b/lingo/manager/templates/lingo/manager_homepage.html
index c65cc43..8490e01 100644
--- a/lingo/manager/templates/lingo/manager_homepage.html
+++ b/lingo/manager/templates/lingo/manager_homepage.html
@@ -1,8 +1,9 @@
{% extends "lingo/base.html" %}
{% load i18n %}
+
{% block appbar %}
{% trans 'Payments' %}
- {% trans 'Pricing' context 'pricing' %}
+ {% trans 'Pricing' context 'pricing' %}
{% endblock %}
diff --git a/lingo/pricing/templates/lingo/pricing/manager_agenda_list.html b/lingo/pricing/templates/lingo/pricing/manager_agenda_list.html
index 64ea632..1ad35b2 100644
--- a/lingo/pricing/templates/lingo/pricing/manager_agenda_list.html
+++ b/lingo/pricing/templates/lingo/pricing/manager_agenda_list.html
@@ -1,4 +1,4 @@
-{% extends "lingo/pricing/manager_pricing_list.html" %}
+{% extends "lingo/pricing/manager_home.html" %}
{% load i18n %}
{% block breadcrumb %}
@@ -10,7 +10,6 @@
{% trans 'Agendas' %}
{% trans 'Refresh agendas' %}
- {% trans 'Check types' %}
{% endblock %}
diff --git a/lingo/pricing/templates/lingo/pricing/manager_check_type_list.html b/lingo/pricing/templates/lingo/pricing/manager_check_type_list.html
index 61effaa..e8e8456 100644
--- a/lingo/pricing/templates/lingo/pricing/manager_check_type_list.html
+++ b/lingo/pricing/templates/lingo/pricing/manager_check_type_list.html
@@ -1,4 +1,4 @@
-{% extends "lingo/pricing/manager_agenda_list.html" %}
+{% extends "lingo/pricing/manager_home.html" %}
{% load i18n %}
{% block breadcrumb %}
diff --git a/lingo/pricing/templates/lingo/pricing/manager_criteria_list.html b/lingo/pricing/templates/lingo/pricing/manager_criteria_list.html
index 02a21eb..2ba6cfa 100644
--- a/lingo/pricing/templates/lingo/pricing/manager_criteria_list.html
+++ b/lingo/pricing/templates/lingo/pricing/manager_criteria_list.html
@@ -1,4 +1,4 @@
-{% extends "lingo/pricing/manager_pricing_list.html" %}
+{% extends "lingo/pricing/manager_home.html" %}
{% load i18n %}
{% block breadcrumb %}
diff --git a/lingo/pricing/templates/lingo/pricing/manager_home.html b/lingo/pricing/templates/lingo/pricing/manager_home.html
new file mode 100644
index 0000000..cae2514
--- /dev/null
+++ b/lingo/pricing/templates/lingo/pricing/manager_home.html
@@ -0,0 +1,45 @@
+{% extends "lingo/manager_base.html" %}
+{% load i18n %}
+
+{% block breadcrumb %}
+{{ block.super }}
+{% trans "Pricing" context 'pricing' %}
+{% endblock %}
+
+{% block appbar %}
+{% trans 'Pricing' context 'pricing' %}
+
+
+
+
+{% endblock %}
+
+{% block content %}
+
+{% endblock %}
diff --git a/lingo/pricing/templates/lingo/pricing/manager_pricing_list.html b/lingo/pricing/templates/lingo/pricing/manager_pricing_list.html
index d5281ac..4986939 100644
--- a/lingo/pricing/templates/lingo/pricing/manager_pricing_list.html
+++ b/lingo/pricing/templates/lingo/pricing/manager_pricing_list.html
@@ -1,21 +1,14 @@
-{% extends "lingo/manager_base.html" %}
+{% extends "lingo/pricing/manager_home.html" %}
{% load i18n %}
{% block breadcrumb %}
{{ block.super }}
-{% trans "Pricing" context 'pricing' %}
+{% trans "Pricing models" %}
{% endblock %}
{% block appbar %}
{% trans 'Pricing' context 'pricing' %}
-
-
- {% trans 'Agendas' %}
- {% trans 'Criterias' %}
{% trans 'New pricing model' %}
{% endblock %}
diff --git a/lingo/pricing/urls.py b/lingo/pricing/urls.py
index a7f4167..df77bbf 100644
--- a/lingo/pricing/urls.py
+++ b/lingo/pricing/urls.py
@@ -19,61 +19,62 @@ from django.conf.urls import url
from . import views
urlpatterns = [
- url(r'^$', views.pricing_list, name='lingo-manager-pricing-list'),
+ url(r'^$', views.home, name='lingo-manager-pricing-home'),
url(r'^import/$', views.config_import, name='lingo-manager-pricing-config-import'),
url(r'^export/$', views.config_export, name='lingo-manager-pricing-config-export'),
+ url(r'^models/$', views.pricing_list, name='lingo-manager-pricing-list'),
url(
- r'^add/$',
+ r'^model/add/$',
views.pricing_add,
name='lingo-manager-pricing-add',
),
url(
- r'^(?P\d+)/$',
+ r'^model/(?P\d+)/$',
views.pricing_detail,
name='lingo-manager-pricing-detail',
),
url(
- r'^(?P\d+)/edit/$',
+ r'^model/(?P\d+)/edit/$',
views.pricing_edit,
name='lingo-manager-pricing-edit',
),
url(
- r'^(?P\d+)/delete/$',
+ r'^model/(?P\d+)/delete/$',
views.pricing_delete,
name='lingo-manager-pricing-delete',
),
url(
- r'^(?P\d+)/duplicate/$',
+ r'^model/(?P\d+)/duplicate/$',
views.pricing_duplicate,
name='lingo-manager-pricing-duplicate',
),
url(
- r'^(?P\d+)/export/$',
+ r'^model/(?P\d+)/export/$',
views.pricing_export,
name='lingo-manager-pricing-export',
),
url(
- r'^(?P\d+)/variable/$',
+ r'^model/(?P\d+)/variable/$',
views.pricing_variable_edit,
name='lingo-manager-pricing-variable-edit',
),
url(
- r'^(?P\d+)/category/add/$',
+ r'^model/(?P\d+)/category/add/$',
views.pricing_criteria_category_add,
name='lingo-manager-pricing-criteria-category-add',
),
url(
- r'^(?P\d+)/category/(?P\d+)/edit/$',
+ r'^model/(?P\d+)/category/(?P\d+)/edit/$',
views.pricing_criteria_category_edit,
name='lingo-manager-pricing-criteria-category-edit',
),
url(
- r'^(?P\d+)/category/(?P\d+)/delete/$',
+ r'^model/(?P\d+)/category/(?P\d+)/delete/$',
views.pricing_criteria_category_delete,
name='lingo-manager-pricing-criteria-category-delete',
),
url(
- r'^(?P\d+)/order/$',
+ r'^model/(?P\d+)/order/$',
views.pricing_criteria_category_order,
name='lingo-manager-pricing-criteria-category-order',
),
diff --git a/lingo/pricing/views.py b/lingo/pricing/views.py
index dfc440d..300dc2c 100644
--- a/lingo/pricing/views.py
+++ b/lingo/pricing/views.py
@@ -35,6 +35,7 @@ from django.views.generic import (
FormView,
ListView,
RedirectView,
+ TemplateView,
UpdateView,
)
from django.views.generic.detail import SingleObjectMixin
@@ -62,6 +63,13 @@ from lingo.pricing.utils import export_site, import_site
from lingo.utils.misc import AgendaImportError
+class HomeView(TemplateView):
+ template_name = 'lingo/pricing/manager_home.html'
+
+
+home = HomeView.as_view()
+
+
class ConfigExportView(FormView):
form_class = ExportForm
template_name = 'lingo/pricing/export.html'
@@ -82,7 +90,7 @@ config_export = ConfigExportView.as_view()
class ConfigImportView(FormView):
form_class = ImportForm
template_name = 'lingo/pricing/import.html'
- success_url = reverse_lazy('lingo-manager-pricing-list')
+ success_url = reverse_lazy('lingo-manager-pricing-home')
def form_valid(self, form):
try:
diff --git a/tests/pricing/manager/test_agenda.py b/tests/pricing/manager/test_agenda.py
index 0c7e2c3..4a025d4 100644
--- a/tests/pricing/manager/test_agenda.py
+++ b/tests/pricing/manager/test_agenda.py
@@ -86,7 +86,7 @@ def test_add_agenda_pricing(app, admin_user):
resp = app.get('/manage/pricing/agenda/%s/' % agenda.pk)
assert AgendaPricing.objects.filter(agenda=agenda, pricing=pricing).count() == 2
- assert resp.text.count('"/manage/pricing/%s/"' % pricing.pk) == 2
+ assert resp.text.count('"/manage/pricing/model/%s/"' % pricing.pk) == 2
resp = app.get('/manage/pricing/agenda/%s/pricing/add/' % agenda.pk)
# starts on last date_end
diff --git a/tests/pricing/manager/test_checktype.py b/tests/pricing/manager/test_checktype.py
index d442030..e7d54b0 100644
--- a/tests/pricing/manager/test_checktype.py
+++ b/tests/pricing/manager/test_checktype.py
@@ -8,7 +8,7 @@ pytestmark = pytest.mark.django_db
def test_add_group(app, admin_user):
app = login(app)
- resp = app.get('/manage/pricing/agendas/')
+ resp = app.get('/manage/pricing/')
resp = resp.click('Check types')
resp = resp.click('New group')
resp.form['label'] = 'Foo bar'
diff --git a/tests/pricing/manager/test_import_export.py b/tests/pricing/manager/test_import_export.py
index d50ab9b..869254a 100644
--- a/tests/pricing/manager/test_import_export.py
+++ b/tests/pricing/manager/test_import_export.py
@@ -58,7 +58,7 @@ def test_import_pricing(app, admin_user):
pricing = Pricing.objects.create(label='Model')
app = login(app)
- resp = app.get('/manage/pricing/%s/export/' % pricing.id)
+ resp = app.get('/manage/pricing/model/%s/export/' % pricing.pk)
assert resp.headers['content-type'] == 'application/json'
assert resp.headers['content-disposition'] == 'attachment; filename="export_pricing_model_20210708.json"'
pricing_export = resp.text
@@ -68,7 +68,7 @@ def test_import_pricing(app, admin_user):
resp = resp.click('Import')
resp.form['config_json'] = Upload('export.json', pricing_export.encode('utf-8'), 'application/json')
resp = resp.form.submit()
- assert resp.location.endswith('/manage/pricing/%s/' % pricing.pk)
+ assert resp.location.endswith('/manage/pricing/model/%s/' % pricing.pk)
resp = resp.follow()
assert 'No pricing model created. A pricing model has been updated.' not in resp.text
assert Pricing.objects.count() == 1
@@ -80,7 +80,7 @@ def test_import_pricing(app, admin_user):
resp.form['config_json'] = Upload('export.json', pricing_export.encode('utf-8'), 'application/json')
resp = resp.form.submit()
pricing = Pricing.objects.latest('pk')
- assert resp.location.endswith('/manage/pricing/%s/' % pricing.pk)
+ assert resp.location.endswith('/manage/pricing/model/%s/' % pricing.pk)
resp = resp.follow()
assert 'A pricing model has been created. No pricing model updated.' not in resp.text
assert Pricing.objects.count() == 1
diff --git a/tests/pricing/manager/test_pricing.py b/tests/pricing/manager/test_pricing.py
index 3dbc373..d8dc187 100644
--- a/tests/pricing/manager/test_pricing.py
+++ b/tests/pricing/manager/test_pricing.py
@@ -13,11 +13,12 @@ def test_add_pricing(app, admin_user):
app = login(app)
resp = app.get('/manage/')
resp = resp.click('Pricing')
+ resp = resp.click(href='/manage/pricing/models/')
resp = resp.click('New pricing model')
resp.form['label'] = 'Pricing model for lunch'
resp = resp.form.submit()
pricing = Pricing.objects.latest('pk')
- assert resp.location.endswith('/manage/pricing/%s/' % pricing.pk)
+ assert resp.location.endswith('/manage/pricing/model/%s/' % pricing.pk)
assert pricing.label == 'Pricing model for lunch'
assert pricing.slug == 'pricing-model-for-lunch'
@@ -26,10 +27,10 @@ def test_detail_pricing(app, admin_user):
pricing = Pricing.objects.create(label='Model')
app = login(app)
- resp = app.get('/manage/pricing/')
- resp = resp.click(href='/manage/pricing/%s/' % pricing.pk)
- assert '/manage/pricing/%s/edit/' % pricing.pk in resp
- assert '/manage/pricing/%s/delete/' % pricing.pk in resp
+ resp = app.get('/manage/pricing/models/')
+ resp = resp.click(href='/manage/pricing/model/%s/' % pricing.pk)
+ assert '/manage/pricing/model/%s/edit/' % pricing.pk in resp
+ assert '/manage/pricing/model/%s/delete/' % pricing.pk in resp
agenda = Agenda.objects.create(label='Foo Bar')
AgendaPricing.objects.create(
@@ -44,7 +45,7 @@ def test_detail_pricing(app, admin_user):
date_start=datetime.date(year=2022, month=9, day=1),
date_end=datetime.date(year=2023, month=9, day=1),
)
- resp = app.get('/manage/pricing/%s/' % pricing.pk)
+ resp = app.get('/manage/pricing/model/%s/' % pricing.pk)
assert resp.text.count('"/manage/pricing/agenda/%s/"' % agenda.pk) == 1
@@ -53,8 +54,8 @@ def test_edit_pricing(app, admin_user):
pricing2 = Pricing.objects.create(label='Model 2')
app = login(app)
- resp = app.get('/manage/pricing/%s/' % pricing.pk)
- resp = resp.click(href='/manage/pricing/%s/edit/' % pricing.pk)
+ resp = app.get('/manage/pricing/model/%s/' % pricing.pk)
+ resp = resp.click(href='/manage/pricing/model/%s/edit/' % pricing.pk)
resp.form['label'] = 'Model Foo'
resp.form['slug'] = pricing2.slug
resp = resp.form.submit()
@@ -62,7 +63,7 @@ def test_edit_pricing(app, admin_user):
resp.form['slug'] = 'foo-bar'
resp = resp.form.submit()
- assert resp.location.endswith('/manage/pricing/%s/' % pricing.pk)
+ assert resp.location.endswith('/manage/pricing/model/%s/' % pricing.pk)
pricing.refresh_from_db()
assert pricing.label == 'Model Foo'
assert pricing.slug == 'foo-bar'
@@ -72,10 +73,10 @@ def test_delete_pricing(app, admin_user):
pricing = Pricing.objects.create(label='Model')
app = login(app)
- resp = app.get('/manage/pricing/%s/' % pricing.pk)
- resp = resp.click(href='/manage/pricing/%s/delete/' % pricing.pk)
+ resp = app.get('/manage/pricing/model/%s/' % pricing.pk)
+ resp = resp.click(href='/manage/pricing/model/%s/delete/' % pricing.pk)
resp = resp.form.submit()
- assert resp.location.endswith('/manage/pricing/')
+ assert resp.location.endswith('/manage/pricing/models/')
assert Pricing.objects.exists() is False
@@ -84,19 +85,19 @@ def test_duplicate_pricing(app, admin_user):
assert Pricing.objects.count() == 1
app = login(app)
- resp = app.get('/manage/pricing/%s/' % pricing.pk)
- resp = resp.click(href='/manage/pricing/%s/duplicate/' % pricing.pk)
+ resp = app.get('/manage/pricing/model/%s/' % pricing.pk)
+ resp = resp.click(href='/manage/pricing/model/%s/duplicate/' % pricing.pk)
resp = resp.form.submit()
assert Pricing.objects.count() == 2
new_pricing = Pricing.objects.latest('pk')
- assert resp.location == '/manage/pricing/%s/' % new_pricing.pk
+ assert resp.location == '/manage/pricing/model/%s/' % new_pricing.pk
assert new_pricing.pk != pricing.pk
resp = resp.follow()
assert 'copy-of-model' in resp.text
- resp = resp.click(href='/manage/pricing/%s/duplicate/' % new_pricing.pk)
+ resp = resp.click(href='/manage/pricing/model/%s/duplicate/' % new_pricing.pk)
resp.form['label'] = 'hop'
resp = resp.form.submit().follow()
assert 'hop' in resp.text
@@ -107,9 +108,9 @@ def test_pricing_edit_extra_variables(app, admin_user):
assert pricing.extra_variables == {}
app = login(app)
- resp = app.get('/manage/pricing/%s/' % pricing.id)
+ resp = app.get('/manage/pricing/model/%s/' % pricing.pk)
assert '' not in resp.text
- resp = resp.click(href='/manage/pricing/%s/variable/' % pricing.id)
+ resp = resp.click(href='/manage/pricing/model/%s/variable/' % pricing.pk)
resp.form['form-0-key'] = 'foo'
resp.form['form-0-value'] = 'bar'
resp = resp.form.submit().follow()
@@ -118,7 +119,7 @@ def test_pricing_edit_extra_variables(app, admin_user):
assert '' in resp.text
assert 'foo' in resp
- resp = resp.click(href='/manage/pricing/%s/variable/' % pricing.id)
+ resp = resp.click(href='/manage/pricing/model/%s/variable/' % pricing.pk)
assert resp.form['form-TOTAL_FORMS'].value == '2'
assert resp.form['form-0-key'].value == 'foo'
assert resp.form['form-0-value'].value == 'bar'
@@ -135,7 +136,7 @@ def test_pricing_edit_extra_variables(app, admin_user):
}
assert 'blah, foo' in resp
- resp = resp.click(href='/manage/pricing/%s/variable/' % pricing.id)
+ resp = resp.click(href='/manage/pricing/model/%s/variable/' % pricing.pk)
assert resp.form['form-TOTAL_FORMS'].value == '3'
assert resp.form['form-0-key'].value == 'blah'
assert resp.form['form-0-value'].value == 'baz'
@@ -162,8 +163,8 @@ def test_pricing_add_category(app, admin_user):
category4 = CriteriaCategory.objects.create(label='Cat 4')
app = login(app)
- resp = app.get('/manage/pricing/%s/' % pricing.pk)
- resp = resp.click(href='/manage/pricing/%s/category/add/' % pricing.pk)
+ resp = app.get('/manage/pricing/model/%s/' % pricing.pk)
+ resp = resp.click(href='/manage/pricing/model/%s/category/add/' % pricing.pk)
assert list(resp.context['form'].fields['category'].queryset) == [
category1,
category2,
@@ -172,9 +173,9 @@ def test_pricing_add_category(app, admin_user):
]
resp.form['category'] = category1.pk
resp = resp.form.submit()
- assert resp.location.endswith('/manage/pricing/%s/' % pricing.pk)
+ assert resp.location.endswith('/manage/pricing/model/%s/' % pricing.pk)
resp = resp.follow()
- assert '/manage/pricing/%s/category/add/' % pricing.pk in resp
+ assert '/manage/pricing/model/%s/category/add/' % pricing.pk in resp
assert list(
PricingCriteriaCategory.objects.filter(pricing=pricing).values_list('category', flat=True)
) == [category1.pk]
@@ -182,7 +183,7 @@ def test_pricing_add_category(app, admin_user):
1
]
- resp = app.get('/manage/pricing/%s/category/add/' % pricing.pk)
+ resp = app.get('/manage/pricing/model/%s/category/add/' % pricing.pk)
assert list(resp.context['form'].fields['category'].queryset) == [category2, category3, category4]
resp.form['category'] = category4.pk
resp = resp.form.submit().follow()
@@ -194,11 +195,11 @@ def test_pricing_add_category(app, admin_user):
2,
]
- resp = app.get('/manage/pricing/%s/category/add/' % pricing.pk)
+ resp = app.get('/manage/pricing/model/%s/category/add/' % pricing.pk)
assert list(resp.context['form'].fields['category'].queryset) == [category2, category3]
resp.form['category'] = category2.pk
resp = resp.form.submit().follow()
- assert '/manage/pricing/%s/category/add/' % pricing.pk not in resp
+ assert '/manage/pricing/model/%s/category/add/' % pricing.pk not in resp
assert list(
PricingCriteriaCategory.objects.filter(pricing=pricing).values_list('category', flat=True)
) == [category1.pk, category4.pk, category2.pk]
@@ -208,7 +209,7 @@ def test_pricing_add_category(app, admin_user):
3,
]
- app.get('/manage/pricing/%s/category/add/' % pricing.pk, status=404)
+ app.get('/manage/pricing/model/%s/category/add/' % pricing.pk, status=404)
def test_pricing_edit_category(app, admin_user):
@@ -224,8 +225,8 @@ def test_pricing_edit_category(app, admin_user):
pricing.categories.add(category2, through_defaults={'order': 2})
app = login(app)
- resp = app.get('/manage/pricing/%s/' % pricing.pk)
- resp = resp.click(href='/manage/pricing/%s/category/%s/edit/' % (pricing.pk, category1.pk))
+ resp = app.get('/manage/pricing/model/%s/' % pricing.pk)
+ resp = resp.click(href='/manage/pricing/model/%s/category/%s/edit/' % (pricing.pk, category1.pk))
assert list(resp.context['form'].fields['criterias'].queryset) == [
criteria1,
criteria2,
@@ -235,17 +236,17 @@ def test_pricing_edit_category(app, admin_user):
assert list(resp.context['form'].initial['criterias']) == []
resp.form['criterias'] = [criteria1.pk, criteria3.pk]
resp = resp.form.submit()
- assert resp.location.endswith('/manage/pricing/%s/' % pricing.pk)
+ assert resp.location.endswith('/manage/pricing/model/%s/' % pricing.pk)
resp = resp.follow()
assert list(pricing.criterias.order_by('pk')) == [criteria1, criteria3]
- resp = app.get('/manage/pricing/%s/category/%s/edit/' % (pricing.pk, category1.pk))
+ resp = app.get('/manage/pricing/model/%s/category/%s/edit/' % (pricing.pk, category1.pk))
assert list(resp.context['form'].initial['criterias']) == [criteria1, criteria3]
resp.form['criterias'] = [criteria1.pk, criteria4.pk]
resp = resp.form.submit().follow()
assert list(pricing.criterias.order_by('pk')) == [criteria1, criteria4]
- resp = app.get('/manage/pricing/%s/category/%s/edit/' % (pricing.pk, category2.pk))
+ resp = app.get('/manage/pricing/model/%s/category/%s/edit/' % (pricing.pk, category2.pk))
assert list(resp.context['form'].fields['criterias'].queryset) == [criteria5]
assert list(resp.context['form'].initial['criterias']) == []
resp.form['criterias'] = [criteria5.pk]
@@ -264,18 +265,18 @@ def test_pricing_delete_category(app, admin_user):
pricing.criterias.add(criteria1, criteria2)
app = login(app)
- resp = app.get('/manage/pricing/%s/' % pricing.pk)
- resp = resp.click(href='/manage/pricing/%s/category/%s/delete/' % (pricing.pk, category1.pk))
+ resp = app.get('/manage/pricing/model/%s/' % pricing.pk)
+ resp = resp.click(href='/manage/pricing/model/%s/category/%s/delete/' % (pricing.pk, category1.pk))
resp = resp.form.submit()
- assert resp.location.endswith('/manage/pricing/%s/' % pricing.pk)
+ assert resp.location.endswith('/manage/pricing/model/%s/' % pricing.pk)
resp = resp.follow()
assert list(pricing.categories.all()) == [category2]
assert list(pricing.criterias.all()) == [criteria2]
# not linked
- app.get('/manage/pricing/%s/category/%s/delete/' % (pricing.pk, category1.pk), status=404)
+ app.get('/manage/pricing/model/%s/category/%s/delete/' % (pricing.pk, category1.pk), status=404)
# unknown
- app.get('/manage/pricing/%s/category/%s/delete/' % (pricing.pk, 0), status=404)
+ app.get('/manage/pricing/model/%s/category/%s/delete/' % (pricing.pk, 0), status=404)
def test_pricing_reorder_categories(app, admin_user):
@@ -298,7 +299,7 @@ def test_pricing_reorder_categories(app, admin_user):
app = login(app)
# missing get params
- app.get('/manage/pricing/%s/order/' % (pricing.pk), status=400)
+ app.get('/manage/pricing/model/%s/order/' % (pricing.pk), status=400)
# bad new-order param
bad_params = [
@@ -314,7 +315,7 @@ def test_pricing_reorder_categories(app, admin_user):
]
for bad_param in bad_params:
app.get(
- '/manage/pricing/%s/order/' % (pricing.pk),
+ '/manage/pricing/model/%s/order/' % (pricing.pk),
params={'new-order': bad_param},
status=400,
)
@@ -330,7 +331,7 @@ def test_pricing_reorder_categories(app, admin_user):
# change order
app.get(
- '/manage/pricing/%s/order/' % (pricing.pk),
+ '/manage/pricing/model/%s/order/' % (pricing.pk),
params={'new-order': ','.join(str(x) for x in [category3.pk, category1.pk, category2.pk])},
)
assert list(