mirror of https://github.com/snachodog/mybuddy.git
parent
c970768d89
commit
9bf65704b5
|
@ -57,40 +57,6 @@
|
|||
--object-tools-hover-bg: var(--close-button-hover-bg);
|
||||
}
|
||||
|
||||
@media (prefers-color-scheme: dark) {
|
||||
:root {
|
||||
--primary: #264b5d;
|
||||
--primary-fg: #eee;
|
||||
|
||||
--body-fg: #eeeeee;
|
||||
--body-bg: #121212;
|
||||
--body-quiet-color: #e0e0e0;
|
||||
--body-loud-color: #ffffff;
|
||||
|
||||
--breadcrumbs-link-fg: #e0e0e0;
|
||||
--breadcrumbs-bg: var(--primary);
|
||||
|
||||
--link-fg: #81d4fa;
|
||||
--link-hover-color: #4ac1f7;
|
||||
--link-selected-fg: #6f94c6;
|
||||
|
||||
--hairline-color: #272727;
|
||||
--border-color: #353535;
|
||||
|
||||
--error-fg: #e35f5f;
|
||||
--message-success-bg: #006b1b;
|
||||
--message-warning-bg: #583305;
|
||||
--message-error-bg: #570808;
|
||||
|
||||
--darkened-bg: #212121;
|
||||
--selected-bg: #1b1b1b;
|
||||
--selected-row: #00363a;
|
||||
|
||||
--close-button-bg: #333333;
|
||||
--close-button-hover-bg: #666666;
|
||||
}
|
||||
}
|
||||
|
||||
html, body {
|
||||
height: 100%;
|
||||
}
|
||||
|
@ -98,7 +64,7 @@ html, body {
|
|||
body {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
font-size: 14px;
|
||||
font-size: 0.875rem;
|
||||
font-family: "Roboto","Lucida Grande","DejaVu Sans","Bitstream Vera Sans",Verdana,Arial,sans-serif;
|
||||
color: var(--body-fg);
|
||||
background: var(--body-bg);
|
||||
|
@ -151,12 +117,12 @@ h1,h2,h3,h4,h5 {
|
|||
h1 {
|
||||
margin: 0 0 20px;
|
||||
font-weight: 300;
|
||||
font-size: 20px;
|
||||
font-size: 1.25rem;
|
||||
color: var(--body-quiet-color);
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 16px;
|
||||
font-size: 1rem;
|
||||
margin: 1em 0 .5em 0;
|
||||
}
|
||||
|
||||
|
@ -166,20 +132,20 @@ h2.subhead {
|
|||
}
|
||||
|
||||
h3 {
|
||||
font-size: 14px;
|
||||
font-size: 0.875rem;
|
||||
margin: .8em 0 .3em 0;
|
||||
color: var(--body-quiet-color);
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
h4 {
|
||||
font-size: 12px;
|
||||
font-size: 0.75rem;
|
||||
margin: 1em 0 .8em 0;
|
||||
padding-bottom: 3px;
|
||||
}
|
||||
|
||||
h5 {
|
||||
font-size: 10px;
|
||||
font-size: 0.625rem;
|
||||
margin: 1.5em 0 .5em 0;
|
||||
color: var(--body-quiet-color);
|
||||
text-transform: uppercase;
|
||||
|
@ -196,7 +162,7 @@ li ul {
|
|||
}
|
||||
|
||||
li, dt, dd {
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
line-height: 20px;
|
||||
}
|
||||
|
||||
|
@ -223,7 +189,7 @@ fieldset {
|
|||
}
|
||||
|
||||
blockquote {
|
||||
font-size: 11px;
|
||||
font-size: 0.6875rem;
|
||||
color: #777;
|
||||
margin-left: 2px;
|
||||
padding-left: 10px;
|
||||
|
@ -233,7 +199,7 @@ blockquote {
|
|||
code, pre {
|
||||
font-family: "Bitstream Vera Sans Mono", Monaco, "Courier New", Courier, monospace;
|
||||
color: var(--body-quiet-color);
|
||||
font-size: 12px;
|
||||
font-size: 0.75rem;
|
||||
overflow-x: auto;
|
||||
}
|
||||
|
||||
|
@ -255,22 +221,21 @@ hr {
|
|||
border: none;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
font-size: 1px;
|
||||
line-height: 1px;
|
||||
}
|
||||
|
||||
/* TEXT STYLES & MODIFIERS */
|
||||
|
||||
.small {
|
||||
font-size: 11px;
|
||||
font-size: 0.6875rem;
|
||||
}
|
||||
|
||||
.mini {
|
||||
font-size: 10px;
|
||||
font-size: 0.625rem;
|
||||
}
|
||||
|
||||
.help, p.help, form p.help, div.help, form div.help, div.help li {
|
||||
font-size: 11px;
|
||||
font-size: 0.6875rem;
|
||||
color: var(--body-quiet-color);
|
||||
}
|
||||
|
||||
|
@ -300,7 +265,7 @@ p img, h1 img, h2 img, h3 img, h4 img, td img {
|
|||
}
|
||||
|
||||
.hidden {
|
||||
display: none;
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
/* TABLES */
|
||||
|
@ -311,7 +276,7 @@ table {
|
|||
}
|
||||
|
||||
td, th {
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
line-height: 16px;
|
||||
border-bottom: 1px solid var(--hairline-color);
|
||||
vertical-align: top;
|
||||
|
@ -327,7 +292,7 @@ thead th,
|
|||
tfoot td {
|
||||
color: var(--body-quiet-color);
|
||||
padding: 5px 10px;
|
||||
font-size: 11px;
|
||||
font-size: 0.6875rem;
|
||||
background: var(--body-bg);
|
||||
border: none;
|
||||
border-top: 1px solid var(--hairline-color);
|
||||
|
@ -437,7 +402,7 @@ table thead th.sorted .sortoptions a.sortremove:after {
|
|||
top: -6px;
|
||||
left: 3px;
|
||||
font-weight: 200;
|
||||
font-size: 18px;
|
||||
font-size: 1.125rem;
|
||||
color: var(--body-quiet-color);
|
||||
}
|
||||
|
||||
|
@ -478,7 +443,7 @@ input, textarea, select, .form-row p, form .button {
|
|||
vertical-align: middle;
|
||||
font-family: "Roboto", "Lucida Grande", Verdana, Arial, sans-serif;
|
||||
font-weight: normal;
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
}
|
||||
.form-row div.help {
|
||||
padding: 2px 3px;
|
||||
|
@ -589,7 +554,7 @@ input[type=button][disabled].default {
|
|||
margin: 0;
|
||||
padding: 8px;
|
||||
font-weight: 400;
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
text-align: left;
|
||||
background: var(--primary);
|
||||
color: var(--header-link-color);
|
||||
|
@ -597,7 +562,7 @@ input[type=button][disabled].default {
|
|||
|
||||
.module caption,
|
||||
.inline-group h2 {
|
||||
font-size: 12px;
|
||||
font-size: 0.75rem;
|
||||
letter-spacing: 0.5px;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
|
@ -616,12 +581,13 @@ ul.messagelist {
|
|||
ul.messagelist li {
|
||||
display: block;
|
||||
font-weight: 400;
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
padding: 10px 10px 10px 65px;
|
||||
margin: 0 0 10px 0;
|
||||
background: var(--message-success-bg) url("../img/icon-yes.d2f9f035226a.svg") 40px 12px no-repeat;
|
||||
background-size: 16px auto;
|
||||
color: var(--body-fg);
|
||||
word-break: break-word;
|
||||
}
|
||||
|
||||
ul.messagelist li.warning {
|
||||
|
@ -635,7 +601,7 @@ ul.messagelist li.error {
|
|||
}
|
||||
|
||||
.errornote {
|
||||
font-size: 14px;
|
||||
font-size: 0.875rem;
|
||||
font-weight: 700;
|
||||
display: block;
|
||||
padding: 10px 12px;
|
||||
|
@ -656,7 +622,7 @@ ul.errorlist {
|
|||
}
|
||||
|
||||
ul.errorlist li {
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
display: block;
|
||||
margin-bottom: 4px;
|
||||
overflow-wrap: break-word;
|
||||
|
@ -697,7 +663,7 @@ td ul.errorlist + input, td ul.errorlist + select, td ul.errorlist + textarea {
|
|||
}
|
||||
|
||||
.description {
|
||||
font-size: 12px;
|
||||
font-size: 0.75rem;
|
||||
padding: 5px 0 0 12px;
|
||||
}
|
||||
|
||||
|
@ -753,7 +719,7 @@ a.deletelink:focus, a.deletelink:hover {
|
|||
/* OBJECT TOOLS */
|
||||
|
||||
.object-tools {
|
||||
font-size: 10px;
|
||||
font-size: 0.625rem;
|
||||
font-weight: bold;
|
||||
padding-left: 0;
|
||||
float: right;
|
||||
|
@ -779,7 +745,7 @@ a.deletelink:focus, a.deletelink:hover {
|
|||
background: var(--object-tools-bg);
|
||||
color: var(--object-tools-fg);
|
||||
font-weight: 400;
|
||||
font-size: 11px;
|
||||
font-size: 0.6875rem;
|
||||
text-transform: uppercase;
|
||||
letter-spacing: 0.5px;
|
||||
}
|
||||
|
@ -808,14 +774,21 @@ a.deletelink:focus, a.deletelink:hover {
|
|||
|
||||
/* OBJECT HISTORY */
|
||||
|
||||
table#change-history {
|
||||
#change-history table {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
table#change-history tbody th {
|
||||
#change-history table tbody th {
|
||||
width: 16em;
|
||||
}
|
||||
|
||||
#change-history .paginator {
|
||||
color: var(--body-quiet-color);
|
||||
border-bottom: 1px solid var(--hairline-color);
|
||||
background: var(--body-bg);
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/* PAGE STRUCTURE */
|
||||
|
||||
#container {
|
||||
|
@ -905,7 +878,7 @@ table#change-history tbody th {
|
|||
overflow: hidden;
|
||||
}
|
||||
|
||||
#header a:link, #header a:visited {
|
||||
#header a:link, #header a:visited, #logout-form button {
|
||||
color: var(--header-link-color);
|
||||
}
|
||||
|
||||
|
@ -921,17 +894,17 @@ table#change-history tbody th {
|
|||
padding: 0;
|
||||
margin: 0 20px 0 0;
|
||||
font-weight: 300;
|
||||
font-size: 24px;
|
||||
color: var(--accent);
|
||||
font-size: 1.5rem;
|
||||
color: var(--header-branding-color);
|
||||
}
|
||||
|
||||
#branding h1, #branding h1 a:link, #branding h1 a:visited {
|
||||
#branding h1 a:link, #branding h1 a:visited {
|
||||
color: var(--accent);
|
||||
}
|
||||
|
||||
#branding h2 {
|
||||
padding: 0 10px;
|
||||
font-size: 14px;
|
||||
font-size: 0.875rem;
|
||||
margin: -8px 0 8px 0;
|
||||
font-weight: normal;
|
||||
color: var(--header-color);
|
||||
|
@ -941,25 +914,43 @@ table#change-history tbody th {
|
|||
text-decoration: none;
|
||||
}
|
||||
|
||||
#logout-form {
|
||||
display: inline;
|
||||
}
|
||||
|
||||
#logout-form button {
|
||||
background: none;
|
||||
border: 0;
|
||||
cursor: pointer;
|
||||
font-family: "Roboto","Lucida Grande","DejaVu Sans","Bitstream Vera Sans",Verdana,Arial,sans-serif;
|
||||
}
|
||||
|
||||
#user-tools {
|
||||
float: right;
|
||||
padding: 0;
|
||||
margin: 0 0 0 20px;
|
||||
font-weight: 300;
|
||||
font-size: 11px;
|
||||
letter-spacing: 0.5px;
|
||||
text-transform: uppercase;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
#user-tools a {
|
||||
#user-tools, #logout-form button{
|
||||
padding: 0;
|
||||
font-weight: 300;
|
||||
font-size: 0.6875rem;
|
||||
letter-spacing: 0.5px;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
|
||||
#user-tools a, #logout-form button {
|
||||
border-bottom: 1px solid rgba(255, 255, 255, 0.25);
|
||||
}
|
||||
|
||||
#user-tools a:focus, #user-tools a:hover {
|
||||
#user-tools a:focus, #user-tools a:hover,
|
||||
#logout-form button:active, #logout-form button:hover {
|
||||
text-decoration: none;
|
||||
border-bottom-color: var(--primary);
|
||||
color: var(--primary);
|
||||
border-bottom: 0;
|
||||
}
|
||||
|
||||
#logout-form button:active, #logout-form button:hover {
|
||||
margin-bottom: 1px;
|
||||
}
|
||||
|
||||
/* SIDEBAR */
|
||||
|
@ -979,7 +970,7 @@ table#change-history tbody th {
|
|||
}
|
||||
|
||||
#content-related h4 {
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
}
|
||||
|
||||
#content-related p {
|
||||
|
@ -1003,7 +994,7 @@ table#change-history tbody th {
|
|||
padding: 16px;
|
||||
margin-bottom: 16px;
|
||||
border-bottom: 1px solid var(--hairline-color);
|
||||
font-size: 18px;
|
||||
font-size: 1.125rem;
|
||||
color: var(--body-fg);
|
||||
}
|
||||
|
||||
|
@ -1050,3 +1041,49 @@ table#change-history tbody th {
|
|||
.popup #header {
|
||||
padding: 10px 20px;
|
||||
}
|
||||
|
||||
/* PAGINATOR */
|
||||
|
||||
.paginator {
|
||||
font-size: 0.8125rem;
|
||||
padding-top: 10px;
|
||||
padding-bottom: 10px;
|
||||
line-height: 22px;
|
||||
margin: 0;
|
||||
border-top: 1px solid var(--hairline-color);
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.paginator a:link, .paginator a:visited {
|
||||
padding: 2px 6px;
|
||||
background: var(--button-bg);
|
||||
text-decoration: none;
|
||||
color: var(--button-fg);
|
||||
}
|
||||
|
||||
.paginator a.showall {
|
||||
border: none;
|
||||
background: none;
|
||||
color: var(--link-fg);
|
||||
}
|
||||
|
||||
.paginator a.showall:focus, .paginator a.showall:hover {
|
||||
background: none;
|
||||
color: var(--link-hover-color);
|
||||
}
|
||||
|
||||
.paginator .end {
|
||||
margin-right: 6px;
|
||||
}
|
||||
|
||||
.paginator .this-page {
|
||||
padding: 2px 6px;
|
||||
font-weight: bold;
|
||||
font-size: 0.8125rem;
|
||||
vertical-align: top;
|
||||
}
|
||||
|
||||
.paginator a:focus, .paginator a:hover {
|
||||
color: white;
|
||||
background: var(--link-hover-color);
|
||||
}
|
Binary file not shown.
Binary file not shown.
|
@ -57,40 +57,6 @@
|
|||
--object-tools-hover-bg: var(--close-button-hover-bg);
|
||||
}
|
||||
|
||||
@media (prefers-color-scheme: dark) {
|
||||
:root {
|
||||
--primary: #264b5d;
|
||||
--primary-fg: #eee;
|
||||
|
||||
--body-fg: #eeeeee;
|
||||
--body-bg: #121212;
|
||||
--body-quiet-color: #e0e0e0;
|
||||
--body-loud-color: #ffffff;
|
||||
|
||||
--breadcrumbs-link-fg: #e0e0e0;
|
||||
--breadcrumbs-bg: var(--primary);
|
||||
|
||||
--link-fg: #81d4fa;
|
||||
--link-hover-color: #4ac1f7;
|
||||
--link-selected-fg: #6f94c6;
|
||||
|
||||
--hairline-color: #272727;
|
||||
--border-color: #353535;
|
||||
|
||||
--error-fg: #e35f5f;
|
||||
--message-success-bg: #006b1b;
|
||||
--message-warning-bg: #583305;
|
||||
--message-error-bg: #570808;
|
||||
|
||||
--darkened-bg: #212121;
|
||||
--selected-bg: #1b1b1b;
|
||||
--selected-row: #00363a;
|
||||
|
||||
--close-button-bg: #333333;
|
||||
--close-button-hover-bg: #666666;
|
||||
}
|
||||
}
|
||||
|
||||
html, body {
|
||||
height: 100%;
|
||||
}
|
||||
|
@ -98,7 +64,7 @@ html, body {
|
|||
body {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
font-size: 14px;
|
||||
font-size: 0.875rem;
|
||||
font-family: "Roboto","Lucida Grande","DejaVu Sans","Bitstream Vera Sans",Verdana,Arial,sans-serif;
|
||||
color: var(--body-fg);
|
||||
background: var(--body-bg);
|
||||
|
@ -151,12 +117,12 @@ h1,h2,h3,h4,h5 {
|
|||
h1 {
|
||||
margin: 0 0 20px;
|
||||
font-weight: 300;
|
||||
font-size: 20px;
|
||||
font-size: 1.25rem;
|
||||
color: var(--body-quiet-color);
|
||||
}
|
||||
|
||||
h2 {
|
||||
font-size: 16px;
|
||||
font-size: 1rem;
|
||||
margin: 1em 0 .5em 0;
|
||||
}
|
||||
|
||||
|
@ -166,20 +132,20 @@ h2.subhead {
|
|||
}
|
||||
|
||||
h3 {
|
||||
font-size: 14px;
|
||||
font-size: 0.875rem;
|
||||
margin: .8em 0 .3em 0;
|
||||
color: var(--body-quiet-color);
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
h4 {
|
||||
font-size: 12px;
|
||||
font-size: 0.75rem;
|
||||
margin: 1em 0 .8em 0;
|
||||
padding-bottom: 3px;
|
||||
}
|
||||
|
||||
h5 {
|
||||
font-size: 10px;
|
||||
font-size: 0.625rem;
|
||||
margin: 1.5em 0 .5em 0;
|
||||
color: var(--body-quiet-color);
|
||||
text-transform: uppercase;
|
||||
|
@ -196,7 +162,7 @@ li ul {
|
|||
}
|
||||
|
||||
li, dt, dd {
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
line-height: 20px;
|
||||
}
|
||||
|
||||
|
@ -223,7 +189,7 @@ fieldset {
|
|||
}
|
||||
|
||||
blockquote {
|
||||
font-size: 11px;
|
||||
font-size: 0.6875rem;
|
||||
color: #777;
|
||||
margin-left: 2px;
|
||||
padding-left: 10px;
|
||||
|
@ -233,7 +199,7 @@ blockquote {
|
|||
code, pre {
|
||||
font-family: "Bitstream Vera Sans Mono", Monaco, "Courier New", Courier, monospace;
|
||||
color: var(--body-quiet-color);
|
||||
font-size: 12px;
|
||||
font-size: 0.75rem;
|
||||
overflow-x: auto;
|
||||
}
|
||||
|
||||
|
@ -255,22 +221,21 @@ hr {
|
|||
border: none;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
font-size: 1px;
|
||||
line-height: 1px;
|
||||
}
|
||||
|
||||
/* TEXT STYLES & MODIFIERS */
|
||||
|
||||
.small {
|
||||
font-size: 11px;
|
||||
font-size: 0.6875rem;
|
||||
}
|
||||
|
||||
.mini {
|
||||
font-size: 10px;
|
||||
font-size: 0.625rem;
|
||||
}
|
||||
|
||||
.help, p.help, form p.help, div.help, form div.help, div.help li {
|
||||
font-size: 11px;
|
||||
font-size: 0.6875rem;
|
||||
color: var(--body-quiet-color);
|
||||
}
|
||||
|
||||
|
@ -300,7 +265,7 @@ p img, h1 img, h2 img, h3 img, h4 img, td img {
|
|||
}
|
||||
|
||||
.hidden {
|
||||
display: none;
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
/* TABLES */
|
||||
|
@ -311,7 +276,7 @@ table {
|
|||
}
|
||||
|
||||
td, th {
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
line-height: 16px;
|
||||
border-bottom: 1px solid var(--hairline-color);
|
||||
vertical-align: top;
|
||||
|
@ -327,7 +292,7 @@ thead th,
|
|||
tfoot td {
|
||||
color: var(--body-quiet-color);
|
||||
padding: 5px 10px;
|
||||
font-size: 11px;
|
||||
font-size: 0.6875rem;
|
||||
background: var(--body-bg);
|
||||
border: none;
|
||||
border-top: 1px solid var(--hairline-color);
|
||||
|
@ -437,7 +402,7 @@ table thead th.sorted .sortoptions a.sortremove:after {
|
|||
top: -6px;
|
||||
left: 3px;
|
||||
font-weight: 200;
|
||||
font-size: 18px;
|
||||
font-size: 1.125rem;
|
||||
color: var(--body-quiet-color);
|
||||
}
|
||||
|
||||
|
@ -478,7 +443,7 @@ input, textarea, select, .form-row p, form .button {
|
|||
vertical-align: middle;
|
||||
font-family: "Roboto", "Lucida Grande", Verdana, Arial, sans-serif;
|
||||
font-weight: normal;
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
}
|
||||
.form-row div.help {
|
||||
padding: 2px 3px;
|
||||
|
@ -589,7 +554,7 @@ input[type=button][disabled].default {
|
|||
margin: 0;
|
||||
padding: 8px;
|
||||
font-weight: 400;
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
text-align: left;
|
||||
background: var(--primary);
|
||||
color: var(--header-link-color);
|
||||
|
@ -597,7 +562,7 @@ input[type=button][disabled].default {
|
|||
|
||||
.module caption,
|
||||
.inline-group h2 {
|
||||
font-size: 12px;
|
||||
font-size: 0.75rem;
|
||||
letter-spacing: 0.5px;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
|
@ -616,12 +581,13 @@ ul.messagelist {
|
|||
ul.messagelist li {
|
||||
display: block;
|
||||
font-weight: 400;
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
padding: 10px 10px 10px 65px;
|
||||
margin: 0 0 10px 0;
|
||||
background: var(--message-success-bg) url(../img/icon-yes.svg) 40px 12px no-repeat;
|
||||
background-size: 16px auto;
|
||||
color: var(--body-fg);
|
||||
word-break: break-word;
|
||||
}
|
||||
|
||||
ul.messagelist li.warning {
|
||||
|
@ -635,7 +601,7 @@ ul.messagelist li.error {
|
|||
}
|
||||
|
||||
.errornote {
|
||||
font-size: 14px;
|
||||
font-size: 0.875rem;
|
||||
font-weight: 700;
|
||||
display: block;
|
||||
padding: 10px 12px;
|
||||
|
@ -656,7 +622,7 @@ ul.errorlist {
|
|||
}
|
||||
|
||||
ul.errorlist li {
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
display: block;
|
||||
margin-bottom: 4px;
|
||||
overflow-wrap: break-word;
|
||||
|
@ -697,7 +663,7 @@ td ul.errorlist + input, td ul.errorlist + select, td ul.errorlist + textarea {
|
|||
}
|
||||
|
||||
.description {
|
||||
font-size: 12px;
|
||||
font-size: 0.75rem;
|
||||
padding: 5px 0 0 12px;
|
||||
}
|
||||
|
||||
|
@ -753,7 +719,7 @@ a.deletelink:focus, a.deletelink:hover {
|
|||
/* OBJECT TOOLS */
|
||||
|
||||
.object-tools {
|
||||
font-size: 10px;
|
||||
font-size: 0.625rem;
|
||||
font-weight: bold;
|
||||
padding-left: 0;
|
||||
float: right;
|
||||
|
@ -779,7 +745,7 @@ a.deletelink:focus, a.deletelink:hover {
|
|||
background: var(--object-tools-bg);
|
||||
color: var(--object-tools-fg);
|
||||
font-weight: 400;
|
||||
font-size: 11px;
|
||||
font-size: 0.6875rem;
|
||||
text-transform: uppercase;
|
||||
letter-spacing: 0.5px;
|
||||
}
|
||||
|
@ -808,14 +774,21 @@ a.deletelink:focus, a.deletelink:hover {
|
|||
|
||||
/* OBJECT HISTORY */
|
||||
|
||||
table#change-history {
|
||||
#change-history table {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
table#change-history tbody th {
|
||||
#change-history table tbody th {
|
||||
width: 16em;
|
||||
}
|
||||
|
||||
#change-history .paginator {
|
||||
color: var(--body-quiet-color);
|
||||
border-bottom: 1px solid var(--hairline-color);
|
||||
background: var(--body-bg);
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/* PAGE STRUCTURE */
|
||||
|
||||
#container {
|
||||
|
@ -905,7 +878,7 @@ table#change-history tbody th {
|
|||
overflow: hidden;
|
||||
}
|
||||
|
||||
#header a:link, #header a:visited {
|
||||
#header a:link, #header a:visited, #logout-form button {
|
||||
color: var(--header-link-color);
|
||||
}
|
||||
|
||||
|
@ -921,17 +894,17 @@ table#change-history tbody th {
|
|||
padding: 0;
|
||||
margin: 0 20px 0 0;
|
||||
font-weight: 300;
|
||||
font-size: 24px;
|
||||
color: var(--accent);
|
||||
font-size: 1.5rem;
|
||||
color: var(--header-branding-color);
|
||||
}
|
||||
|
||||
#branding h1, #branding h1 a:link, #branding h1 a:visited {
|
||||
#branding h1 a:link, #branding h1 a:visited {
|
||||
color: var(--accent);
|
||||
}
|
||||
|
||||
#branding h2 {
|
||||
padding: 0 10px;
|
||||
font-size: 14px;
|
||||
font-size: 0.875rem;
|
||||
margin: -8px 0 8px 0;
|
||||
font-weight: normal;
|
||||
color: var(--header-color);
|
||||
|
@ -941,25 +914,43 @@ table#change-history tbody th {
|
|||
text-decoration: none;
|
||||
}
|
||||
|
||||
#logout-form {
|
||||
display: inline;
|
||||
}
|
||||
|
||||
#logout-form button {
|
||||
background: none;
|
||||
border: 0;
|
||||
cursor: pointer;
|
||||
font-family: "Roboto","Lucida Grande","DejaVu Sans","Bitstream Vera Sans",Verdana,Arial,sans-serif;
|
||||
}
|
||||
|
||||
#user-tools {
|
||||
float: right;
|
||||
padding: 0;
|
||||
margin: 0 0 0 20px;
|
||||
font-weight: 300;
|
||||
font-size: 11px;
|
||||
letter-spacing: 0.5px;
|
||||
text-transform: uppercase;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
#user-tools a {
|
||||
#user-tools, #logout-form button{
|
||||
padding: 0;
|
||||
font-weight: 300;
|
||||
font-size: 0.6875rem;
|
||||
letter-spacing: 0.5px;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
|
||||
#user-tools a, #logout-form button {
|
||||
border-bottom: 1px solid rgba(255, 255, 255, 0.25);
|
||||
}
|
||||
|
||||
#user-tools a:focus, #user-tools a:hover {
|
||||
#user-tools a:focus, #user-tools a:hover,
|
||||
#logout-form button:active, #logout-form button:hover {
|
||||
text-decoration: none;
|
||||
border-bottom-color: var(--primary);
|
||||
color: var(--primary);
|
||||
border-bottom: 0;
|
||||
}
|
||||
|
||||
#logout-form button:active, #logout-form button:hover {
|
||||
margin-bottom: 1px;
|
||||
}
|
||||
|
||||
/* SIDEBAR */
|
||||
|
@ -979,7 +970,7 @@ table#change-history tbody th {
|
|||
}
|
||||
|
||||
#content-related h4 {
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
}
|
||||
|
||||
#content-related p {
|
||||
|
@ -1003,7 +994,7 @@ table#change-history tbody th {
|
|||
padding: 16px;
|
||||
margin-bottom: 16px;
|
||||
border-bottom: 1px solid var(--hairline-color);
|
||||
font-size: 18px;
|
||||
font-size: 1.125rem;
|
||||
color: var(--body-fg);
|
||||
}
|
||||
|
||||
|
@ -1050,3 +1041,49 @@ table#change-history tbody th {
|
|||
.popup #header {
|
||||
padding: 10px 20px;
|
||||
}
|
||||
|
||||
/* PAGINATOR */
|
||||
|
||||
.paginator {
|
||||
font-size: 0.8125rem;
|
||||
padding-top: 10px;
|
||||
padding-bottom: 10px;
|
||||
line-height: 22px;
|
||||
margin: 0;
|
||||
border-top: 1px solid var(--hairline-color);
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.paginator a:link, .paginator a:visited {
|
||||
padding: 2px 6px;
|
||||
background: var(--button-bg);
|
||||
text-decoration: none;
|
||||
color: var(--button-fg);
|
||||
}
|
||||
|
||||
.paginator a.showall {
|
||||
border: none;
|
||||
background: none;
|
||||
color: var(--link-fg);
|
||||
}
|
||||
|
||||
.paginator a.showall:focus, .paginator a.showall:hover {
|
||||
background: none;
|
||||
color: var(--link-hover-color);
|
||||
}
|
||||
|
||||
.paginator .end {
|
||||
margin-right: 6px;
|
||||
}
|
||||
|
||||
.paginator .this-page {
|
||||
padding: 2px 6px;
|
||||
font-weight: bold;
|
||||
font-size: 0.8125rem;
|
||||
vertical-align: top;
|
||||
}
|
||||
|
||||
.paginator a:focus, .paginator a:hover {
|
||||
color: white;
|
||||
background: var(--link-hover-color);
|
||||
}
|
||||
|
|
Binary file not shown.
|
@ -84,7 +84,7 @@
|
|||
|
||||
#toolbar form input {
|
||||
border-radius: 4px;
|
||||
font-size: 14px;
|
||||
font-size: 0.875rem;
|
||||
padding: 5px;
|
||||
color: var(--body-fg);
|
||||
}
|
||||
|
@ -95,7 +95,7 @@
|
|||
padding: 2px 5px;
|
||||
margin: 0;
|
||||
vertical-align: top;
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
|
@ -105,7 +105,7 @@
|
|||
|
||||
#toolbar form input[type="submit"] {
|
||||
border: 1px solid var(--border-color);
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
padding: 4px 8px;
|
||||
margin: 0;
|
||||
vertical-align: middle;
|
||||
|
@ -140,7 +140,7 @@
|
|||
}
|
||||
|
||||
#changelist-filter h2 {
|
||||
font-size: 14px;
|
||||
font-size: 0.875rem;
|
||||
text-transform: uppercase;
|
||||
letter-spacing: 0.5px;
|
||||
padding: 5px 15px;
|
||||
|
@ -148,12 +148,35 @@
|
|||
border-bottom: none;
|
||||
}
|
||||
|
||||
#changelist-filter h3 {
|
||||
#changelist-filter h3,
|
||||
#changelist-filter details summary {
|
||||
font-weight: 400;
|
||||
padding: 0 15px;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
#changelist-filter details summary > * {
|
||||
display: inline;
|
||||
}
|
||||
|
||||
#changelist-filter details > summary {
|
||||
list-style-type: none;
|
||||
}
|
||||
|
||||
#changelist-filter details > summary::-webkit-details-marker {
|
||||
display: none;
|
||||
}
|
||||
|
||||
#changelist-filter details > summary::before {
|
||||
content: '→';
|
||||
font-weight: bold;
|
||||
color: var(--link-hover-color);
|
||||
}
|
||||
|
||||
#changelist-filter details[open] > summary::before {
|
||||
content: '↓';
|
||||
}
|
||||
|
||||
#changelist-filter ul {
|
||||
margin: 5px 0;
|
||||
padding: 0 15px 15px;
|
||||
|
@ -173,8 +196,7 @@
|
|||
#changelist-filter a {
|
||||
display: block;
|
||||
color: var(--body-quiet-color);
|
||||
text-overflow: ellipsis;
|
||||
overflow-x: hidden;
|
||||
word-break: break-word;
|
||||
}
|
||||
|
||||
#changelist-filter li.selected {
|
||||
|
@ -194,7 +216,7 @@
|
|||
}
|
||||
|
||||
#changelist-filter #changelist-filter-clear a {
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
padding-bottom: 10px;
|
||||
border-bottom: 1px solid var(--hairline-color);
|
||||
}
|
||||
|
@ -225,52 +247,6 @@
|
|||
color: var(--link-hover-color);
|
||||
}
|
||||
|
||||
/* PAGINATOR */
|
||||
|
||||
.paginator {
|
||||
font-size: 13px;
|
||||
padding-top: 10px;
|
||||
padding-bottom: 10px;
|
||||
line-height: 22px;
|
||||
margin: 0;
|
||||
border-top: 1px solid var(--hairline-color);
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.paginator a:link, .paginator a:visited {
|
||||
padding: 2px 6px;
|
||||
background: var(--button-bg);
|
||||
text-decoration: none;
|
||||
color: var(--button-fg);
|
||||
}
|
||||
|
||||
.paginator a.showall {
|
||||
border: none;
|
||||
background: none;
|
||||
color: var(--link-fg);
|
||||
}
|
||||
|
||||
.paginator a.showall:focus, .paginator a.showall:hover {
|
||||
background: none;
|
||||
color: var(--link-hover-color);
|
||||
}
|
||||
|
||||
.paginator .end {
|
||||
margin-right: 6px;
|
||||
}
|
||||
|
||||
.paginator .this-page {
|
||||
padding: 2px 6px;
|
||||
font-weight: bold;
|
||||
font-size: 13px;
|
||||
vertical-align: top;
|
||||
}
|
||||
|
||||
.paginator a:focus, .paginator a:hover {
|
||||
color: white;
|
||||
background: var(--link-hover-color);
|
||||
}
|
||||
|
||||
/* ACTIONS */
|
||||
|
||||
.filtered .actions {
|
||||
|
@ -296,17 +272,11 @@
|
|||
width: 100%;
|
||||
}
|
||||
|
||||
#changelist .actions.selected { /* XXX Probably unused? */
|
||||
background: var(--body-bg);
|
||||
border-top: 1px solid var(--body-bg);
|
||||
border-bottom: 1px solid #edecd6;
|
||||
}
|
||||
|
||||
#changelist .actions span.all,
|
||||
#changelist .actions span.action-counter,
|
||||
#changelist .actions span.clear,
|
||||
#changelist .actions span.question {
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
margin: 0 0.5em;
|
||||
}
|
||||
|
||||
|
@ -320,7 +290,7 @@
|
|||
color: var(--body-fg);
|
||||
border: 1px solid var(--border-color);
|
||||
border-radius: 4px;
|
||||
font-size: 14px;
|
||||
font-size: 0.875rem;
|
||||
padding: 0 0 0 4px;
|
||||
margin: 0;
|
||||
margin-left: 10px;
|
||||
|
@ -333,11 +303,11 @@
|
|||
#changelist .actions label {
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
}
|
||||
|
||||
#changelist .actions .button {
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
border: 1px solid var(--border-color);
|
||||
border-radius: 4px;
|
||||
background: var(--body-bg);
|
Binary file not shown.
Binary file not shown.
|
@ -84,7 +84,7 @@
|
|||
|
||||
#toolbar form input {
|
||||
border-radius: 4px;
|
||||
font-size: 14px;
|
||||
font-size: 0.875rem;
|
||||
padding: 5px;
|
||||
color: var(--body-fg);
|
||||
}
|
||||
|
@ -95,7 +95,7 @@
|
|||
padding: 2px 5px;
|
||||
margin: 0;
|
||||
vertical-align: top;
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
|
@ -105,7 +105,7 @@
|
|||
|
||||
#toolbar form input[type="submit"] {
|
||||
border: 1px solid var(--border-color);
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
padding: 4px 8px;
|
||||
margin: 0;
|
||||
vertical-align: middle;
|
||||
|
@ -140,7 +140,7 @@
|
|||
}
|
||||
|
||||
#changelist-filter h2 {
|
||||
font-size: 14px;
|
||||
font-size: 0.875rem;
|
||||
text-transform: uppercase;
|
||||
letter-spacing: 0.5px;
|
||||
padding: 5px 15px;
|
||||
|
@ -148,12 +148,35 @@
|
|||
border-bottom: none;
|
||||
}
|
||||
|
||||
#changelist-filter h3 {
|
||||
#changelist-filter h3,
|
||||
#changelist-filter details summary {
|
||||
font-weight: 400;
|
||||
padding: 0 15px;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
#changelist-filter details summary > * {
|
||||
display: inline;
|
||||
}
|
||||
|
||||
#changelist-filter details > summary {
|
||||
list-style-type: none;
|
||||
}
|
||||
|
||||
#changelist-filter details > summary::-webkit-details-marker {
|
||||
display: none;
|
||||
}
|
||||
|
||||
#changelist-filter details > summary::before {
|
||||
content: '→';
|
||||
font-weight: bold;
|
||||
color: var(--link-hover-color);
|
||||
}
|
||||
|
||||
#changelist-filter details[open] > summary::before {
|
||||
content: '↓';
|
||||
}
|
||||
|
||||
#changelist-filter ul {
|
||||
margin: 5px 0;
|
||||
padding: 0 15px 15px;
|
||||
|
@ -173,8 +196,7 @@
|
|||
#changelist-filter a {
|
||||
display: block;
|
||||
color: var(--body-quiet-color);
|
||||
text-overflow: ellipsis;
|
||||
overflow-x: hidden;
|
||||
word-break: break-word;
|
||||
}
|
||||
|
||||
#changelist-filter li.selected {
|
||||
|
@ -194,7 +216,7 @@
|
|||
}
|
||||
|
||||
#changelist-filter #changelist-filter-clear a {
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
padding-bottom: 10px;
|
||||
border-bottom: 1px solid var(--hairline-color);
|
||||
}
|
||||
|
@ -225,52 +247,6 @@
|
|||
color: var(--link-hover-color);
|
||||
}
|
||||
|
||||
/* PAGINATOR */
|
||||
|
||||
.paginator {
|
||||
font-size: 13px;
|
||||
padding-top: 10px;
|
||||
padding-bottom: 10px;
|
||||
line-height: 22px;
|
||||
margin: 0;
|
||||
border-top: 1px solid var(--hairline-color);
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.paginator a:link, .paginator a:visited {
|
||||
padding: 2px 6px;
|
||||
background: var(--button-bg);
|
||||
text-decoration: none;
|
||||
color: var(--button-fg);
|
||||
}
|
||||
|
||||
.paginator a.showall {
|
||||
border: none;
|
||||
background: none;
|
||||
color: var(--link-fg);
|
||||
}
|
||||
|
||||
.paginator a.showall:focus, .paginator a.showall:hover {
|
||||
background: none;
|
||||
color: var(--link-hover-color);
|
||||
}
|
||||
|
||||
.paginator .end {
|
||||
margin-right: 6px;
|
||||
}
|
||||
|
||||
.paginator .this-page {
|
||||
padding: 2px 6px;
|
||||
font-weight: bold;
|
||||
font-size: 13px;
|
||||
vertical-align: top;
|
||||
}
|
||||
|
||||
.paginator a:focus, .paginator a:hover {
|
||||
color: white;
|
||||
background: var(--link-hover-color);
|
||||
}
|
||||
|
||||
/* ACTIONS */
|
||||
|
||||
.filtered .actions {
|
||||
|
@ -296,17 +272,11 @@
|
|||
width: 100%;
|
||||
}
|
||||
|
||||
#changelist .actions.selected { /* XXX Probably unused? */
|
||||
background: var(--body-bg);
|
||||
border-top: 1px solid var(--body-bg);
|
||||
border-bottom: 1px solid #edecd6;
|
||||
}
|
||||
|
||||
#changelist .actions span.all,
|
||||
#changelist .actions span.action-counter,
|
||||
#changelist .actions span.clear,
|
||||
#changelist .actions span.question {
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
margin: 0 0.5em;
|
||||
}
|
||||
|
||||
|
@ -320,7 +290,7 @@
|
|||
color: var(--body-fg);
|
||||
border: 1px solid var(--border-color);
|
||||
border-radius: 4px;
|
||||
font-size: 14px;
|
||||
font-size: 0.875rem;
|
||||
padding: 0 0 0 4px;
|
||||
margin: 0;
|
||||
margin-left: 10px;
|
||||
|
@ -333,11 +303,11 @@
|
|||
#changelist .actions label {
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
}
|
||||
|
||||
#changelist .actions .button {
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
border: 1px solid var(--border-color);
|
||||
border-radius: 4px;
|
||||
background: var(--body-bg);
|
||||
|
|
Binary file not shown.
|
@ -0,0 +1,33 @@
|
|||
@media (prefers-color-scheme: dark) {
|
||||
:root {
|
||||
--primary: #264b5d;
|
||||
--primary-fg: #f7f7f7;
|
||||
|
||||
--body-fg: #eeeeee;
|
||||
--body-bg: #121212;
|
||||
--body-quiet-color: #e0e0e0;
|
||||
--body-loud-color: #ffffff;
|
||||
|
||||
--breadcrumbs-link-fg: #e0e0e0;
|
||||
--breadcrumbs-bg: var(--primary);
|
||||
|
||||
--link-fg: #81d4fa;
|
||||
--link-hover-color: #4ac1f7;
|
||||
--link-selected-fg: #6f94c6;
|
||||
|
||||
--hairline-color: #272727;
|
||||
--border-color: #353535;
|
||||
|
||||
--error-fg: #e35f5f;
|
||||
--message-success-bg: #006b1b;
|
||||
--message-warning-bg: #583305;
|
||||
--message-error-bg: #570808;
|
||||
|
||||
--darkened-bg: #212121;
|
||||
--selected-bg: #1b1b1b;
|
||||
--selected-row: #00363a;
|
||||
|
||||
--close-button-bg: #333333;
|
||||
--close-button-hover-bg: #666666;
|
||||
}
|
||||
}
|
Binary file not shown.
|
@ -0,0 +1,33 @@
|
|||
@media (prefers-color-scheme: dark) {
|
||||
:root {
|
||||
--primary: #264b5d;
|
||||
--primary-fg: #f7f7f7;
|
||||
|
||||
--body-fg: #eeeeee;
|
||||
--body-bg: #121212;
|
||||
--body-quiet-color: #e0e0e0;
|
||||
--body-loud-color: #ffffff;
|
||||
|
||||
--breadcrumbs-link-fg: #e0e0e0;
|
||||
--breadcrumbs-bg: var(--primary);
|
||||
|
||||
--link-fg: #81d4fa;
|
||||
--link-hover-color: #4ac1f7;
|
||||
--link-selected-fg: #6f94c6;
|
||||
|
||||
--hairline-color: #272727;
|
||||
--border-color: #353535;
|
||||
|
||||
--error-fg: #e35f5f;
|
||||
--message-success-bg: #006b1b;
|
||||
--message-warning-bg: #583305;
|
||||
--message-error-bg: #570808;
|
||||
|
||||
--darkened-bg: #212121;
|
||||
--selected-bg: #1b1b1b;
|
||||
--selected-row: #00363a;
|
||||
|
||||
--close-button-bg: #333333;
|
||||
--close-button-hover-bg: #666666;
|
||||
}
|
||||
}
|
Binary file not shown.
Binary file not shown.
|
@ -1,11 +1,11 @@
|
|||
@import url("widgets.694d845b2cb1.css");
|
||||
@import url("widgets.00318bc424d3.css");
|
||||
|
||||
/* FORM ROWS */
|
||||
|
||||
.form-row {
|
||||
overflow: hidden;
|
||||
padding: 10px;
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
border-bottom: 1px solid var(--hairline-color);
|
||||
}
|
||||
|
||||
|
@ -27,7 +27,7 @@ form .form-row p {
|
|||
label {
|
||||
font-weight: normal;
|
||||
color: var(--body-quiet-color);
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
}
|
||||
|
||||
.required label, label.required {
|
||||
|
@ -248,7 +248,7 @@ fieldset.monospace textarea {
|
|||
/* SUBMIT ROW */
|
||||
|
||||
.submit-row {
|
||||
padding: 12px 14px;
|
||||
padding: 12px 14px 7px;
|
||||
margin: 0 0 20px;
|
||||
background: var(--darkened-bg);
|
||||
border: 1px solid var(--hairline-color);
|
||||
|
@ -264,11 +264,11 @@ body.popup .submit-row {
|
|||
.submit-row input {
|
||||
height: 35px;
|
||||
line-height: 15px;
|
||||
margin: 0 0 0 5px;
|
||||
margin: 0 0 5px 5px;
|
||||
}
|
||||
|
||||
.submit-row input.default {
|
||||
margin: 0 0 0 8px;
|
||||
margin: 0 0 5px 8px;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
|
||||
|
@ -288,6 +288,7 @@ body.popup .submit-row {
|
|||
padding: 10px 15px;
|
||||
height: 15px;
|
||||
line-height: 15px;
|
||||
margin-bottom: 5px;
|
||||
color: var(--button-fg);
|
||||
}
|
||||
|
||||
|
@ -353,10 +354,6 @@ body.popup .submit-row {
|
|||
width: 2.2em;
|
||||
}
|
||||
|
||||
.vTextField, .vUUIDField {
|
||||
width: 20em;
|
||||
}
|
||||
|
||||
.vIntegerField {
|
||||
width: 5em;
|
||||
}
|
||||
|
@ -369,6 +366,10 @@ body.popup .submit-row {
|
|||
width: 5em;
|
||||
}
|
||||
|
||||
.vTextField, .vUUIDField {
|
||||
width: 20em;
|
||||
}
|
||||
|
||||
/* INLINES */
|
||||
|
||||
.inline-group {
|
||||
|
@ -392,7 +393,7 @@ body.popup .submit-row {
|
|||
margin: 0;
|
||||
color: var(--body-quiet-color);
|
||||
padding: 5px;
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
background: var(--darkened-bg);
|
||||
border-top: 1px solid var(--hairline-color);
|
||||
border-bottom: 1px solid var(--hairline-color);
|
||||
|
@ -404,7 +405,7 @@ body.popup .submit-row {
|
|||
|
||||
.inline-related h3 span.delete label {
|
||||
margin-left: 2px;
|
||||
font-size: 11px;
|
||||
font-size: 0.6875rem;
|
||||
}
|
||||
|
||||
.inline-related fieldset {
|
||||
|
@ -417,7 +418,7 @@ body.popup .submit-row {
|
|||
.inline-related fieldset.module h3 {
|
||||
margin: 0;
|
||||
padding: 2px 5px 3px 5px;
|
||||
font-size: 11px;
|
||||
font-size: 0.6875rem;
|
||||
text-align: left;
|
||||
font-weight: bold;
|
||||
background: #bcd;
|
||||
|
@ -458,7 +459,7 @@ body.popup .submit-row {
|
|||
height: 1.1em;
|
||||
padding: 2px 9px;
|
||||
overflow: hidden;
|
||||
font-size: 9px;
|
||||
font-size: 0.5625rem;
|
||||
font-weight: bold;
|
||||
color: var(--body-quiet-color);
|
||||
_width: 700px;
|
||||
|
@ -493,7 +494,7 @@ body.popup .submit-row {
|
|||
.inline-group .tabular tr.add-row td a {
|
||||
background: url("../img/icon-addlink.d519b3bab011.svg") 0 1px no-repeat;
|
||||
padding-left: 16px;
|
||||
font-size: 12px;
|
||||
font-size: 0.75rem;
|
||||
}
|
||||
|
||||
.empty-form {
|
Binary file not shown.
|
@ -5,7 +5,7 @@
|
|||
.form-row {
|
||||
overflow: hidden;
|
||||
padding: 10px;
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
border-bottom: 1px solid var(--hairline-color);
|
||||
}
|
||||
|
||||
|
@ -27,7 +27,7 @@ form .form-row p {
|
|||
label {
|
||||
font-weight: normal;
|
||||
color: var(--body-quiet-color);
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
}
|
||||
|
||||
.required label, label.required {
|
||||
|
@ -248,7 +248,7 @@ fieldset.monospace textarea {
|
|||
/* SUBMIT ROW */
|
||||
|
||||
.submit-row {
|
||||
padding: 12px 14px;
|
||||
padding: 12px 14px 7px;
|
||||
margin: 0 0 20px;
|
||||
background: var(--darkened-bg);
|
||||
border: 1px solid var(--hairline-color);
|
||||
|
@ -264,11 +264,11 @@ body.popup .submit-row {
|
|||
.submit-row input {
|
||||
height: 35px;
|
||||
line-height: 15px;
|
||||
margin: 0 0 0 5px;
|
||||
margin: 0 0 5px 5px;
|
||||
}
|
||||
|
||||
.submit-row input.default {
|
||||
margin: 0 0 0 8px;
|
||||
margin: 0 0 5px 8px;
|
||||
text-transform: uppercase;
|
||||
}
|
||||
|
||||
|
@ -288,6 +288,7 @@ body.popup .submit-row {
|
|||
padding: 10px 15px;
|
||||
height: 15px;
|
||||
line-height: 15px;
|
||||
margin-bottom: 5px;
|
||||
color: var(--button-fg);
|
||||
}
|
||||
|
||||
|
@ -353,10 +354,6 @@ body.popup .submit-row {
|
|||
width: 2.2em;
|
||||
}
|
||||
|
||||
.vTextField, .vUUIDField {
|
||||
width: 20em;
|
||||
}
|
||||
|
||||
.vIntegerField {
|
||||
width: 5em;
|
||||
}
|
||||
|
@ -369,6 +366,10 @@ body.popup .submit-row {
|
|||
width: 5em;
|
||||
}
|
||||
|
||||
.vTextField, .vUUIDField {
|
||||
width: 20em;
|
||||
}
|
||||
|
||||
/* INLINES */
|
||||
|
||||
.inline-group {
|
||||
|
@ -392,7 +393,7 @@ body.popup .submit-row {
|
|||
margin: 0;
|
||||
color: var(--body-quiet-color);
|
||||
padding: 5px;
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
background: var(--darkened-bg);
|
||||
border-top: 1px solid var(--hairline-color);
|
||||
border-bottom: 1px solid var(--hairline-color);
|
||||
|
@ -404,7 +405,7 @@ body.popup .submit-row {
|
|||
|
||||
.inline-related h3 span.delete label {
|
||||
margin-left: 2px;
|
||||
font-size: 11px;
|
||||
font-size: 0.6875rem;
|
||||
}
|
||||
|
||||
.inline-related fieldset {
|
||||
|
@ -417,7 +418,7 @@ body.popup .submit-row {
|
|||
.inline-related fieldset.module h3 {
|
||||
margin: 0;
|
||||
padding: 2px 5px 3px 5px;
|
||||
font-size: 11px;
|
||||
font-size: 0.6875rem;
|
||||
text-align: left;
|
||||
font-weight: bold;
|
||||
background: #bcd;
|
||||
|
@ -458,7 +459,7 @@ body.popup .submit-row {
|
|||
height: 1.1em;
|
||||
padding: 2px 9px;
|
||||
overflow: hidden;
|
||||
font-size: 9px;
|
||||
font-size: 0.5625rem;
|
||||
font-weight: bold;
|
||||
color: var(--body-quiet-color);
|
||||
_width: 700px;
|
||||
|
@ -493,7 +494,7 @@ body.popup .submit-row {
|
|||
.inline-group .tabular tr.add-row td a {
|
||||
background: url(../img/icon-addlink.svg) 0 1px no-repeat;
|
||||
padding-left: 16px;
|
||||
font-size: 12px;
|
||||
font-size: 0.75rem;
|
||||
}
|
||||
|
||||
.empty-form {
|
||||
|
|
Binary file not shown.
|
@ -12,7 +12,7 @@
|
|||
}
|
||||
|
||||
.login #header h1 {
|
||||
font-size: 18px;
|
||||
font-size: 1.125rem;
|
||||
margin: 0;
|
||||
}
|
||||
|
Binary file not shown.
Binary file not shown.
|
@ -12,7 +12,7 @@
|
|||
}
|
||||
|
||||
.login #header h1 {
|
||||
font-size: 18px;
|
||||
font-size: 1.125rem;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
|
|
Binary file not shown.
|
@ -16,7 +16,7 @@
|
|||
border-right: 1px solid var(--hairline-color);
|
||||
background-color: var(--body-bg);
|
||||
cursor: pointer;
|
||||
font-size: 20px;
|
||||
font-size: 1.25rem;
|
||||
color: var(--link-fg);
|
||||
padding: 0;
|
||||
}
|
Binary file not shown.
|
@ -16,7 +16,7 @@
|
|||
border-right: 1px solid var(--hairline-color);
|
||||
background-color: var(--body-bg);
|
||||
cursor: pointer;
|
||||
font-size: 20px;
|
||||
font-size: 1.25rem;
|
||||
color: var(--link-fg);
|
||||
padding: 0;
|
||||
}
|
||||
|
|
Binary file not shown.
Binary file not shown.
|
@ -14,11 +14,11 @@ input[type="submit"], button {
|
|||
|
||||
td, th {
|
||||
padding: 10px;
|
||||
font-size: 14px;
|
||||
font-size: 0.875rem;
|
||||
}
|
||||
|
||||
.small {
|
||||
font-size: 12px;
|
||||
font-size: 0.75rem;
|
||||
}
|
||||
|
||||
/* Layout */
|
||||
|
@ -28,7 +28,7 @@ input[type="submit"], button {
|
|||
}
|
||||
|
||||
#content {
|
||||
padding: 20px 30px 30px;
|
||||
padding: 15px 20px 20px;
|
||||
}
|
||||
|
||||
div.breadcrumbs {
|
||||
|
@ -45,7 +45,6 @@ input[type="submit"], button {
|
|||
|
||||
#branding h1 {
|
||||
margin: 0 0 8px;
|
||||
font-size: 20px;
|
||||
line-height: 1.2;
|
||||
}
|
||||
|
||||
|
@ -88,7 +87,7 @@ input[type="submit"], button {
|
|||
}
|
||||
|
||||
td .changelink, td .addlink {
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
}
|
||||
|
||||
/* Changelist */
|
||||
|
@ -131,10 +130,6 @@ input[type="submit"], button {
|
|||
padding: 15px 0;
|
||||
}
|
||||
|
||||
#changelist .actions.selected {
|
||||
border: none;
|
||||
}
|
||||
|
||||
#changelist .actions label {
|
||||
display: flex;
|
||||
}
|
||||
|
@ -152,7 +147,7 @@ input[type="submit"], button {
|
|||
#changelist .actions span.clear,
|
||||
#changelist .actions span.question,
|
||||
#changelist .actions span.action-counter {
|
||||
font-size: 11px;
|
||||
font-size: 0.6875rem;
|
||||
margin: 0 10px 0 0;
|
||||
}
|
||||
|
||||
|
@ -176,7 +171,7 @@ input[type="submit"], button {
|
|||
/* Forms */
|
||||
|
||||
label {
|
||||
font-size: 14px;
|
||||
font-size: 0.875rem;
|
||||
}
|
||||
|
||||
.form-row input[type=text],
|
||||
|
@ -192,7 +187,7 @@ input[type="submit"], button {
|
|||
margin: 0;
|
||||
padding: 6px 8px;
|
||||
min-height: 36px;
|
||||
font-size: 14px;
|
||||
font-size: 0.875rem;
|
||||
}
|
||||
|
||||
.form-row select {
|
||||
|
@ -236,6 +231,22 @@ input[type="submit"], button {
|
|||
margin-left: 2px;
|
||||
}
|
||||
|
||||
.submit-row {
|
||||
padding: 8px 8px 3px 8px;
|
||||
}
|
||||
|
||||
.submit-row a.deletelink {
|
||||
padding: 10px 7px;
|
||||
}
|
||||
|
||||
.submit-row input.default {
|
||||
margin: 0 0 5px 5px;
|
||||
}
|
||||
|
||||
.button, input[type=submit], input[type=button], .submit-row input, a.button {
|
||||
padding: 7px;
|
||||
}
|
||||
|
||||
/* Related widget */
|
||||
|
||||
.related-widget-wrapper {
|
||||
|
@ -393,12 +404,12 @@ input[type="submit"], button {
|
|||
}
|
||||
|
||||
.datetime span {
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
}
|
||||
|
||||
.datetime .timezonewarning {
|
||||
display: block;
|
||||
font-size: 11px;
|
||||
font-size: 0.6875rem;
|
||||
color: var(--body-quiet-color);
|
||||
}
|
||||
|
||||
|
@ -496,7 +507,7 @@ input[type="submit"], button {
|
|||
|
||||
#content-related .module h2 {
|
||||
padding: 10px 15px;
|
||||
font-size: 16px;
|
||||
font-size: 1rem;
|
||||
}
|
||||
|
||||
/* Changelist */
|
||||
|
@ -622,7 +633,7 @@ input[type="submit"], button {
|
|||
|
||||
.aligned p.file-upload {
|
||||
margin-left: 0;
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
}
|
||||
|
||||
span.clearable-file-input {
|
||||
|
@ -630,7 +641,7 @@ input[type="submit"], button {
|
|||
}
|
||||
|
||||
span.clearable-file-input label {
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
padding-bottom: 0;
|
||||
}
|
||||
|
||||
|
@ -812,7 +823,7 @@ input[type="submit"], button {
|
|||
/* Submit row */
|
||||
|
||||
.submit-row {
|
||||
padding: 10px 10px 0;
|
||||
padding: 10px 10px 5px;
|
||||
margin: 0 0 15px;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
|
@ -907,7 +918,7 @@ input[type="submit"], button {
|
|||
.errornote {
|
||||
margin: 0 0 20px;
|
||||
padding: 8px 12px;
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
}
|
||||
|
||||
/* Calendar and clock */
|
||||
|
@ -954,7 +965,7 @@ input[type="submit"], button {
|
|||
|
||||
.calendar-shortcuts {
|
||||
padding: 10px 0;
|
||||
font-size: 12px;
|
||||
font-size: 0.75rem;
|
||||
line-height: 12px;
|
||||
}
|
||||
|
||||
|
@ -987,7 +998,7 @@ input[type="submit"], button {
|
|||
/* History */
|
||||
|
||||
table#change-history tbody th, table#change-history tbody td {
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
word-break: break-word;
|
||||
}
|
||||
|
||||
|
@ -998,7 +1009,7 @@ input[type="submit"], button {
|
|||
/* Docs */
|
||||
|
||||
table.model tbody th, table.model tbody td {
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
word-break: break-word;
|
||||
}
|
||||
}
|
Binary file not shown.
Binary file not shown.
|
@ -14,11 +14,11 @@ input[type="submit"], button {
|
|||
|
||||
td, th {
|
||||
padding: 10px;
|
||||
font-size: 14px;
|
||||
font-size: 0.875rem;
|
||||
}
|
||||
|
||||
.small {
|
||||
font-size: 12px;
|
||||
font-size: 0.75rem;
|
||||
}
|
||||
|
||||
/* Layout */
|
||||
|
@ -28,7 +28,7 @@ input[type="submit"], button {
|
|||
}
|
||||
|
||||
#content {
|
||||
padding: 20px 30px 30px;
|
||||
padding: 15px 20px 20px;
|
||||
}
|
||||
|
||||
div.breadcrumbs {
|
||||
|
@ -45,7 +45,6 @@ input[type="submit"], button {
|
|||
|
||||
#branding h1 {
|
||||
margin: 0 0 8px;
|
||||
font-size: 20px;
|
||||
line-height: 1.2;
|
||||
}
|
||||
|
||||
|
@ -88,7 +87,7 @@ input[type="submit"], button {
|
|||
}
|
||||
|
||||
td .changelink, td .addlink {
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
}
|
||||
|
||||
/* Changelist */
|
||||
|
@ -131,10 +130,6 @@ input[type="submit"], button {
|
|||
padding: 15px 0;
|
||||
}
|
||||
|
||||
#changelist .actions.selected {
|
||||
border: none;
|
||||
}
|
||||
|
||||
#changelist .actions label {
|
||||
display: flex;
|
||||
}
|
||||
|
@ -152,7 +147,7 @@ input[type="submit"], button {
|
|||
#changelist .actions span.clear,
|
||||
#changelist .actions span.question,
|
||||
#changelist .actions span.action-counter {
|
||||
font-size: 11px;
|
||||
font-size: 0.6875rem;
|
||||
margin: 0 10px 0 0;
|
||||
}
|
||||
|
||||
|
@ -176,7 +171,7 @@ input[type="submit"], button {
|
|||
/* Forms */
|
||||
|
||||
label {
|
||||
font-size: 14px;
|
||||
font-size: 0.875rem;
|
||||
}
|
||||
|
||||
.form-row input[type=text],
|
||||
|
@ -192,7 +187,7 @@ input[type="submit"], button {
|
|||
margin: 0;
|
||||
padding: 6px 8px;
|
||||
min-height: 36px;
|
||||
font-size: 14px;
|
||||
font-size: 0.875rem;
|
||||
}
|
||||
|
||||
.form-row select {
|
||||
|
@ -236,6 +231,22 @@ input[type="submit"], button {
|
|||
margin-left: 2px;
|
||||
}
|
||||
|
||||
.submit-row {
|
||||
padding: 8px 8px 3px 8px;
|
||||
}
|
||||
|
||||
.submit-row a.deletelink {
|
||||
padding: 10px 7px;
|
||||
}
|
||||
|
||||
.submit-row input.default {
|
||||
margin: 0 0 5px 5px;
|
||||
}
|
||||
|
||||
.button, input[type=submit], input[type=button], .submit-row input, a.button {
|
||||
padding: 7px;
|
||||
}
|
||||
|
||||
/* Related widget */
|
||||
|
||||
.related-widget-wrapper {
|
||||
|
@ -393,12 +404,12 @@ input[type="submit"], button {
|
|||
}
|
||||
|
||||
.datetime span {
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
}
|
||||
|
||||
.datetime .timezonewarning {
|
||||
display: block;
|
||||
font-size: 11px;
|
||||
font-size: 0.6875rem;
|
||||
color: var(--body-quiet-color);
|
||||
}
|
||||
|
||||
|
@ -496,7 +507,7 @@ input[type="submit"], button {
|
|||
|
||||
#content-related .module h2 {
|
||||
padding: 10px 15px;
|
||||
font-size: 16px;
|
||||
font-size: 1rem;
|
||||
}
|
||||
|
||||
/* Changelist */
|
||||
|
@ -622,7 +633,7 @@ input[type="submit"], button {
|
|||
|
||||
.aligned p.file-upload {
|
||||
margin-left: 0;
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
}
|
||||
|
||||
span.clearable-file-input {
|
||||
|
@ -630,7 +641,7 @@ input[type="submit"], button {
|
|||
}
|
||||
|
||||
span.clearable-file-input label {
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
padding-bottom: 0;
|
||||
}
|
||||
|
||||
|
@ -812,7 +823,7 @@ input[type="submit"], button {
|
|||
/* Submit row */
|
||||
|
||||
.submit-row {
|
||||
padding: 10px 10px 0;
|
||||
padding: 10px 10px 5px;
|
||||
margin: 0 0 15px;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
|
@ -907,7 +918,7 @@ input[type="submit"], button {
|
|||
.errornote {
|
||||
margin: 0 0 20px;
|
||||
padding: 8px 12px;
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
}
|
||||
|
||||
/* Calendar and clock */
|
||||
|
@ -954,7 +965,7 @@ input[type="submit"], button {
|
|||
|
||||
.calendar-shortcuts {
|
||||
padding: 10px 0;
|
||||
font-size: 12px;
|
||||
font-size: 0.75rem;
|
||||
line-height: 12px;
|
||||
}
|
||||
|
||||
|
@ -987,7 +998,7 @@ input[type="submit"], button {
|
|||
/* History */
|
||||
|
||||
table#change-history tbody th, table#change-history tbody td {
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
word-break: break-word;
|
||||
}
|
||||
|
||||
|
@ -998,7 +1009,7 @@ input[type="submit"], button {
|
|||
/* Docs */
|
||||
|
||||
table.model tbody th, table.model tbody td {
|
||||
font-size: 13px;
|
||||
font-size: 0.8125rem;
|
||||
word-break: break-word;
|
||||
}
|
||||
}
|
||||
|
|
Binary file not shown.
Binary file not shown.
|
@ -175,12 +175,24 @@ fieldset .fieldBox {
|
|||
top: 0;
|
||||
left: auto;
|
||||
right: 10px;
|
||||
background: url("../img/calendar-icons.39b290681a8b.svg") 0 -30px no-repeat;
|
||||
}
|
||||
|
||||
.calendarbox .calendarnav-previous:focus,
|
||||
.calendarbox .calendarnav-previous:hover {
|
||||
background-position: 0 -45px;
|
||||
}
|
||||
|
||||
.calendarnav-next {
|
||||
top: 0;
|
||||
right: auto;
|
||||
left: 10px;
|
||||
background: url("../img/calendar-icons.39b290681a8b.svg") 0 0 no-repeat;
|
||||
}
|
||||
|
||||
.calendarbox .calendarnav-next:focus,
|
||||
.calendarbox .calendarnav-next:hover {
|
||||
background-position: 0 -15px;
|
||||
}
|
||||
|
||||
.calendar caption, .calendarbox h2 {
|
Binary file not shown.
|
@ -175,12 +175,24 @@ fieldset .fieldBox {
|
|||
top: 0;
|
||||
left: auto;
|
||||
right: 10px;
|
||||
background: url(../img/calendar-icons.svg) 0 -30px no-repeat;
|
||||
}
|
||||
|
||||
.calendarbox .calendarnav-previous:focus,
|
||||
.calendarbox .calendarnav-previous:hover {
|
||||
background-position: 0 -45px;
|
||||
}
|
||||
|
||||
.calendarnav-next {
|
||||
top: 0;
|
||||
right: auto;
|
||||
left: 10px;
|
||||
background: url(../img/calendar-icons.svg) 0 0 no-repeat;
|
||||
}
|
||||
|
||||
.calendarbox .calendarnav-next:focus,
|
||||
.calendarbox .calendarnav-next:hover {
|
||||
background-position: 0 -15px;
|
||||
}
|
||||
|
||||
.calendar caption, .calendarbox h2 {
|
||||
|
|
Binary file not shown.
|
@ -3,18 +3,21 @@
|
|||
.selector {
|
||||
width: 800px;
|
||||
float: left;
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.selector select {
|
||||
width: 380px;
|
||||
height: 17.2em;
|
||||
flex: 1 0 auto;
|
||||
}
|
||||
|
||||
.selector-available, .selector-chosen {
|
||||
float: left;
|
||||
width: 380px;
|
||||
text-align: center;
|
||||
margin-bottom: 5px;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
.selector-chosen select {
|
||||
|
@ -41,7 +44,7 @@
|
|||
border-width: 0 1px;
|
||||
padding: 8px;
|
||||
color: var(--body-quiet-color);
|
||||
font-size: 10px;
|
||||
font-size: 0.625rem;
|
||||
margin: 0;
|
||||
text-align: left;
|
||||
}
|
||||
|
@ -63,12 +66,13 @@
|
|||
}
|
||||
|
||||
.selector ul.selector-chooser {
|
||||
float: left;
|
||||
align-self: center;
|
||||
width: 22px;
|
||||
background-color: var(--selected-bg);
|
||||
border-radius: 10px;
|
||||
margin: 10em 5px 0 5px;
|
||||
margin: 0 5px;
|
||||
padding: 0;
|
||||
transform: translateY(-17px);
|
||||
}
|
||||
|
||||
.selector-chooser li {
|
||||
|
@ -168,6 +172,7 @@ a.active.selector-clearall:focus, a.active.selector-clearall:hover {
|
|||
.stacked {
|
||||
float: left;
|
||||
width: 490px;
|
||||
display: block;
|
||||
}
|
||||
|
||||
.stacked select {
|
||||
|
@ -193,6 +198,7 @@ a.active.selector-clearall:focus, a.active.selector-clearall:hover {
|
|||
margin: 0 0 10px 40%;
|
||||
background-color: #eee;
|
||||
border-radius: 10px;
|
||||
transform: none;
|
||||
}
|
||||
|
||||
.stacked .selector-chooser li {
|
||||
|
@ -267,7 +273,7 @@ p.datetime {
|
|||
.datetime span {
|
||||
white-space: nowrap;
|
||||
font-weight: normal;
|
||||
font-size: 11px;
|
||||
font-size: 0.6875rem;
|
||||
color: var(--body-quiet-color);
|
||||
}
|
||||
|
||||
|
@ -277,7 +283,7 @@ p.datetime {
|
|||
}
|
||||
|
||||
table p.datetime {
|
||||
font-size: 11px;
|
||||
font-size: 0.6875rem;
|
||||
margin-left: 0;
|
||||
padding-left: 0;
|
||||
}
|
||||
|
@ -311,7 +317,7 @@ table p.datetime {
|
|||
}
|
||||
|
||||
.timezonewarning {
|
||||
font-size: 11px;
|
||||
font-size: 0.6875rem;
|
||||
color: var(--body-quiet-color);
|
||||
}
|
||||
|
||||
|
@ -322,7 +328,7 @@ p.url {
|
|||
margin: 0;
|
||||
padding: 0;
|
||||
color: var(--body-quiet-color);
|
||||
font-size: 11px;
|
||||
font-size: 0.6875rem;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
|
@ -337,7 +343,7 @@ p.file-upload {
|
|||
margin: 0;
|
||||
padding: 0;
|
||||
color: var(--body-quiet-color);
|
||||
font-size: 11px;
|
||||
font-size: 0.6875rem;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
|
@ -355,7 +361,7 @@ p.file-upload {
|
|||
|
||||
span.clearable-file-input label {
|
||||
color: var(--body-fg);
|
||||
font-size: 11px;
|
||||
font-size: 0.6875rem;
|
||||
display: inline;
|
||||
float: none;
|
||||
}
|
||||
|
@ -364,7 +370,7 @@ span.clearable-file-input label {
|
|||
|
||||
.calendarbox, .clockbox {
|
||||
margin: 5px auto;
|
||||
font-size: 12px;
|
||||
font-size: 0.75rem;
|
||||
width: 19em;
|
||||
text-align: center;
|
||||
background: var(--body-bg);
|
||||
|
@ -398,7 +404,7 @@ span.clearable-file-input label {
|
|||
text-align: center;
|
||||
border-top: none;
|
||||
font-weight: 700;
|
||||
font-size: 12px;
|
||||
font-size: 0.75rem;
|
||||
color: #333;
|
||||
background: var(--accent);
|
||||
}
|
||||
|
@ -408,14 +414,14 @@ span.clearable-file-input label {
|
|||
background: var(--darkened-bg);
|
||||
border-bottom: 1px solid var(--border-color);
|
||||
font-weight: 400;
|
||||
font-size: 12px;
|
||||
font-size: 0.75rem;
|
||||
text-align: center;
|
||||
color: var(--body-quiet-color);
|
||||
}
|
||||
|
||||
.calendar td {
|
||||
font-weight: 400;
|
||||
font-size: 12px;
|
||||
font-size: 0.75rem;
|
||||
text-align: center;
|
||||
padding: 0;
|
||||
border-top: 1px solid var(--hairline-color);
|
||||
|
@ -455,7 +461,7 @@ span.clearable-file-input label {
|
|||
}
|
||||
|
||||
.calendarnav {
|
||||
font-size: 10px;
|
||||
font-size: 0.625rem;
|
||||
text-align: center;
|
||||
color: #ccc;
|
||||
margin: 0;
|
||||
|
@ -470,7 +476,7 @@ span.clearable-file-input label {
|
|||
.calendar-shortcuts {
|
||||
background: var(--body-bg);
|
||||
color: var(--body-quiet-color);
|
||||
font-size: 11px;
|
||||
font-size: 0.6875rem;
|
||||
line-height: 11px;
|
||||
border-top: 1px solid var(--hairline-color);
|
||||
padding: 8px 0;
|
||||
|
@ -509,7 +515,7 @@ span.clearable-file-input label {
|
|||
.calendar-cancel {
|
||||
margin: 0;
|
||||
padding: 4px 0;
|
||||
font-size: 12px;
|
||||
font-size: 0.75rem;
|
||||
background: #eee;
|
||||
border-top: 1px solid var(--border-color);
|
||||
color: var(--body-fg);
|
Binary file not shown.
Binary file not shown.
|
@ -3,18 +3,21 @@
|
|||
.selector {
|
||||
width: 800px;
|
||||
float: left;
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.selector select {
|
||||
width: 380px;
|
||||
height: 17.2em;
|
||||
flex: 1 0 auto;
|
||||
}
|
||||
|
||||
.selector-available, .selector-chosen {
|
||||
float: left;
|
||||
width: 380px;
|
||||
text-align: center;
|
||||
margin-bottom: 5px;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
.selector-chosen select {
|
||||
|
@ -41,7 +44,7 @@
|
|||
border-width: 0 1px;
|
||||
padding: 8px;
|
||||
color: var(--body-quiet-color);
|
||||
font-size: 10px;
|
||||
font-size: 0.625rem;
|
||||
margin: 0;
|
||||
text-align: left;
|
||||
}
|
||||
|
@ -63,12 +66,13 @@
|
|||
}
|
||||
|
||||
.selector ul.selector-chooser {
|
||||
float: left;
|
||||
align-self: center;
|
||||
width: 22px;
|
||||
background-color: var(--selected-bg);
|
||||
border-radius: 10px;
|
||||
margin: 10em 5px 0 5px;
|
||||
margin: 0 5px;
|
||||
padding: 0;
|
||||
transform: translateY(-17px);
|
||||
}
|
||||
|
||||
.selector-chooser li {
|
||||
|
@ -168,6 +172,7 @@ a.active.selector-clearall:focus, a.active.selector-clearall:hover {
|
|||
.stacked {
|
||||
float: left;
|
||||
width: 490px;
|
||||
display: block;
|
||||
}
|
||||
|
||||
.stacked select {
|
||||
|
@ -193,6 +198,7 @@ a.active.selector-clearall:focus, a.active.selector-clearall:hover {
|
|||
margin: 0 0 10px 40%;
|
||||
background-color: #eee;
|
||||
border-radius: 10px;
|
||||
transform: none;
|
||||
}
|
||||
|
||||
.stacked .selector-chooser li {
|
||||
|
@ -267,7 +273,7 @@ p.datetime {
|
|||
.datetime span {
|
||||
white-space: nowrap;
|
||||
font-weight: normal;
|
||||
font-size: 11px;
|
||||
font-size: 0.6875rem;
|
||||
color: var(--body-quiet-color);
|
||||
}
|
||||
|
||||
|
@ -277,7 +283,7 @@ p.datetime {
|
|||
}
|
||||
|
||||
table p.datetime {
|
||||
font-size: 11px;
|
||||
font-size: 0.6875rem;
|
||||
margin-left: 0;
|
||||
padding-left: 0;
|
||||
}
|
||||
|
@ -311,7 +317,7 @@ table p.datetime {
|
|||
}
|
||||
|
||||
.timezonewarning {
|
||||
font-size: 11px;
|
||||
font-size: 0.6875rem;
|
||||
color: var(--body-quiet-color);
|
||||
}
|
||||
|
||||
|
@ -322,7 +328,7 @@ p.url {
|
|||
margin: 0;
|
||||
padding: 0;
|
||||
color: var(--body-quiet-color);
|
||||
font-size: 11px;
|
||||
font-size: 0.6875rem;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
|
@ -337,7 +343,7 @@ p.file-upload {
|
|||
margin: 0;
|
||||
padding: 0;
|
||||
color: var(--body-quiet-color);
|
||||
font-size: 11px;
|
||||
font-size: 0.6875rem;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
|
@ -355,7 +361,7 @@ p.file-upload {
|
|||
|
||||
span.clearable-file-input label {
|
||||
color: var(--body-fg);
|
||||
font-size: 11px;
|
||||
font-size: 0.6875rem;
|
||||
display: inline;
|
||||
float: none;
|
||||
}
|
||||
|
@ -364,7 +370,7 @@ span.clearable-file-input label {
|
|||
|
||||
.calendarbox, .clockbox {
|
||||
margin: 5px auto;
|
||||
font-size: 12px;
|
||||
font-size: 0.75rem;
|
||||
width: 19em;
|
||||
text-align: center;
|
||||
background: var(--body-bg);
|
||||
|
@ -398,7 +404,7 @@ span.clearable-file-input label {
|
|||
text-align: center;
|
||||
border-top: none;
|
||||
font-weight: 700;
|
||||
font-size: 12px;
|
||||
font-size: 0.75rem;
|
||||
color: #333;
|
||||
background: var(--accent);
|
||||
}
|
||||
|
@ -408,14 +414,14 @@ span.clearable-file-input label {
|
|||
background: var(--darkened-bg);
|
||||
border-bottom: 1px solid var(--border-color);
|
||||
font-weight: 400;
|
||||
font-size: 12px;
|
||||
font-size: 0.75rem;
|
||||
text-align: center;
|
||||
color: var(--body-quiet-color);
|
||||
}
|
||||
|
||||
.calendar td {
|
||||
font-weight: 400;
|
||||
font-size: 12px;
|
||||
font-size: 0.75rem;
|
||||
text-align: center;
|
||||
padding: 0;
|
||||
border-top: 1px solid var(--hairline-color);
|
||||
|
@ -455,7 +461,7 @@ span.clearable-file-input label {
|
|||
}
|
||||
|
||||
.calendarnav {
|
||||
font-size: 10px;
|
||||
font-size: 0.625rem;
|
||||
text-align: center;
|
||||
color: #ccc;
|
||||
margin: 0;
|
||||
|
@ -470,7 +476,7 @@ span.clearable-file-input label {
|
|||
.calendar-shortcuts {
|
||||
background: var(--body-bg);
|
||||
color: var(--body-quiet-color);
|
||||
font-size: 11px;
|
||||
font-size: 0.6875rem;
|
||||
line-height: 11px;
|
||||
border-top: 1px solid var(--hairline-color);
|
||||
padding: 8px 0;
|
||||
|
@ -509,7 +515,7 @@ span.clearable-file-input label {
|
|||
.calendar-cancel {
|
||||
margin: 0;
|
||||
padding: 4px 0;
|
||||
font-size: 12px;
|
||||
font-size: 0.75rem;
|
||||
background: #eee;
|
||||
border-top: 1px solid var(--border-color);
|
||||
color: var(--body-fg);
|
||||
|
|
Binary file not shown.
|
@ -153,24 +153,6 @@ Requires core.js and SelectBox.js.
|
|||
// Move selected from_box options to to_box
|
||||
SelectBox.move(field_id + '_from', field_id + '_to');
|
||||
|
||||
if (!is_stacked) {
|
||||
// In horizontal mode, give the same height to the two boxes.
|
||||
const j_from_box = document.getElementById(field_id + '_from');
|
||||
const j_to_box = document.getElementById(field_id + '_to');
|
||||
let height = filter_p.offsetHeight + j_from_box.offsetHeight;
|
||||
|
||||
const j_to_box_style = window.getComputedStyle(j_to_box);
|
||||
if (j_to_box_style.getPropertyValue('box-sizing') === 'border-box') {
|
||||
// Add the padding and border to the final height.
|
||||
height += parseInt(j_to_box_style.getPropertyValue('padding-top'), 10)
|
||||
+ parseInt(j_to_box_style.getPropertyValue('padding-bottom'), 10)
|
||||
+ parseInt(j_to_box_style.getPropertyValue('border-top-width'), 10)
|
||||
+ parseInt(j_to_box_style.getPropertyValue('border-bottom-width'), 10);
|
||||
}
|
||||
|
||||
j_to_box.style.height = height + 'px';
|
||||
}
|
||||
|
||||
// Initial icon refresh
|
||||
SelectFilter.refresh_icons(field_id);
|
||||
},
|
Binary file not shown.
Binary file not shown.
|
@ -153,24 +153,6 @@ Requires core.js and SelectBox.js.
|
|||
// Move selected from_box options to to_box
|
||||
SelectBox.move(field_id + '_from', field_id + '_to');
|
||||
|
||||
if (!is_stacked) {
|
||||
// In horizontal mode, give the same height to the two boxes.
|
||||
const j_from_box = document.getElementById(field_id + '_from');
|
||||
const j_to_box = document.getElementById(field_id + '_to');
|
||||
let height = filter_p.offsetHeight + j_from_box.offsetHeight;
|
||||
|
||||
const j_to_box_style = window.getComputedStyle(j_to_box);
|
||||
if (j_to_box_style.getPropertyValue('box-sizing') === 'border-box') {
|
||||
// Add the padding and border to the final height.
|
||||
height += parseInt(j_to_box_style.getPropertyValue('padding-top'), 10)
|
||||
+ parseInt(j_to_box_style.getPropertyValue('padding-bottom'), 10)
|
||||
+ parseInt(j_to_box_style.getPropertyValue('border-top-width'), 10)
|
||||
+ parseInt(j_to_box_style.getPropertyValue('border-bottom-width'), 10);
|
||||
}
|
||||
|
||||
j_to_box.style.height = height + 'px';
|
||||
}
|
||||
|
||||
// Initial icon refresh
|
||||
SelectFilter.refresh_icons(field_id);
|
||||
},
|
||||
|
|
Binary file not shown.
|
@ -388,13 +388,7 @@
|
|||
DateTimeShortcuts.calendars[num].drawNextMonth();
|
||||
},
|
||||
handleCalendarCallback: function(num) {
|
||||
let format = get_format('DATE_INPUT_FORMATS')[0];
|
||||
// the format needs to be escaped a little
|
||||
format = format.replace('\\', '\\\\')
|
||||
.replace('\r', '\\r')
|
||||
.replace('\n', '\\n')
|
||||
.replace('\t', '\\t')
|
||||
.replace("'", "\\'");
|
||||
const format = get_format('DATE_INPUT_FORMATS')[0];
|
||||
return function(y, m, d) {
|
||||
DateTimeShortcuts.calendarInputs[num].value = new Date(y, m - 1, d).strftime(format);
|
||||
DateTimeShortcuts.calendarInputs[num].focus();
|
Binary file not shown.
Binary file not shown.
|
@ -388,13 +388,7 @@
|
|||
DateTimeShortcuts.calendars[num].drawNextMonth();
|
||||
},
|
||||
handleCalendarCallback: function(num) {
|
||||
let format = get_format('DATE_INPUT_FORMATS')[0];
|
||||
// the format needs to be escaped a little
|
||||
format = format.replace('\\', '\\\\')
|
||||
.replace('\r', '\\r')
|
||||
.replace('\n', '\\n')
|
||||
.replace('\t', '\\t')
|
||||
.replace("'", "\\'");
|
||||
const format = get_format('DATE_INPUT_FORMATS')[0];
|
||||
return function(y, m, d) {
|
||||
DateTimeShortcuts.calendarInputs[num].value = new Date(y, m - 1, d).strftime(format);
|
||||
DateTimeShortcuts.calendarInputs[num].focus();
|
||||
|
|
Binary file not shown.
Binary file not shown.
|
@ -4,14 +4,45 @@
|
|||
'use strict';
|
||||
{
|
||||
const $ = django.jQuery;
|
||||
let popupIndex = 0;
|
||||
const relatedWindows = [];
|
||||
|
||||
function dismissChildPopups() {
|
||||
relatedWindows.forEach(function(win) {
|
||||
if(!win.closed) {
|
||||
win.dismissChildPopups();
|
||||
win.close();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function setPopupIndex() {
|
||||
if(document.getElementsByName("_popup").length > 0) {
|
||||
const index = window.name.lastIndexOf("__") + 2;
|
||||
popupIndex = parseInt(window.name.substring(index));
|
||||
} else {
|
||||
popupIndex = 0;
|
||||
}
|
||||
}
|
||||
|
||||
function addPopupIndex(name) {
|
||||
name = name + "__" + (popupIndex + 1);
|
||||
return name;
|
||||
}
|
||||
|
||||
function removePopupIndex(name) {
|
||||
name = name.replace(new RegExp("__" + (popupIndex + 1) + "$"), '');
|
||||
return name;
|
||||
}
|
||||
|
||||
function showAdminPopup(triggeringLink, name_regexp, add_popup) {
|
||||
const name = triggeringLink.id.replace(name_regexp, '');
|
||||
const name = addPopupIndex(triggeringLink.id.replace(name_regexp, ''));
|
||||
const href = new URL(triggeringLink.href);
|
||||
if (add_popup) {
|
||||
href.searchParams.set('_popup', 1);
|
||||
}
|
||||
const win = window.open(href, name, 'height=500,width=800,resizable=yes,scrollbars=yes');
|
||||
relatedWindows.push(win);
|
||||
win.focus();
|
||||
return false;
|
||||
}
|
||||
|
@ -21,13 +52,17 @@
|
|||
}
|
||||
|
||||
function dismissRelatedLookupPopup(win, chosenId) {
|
||||
const name = win.name;
|
||||
const name = removePopupIndex(win.name);
|
||||
const elem = document.getElementById(name);
|
||||
if (elem.classList.contains('vManyToManyRawIdAdminField') && elem.value) {
|
||||
elem.value += ',' + chosenId;
|
||||
} else {
|
||||
document.getElementById(name).value = chosenId;
|
||||
}
|
||||
const index = relatedWindows.indexOf(win);
|
||||
if (index > -1) {
|
||||
relatedWindows.splice(index, 1);
|
||||
}
|
||||
win.close();
|
||||
}
|
||||
|
||||
|
@ -52,13 +87,44 @@
|
|||
}
|
||||
}
|
||||
|
||||
function updateRelatedSelectsOptions(currentSelect, win, objId, newRepr, newId) {
|
||||
// After create/edit a model from the options next to the current
|
||||
// select (+ or :pencil:) update ForeignKey PK of the rest of selects
|
||||
// in the page.
|
||||
|
||||
const path = win.location.pathname;
|
||||
// Extract the model from the popup url '.../<model>/add/' or
|
||||
// '.../<model>/<id>/change/' depending the action (add or change).
|
||||
const modelName = path.split('/')[path.split('/').length - (objId ? 4 : 3)];
|
||||
// Exclude autocomplete selects.
|
||||
const selectsRelated = document.querySelectorAll(`[data-model-ref="${modelName}"] select:not(.admin-autocomplete)`);
|
||||
|
||||
selectsRelated.forEach(function(select) {
|
||||
if (currentSelect === select) {
|
||||
return;
|
||||
}
|
||||
|
||||
let option = select.querySelector(`option[value="${objId}"]`);
|
||||
|
||||
if (!option) {
|
||||
option = new Option(newRepr, newId);
|
||||
select.options.add(option);
|
||||
return;
|
||||
}
|
||||
|
||||
option.textContent = newRepr;
|
||||
option.value = newId;
|
||||
});
|
||||
}
|
||||
|
||||
function dismissAddRelatedObjectPopup(win, newId, newRepr) {
|
||||
const name = win.name;
|
||||
const name = removePopupIndex(win.name);
|
||||
const elem = document.getElementById(name);
|
||||
if (elem) {
|
||||
const elemName = elem.nodeName.toUpperCase();
|
||||
if (elemName === 'SELECT') {
|
||||
elem.options[elem.options.length] = new Option(newRepr, newId, true, true);
|
||||
updateRelatedSelectsOptions(elem, win, null, newRepr, newId);
|
||||
} else if (elemName === 'INPUT') {
|
||||
if (elem.classList.contains('vManyToManyRawIdAdminField') && elem.value) {
|
||||
elem.value += ',' + newId;
|
||||
|
@ -74,11 +140,15 @@
|
|||
SelectBox.add_to_cache(toId, o);
|
||||
SelectBox.redisplay(toId);
|
||||
}
|
||||
const index = relatedWindows.indexOf(win);
|
||||
if (index > -1) {
|
||||
relatedWindows.splice(index, 1);
|
||||
}
|
||||
win.close();
|
||||
}
|
||||
|
||||
function dismissChangeRelatedObjectPopup(win, objId, newRepr, newId) {
|
||||
const id = win.name.replace(/^edit_/, '');
|
||||
const id = removePopupIndex(win.name.replace(/^edit_/, ''));
|
||||
const selectsSelector = interpolate('#%s, #%s_from, #%s_to', [id, id, id]);
|
||||
const selects = $(selectsSelector);
|
||||
selects.find('option').each(function() {
|
||||
|
@ -86,18 +156,23 @@
|
|||
this.textContent = newRepr;
|
||||
this.value = newId;
|
||||
}
|
||||
});
|
||||
}).trigger('change');
|
||||
updateRelatedSelectsOptions(selects[0], win, objId, newRepr, newId);
|
||||
selects.next().find('.select2-selection__rendered').each(function() {
|
||||
// The element can have a clear button as a child.
|
||||
// Use the lastChild to modify only the displayed value.
|
||||
this.lastChild.textContent = newRepr;
|
||||
this.title = newRepr;
|
||||
});
|
||||
const index = relatedWindows.indexOf(win);
|
||||
if (index > -1) {
|
||||
relatedWindows.splice(index, 1);
|
||||
}
|
||||
win.close();
|
||||
}
|
||||
|
||||
function dismissDeleteRelatedObjectPopup(win, objId) {
|
||||
const id = win.name.replace(/^delete_/, '');
|
||||
const id = removePopupIndex(win.name.replace(/^delete_/, ''));
|
||||
const selectsSelector = interpolate('#%s, #%s_from, #%s_to', [id, id, id]);
|
||||
const selects = $(selectsSelector);
|
||||
selects.find('option').each(function() {
|
||||
|
@ -105,6 +180,10 @@
|
|||
$(this).remove();
|
||||
}
|
||||
}).trigger('change');
|
||||
const index = relatedWindows.indexOf(win);
|
||||
if (index > -1) {
|
||||
relatedWindows.splice(index, 1);
|
||||
}
|
||||
win.close();
|
||||
}
|
||||
|
||||
|
@ -115,17 +194,23 @@
|
|||
window.dismissAddRelatedObjectPopup = dismissAddRelatedObjectPopup;
|
||||
window.dismissChangeRelatedObjectPopup = dismissChangeRelatedObjectPopup;
|
||||
window.dismissDeleteRelatedObjectPopup = dismissDeleteRelatedObjectPopup;
|
||||
window.dismissChildPopups = dismissChildPopups;
|
||||
|
||||
// Kept for backward compatibility
|
||||
window.showAddAnotherPopup = showRelatedObjectPopup;
|
||||
window.dismissAddAnotherPopup = dismissAddRelatedObjectPopup;
|
||||
|
||||
window.addEventListener('unload', function(evt) {
|
||||
window.dismissChildPopups();
|
||||
});
|
||||
|
||||
$(document).ready(function() {
|
||||
setPopupIndex();
|
||||
$("a[data-popup-opener]").on('click', function(event) {
|
||||
event.preventDefault();
|
||||
opener.dismissRelatedLookupPopup(window, $(this).data("popup-opener"));
|
||||
});
|
||||
$('body').on('click', '.related-widget-wrapper-link', function(e) {
|
||||
$('body').on('click', '.related-widget-wrapper-link[data-popup="yes"]', function(e) {
|
||||
e.preventDefault();
|
||||
if (this.href) {
|
||||
const event = $.Event('django:show-related', {href: this.href});
|
Binary file not shown.
|
@ -4,14 +4,45 @@
|
|||
'use strict';
|
||||
{
|
||||
const $ = django.jQuery;
|
||||
let popupIndex = 0;
|
||||
const relatedWindows = [];
|
||||
|
||||
function dismissChildPopups() {
|
||||
relatedWindows.forEach(function(win) {
|
||||
if(!win.closed) {
|
||||
win.dismissChildPopups();
|
||||
win.close();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function setPopupIndex() {
|
||||
if(document.getElementsByName("_popup").length > 0) {
|
||||
const index = window.name.lastIndexOf("__") + 2;
|
||||
popupIndex = parseInt(window.name.substring(index));
|
||||
} else {
|
||||
popupIndex = 0;
|
||||
}
|
||||
}
|
||||
|
||||
function addPopupIndex(name) {
|
||||
name = name + "__" + (popupIndex + 1);
|
||||
return name;
|
||||
}
|
||||
|
||||
function removePopupIndex(name) {
|
||||
name = name.replace(new RegExp("__" + (popupIndex + 1) + "$"), '');
|
||||
return name;
|
||||
}
|
||||
|
||||
function showAdminPopup(triggeringLink, name_regexp, add_popup) {
|
||||
const name = triggeringLink.id.replace(name_regexp, '');
|
||||
const name = addPopupIndex(triggeringLink.id.replace(name_regexp, ''));
|
||||
const href = new URL(triggeringLink.href);
|
||||
if (add_popup) {
|
||||
href.searchParams.set('_popup', 1);
|
||||
}
|
||||
const win = window.open(href, name, 'height=500,width=800,resizable=yes,scrollbars=yes');
|
||||
relatedWindows.push(win);
|
||||
win.focus();
|
||||
return false;
|
||||
}
|
||||
|
@ -21,13 +52,17 @@
|
|||
}
|
||||
|
||||
function dismissRelatedLookupPopup(win, chosenId) {
|
||||
const name = win.name;
|
||||
const name = removePopupIndex(win.name);
|
||||
const elem = document.getElementById(name);
|
||||
if (elem.classList.contains('vManyToManyRawIdAdminField') && elem.value) {
|
||||
elem.value += ',' + chosenId;
|
||||
} else {
|
||||
document.getElementById(name).value = chosenId;
|
||||
}
|
||||
const index = relatedWindows.indexOf(win);
|
||||
if (index > -1) {
|
||||
relatedWindows.splice(index, 1);
|
||||
}
|
||||
win.close();
|
||||
}
|
||||
|
||||
|
@ -52,13 +87,44 @@
|
|||
}
|
||||
}
|
||||
|
||||
function updateRelatedSelectsOptions(currentSelect, win, objId, newRepr, newId) {
|
||||
// After create/edit a model from the options next to the current
|
||||
// select (+ or :pencil:) update ForeignKey PK of the rest of selects
|
||||
// in the page.
|
||||
|
||||
const path = win.location.pathname;
|
||||
// Extract the model from the popup url '.../<model>/add/' or
|
||||
// '.../<model>/<id>/change/' depending the action (add or change).
|
||||
const modelName = path.split('/')[path.split('/').length - (objId ? 4 : 3)];
|
||||
// Exclude autocomplete selects.
|
||||
const selectsRelated = document.querySelectorAll(`[data-model-ref="${modelName}"] select:not(.admin-autocomplete)`);
|
||||
|
||||
selectsRelated.forEach(function(select) {
|
||||
if (currentSelect === select) {
|
||||
return;
|
||||
}
|
||||
|
||||
let option = select.querySelector(`option[value="${objId}"]`);
|
||||
|
||||
if (!option) {
|
||||
option = new Option(newRepr, newId);
|
||||
select.options.add(option);
|
||||
return;
|
||||
}
|
||||
|
||||
option.textContent = newRepr;
|
||||
option.value = newId;
|
||||
});
|
||||
}
|
||||
|
||||
function dismissAddRelatedObjectPopup(win, newId, newRepr) {
|
||||
const name = win.name;
|
||||
const name = removePopupIndex(win.name);
|
||||
const elem = document.getElementById(name);
|
||||
if (elem) {
|
||||
const elemName = elem.nodeName.toUpperCase();
|
||||
if (elemName === 'SELECT') {
|
||||
elem.options[elem.options.length] = new Option(newRepr, newId, true, true);
|
||||
updateRelatedSelectsOptions(elem, win, null, newRepr, newId);
|
||||
} else if (elemName === 'INPUT') {
|
||||
if (elem.classList.contains('vManyToManyRawIdAdminField') && elem.value) {
|
||||
elem.value += ',' + newId;
|
||||
|
@ -74,11 +140,15 @@
|
|||
SelectBox.add_to_cache(toId, o);
|
||||
SelectBox.redisplay(toId);
|
||||
}
|
||||
const index = relatedWindows.indexOf(win);
|
||||
if (index > -1) {
|
||||
relatedWindows.splice(index, 1);
|
||||
}
|
||||
win.close();
|
||||
}
|
||||
|
||||
function dismissChangeRelatedObjectPopup(win, objId, newRepr, newId) {
|
||||
const id = win.name.replace(/^edit_/, '');
|
||||
const id = removePopupIndex(win.name.replace(/^edit_/, ''));
|
||||
const selectsSelector = interpolate('#%s, #%s_from, #%s_to', [id, id, id]);
|
||||
const selects = $(selectsSelector);
|
||||
selects.find('option').each(function() {
|
||||
|
@ -86,18 +156,23 @@
|
|||
this.textContent = newRepr;
|
||||
this.value = newId;
|
||||
}
|
||||
});
|
||||
}).trigger('change');
|
||||
updateRelatedSelectsOptions(selects[0], win, objId, newRepr, newId);
|
||||
selects.next().find('.select2-selection__rendered').each(function() {
|
||||
// The element can have a clear button as a child.
|
||||
// Use the lastChild to modify only the displayed value.
|
||||
this.lastChild.textContent = newRepr;
|
||||
this.title = newRepr;
|
||||
});
|
||||
const index = relatedWindows.indexOf(win);
|
||||
if (index > -1) {
|
||||
relatedWindows.splice(index, 1);
|
||||
}
|
||||
win.close();
|
||||
}
|
||||
|
||||
function dismissDeleteRelatedObjectPopup(win, objId) {
|
||||
const id = win.name.replace(/^delete_/, '');
|
||||
const id = removePopupIndex(win.name.replace(/^delete_/, ''));
|
||||
const selectsSelector = interpolate('#%s, #%s_from, #%s_to', [id, id, id]);
|
||||
const selects = $(selectsSelector);
|
||||
selects.find('option').each(function() {
|
||||
|
@ -105,6 +180,10 @@
|
|||
$(this).remove();
|
||||
}
|
||||
}).trigger('change');
|
||||
const index = relatedWindows.indexOf(win);
|
||||
if (index > -1) {
|
||||
relatedWindows.splice(index, 1);
|
||||
}
|
||||
win.close();
|
||||
}
|
||||
|
||||
|
@ -115,17 +194,23 @@
|
|||
window.dismissAddRelatedObjectPopup = dismissAddRelatedObjectPopup;
|
||||
window.dismissChangeRelatedObjectPopup = dismissChangeRelatedObjectPopup;
|
||||
window.dismissDeleteRelatedObjectPopup = dismissDeleteRelatedObjectPopup;
|
||||
window.dismissChildPopups = dismissChildPopups;
|
||||
|
||||
// Kept for backward compatibility
|
||||
window.showAddAnotherPopup = showRelatedObjectPopup;
|
||||
window.dismissAddAnotherPopup = dismissAddRelatedObjectPopup;
|
||||
|
||||
window.addEventListener('unload', function(evt) {
|
||||
window.dismissChildPopups();
|
||||
});
|
||||
|
||||
$(document).ready(function() {
|
||||
setPopupIndex();
|
||||
$("a[data-popup-opener]").on('click', function(event) {
|
||||
event.preventDefault();
|
||||
opener.dismissRelatedLookupPopup(window, $(this).data("popup-opener"));
|
||||
});
|
||||
$('body').on('click', '.related-widget-wrapper-link', function(e) {
|
||||
$('body').on('click', '.related-widget-wrapper-link[data-popup="yes"]', function(e) {
|
||||
e.preventDefault();
|
||||
if (this.href) {
|
||||
const event = $.Event('django:show-related', {href: this.href});
|
||||
|
|
Binary file not shown.
|
@ -27,9 +27,7 @@
|
|||
$('.admin-autocomplete').not('[name*=__prefix__]').djangoAdminSelect2();
|
||||
});
|
||||
|
||||
$(document).on('formset:added', (function() {
|
||||
return function(event, $newFormset) {
|
||||
return $newFormset.find('.admin-autocomplete').djangoAdminSelect2();
|
||||
};
|
||||
})(this));
|
||||
document.addEventListener('formset:added', (event) => {
|
||||
$(event.target).find('.admin-autocomplete').djangoAdminSelect2();
|
||||
});
|
||||
}
|
Binary file not shown.
Binary file not shown.
|
@ -27,9 +27,7 @@
|
|||
$('.admin-autocomplete').not('[name*=__prefix__]').djangoAdminSelect2();
|
||||
});
|
||||
|
||||
$(document).on('formset:added', (function() {
|
||||
return function(event, $newFormset) {
|
||||
return $newFormset.find('.admin-autocomplete').djangoAdminSelect2();
|
||||
};
|
||||
})(this));
|
||||
document.addEventListener('formset:added', (event) => {
|
||||
$(event.target).find('.admin-autocomplete').djangoAdminSelect2();
|
||||
});
|
||||
}
|
||||
|
|
Binary file not shown.
|
@ -0,0 +1,30 @@
|
|||
/**
|
||||
* Persist changelist filters state (collapsed/expanded).
|
||||
*/
|
||||
'use strict';
|
||||
{
|
||||
// Init filters.
|
||||
let filters = JSON.parse(sessionStorage.getItem('django.admin.filtersState'));
|
||||
|
||||
if (!filters) {
|
||||
filters = {};
|
||||
}
|
||||
|
||||
Object.entries(filters).forEach(([key, value]) => {
|
||||
const detailElement = document.querySelector(`[data-filter-title='${key}']`);
|
||||
|
||||
// Check if the filter is present, it could be from other view.
|
||||
if (detailElement) {
|
||||
value ? detailElement.setAttribute('open', '') : detailElement.removeAttribute('open');
|
||||
}
|
||||
});
|
||||
|
||||
// Save filter state when clicks.
|
||||
const details = document.querySelectorAll('details');
|
||||
details.forEach(detail => {
|
||||
detail.addEventListener('toggle', event => {
|
||||
filters[`${event.target.dataset.filterTitle}`] = detail.open;
|
||||
sessionStorage.setItem('django.admin.filtersState', JSON.stringify(filters));
|
||||
});
|
||||
});
|
||||
}
|
Binary file not shown.
|
@ -0,0 +1,30 @@
|
|||
/**
|
||||
* Persist changelist filters state (collapsed/expanded).
|
||||
*/
|
||||
'use strict';
|
||||
{
|
||||
// Init filters.
|
||||
let filters = JSON.parse(sessionStorage.getItem('django.admin.filtersState'));
|
||||
|
||||
if (!filters) {
|
||||
filters = {};
|
||||
}
|
||||
|
||||
Object.entries(filters).forEach(([key, value]) => {
|
||||
const detailElement = document.querySelector(`[data-filter-title='${key}']`);
|
||||
|
||||
// Check if the filter is present, it could be from other view.
|
||||
if (detailElement) {
|
||||
value ? detailElement.setAttribute('open', '') : detailElement.removeAttribute('open');
|
||||
}
|
||||
});
|
||||
|
||||
// Save filter state when clicks.
|
||||
const details = document.querySelectorAll('details');
|
||||
details.forEach(detail => {
|
||||
detail.addEventListener('toggle', event => {
|
||||
filters[`${event.target.dataset.filterTitle}`] = detail.open;
|
||||
sessionStorage.setItem('django.admin.filtersState', JSON.stringify(filters));
|
||||
});
|
||||
});
|
||||
}
|
Binary file not shown.
|
@ -88,7 +88,12 @@
|
|||
if (options.added) {
|
||||
options.added(row);
|
||||
}
|
||||
$(document).trigger('formset:added', [row, options.prefix]);
|
||||
row.get(0).dispatchEvent(new CustomEvent("formset:added", {
|
||||
bubbles: true,
|
||||
detail: {
|
||||
formsetName: options.prefix
|
||||
}
|
||||
}));
|
||||
};
|
||||
|
||||
/**
|
||||
|
@ -130,7 +135,11 @@
|
|||
if (options.removed) {
|
||||
options.removed(row);
|
||||
}
|
||||
$(document).trigger('formset:removed', [row, options.prefix]);
|
||||
document.dispatchEvent(new CustomEvent("formset:removed", {
|
||||
detail: {
|
||||
formsetName: options.prefix
|
||||
}
|
||||
}));
|
||||
// Update the TOTAL_FORMS form count.
|
||||
const forms = $("." + options.formCssClass);
|
||||
$("#id_" + options.prefix + "-TOTAL_FORMS").val(forms.length);
|
||||
|
@ -296,7 +305,13 @@
|
|||
dependency_list = input.data('dependency_list') || [],
|
||||
dependencies = [];
|
||||
$.each(dependency_list, function(i, field_name) {
|
||||
dependencies.push('#' + row.find('.form-row .field-' + field_name).find('input, select, textarea').attr('id'));
|
||||
// Dependency in a fieldset.
|
||||
let field_element = row.find('.form-row .field-' + field_name);
|
||||
// Dependency without a fieldset.
|
||||
if (!field_element.length) {
|
||||
field_element = row.find('.form-row.field-' + field_name);
|
||||
}
|
||||
dependencies.push('#' + field_element.find('input, select, textarea').attr('id'));
|
||||
});
|
||||
if (dependencies.length) {
|
||||
input.prepopulate(dependencies, input.attr('maxlength'));
|
Binary file not shown.
Binary file not shown.
|
@ -88,7 +88,12 @@
|
|||
if (options.added) {
|
||||
options.added(row);
|
||||
}
|
||||
$(document).trigger('formset:added', [row, options.prefix]);
|
||||
row.get(0).dispatchEvent(new CustomEvent("formset:added", {
|
||||
bubbles: true,
|
||||
detail: {
|
||||
formsetName: options.prefix
|
||||
}
|
||||
}));
|
||||
};
|
||||
|
||||
/**
|
||||
|
@ -130,7 +135,11 @@
|
|||
if (options.removed) {
|
||||
options.removed(row);
|
||||
}
|
||||
$(document).trigger('formset:removed', [row, options.prefix]);
|
||||
document.dispatchEvent(new CustomEvent("formset:removed", {
|
||||
detail: {
|
||||
formsetName: options.prefix
|
||||
}
|
||||
}));
|
||||
// Update the TOTAL_FORMS form count.
|
||||
const forms = $("." + options.formCssClass);
|
||||
$("#id_" + options.prefix + "-TOTAL_FORMS").val(forms.length);
|
||||
|
@ -296,7 +305,13 @@
|
|||
dependency_list = input.data('dependency_list') || [],
|
||||
dependencies = [];
|
||||
$.each(dependency_list, function(i, field_name) {
|
||||
dependencies.push('#' + row.find('.form-row .field-' + field_name).find('input, select, textarea').attr('id'));
|
||||
// Dependency in a fieldset.
|
||||
let field_element = row.find('.form-row .field-' + field_name);
|
||||
// Dependency without a fieldset.
|
||||
if (!field_element.length) {
|
||||
field_element = row.find('.form-row.field-' + field_name);
|
||||
}
|
||||
dependencies.push('#' + field_element.find('input, select, textarea').attr('id'));
|
||||
});
|
||||
if (dependencies.length) {
|
||||
input.prepopulate(dependencies, input.attr('maxlength'));
|
||||
|
|
Binary file not shown.
|
@ -3,7 +3,11 @@
|
|||
const $ = django.jQuery;
|
||||
const fields = $('#django-admin-prepopulated-fields-constants').data('prepopulatedFields');
|
||||
$.each(fields, function(index, field) {
|
||||
$('.empty-form .form-row .field-' + field.name + ', .empty-form.form-row .field-' + field.name).addClass('prepopulated_field');
|
||||
$(
|
||||
'.empty-form .form-row .field-' + field.name +
|
||||
', .empty-form.form-row .field-' + field.name +
|
||||
', .empty-form .form-row.field-' + field.name
|
||||
).addClass('prepopulated_field');
|
||||
$(field.id).data('dependency_list', field.dependency_list).prepopulate(
|
||||
field.dependency_ids, field.maxLength, field.allowUnicode
|
||||
);
|
Binary file not shown.
Binary file not shown.
|
@ -3,7 +3,11 @@
|
|||
const $ = django.jQuery;
|
||||
const fields = $('#django-admin-prepopulated-fields-constants').data('prepopulatedFields');
|
||||
$.each(fields, function(index, field) {
|
||||
$('.empty-form .form-row .field-' + field.name + ', .empty-form.form-row .field-' + field.name).addClass('prepopulated_field');
|
||||
$(
|
||||
'.empty-form .form-row .field-' + field.name +
|
||||
', .empty-form.form-row .field-' + field.name +
|
||||
', .empty-form .form-row.field-' + field.name
|
||||
).addClass('prepopulated_field');
|
||||
$(field.id).data('dependency_list', field.dependency_list).prepopulate(
|
||||
field.dependency_ids, field.maxLength, field.allowUnicode
|
||||
);
|
||||
|
|
Binary file not shown.
|
@ -0,0 +1,21 @@
|
|||
(function($) {
|
||||
$().ready(function () {
|
||||
$('input.guess_format[type="file"]').change(function () {
|
||||
var files = this.files;
|
||||
var dropdowns = $(this.form).find('select.guess_format');
|
||||
if(files.length > 0) {
|
||||
var extension = files[0].name.split('.').pop().trim().toLowerCase();
|
||||
for(var i = 0; i < dropdowns.length; i++) {
|
||||
var dropdown = dropdowns[i];
|
||||
dropdown.selectedIndex = 0;
|
||||
for(var j = 0; j < dropdown.options.length; j++) {
|
||||
if(extension === dropdown.options[j].text.trim().toLowerCase()) {
|
||||
dropdown.selectedIndex = j;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
})(django.jQuery);
|
Binary file not shown.
|
@ -0,0 +1,21 @@
|
|||
(function($) {
|
||||
$().ready(function () {
|
||||
$('input.guess_format[type="file"]').change(function () {
|
||||
var files = this.files;
|
||||
var dropdowns = $(this.form).find('select.guess_format');
|
||||
if(files.length > 0) {
|
||||
var extension = files[0].name.split('.').pop().trim().toLowerCase();
|
||||
for(var i = 0; i < dropdowns.length; i++) {
|
||||
var dropdown = dropdowns[i];
|
||||
dropdown.selectedIndex = 0;
|
||||
for(var j = 0; j < dropdown.options.length; j++) {
|
||||
if(extension === dropdown.options[j].text.trim().toLowerCase()) {
|
||||
dropdown.selectedIndex = j;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
})(django.jQuery);
|
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
Binary file not shown.
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Binary file not shown.
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
Binary file not shown.
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Binary file not shown.
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
File diff suppressed because one or more lines are too long
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue