7

Extended info in the segment overview because vision

This commit is contained in:
Jasper Berghoef
2016-11-17 13:53:06 +01:00
parent 856992f987
commit dca285c64b
7 changed files with 125 additions and 29 deletions

View File

@ -64,38 +64,93 @@
} }
} }
.block_container .block .segment_stats { .block_container .block h2 {
list-style: none; display: block;
padding: 0;
margin: 0;
margin-bottom: 10px;
} }
.block_container .block .segment_stats li { .block_container .block .inspect_container {
display: flex;
flex-direction: row;
flex-wrap: nowrap;
justify-content: space-between;
align-items: stretch;
margin-bottom: 5px;
}
.block_container .block .inspect_container .inspect {
display: block;
float: left;
width: calc(50% - 10px);
padding: 0;
margin: 0;
list-style: none;
}
.block_container .block .inspect_container .inspect li {
display: inline-block; display: inline-block;
font-size: 24px; margin-bottom: 5px;
font-weight: bold;
margin-right: 50px;
}
.block_container .block .segment_stats li::last-child{
margin-right: 0;
} }
.block_container .block .segment_stats li::before { .block_container .block .inspect_container .inspect li span {
display: inline-block; display: block;
content: ""; font-size: 20px;
width: 20px; font-weight: bold;
height: 20px; margin: 5px 0;
margin-right: 5px; overflow-wrap: break-word;
background-size: 20px 20px;
} }
.block_container .block .segment_stats .visit_stat::before {
background-image: url("./rocket_icon.png"); .block_container .block .inspect_container .inspect li span::before {
} display: inline-block;
.block_container .block .segment_stats .days_stat::before { content: "";
background-image: url("./calendar_icon.png"); width: 16px;
height: 16px;
margin-right: 5px;
background-size: contain;
}
.block_container .block .inspect_container .segment_stats .visit_stat span::before {
background-image: url("./rocket_icon.png");
}
.block_container .block .inspect_container .segment_stats .days_stat span::before {
background-image: url("./calendar_icon.png");
}
.block_container .block .inspect_container .segment_rules .time_rule span::before {
background-image: url("./time_icon.png");
}
.block_container .block .inspect_container .segment_rules .visit_count_rule span::before {
background-image: url("./visit_count_icon.png");
}
.block_container .block .inspect_container .inspect li pre {
position: relative;
box-sizing: border-box;
width: auto;
background-color: #eee;
border: 1px solid #ccc;
margin: 5px 0 5px 21px;
padding: 2px 5px;
word-wrap: break-word;
word-break: break-all;
border-radius: 3px;
} }
.block_container .block .inspect_container .inspect li pre::before {
display: inline-block;
position: absolute;
content: "";
left: -21px;
top: 6px;
width: 16px;
height: 16px;
margin-right: 5px;
background-size: contain;
}
.block_container .block .inspect_container .segment_rules .referral_rule pre::before {
background-image: url("./referral_icon.png");
}
.block_container .block.suggestion .suggestive_text { .block_container .block.suggestion .suggestive_text {
display: block; display: block;
position: absolute; position: absolute;

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -23,10 +23,42 @@
{% for segment in object_list %} {% for segment in object_list %}
<div class="block"> <div class="block">
<a href="inspect/{{ segment.pk }}"><h2>{{ segment }}</h2></a> <a href="inspect/{{ segment.pk }}"><h2>{{ segment }}</h2></a>
<ul class="segment_stats"> <div class="inspect_container">
<li class="visit_stat">{{ segment.visit_count|localize }} {% trans "visits" %}</li> <ul class="inspect segment_stats">
<li class="days_stat">{{ segment.enable_date|days_since:segment.disable_date }} {% trans "days" %}</li> <li class="visit_stat">
</ul> <span>{{ segment.visit_count|localize }}</span>
{% trans "Visitors are part of this segment" %}
</li>
<li class="days_stat">
<span>{{ segment.enable_date|days_since:segment.disable_date }}</span>
{% trans "Days since matching visitors are appointed to this segment" %}
</li>
</ul>
<ul class="inspect segment_rules">
{% for rule in segment.time_rules.all %}
<li class="time_rule">
These users visit between
<span>{{ rule.start_time }} and {{ rule.end_time }}</span>
</li>
{% endfor %}
{% for rule in segment.referral_rules.all %}
<li class="referral_rule">
These visits originate from
<pre>{{ rule.regex_string }}</pre>
</li>
{% endfor %}
{% for rule in segment.visit_count_rules.all %}
<li class="visit_count_rule">
These users visited {{ rule.counted_page }}
<span>{{ rule.get_operator_display }} {{ rule.count }} times</span>
</li>
{% endfor %}
</ul>
</div>
{% if user_can_create %} {% if user_can_create %}
<ul class="block_actions"> <ul class="block_actions">
{% if segment.status == "disabled" %} {% if segment.status == "disabled" %}

View File

@ -2,7 +2,7 @@ import time
from django.conf.urls import include, url from django.conf.urls import include, url
from wagtail.contrib.modeladmin.options import ModelAdmin, modeladmin_register from wagtail.contrib.modeladmin.options import ModelAdmin, modeladmin_register
from wagtail.contrib.modeladmin.views import CreateView from wagtail.contrib.modeladmin.views import IndexView
from wagtail.wagtailcore import hooks from wagtail.wagtailcore import hooks
from personalisation import admin_urls from personalisation import admin_urls
@ -22,6 +22,15 @@ def register_admin_urls():
] ]
class SegmentIndexView(IndexView):
def get_context_data(self, **kwargs):
context = {
'additional_forms': (TimeRuleForm, ReferralRuleForm, VisitCountRuleForm),
}
context.update(kwargs)
return super(SegmentIndexView, self).get_context_data(**context)
class SegmentModelAdmin(ModelAdmin): class SegmentModelAdmin(ModelAdmin):
"""The base model for the Segments administration interface.""" """The base model for the Segments administration interface."""
model = Segment model = Segment