Scheduler UI improvements

This commit is contained in:
Godwin
2017-08-19 13:00:31 -07:00
parent e57bfb28e4
commit f36d9468df
8 changed files with 240 additions and 205 deletions
+182 -110
View File
@@ -41,7 +41,7 @@ table, .table {
white-space: nowrap;
@include after {
content: '';
content: $down-icon;
position: absolute;
bottom: -1em;
left: 50%;
@@ -67,18 +67,18 @@ table, .table {
&:hover {
@include after {
content: '';
content: $up-icon;
}
}
}
[data-dir="up"] {
@include after {
content: '';
content: $up-icon;
}
&:hover {
@include after {
content: '';
content: $down-icon;
}
}
}
@@ -98,26 +98,6 @@ table, .table {
background-color: transparent;
border: 0;
}
&.state {
background-size: 1.333em;
background-repeat: no-repeat;
background-position: center;
width: 1.75em;
&.happy {
@include after {
content: '\1F601';
opacity: 0.5;
}
}
&.unhappy {
@include after {
content: '\1F621';
}
}
}
}
td, .table-td {
@@ -809,6 +789,103 @@ nav.sub-menu {
}
}
.admin-notes {
position: relative;
float: left;
margin-top: -0.2em;
margin-right: 0.25em;
cursor: pointer;
@include after {
content: $note-icon;
width: 2em;
height: 2em;
}
.notes {
@include hover-info;
top: auto;
bottom: 100%;
right: auto;
min-width: 25em;
p {
font-size: 1.125em;
&:first-child {
margin-top: 0;
}
&:last-child {
margin-bottom: 0;
}
}
}
&:hover, &:focus {
.notes {
display: block;
}
}
}
#main article .admin-status.state {
background-size: 1.333em;
background-repeat: no-repeat;
background-position: center;
width: 1.75em;
position: relative;
font-family: inherit;
padding: 0;
position: relative;
width: 2em;
height: 2em;
@include after {
position: absolute;
bottom: 0;
left: 0;
font-size: 1.5em;
}
&.happy {
@include after {
content: $happy-icon;
opacity: 0.5;
}
}
&.unhappy {
cursor: pointer;
@include after {
content: $angry-icon;
@include _(transform-origin, bottom);
@include _(animation, unhappy ease-in-out 1s infinite alternate both);
}
}
ul {
@include hover-info;
}
li {
white-space: nowrap;
margin: 0 0 0 1em;
&:first-child:last-child {
list-style: none;
margin: 0;
}
}
&:hover, &:focus {
ul {
display: block;
}
}
}
#admin-housing, #admin-schedule {
.guests-housed {
margin-bottom: 1em;
@@ -831,13 +908,13 @@ nav.sub-menu {
&.happy {
@include after {
content: '\1F60D';
content: $love-icon;
}
}
&.unhappy {
@include after {
content: '\1F61E';
content: $unhappy-icon;
}
}
}
@@ -886,45 +963,6 @@ nav.sub-menu {
overflow: auto;
}
.guest-notes {
position: relative;
float: left;
margin-top: -0.2em;
margin-right: 0.25em;
cursor: pointer;
@include after {
content: '\1F4C4';
width: 2em;
height: 2em;
}
.notes {
@include hover-info;
top: auto;
bottom: 100%;
right: auto;
min-width: 25em;
p {
font-size: 1.125em;
&:first-child {
margin-top: 0;
}
&:last-child {
margin-bottom: 0;
}
}
}
&:hover {
.notes {
display: block;
}
}
}
.address {
margin-top: 1em;
text-align: right;
@@ -964,51 +1002,6 @@ nav.sub-menu {
td {
vertical-align: middle;
}
.state {
position: relative;
font-family: inherit;
padding: 0;
position: relative;
width: 2em;
height: 2em;
@include after {
position: absolute;
bottom: 0;
left: 0;
font-size: 1.5em;
}
&.unhappy {
cursor: pointer;
@include after {
@include _(transform-origin, bottom);
@include _(animation, unhappy ease-in-out 1s infinite alternate both);
}
}
ul {
@include hover-info;
}
li {
white-space: nowrap;
margin: 0 0 0 1em;
&:first-child:last-child {
list-style: none;
margin: 0;
}
}
&:hover {
ul {
display: block;
}
}
}
}
#workshop-selector {
@@ -1364,6 +1357,85 @@ nav.sub-menu {
#admin-schedule {
#schedule-preview {
overflow: visible
}
table.schedule {
td.workshop {
vertical-align: top;
text-align: left;
position: relative;
.event-detail-link {
width: auto;
font-size: 1.25em;
}
}
.status {
display: inline-block;
text-align: left;
float: right;
font-size: 0.9em;
margin-top: 0.5em;
}
.conflict-score {
text-align: right;
.title {
@include font-family(secondary);
}
}
.admin-status {
position: absolute;
top: 0;
right: 0.25em;
ul {
width: 15em;
}
+ .event-detail-link {
padding-right: 1em;
}
}
.admin-notes {
@include after {
font-size: 1.25em;
}
}
.workshop-container {
padding-bottom: 4em;
}
.deschedule-workshop {
position: absolute;
right: 0.5em;
bottom: 0.5em;
left: 0.5em;
}
form {
margin-top: 0;
button {
margin-top: 0.5em;
float: left;
z-index: 1;
opacity: 0.5;
&:hover, &:focus {
opacity: 1;
}
}
}
}
.workshops-to-schedule {
@include _-(display, flex);
@include _(flex-wrap, wrap);
+4 -65
View File
@@ -2136,70 +2136,6 @@ table.schedule {
align-items: center;
@include not-link-like;
.details {
flex: 1;
}
}
.status {
display: inline-block;
text-align: left;
float: right;
font-size: 0.9em;
margin-top: 0.5em;
}
.conflict-score {
text-align: right;
.title {
@include font-family(secondary);
}
}
.errors {
position: relative;
border-top: 0.1rem solid $dark-gray;
margin-top: 0.5em;
padding-top: 0.25em;
@include before {
content: '!';
display: inline-block;
position: absolute;
z-index: 1;
top: 0;
left: -1.2em;
width: 1em;
color: $white;
@include font-family(secondary);
}
@include after {
content: '';
position: absolute;
top: 0.1em;
left: -1.333em;
width: 0;
height: 0;
font-size: 1.25em;
border: 0.5em solid;
border-left-color: transparent;
border-right-color: transparent;
border-width: 0 0.5em 0.75em;
color: darken($colour-2, 25%);
}
}
#main .columns & form {
margin-top: 0;
button {
margin-top: 0.5em;
float: left;
z-index: 1;
}
}
}
}
@@ -3510,9 +3446,10 @@ body.policy .policy-agreement ul {
}
.nav {
display: block;
@include _-(display, flex);
position: static;
font-size: 1.75em;
display: block;
text-align: center;
background-color: transparent;
@include _(box-shadow, none);
@@ -3520,6 +3457,8 @@ body.policy .policy-agreement ul {
.nav a {
&[class] {
@include _(flex, 1);
white-space: nowrap;
width: auto;
float: none;
overflow: visible;
+8
View File
@@ -39,6 +39,14 @@ $link-colour: darken($colour-1, 13%);
$selected-colour: rgba($blue, 0.5);
$note-icon: '\1F4C4';
$down-icon: '';
$up-icon: '';
$happy-icon: '\1F601';
$unhappy-icon: '\1F61E';
$love-icon: '\1F60D';
$angry-icon: '\1F621';
@mixin default-box-shadow($direction: top, $distance: 1, $inset: false, $additional-shadow: false) {
@if capable_of(box-shadow) {
$offset: 0.2em;