Newer
Older
Brian Talbot
committed
// lms - views - user/student dashboard
// ====================
// Table of Contents
// * +Dashboard - Sidebar
// * +Dashboard - Course Listing
Marco Morales
committed
// * +Dashboard - Course Item
// * +Misc - Uncategorized
// * +Dashboard - Banner
// +Dashboard - Sidebar
// ====================
@include clearfix();
padding: ($baseline*2) 0 $baseline 0;
.wrapper-find-courses {
@include float(right);
@include margin-left(flex-gutter());
width: flex-grid(3);
margin-top: ($baseline*2);
border-top: 3px solid $blue;
padding: $baseline 0;
.copy {
@extend %t-copy-sub1;
}
.btn-find-courses {
@extend %btn-pl-elevated-alt;
}
}
.wrapper-xseries-certificates{
@include float(right);
@include margin-left(flex-gutter());
width: flex-grid(3);
.title{
@extend %t-title7;
@extend %t-weight4;
}
ul{
@include padding-left(0);
margin-top: ($baseline/2);
}
li{
@include line-height(20);
list-style-type: none;
}
.copy {
@extend %t-copy-sub1;
margin-top: ($baseline/2);
}
}
background: transparent;
@include margin-left(flex-gutter());
margin-top: ($baseline*2);
border-top: 3px solid $blue;
padding: $baseline 0;
Galen Frechette
committed
.user-info {
@include clearfix();
Galen Frechette
committed
> ul {
@include box-sizing(border-box);
@include clearfix();
margin: 0;
Galen Frechette
committed
width: flex-grid(12);
Galen Frechette
committed
li {
@include clearfix();
border-bottom: 1px dotted $border-color-2;
Galen Frechette
committed
list-style: none;
margin-bottom: ($baseline*0.75);
padding-bottom: 17px;
Galen Frechette
committed
&:last-child {
border-bottom: none;
margin-bottom: 0;
padding-bottom: 0;
}
Giulio Gratta
committed
&:hover, &:focus {
Galen Frechette
committed
.title .icon {
opacity: 1.0;
Galen Frechette
committed
}
}
span {
display: block;
margin-bottom: ($baseline/4);
Galen Frechette
committed
span.title {
@extend %t-strong;
Galen Frechette
committed
marco
committed
a {
text-transform: none;
Galen Frechette
committed
span.copy {
@extend %t-copy-sub1;
}
Galen Frechette
committed
span.data {
marco
committed
color: $base-font-color;
font-weight: 600;
white-space: nowrap;
text-overflow: ellipsis;
overflow: hidden;
.third-party-auth {
color: inherit;
font-weight: inherit;
}
Galen Frechette
committed
}
li.order-history {
span a {
font-size: 13px;
line-height: 20px;
}
}
.heads-up {
.title {
display: inline;
}
.copy {
@extend %t-copy-sub2;
display: inline;
}
}
.reverify-status-list {
padding: 0 0 0 ($baseline/2);
margin: ($baseline/4) 0;
.status-item {
@extend %t-copy-sub2;
margin-bottom: 7px;
border-bottom: 0;
padding: 0;
Brian Talbot
committed
.icon {
display: inline-block;
vertical-align: top;
margin: ($baseline/10) ($baseline/4) 0 0;
}
Brian Talbot
committed
&.is-open .icon {
color: $action-primary-bg;
}
Brian Talbot
committed
&.is-pending .icon {
color: $warning-color;
}
Brian Talbot
committed
&.is-approved .icon {
color: $success-color;
}
Brian Talbot
committed
&.is-denied .icon {
color: $alert-color;
}
.label {
@extend %text-sr;
}
.course-name {
display: inline-block;
vertical-align: top;
width: 80%;
color: inherit;
}
}
}
.list--nav {
margin: ($baseline/2) 0 0 0;
padding: 0;
.nav__item {
@extend %t-weight4;
@include font-size(13);
margin-left: 26px;
// +Dashboard - Course Listing
// ====================
.dashboard {
.my-courses {
@include float(left);
margin: 0;
width: flex-grid(9);
.wrapper-header-courses {
border-bottom: 4px solid $border-color-l4;
margin-bottom: $baseline;
.header-courses {
@extend %t-title5;
@include padding-right($baseline/2);
}
}
// CASE: empty dashboard
.empty-dashboard-message {
text-align: center;
p {
color: $lighter-base-font-color;
font-style: italic;
margin-bottom: $baseline;
text-shadow: 0 1px rgba(255,255,255, 0.6);
Galen Frechette
committed
}
Galen Frechette
committed
a {
background: rgb(240,240,240);
@include background-image($button-bg-image);
background-color: $button-bg-color;
border: 1px solid $border-color-2;
border-radius: 4px;
box-shadow: 0 1px 8px 0 $shadow-l1;
Galen Frechette
committed
@include box-sizing(border-box);
color: $base-font-color;
font-family: $sans-serif;
display: inline-block;
Galen Frechette
committed
letter-spacing: 1px;
@include margin-left($baseline/4);
padding: 5px 10px;
text-shadow: 0 1px rgba(255,255,255, 0.6);
Galen Frechette
committed
Giulio Gratta
committed
&:hover, &:focus {
color: $link-color;
text-decoration: none;
// ====================
Brian Talbot
committed
// UI: course list
.listing-courses {
Brian Talbot
committed
@extend %ui-no-list;
Brian Talbot
committed
.course-item {
Brian Talbot
committed
border-bottom: 4px solid $border-color-l4;
padding-bottom: $baseline;
Galen Frechette
committed
.course-container{
border: 1px solid $border-color-l4;
border-radius: 3px;
// CASE: Xseries associated course
.label-xseries-association{
@include margin($baseline/2, $baseline/5, 0, $baseline/2);
.xseries-icon{
@include float(left);
@include margin-right($baseline*0.4);
background: url('#{$static-path}/images/icon-sm-xseries-black.png') no-repeat;
background-color: transparent;
width: ($baseline*1.1);
height: ($baseline*1.1);
}
.message-copy{
padding-top: ($baseline/5);
@extend %t-action3;
}
}
Brian Talbot
committed
&:last-child {
margin-bottom: 0;
border-bottom: none;
padding-bottom: 0;
}
Galen Frechette
committed
}
Brian Talbot
committed
}
Marco Morales
committed
}
}
Brian Talbot
committed
Marco Morales
committed
// +Dashboard - Course
// ====================
Marco Morales
committed
.dashboard .my-courses {
&:focus {
outline: none;
}
Marco Morales
committed
// UI: individual course item
.course {
@include box-sizing(box);
@include transition(all 0.15s linear 0s);
@include clearfix();
@extend %ui-depth2;
margin: ($baseline/2);
.details {
Brian Talbot
committed
@include clearfix();
Galen Frechette
committed
Marco Morales
committed
.wrapper-course-image {
@include float(left);
@include margin-right(flex-gutter());
width: flex-grid(3);
Galen Frechette
committed
.cover {
@include box-sizing(border-box);
@include transition(all 0.15s linear 0s);
@include float(left);
overflow: hidden;
position: relative;
Marco Morales
committed
max-height: 120px;
border-radius: ($baseline/5);
border: 1px solid $dashboard-course-cover-border;
border-bottom: 4px solid $dashboard-course-cover-border;
Marco Morales
committed
.course-image {
Marco Morales
committed
// "enrolled as" status
.sts-enrollment {
Marco Morales
committed
width: 100%;
position: relative;
bottom: 15px;
display: inline-block;
text-align: center;
Galen Frechette
committed
Marco Morales
committed
.label {
@extend %text-sr;
}
Marco Morales
committed
.deco-graphic {
position: absolute;
top: -5px;
@include right(0);
}
Galen Frechette
committed
Marco Morales
committed
.sts-enrollment-value {
@extend %ui-depth1;
@extend %copy-badge;
@extend %t-demi-strong;
font-size: 0.6em;
line-height: 1.5em;
border-radius: 0;
padding: 1px ($baseline/4);
color: white;
Galen Frechette
committed
}
}
Marco Morales
committed
}
Galen Frechette
committed
Marco Morales
committed
.wrapper-course-details {
display: block;
@include float(left);
width: flex-grid(9);
padding: 0;
}
Marco Morales
committed
.course-title {
Marco Morales
committed
a, span {
@extend %t-title3;
@extend %t-light;
display: inline-block;
margin-bottom: ($baseline/2);
&:hover, &:focus {
text-decoration: none;
Marco Morales
committed
}
.course-info {
display: block;
@include float(left);
width: flex-grid(4);
padding: 0;
margin-top: ($baseline/2);
[class*="info-"] {
color: $gray-d1;
@extend %t-title6;
display: inline-block;
}
Marco Morales
committed
.info-date-block {
@extend %t-title7;
color: $gray; // WCAG 2.0 AA compliant
Marco Morales
committed
}
Marco Morales
committed
.wrapper-course-actions {
display: block;
@include float(right);
width: flex-grid(8);
padding: 0;
margin-top: ($baseline/2);
}
Marco Morales
committed
.course-actions {
Marco Morales
committed
// UI: course item actions
.action {
@include box-sizing(border-box);
@include margin-right($baseline/2);
@include float(right);
min-width: ($baseline*2);
color: $gray-l1;
border-radius: 3px;
padding: 12px;
border: 1px solid $white;
text-align: center;
Marco Morales
committed
&:hover, &:focus {
color: $gray-d3;
border: 1px solid $gray-l4;
}
Marco Morales
committed
// STATE: is-disabled
&.is-disabled {
color: $gray-l4;
}
Marco Morales
committed
// TYPE: facebook share
&.action-facebook, {
color: $facebook-blue;
Marco Morales
committed
// TYPE: twitter share
&.action-twitter {
color: $twitter-blue;
}
}
Marco Morales
committed
// UI: general actions dropdown layout
.wrapper-action-more {
display: inline-block;
position: relative;
@include float(right);
Christine Lytwynec
committed
.action-more {
@include font-size(14);
box-shadow: none;
background: $white;
background-image: none;
color: $gray;
line-height: 16px;
text-shadow: none;
}
Marco Morales
committed
.actions-dropdown {
@extend %ui-no-list;
@extend %ui-depth1;
display: none;
position: absolute;
top: ($baseline*2);
@include right(19px);
Marco Morales
committed
pointer-events: none;
min-width: ($baseline*7);
Marco Morales
committed
&.is-visible {
display: block;
pointer-events: auto;
}
Marco Morales
committed
.actions-dropdown-list {
@extend %ui-no-list;
@include box-sizing(border-box);
display: table;
box-shadow: 0 1px 1px $shadow-l1;
position: relative;
width: 100%;
border-radius: 3px;
margin: ($baseline/4) 0 0 0;
border: 1px solid $gray-l3;
padding: ($baseline/4) ($baseline/2);
background: $white;
// ui triangle/nub
&:after,
&:before {
bottom: 100%;
@include right(6px);
Marco Morales
committed
border: solid transparent;
content: " ";
height: 0;
width: 0;
position: absolute;
pointer-events: none;
Marco Morales
committed
&:after {
border-color: $transparent;
border-bottom-color: $white;
border-width: 6px;
@include margin-right(1px);
}
Marco Morales
committed
&:before {
border-color: $transparent;
border-bottom-color: $gray-l3;
border-width: 7px;
}
}
Marco Morales
committed
.actions-item {
@extend %t-title7;
display: block;
margin: 0;
Marco Morales
committed
&.is-hidden {
display: none;
}
.action {
@include margin-right(0);
&:hover, &:focus {
border: 1px solid transparent;
}
Marco Morales
committed
}
Marco Morales
committed
.course-status {
background: $yellow;
border: 1px solid $border-color-2;
box-shadow: 0 1px 0 0 rgba(255,255,255, 0.6);
margin-top: 17px;
@include margin-right(flex-gutter());
Marco Morales
committed
padding: ($baseline/4);
width: flex-grid(8);
@include float(left);
@include box-sizing(border-box);
Galen Frechette
committed
Marco Morales
committed
p {
color: $lighter-base-font-color;
font-style: italic;
letter-spacing: 1px;
text-align: center;
Galen Frechette
committed
}
Marco Morales
committed
}
Galen Frechette
committed
Marco Morales
committed
.course-status-completed {
background: $gray-l3;
color: $very-light-text;
Brian Talbot
committed
Marco Morales
committed
p {
color: $gray-d4;
Marco Morales
committed
span {
font-weight: bold;
Brian Talbot
committed
}
}
Marco Morales
committed
}
Brian Talbot
committed
Marco Morales
committed
.enter-course {
@extend %btn-pl-white-base;
Marco Morales
committed
@include float(right);
Galen Frechette
committed
Marco Morales
committed
&.archived {
Marco Morales
committed
}
Brian Talbot
committed
}
Marco Morales
committed
}
Brian Talbot
committed
Marco Morales
committed
// ====================
Marco Morales
committed
// UI: messages
.wrapper-messages-primary {
@include clearfix();
.messages-list {
margin: 0;
padding: 0;
}
Brian Talbot
committed
.message {
@extend %ui-depth1;
border-radius: 3px;
display: none;
margin: $baseline 0 ($baseline/2) 0;
Marco Morales
committed
padding: ($baseline/2) $baseline;
background: $gray-l5;
border: 1px solid $gray-l4;
color: $base-font-color; // Overrides the normal white color in this one case
Brian Talbot
committed
// STATE: shown
&.is-shown {
Marco Morales
committed
@include clearfix();
a {
font-family: $sans-serif;
Brian Talbot
committed
}
strong {
font-weight: 700;
a {
font-weight: 700;
}
}
Brian Talbot
committed
.actions {
@include clearfix();
list-style: none;
margin: 0;
padding: 0;
Brian Talbot
committed
}
.message-title,
.message-copy .title {
@extend %t-title6;
@extend %t-weight4;
line-height: 1em;
margin-bottom: ($baseline/4);
}
Brian Talbot
committed
.message-copy,
.message-copy .copy {
@extend %t-copy-sub1;
margin: 2px 0 0 0;
Brian Talbot
committed
}
// CASE: expandable
&.is-expandable {
Brian Talbot
committed
.message-title, .message-copy {
margin-bottom: 0;
Marco Morales
committed
display: inline-block;
}
.message-title .value, .message-copy {
@include transition(color $tmg-f2 ease-in-out 0s);
}
// STATE: hover
&:hover {
cursor: pointer;
.message-title .value, .message-copy, .ui-toggle-expansion {
color: $link-color;
}
}
Brian Talbot
committed
}
.wrapper-extended {
@include transition(opacity $tmg-f2 ease-in-out 0);
display: none;
opacity: 0.0;
Brian Talbot
committed
}
Marco Morales
committed
}
Brian Talbot
committed
Marco Morales
committed
// STATE: is expanded
&.is-expanded {
Marco Morales
committed
.ui-toggle-expansion {
@include rtl {
@include transform(rotate(-90deg));
Marco Morales
committed
@include ltr {
@include transform(rotate(90deg));
Marco Morales
committed
@include transform-origin(50% 50%);
}
.wrapper-extended {
display: block;
opacity: 1.0;
Brian Talbot
committed
}
}
Brian Talbot
committed
Marco Morales
committed
&.message-upsell {
Brian Talbot
committed
.wrapper-tip {
@include clearfix();
Brian Talbot
committed
Marco Morales
committed
@include float(left);
Brian Talbot
committed
.ui-toggle-expansion {
@include transition(all $tmg-f2 ease-in-out 0s);
Marco Morales
committed
@include font-size(18);
display: inline-block;
vertical-align: middle;
@include margin-right($baseline/4);
Brian Talbot
committed
Marco Morales
committed
@include float(right);
padding: ($baseline/4) 0;
width: flex-grid(9, 12);
display: inline-block;
.message-copy-bold{
font-weight: 600;
}
.action-upgrade-container{
@include float(right);
display: inline-block;
margin-top: ($baseline/2);
}
.action-upgrade {
@extend %btn-primary-green;
@include clearfix();
position: relative;
@include left($baseline/2);
@include padding(($baseline * 0.4), 0, ($baseline * 0.4), ($baseline * 0.75));
.action-upgrade-icon{
@include float(left);
display: inline;
@include margin-right($baseline*0.4);
margin-top: ($baseline/4);
background: url('#{$static-path}/images/icon-sm-verified.png') no-repeat;
background-position: -($baseline*0.3);
background-color: white;
width: ($baseline*0.8);
height: ($baseline*0.7);
}
.deco-graphic {
position: absolute;
top: -($baseline/4);
@include left(-($baseline*0.75));
width: ($baseline*2);
}
span {
color: $white; // nasty but needed override for poor <span> styling
}
Brian Talbot
committed
.copy, .copy-sub {
display: inline-block;
vertical-align: middle;
}
.copy {
@extend %t-action3;
@extend %t-weight4;
@include margin-right($baseline);
}
.copy-sub {
@extend %t-action4;
opacity: 0.875;
}
}
Brian Talbot
committed
}
Marco Morales
committed
&.message-status {
Marco Morales
committed
border-color: $gray-l4;
.wrapper-message-primary {
@include clearfix();
}
.message-copy {
@extend %t-copy-sub1;
margin: 0;
.grade-value {
font-size: 1.2rem;
font-weight: bold;
}
}
.credit-action {
.credit-btn {
@extend %btn-pl-yellow-base;
@include float(right);
@include margin-right(5px);
background-image: none ;
text-shadow: none;
box-shadow: none;
text-transform: none;
}
.xseries-action{
.xseries-msg{
@include float(left);
width: flex-grid(9, 12);
}
.message-copy{
@extend %t-demi-strong;
margin-top: 0;
}
.message-copy-bold{
@extend %t-strong;
}
.xseries-border-btn {
@extend %btn-pl-black-border;
@include float(right);
position: relative;
@include left(10px);
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
padding: ($baseline*0.4) ($baseline*0.6);
background-image: none ;
text-shadow: none;
box-shadow: none;
text-transform: none;
.action-xseries-icon{
@include float(left);
display: inline;
@include margin-right($baseline*0.4);
background: url('#{$static-path}/images/icon-sm-xseries-black.png') no-repeat;
background-color: transparent;
width: ($baseline*1.1);
height: ($baseline*1.1);
}
&:hover,
&:focus {
.action-xseries-icon{
@include float(left);
display: inline;
@include margin-right($baseline*0.4);
background: url('#{$static-path}/images/icon-sm-xseries-white.png') no-repeat;
background-color: transparent;
width: ($baseline*1.1);
height: ($baseline*1.1);
}
}
}
.xseries-base-btn {
@extend %btn-pl-black-base;
@include float(right);
position: relative;
@include left(10px);
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
padding: ($baseline*0.4) ($baseline*0.6);
background-image: none ;
text-shadow: none;
box-shadow: none;
text-transform: none;
.action-xseries-icon{
@include float(left);
display: inline;
@include margin-right($baseline*0.4);
background: url('#{$static-path}/images/icon-sm-xseries-white.png') no-repeat;
background-color: transparent;
width: ($baseline*1.1);
height: ($baseline*1.1);
}
&:hover,
&:focus {
.action-xseries-icon {
@include float(left);
display: inline;
@include margin-right($baseline*0.4);
background: url('#{$static-path}/images/icon-sm-xseries-black.png') no-repeat;
background-color: transparent;
width: ($baseline*1.1);
height: ($baseline*1.1);
}
}
}
}
Marco Morales
committed
@include float(left);
@include margin(0, 15px, 0, 0);
.btn, .cta {
display: inline-block;
}
.btn {
@include box-sizing(border-box);
Marco Morales
committed
@include float(left);
border-radius: 3px;
font: normal 0.8rem/1.2rem $sans-serif;
letter-spacing: 1px;
padding: 6px 12px;
text-align: center;
&.disabled {
cursor: default !important;
&:hover, &:focus {
Marco Morales
committed
@include background-image(linear-gradient(top, #EEE 0%, #C2C2C2 50%, #ABABAB 50%, #B0B0B0 100% ));
background: #eee;
}
}
}
Marco Morales
committed
@include float(left);
font: normal 0.8rem/1.2rem $sans-serif;
letter-spacing: 1px;
padding: 6px 12px;
text-align: center;
}
}
.exam-registration-number {
font-family: $sans-serif;
font-size: 18px;
a {
font-family: $sans-serif;
.message-copy {
margin-top: ($baseline/4);
width: 55%;
}
&.exam-schedule {
.exam-button {
margin-top: ($baseline/4);
}
.exam-button {
@include button(simple, $pink);
Marco Morales
committed
@include float(right);
.contact-button {
@include button(simple, $pink);
}