ported legacy functions
This commit is contained in:
19
legacy/src/main/resources/css/basic/style.css
Normal file
19
legacy/src/main/resources/css/basic/style.css
Normal file
@@ -0,0 +1,19 @@
|
||||
@font-face {
|
||||
font-family: "awesome";
|
||||
src: url("../fontawesome-webfont.woff");
|
||||
}
|
||||
.symbol{
|
||||
font-family: awesome;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.completed > a::before {
|
||||
content: " ✓";
|
||||
}
|
||||
|
||||
.canceled a,
|
||||
.children .inactive,
|
||||
.requirements .inactive,
|
||||
.tasks .inactive{
|
||||
text-decoration: line-through;
|
||||
}
|
||||
84
legacy/src/main/resources/css/bloodshed/colors.css
Normal file
84
legacy/src/main/resources/css/bloodshed/colors.css
Normal file
@@ -0,0 +1,84 @@
|
||||
body{
|
||||
color: red;
|
||||
background-color: black;
|
||||
}
|
||||
a{
|
||||
color: red;
|
||||
}
|
||||
|
||||
.tasks .pending>a{
|
||||
color: gray;
|
||||
}
|
||||
|
||||
.completed>a,
|
||||
.started>a{
|
||||
color: #5bc500;
|
||||
}
|
||||
|
||||
.canceled>a{
|
||||
color: gray;
|
||||
}
|
||||
|
||||
tr{
|
||||
background-color: #52525270;
|
||||
}
|
||||
tr:nth-child(2n+1){
|
||||
background-color: #a7a7a740;
|
||||
}
|
||||
|
||||
fieldset {
|
||||
border-color: red;
|
||||
}
|
||||
|
||||
.button,
|
||||
input,
|
||||
button {
|
||||
background-color: red;
|
||||
color: #303030;
|
||||
}
|
||||
.hover{
|
||||
background-color: black;
|
||||
border-color: red;
|
||||
}
|
||||
|
||||
form.invoice textarea {
|
||||
background-color: red;
|
||||
color: black;
|
||||
}
|
||||
|
||||
.infos span{
|
||||
background-color: #00ad00;
|
||||
color: black;
|
||||
}
|
||||
.errors span{
|
||||
background-color: #ff9847;
|
||||
color: black;
|
||||
}
|
||||
|
||||
.warnings span{
|
||||
background-color: #ffff00;
|
||||
color: black;
|
||||
}
|
||||
|
||||
#announce{
|
||||
background-color: black;
|
||||
}
|
||||
|
||||
#main_menu .button:hover {
|
||||
color: red;
|
||||
background-color: gray;
|
||||
}
|
||||
|
||||
tr:hover td{
|
||||
background-color: #160202;
|
||||
}
|
||||
|
||||
code {
|
||||
background-color: black;
|
||||
color: orange;
|
||||
}
|
||||
|
||||
.description img,
|
||||
#preview img{
|
||||
background: lightcyan;
|
||||
}
|
||||
584
legacy/src/main/resources/css/bloodshed/style.css
Normal file
584
legacy/src/main/resources/css/bloodshed/style.css
Normal file
@@ -0,0 +1,584 @@
|
||||
@font-face {
|
||||
font-family: "awesome";
|
||||
src: url("../fontawesome-webfont.woff");
|
||||
}
|
||||
*{
|
||||
max-width:100%;
|
||||
min-width:auto;
|
||||
}
|
||||
a{
|
||||
text-decoration: none;
|
||||
}
|
||||
body{
|
||||
font-family: sans-serif;
|
||||
}
|
||||
code {
|
||||
display: inline-block;
|
||||
padding: 5px;
|
||||
margin: 5px 0;
|
||||
}
|
||||
textarea {
|
||||
min-height: 60px;
|
||||
width: 100%;
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
textarea:hover{
|
||||
min-height: 400px;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
input[type=text],input[type=email]{
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
td.connectors form input{
|
||||
width: 200px;
|
||||
}
|
||||
|
||||
img#logo{
|
||||
position: fixed;
|
||||
top: 10px;
|
||||
right: 10px;
|
||||
z-index: -1;
|
||||
}
|
||||
|
||||
blockquote{
|
||||
font-style: italic;
|
||||
}
|
||||
#main_menu,
|
||||
#main_menu form{
|
||||
display: inline;
|
||||
}
|
||||
|
||||
#main_menu .button {
|
||||
font-size: 12px;
|
||||
font-weight: normal;
|
||||
margin-top: 7px;
|
||||
vertical-align: bottom;
|
||||
}
|
||||
|
||||
.hidden{
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
.hover:hover .hidden{
|
||||
display: inherit !important;
|
||||
}
|
||||
|
||||
.emphasized{
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.add_positions,
|
||||
.requirements{
|
||||
max-height: 60px;
|
||||
max-width: 66%;
|
||||
overflow: hidden;
|
||||
}
|
||||
.add_positions:hover,
|
||||
.requirements:hover{
|
||||
max-height: 999999px;
|
||||
max-width: 999999px;
|
||||
}
|
||||
|
||||
.add_positions > ul > li{
|
||||
max-height: 20px;
|
||||
overflow: hidden;
|
||||
padding-top: 20px;
|
||||
}
|
||||
|
||||
.add_positions > ul > li:hover{
|
||||
max-height: 999999px;
|
||||
}
|
||||
|
||||
fieldset.add.document:hover {
|
||||
max-height: unset;
|
||||
}
|
||||
|
||||
fieldset.add.document {
|
||||
max-height: 5px;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
fieldset.options label,
|
||||
.add_positions label span,
|
||||
.poll_status label,
|
||||
.requirements label{
|
||||
display: block;
|
||||
}
|
||||
|
||||
.tasks .canceled a,
|
||||
.children .inactive,
|
||||
.requirements .inactive,
|
||||
.tasks .inactive{
|
||||
text-decoration: line-through;
|
||||
}
|
||||
|
||||
.tasks .navi a{
|
||||
display: inline-table;
|
||||
}
|
||||
|
||||
blockquote a,
|
||||
p a,
|
||||
.description a{
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
table {
|
||||
border-collapse: collapse;
|
||||
}
|
||||
tr > *{
|
||||
padding: 5px 10px;
|
||||
}
|
||||
|
||||
label.street:after,
|
||||
label.location::after {
|
||||
content: "\a ";
|
||||
white-space: pre;
|
||||
}
|
||||
|
||||
.poll.evaluate table tr:nth-child(n+2) th,
|
||||
.poll.evaluate table td{
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.poll .disabled{
|
||||
text-decoration: line-through;
|
||||
}
|
||||
|
||||
.company div > fieldset,
|
||||
.company > table{
|
||||
margin-right: 10px;
|
||||
float: left;
|
||||
}
|
||||
|
||||
table.time h2{
|
||||
margin-right: 60px;
|
||||
}
|
||||
|
||||
.file label,
|
||||
.document .dates label{
|
||||
display: block
|
||||
}
|
||||
.document .header,
|
||||
.document .tags{
|
||||
clear: both;
|
||||
}
|
||||
|
||||
fieldset {
|
||||
border-radius: 10px;
|
||||
border-width: 1px;
|
||||
}
|
||||
|
||||
.contacts fieldset,
|
||||
.document .customer,
|
||||
.document .document_type,
|
||||
.document .sender,
|
||||
.document .court,
|
||||
.document .dates,
|
||||
.document .template,
|
||||
fieldset.del_note,
|
||||
fieldset.login_service_list,
|
||||
fieldset.userlist,
|
||||
fieldset.document.list{
|
||||
float: left;
|
||||
}
|
||||
|
||||
.document .dates label{
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.button,
|
||||
input,
|
||||
button {
|
||||
border: 0 none;
|
||||
font-weight: bold;
|
||||
margin: 0 2px;
|
||||
padding: 3px;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.change_state,
|
||||
td.connectors button[type="submit"],
|
||||
.prop_action,
|
||||
input[type="submit"] {
|
||||
clear: both;
|
||||
float: right;
|
||||
}
|
||||
|
||||
.symbol{
|
||||
font-family: awesome;
|
||||
font-size: 20px;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
#main_menu .symbol{
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.right{
|
||||
float: right;
|
||||
margin: 0 0 0 5px;
|
||||
}
|
||||
|
||||
.tasks .project {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.right-abs {
|
||||
position: absolute;
|
||||
right: 5px;
|
||||
top: 5px;
|
||||
}
|
||||
.right-fix {
|
||||
position: fixed;
|
||||
right: 5px;
|
||||
top: 5px;
|
||||
}
|
||||
.hover {
|
||||
border-width: 1px;
|
||||
border-style: solid;
|
||||
border-radius: 5px;
|
||||
max-height: 35px;
|
||||
overflow: hidden;
|
||||
z-index: 10;
|
||||
}
|
||||
|
||||
|
||||
.hover:hover {
|
||||
max-height: unset;
|
||||
}
|
||||
|
||||
.hover_h > a:nth-child(n+2){
|
||||
display: none;
|
||||
}
|
||||
|
||||
.hover_h:hover {
|
||||
padding: 5px 0 20px;
|
||||
}
|
||||
|
||||
.hover_h:hover > a:nth-child(n+2){
|
||||
display: inherit;
|
||||
}
|
||||
|
||||
form.document textarea {
|
||||
font-weight: bold;
|
||||
min-height: 90px;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.pos_price,
|
||||
form.document input.price,
|
||||
form.document input.amount{
|
||||
max-width: 60px;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
form.document .tax{
|
||||
min-width: 70px;
|
||||
}
|
||||
form.document .tax input{
|
||||
max-width: 40px;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
td > h1{
|
||||
display: inline-block;
|
||||
margin: 0 10px 0 0;
|
||||
}
|
||||
|
||||
.center,
|
||||
.infos,
|
||||
.errors,
|
||||
.warnings{
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.infos span,
|
||||
.errors span,
|
||||
.warnings span{
|
||||
margin: 5px 0 0;
|
||||
padding: 5px;
|
||||
border-radius: 10px;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.tags span{
|
||||
display: inline-block;
|
||||
vertical-align: top;
|
||||
}
|
||||
.bookmark .share,
|
||||
.bookmark .tags{
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.bookmark form .share{
|
||||
height: 20px;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.bookmark form .share:hover{
|
||||
height: initial;
|
||||
}
|
||||
|
||||
fieldset.bookmark > fieldset{
|
||||
max-height: 14px;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
fieldset.bookmark > fieldset.tags{
|
||||
max-height: unset;
|
||||
}
|
||||
|
||||
fieldset.bookmark > fieldset:hover{
|
||||
max-height: unset;
|
||||
}
|
||||
.bookmark>fieldset>a{
|
||||
word-wrap: break-word;
|
||||
display: block;
|
||||
min-width: auto;
|
||||
}
|
||||
|
||||
.bookmark>fieldset>a.button{
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.copytext{
|
||||
position:fixed;
|
||||
width: 100px;
|
||||
left: -1000px;
|
||||
}
|
||||
|
||||
img[src*="pos=right"] {
|
||||
float:right;
|
||||
margin: 5px 0 5px 5px;
|
||||
}
|
||||
|
||||
img[src*="pos=left"] {
|
||||
float:left;
|
||||
margin: 5px 5px 5px 0;
|
||||
}
|
||||
|
||||
img[src*="width=100"]{
|
||||
max-width: 100px;
|
||||
}
|
||||
img[src*="width=200"]{
|
||||
max-width: 200px;
|
||||
}
|
||||
img[src*="width=300"]{
|
||||
max-width: 300px;
|
||||
}
|
||||
img[src*="width=400"]{
|
||||
max-width: 400px;
|
||||
}
|
||||
img[src*="width=500"]{
|
||||
max-width: 500px;
|
||||
}
|
||||
img[src*="width=600"]{
|
||||
max-width: 600px;
|
||||
}
|
||||
img[src*="width=700"]{
|
||||
max-width: 700px;
|
||||
}
|
||||
img[src*="width=800"]{
|
||||
max-width: 800px;
|
||||
}
|
||||
img[src*="width=900"]{
|
||||
max-width: 900px;
|
||||
}
|
||||
img[src*="width=50%"]{
|
||||
max-width: 50%;
|
||||
}
|
||||
|
||||
img[src*="width=33%"]{
|
||||
max-width: 33%;
|
||||
}
|
||||
|
||||
img[src$="width=25%"]{
|
||||
max-width: 25%;
|
||||
}
|
||||
|
||||
#announce{
|
||||
position: fixed;
|
||||
bottom: 0;
|
||||
right: 0;
|
||||
padding: 3px 5px 0;
|
||||
border-top-left-radius: 7px;
|
||||
}
|
||||
|
||||
fieldset.scrolling{
|
||||
overflow: scroll;
|
||||
max-height: 80%;
|
||||
}
|
||||
|
||||
svg#gantt{
|
||||
max-width: unset;
|
||||
}
|
||||
|
||||
svg .row{
|
||||
fill: none;
|
||||
pointer-events: all;
|
||||
}
|
||||
|
||||
svg .row:hover{
|
||||
fill: #333333;
|
||||
}
|
||||
|
||||
svg .duration{
|
||||
fill:rgba(255,0,255,0.4);
|
||||
stroke:none;
|
||||
}
|
||||
|
||||
svg .schedule{
|
||||
fill:none;
|
||||
stroke-width:1;
|
||||
stroke: yellow;
|
||||
}
|
||||
|
||||
svg .start{
|
||||
stroke-dasharray: 10,30,40;
|
||||
}
|
||||
|
||||
svg .stop{
|
||||
stroke-dasharray: 50,30;
|
||||
}
|
||||
|
||||
svg text{
|
||||
stroke: none;
|
||||
fill: red;
|
||||
}
|
||||
|
||||
div.search{
|
||||
display: inline-block;
|
||||
max-width: 150px;
|
||||
}
|
||||
|
||||
div.search input,
|
||||
div.search label{
|
||||
display: none;
|
||||
}
|
||||
|
||||
div.search:hover input,
|
||||
div.search:hover label{
|
||||
display: initial;
|
||||
}
|
||||
|
||||
.note td.code {
|
||||
width: 50%;
|
||||
}
|
||||
|
||||
.note td.code textarea {
|
||||
min-height: 200px;
|
||||
}
|
||||
|
||||
.project-index td .users{
|
||||
max-height: 30px;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.project-index tr:hover td .users{
|
||||
max-height: none;
|
||||
}
|
||||
|
||||
.easylist fieldset a.button {
|
||||
width: 80%;
|
||||
padding: 30px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
#preview,
|
||||
#preview-source{
|
||||
display: inline-block;
|
||||
max-width: calc(50% - 20px);
|
||||
vertical-align: bottom;
|
||||
}
|
||||
|
||||
table #preview,
|
||||
table #preview-source{
|
||||
display: inherit;
|
||||
max-width: unset;
|
||||
vertical-align: inherit;
|
||||
}
|
||||
|
||||
#preview.loading{
|
||||
opacity: 0.2;
|
||||
}
|
||||
|
||||
.completed > a::before {
|
||||
content: " ✓";
|
||||
}
|
||||
|
||||
@media (max-width:1199px) {
|
||||
*[hide="12"]{
|
||||
display: none;
|
||||
}
|
||||
table.document input{
|
||||
max-width: 100px;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 900px){
|
||||
*[hide="9"]{
|
||||
display: none;
|
||||
}
|
||||
table.document input{
|
||||
max-width: 60px;
|
||||
}
|
||||
table.document .tax input,
|
||||
table.document input.amount{
|
||||
max-width: 25px;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 800px){
|
||||
*[hide="8"]{
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 700px){
|
||||
*[hide="7"]{
|
||||
display: none;
|
||||
}
|
||||
fieldset.bookmark > fieldset{
|
||||
max-height: 50px;
|
||||
}
|
||||
#preview,
|
||||
#preview-source{
|
||||
display: block;
|
||||
max-width: unset;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 600px){
|
||||
*[hide="6"]{
|
||||
display: none;
|
||||
}
|
||||
|
||||
.easylist fieldset a.button {
|
||||
width: 60%;
|
||||
}
|
||||
}
|
||||
@media (max-width: 500px){
|
||||
*[hide="5"]{
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
@media (max-width: 400px){
|
||||
*[hide="4"]{
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
@media print{
|
||||
fieldset.note span.right,
|
||||
#logo, #main_menu {
|
||||
display: none;
|
||||
}
|
||||
fieldset.process, fieldset.database{
|
||||
page-break-after: always;
|
||||
}
|
||||
.export>fieldset{
|
||||
border: 0 none;
|
||||
}
|
||||
}
|
||||
41
legacy/src/main/resources/css/bloodshed/svg_colors.css
Normal file
41
legacy/src/main/resources/css/bloodshed/svg_colors.css
Normal file
@@ -0,0 +1,41 @@
|
||||
.arrow{
|
||||
stroke: red;
|
||||
}
|
||||
circle, ellipse, rect{
|
||||
stroke: black;
|
||||
}
|
||||
ellipse,
|
||||
circle.process{
|
||||
fill: rgba(255,255,255,0.5);
|
||||
}
|
||||
rect.terminal{
|
||||
fill: white;
|
||||
}
|
||||
circle.connector{
|
||||
fill: rgba(0,0,0,0.05);
|
||||
stroke: none;
|
||||
}
|
||||
circle.connector:hover{
|
||||
fill: rgba(0,0,0,0.6);
|
||||
}
|
||||
|
||||
#backdrop{
|
||||
fill: transparent;
|
||||
}
|
||||
|
||||
.arrow circle{
|
||||
stroke: none;
|
||||
fill: rgba(128,128,128,0.5);
|
||||
}
|
||||
.arrow text{
|
||||
fill: black;
|
||||
stroke: none;
|
||||
}
|
||||
|
||||
.arrow:hover circle{
|
||||
fill: rgba(255,0,0,0.3);
|
||||
}
|
||||
|
||||
.process text{
|
||||
fill: black;
|
||||
}
|
||||
76
legacy/src/main/resources/css/comfort/colors.css
Normal file
76
legacy/src/main/resources/css/comfort/colors.css
Normal file
@@ -0,0 +1,76 @@
|
||||
body{
|
||||
background: #0f3a09;
|
||||
}
|
||||
a{
|
||||
color: #0c0061;
|
||||
}
|
||||
|
||||
code{
|
||||
background: #cccccc;
|
||||
border-color: #0f3a09;
|
||||
}
|
||||
|
||||
.pending a{
|
||||
color: #45513a;
|
||||
}
|
||||
.open>a{
|
||||
color: #0f3a09;
|
||||
}
|
||||
|
||||
.completed>a:after{
|
||||
content: " ✓";
|
||||
}
|
||||
|
||||
.canceled>a{
|
||||
color: #414141;
|
||||
}
|
||||
|
||||
li:hover > a,
|
||||
a:hover{
|
||||
color: red;
|
||||
}
|
||||
|
||||
fieldset,table{
|
||||
background: rgba(255,255,255,0.49);
|
||||
}
|
||||
|
||||
legend{
|
||||
background: #82987f;
|
||||
}
|
||||
|
||||
.share, .share>legend{
|
||||
background:#8cff7e;
|
||||
}
|
||||
|
||||
.button{
|
||||
background: white;
|
||||
}
|
||||
|
||||
#announce a{
|
||||
color:black;
|
||||
}
|
||||
|
||||
table.diagram .step,
|
||||
body > a.symbol {
|
||||
background: white;
|
||||
}
|
||||
|
||||
.right a {
|
||||
background: white;
|
||||
color: red;
|
||||
}
|
||||
|
||||
.infos span{
|
||||
background: lime;
|
||||
}
|
||||
.warnings span{
|
||||
background: yellow;
|
||||
}
|
||||
|
||||
.errors span{
|
||||
background: orange;
|
||||
}
|
||||
|
||||
.search label{
|
||||
color: white;
|
||||
}
|
||||
526
legacy/src/main/resources/css/comfort/style.css
Normal file
526
legacy/src/main/resources/css/comfort/style.css
Normal file
@@ -0,0 +1,526 @@
|
||||
@font-face {
|
||||
font-family: "awesome";
|
||||
src: url("../fontawesome-webfont.woff");
|
||||
}
|
||||
a{
|
||||
text-decoration:none;
|
||||
}
|
||||
body{
|
||||
margin-left: 160px;
|
||||
margin-top: 25px;
|
||||
font-family: sans-serif;
|
||||
position: relative;
|
||||
}
|
||||
code{
|
||||
display: inline-block;
|
||||
padding: 5px;
|
||||
border: 1px solid;
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
body > a.symbol {
|
||||
padding: 5px;
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
body > h2{
|
||||
color: #67a05f;
|
||||
}
|
||||
|
||||
body.user.login{
|
||||
width: 100%;
|
||||
max-width: 400px;
|
||||
margin: 0 auto;
|
||||
text-align: center;
|
||||
}
|
||||
img#logo{
|
||||
position: fixed;
|
||||
top: 10px;
|
||||
right: 10px;
|
||||
z-index: -1;
|
||||
}
|
||||
|
||||
blockquote{
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
|
||||
|
||||
#main_menu{
|
||||
position: fixed;
|
||||
top:0;
|
||||
left:0;
|
||||
bottom:0;
|
||||
width: 150px;
|
||||
}
|
||||
|
||||
#main_menu a{
|
||||
display: block;
|
||||
text-align: center;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.hidden{
|
||||
display: none;
|
||||
}
|
||||
|
||||
td{
|
||||
position: relative;
|
||||
}
|
||||
|
||||
fieldset{
|
||||
position: relative;
|
||||
margin-top: 5px;
|
||||
vertical-align: top;
|
||||
}
|
||||
|
||||
.hover:hover .hidden{
|
||||
display: inherit;
|
||||
}
|
||||
|
||||
.button{
|
||||
padding:2px;
|
||||
margin: 1px 0;
|
||||
border-radius: 5px;
|
||||
border: 1px solid black;
|
||||
white-space: pre;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.symbol{
|
||||
font-family: awesome;
|
||||
font-size: 22px;
|
||||
}
|
||||
|
||||
.right{
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 0;
|
||||
}
|
||||
|
||||
.right a {
|
||||
border: 1px solid;
|
||||
border-radius: 5px;
|
||||
padding: 0 5px;
|
||||
}
|
||||
|
||||
|
||||
.right-fix{
|
||||
position: fixed;
|
||||
right: 0;
|
||||
top: 0;
|
||||
overflow: hidden;
|
||||
max-height: 25px;
|
||||
border: 1px solid red;
|
||||
border-radius: 5px;
|
||||
background: white;
|
||||
z-index: 10;
|
||||
}
|
||||
|
||||
.canceled{
|
||||
text-decoration: line-through
|
||||
}
|
||||
|
||||
.hover:hover{
|
||||
max-height: unset !important;
|
||||
max-width: unset !important;
|
||||
}
|
||||
|
||||
fieldset textarea{
|
||||
width: 100%;
|
||||
height: 200px;
|
||||
font-size: 16px;
|
||||
}
|
||||
img{
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
.infos {
|
||||
margin: 5px;
|
||||
}
|
||||
|
||||
.errors span,
|
||||
.infos span{
|
||||
margin: 2px;
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
.copytext{
|
||||
position: fixed;
|
||||
width: 90px;
|
||||
left: -100px;
|
||||
}
|
||||
|
||||
.poll td>*{
|
||||
margin: 15px;
|
||||
padding: 15px;
|
||||
}
|
||||
|
||||
.poll td.poll_status>*{
|
||||
margin: 5px;
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
.poll td.poll_status>a{
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.poll table{
|
||||
border-spacing: 0;
|
||||
}
|
||||
|
||||
.poll tr{
|
||||
border-spacing: 0;
|
||||
}
|
||||
|
||||
.poll td{
|
||||
border-style: solid;
|
||||
border-width: 1px 0 0 0;
|
||||
border-color: black;
|
||||
}
|
||||
|
||||
.poll .disabled{
|
||||
text-decoration: line-through;
|
||||
}
|
||||
|
||||
img[src*="pos=right"] {
|
||||
float:right;
|
||||
margin: 5px 0 5px 5px;
|
||||
}
|
||||
|
||||
img[src*="pos=left"] {
|
||||
float:left;
|
||||
margin: 5px 5px 5px 0;
|
||||
}
|
||||
|
||||
img[src*="width=100"]{
|
||||
max-width: 100px;
|
||||
}
|
||||
img[src*="width=200"]{
|
||||
max-width: 200px;
|
||||
}
|
||||
img[src*="width=300"]{
|
||||
max-width: 300px;
|
||||
}
|
||||
img[src*="width=400"]{
|
||||
max-width: 400px;
|
||||
}
|
||||
img[src*="width=500"]{
|
||||
max-width: 500px;
|
||||
}
|
||||
img[src*="width=600"]{
|
||||
max-width: 600px;
|
||||
}
|
||||
img[src*="width=700"]{
|
||||
max-width: 700px;
|
||||
}
|
||||
img[src*="width=800"]{
|
||||
max-width: 800px;
|
||||
}
|
||||
img[src*="width=900"]{
|
||||
max-width: 900px;
|
||||
}
|
||||
img[src*="width=50%"]{
|
||||
max-width: 50%;
|
||||
}
|
||||
|
||||
img[src*="width=33%"]{
|
||||
max-width: 33%;
|
||||
}
|
||||
|
||||
img[src$="width=25%"]{
|
||||
max-width: 25%;
|
||||
}
|
||||
|
||||
#announce{
|
||||
position: absolute;
|
||||
right: 3px;
|
||||
bottom: -40px;
|
||||
}
|
||||
|
||||
span.hover_h {
|
||||
display: block;
|
||||
}
|
||||
|
||||
label{
|
||||
display: block;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
legend{
|
||||
padding: 0 5px;
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
.search input {
|
||||
margin: 5px 0 0 5px;
|
||||
width: 62%;
|
||||
}
|
||||
|
||||
.search label input{
|
||||
width: 10px;
|
||||
}
|
||||
|
||||
.search label{
|
||||
display: none;
|
||||
}
|
||||
|
||||
.search:hover label{
|
||||
display: block;
|
||||
}
|
||||
|
||||
.search button{
|
||||
width: 40px;
|
||||
font-size: 14px;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.share{
|
||||
height: 35px;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.share:hover{
|
||||
height: inherit;
|
||||
}
|
||||
|
||||
.bookmark textarea[name=comment]{
|
||||
max-height: 50px;
|
||||
}
|
||||
|
||||
.bookmark textarea[name=comment]:hover{
|
||||
max-height: unset;
|
||||
}
|
||||
|
||||
.bookmark fieldset input{
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.notes .note{
|
||||
border: 1px solid;
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
.warnings span{
|
||||
background: yellow;
|
||||
}
|
||||
|
||||
.errors span{
|
||||
background: orange;
|
||||
}
|
||||
|
||||
.tasks li{
|
||||
margin: 5px;
|
||||
padding-right: 80px;
|
||||
}
|
||||
.project-view{
|
||||
min-width: 100%;
|
||||
}
|
||||
.project-view span.hover_h{
|
||||
position: absolute;
|
||||
right: 0;
|
||||
}
|
||||
|
||||
.note td.code {
|
||||
width: 50%;
|
||||
}
|
||||
|
||||
.note td.code textarea {
|
||||
min-height: 200px;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.add_positions > ul,
|
||||
.requirements > ul {
|
||||
max-height: 400px;
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
td input,
|
||||
table.vertical{
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.document td label{
|
||||
width: unset;
|
||||
}
|
||||
|
||||
.document.view .add_positions img{
|
||||
display: none;
|
||||
}
|
||||
|
||||
td input[type=checkbox]{
|
||||
width: unset;
|
||||
}
|
||||
|
||||
table.vertical span.right{
|
||||
position: fixed;
|
||||
top: 25px;
|
||||
left: 60px;
|
||||
right: 5px;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
img[src*="pos=right"] {
|
||||
float:right;
|
||||
margin: 5px 0 5px 5px;
|
||||
}
|
||||
|
||||
img[src*="pos=left"] {
|
||||
float:left;
|
||||
margin: 5px 5px 5px 0;
|
||||
}
|
||||
|
||||
img[src*="width=100"]{
|
||||
max-width: 100px;
|
||||
}
|
||||
img[src*="width=200"]{
|
||||
max-width: 200px;
|
||||
}
|
||||
img[src*="width=300"]{
|
||||
max-width: 300px;
|
||||
}
|
||||
img[src*="width=400"]{
|
||||
max-width: 400px;
|
||||
}
|
||||
img[src*="width=500"]{
|
||||
max-width: 500px;
|
||||
}
|
||||
img[src*="width=600"]{
|
||||
max-width: 600px;
|
||||
}
|
||||
img[src*="width=700"]{
|
||||
max-width: 700px;
|
||||
}
|
||||
img[src*="width=800"]{
|
||||
max-width: 800px;
|
||||
}
|
||||
img[src*="width=900"]{
|
||||
max-width: 900px;
|
||||
}
|
||||
img[src*="width=50%"]{
|
||||
max-width: 50%;
|
||||
}
|
||||
|
||||
img[src*="width=33%"]{
|
||||
max-width: 33%;
|
||||
}
|
||||
|
||||
img[src$="width=25%"]{
|
||||
max-width: 25%;
|
||||
}
|
||||
|
||||
#preview,
|
||||
#preview-source{
|
||||
display: inline-block;
|
||||
max-width: calc(50% - 20px);
|
||||
vertical-align: bottom;
|
||||
}
|
||||
|
||||
table #preview,
|
||||
table #preview-source{
|
||||
display: inherit;
|
||||
max-width: unset;
|
||||
vertical-align: inherit;
|
||||
}
|
||||
|
||||
#preview.loading{
|
||||
opacity: 0.2;
|
||||
}
|
||||
|
||||
.easylist fieldset a.button {
|
||||
width: 70%;
|
||||
display: inline-block;
|
||||
text-align: center;
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
@media (min-width: 1100px){
|
||||
.share{
|
||||
position: absolute;
|
||||
right: 0;
|
||||
top: 8px;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 1000px){
|
||||
*[hide="12"]{
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 900px){
|
||||
*[hide="11"]{
|
||||
display: none;
|
||||
}
|
||||
#preview,
|
||||
#preview-source{
|
||||
display: block;
|
||||
max-width: unset;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 800px){
|
||||
*[hide="10"]{
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 700px){
|
||||
*[hide="9"]{
|
||||
display: none;
|
||||
}
|
||||
body{
|
||||
margin-left: 50px;
|
||||
margin-top: 60px;
|
||||
}
|
||||
#main_menu{
|
||||
max-width: 50px;
|
||||
z-index: 10;
|
||||
overflow: hidden;
|
||||
background: inherit;
|
||||
}
|
||||
#main_menu:hover{
|
||||
max-width: unset;
|
||||
}
|
||||
#main_menu .button{
|
||||
padding: 6px 0;
|
||||
}
|
||||
.search button{
|
||||
display: none;
|
||||
}
|
||||
.search:hover button{
|
||||
display: inline;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 600px){
|
||||
*[hide="8"]{
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 500px){
|
||||
*[hide="7"]{
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 400px){
|
||||
*[hide="6"]{
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
@media print{
|
||||
fieldset.note span.right,
|
||||
#logo, #main_menu {
|
||||
display: none;
|
||||
}
|
||||
fieldset.process, fieldset.database{
|
||||
page-break-after: always;
|
||||
}
|
||||
.export>fieldset{
|
||||
border: 0 none;
|
||||
}
|
||||
}
|
||||
37
legacy/src/main/resources/css/comfort/svg_colors.css
Normal file
37
legacy/src/main/resources/css/comfort/svg_colors.css
Normal file
@@ -0,0 +1,37 @@
|
||||
.arrow{
|
||||
stroke: blue;
|
||||
}
|
||||
circle, ellipse, rect{
|
||||
stroke: black;
|
||||
}
|
||||
ellipse,
|
||||
circle.process{
|
||||
fill: rgba(255,255,255,0.5);
|
||||
}
|
||||
rect.terminal{
|
||||
fill: white;
|
||||
}
|
||||
circle.connector{
|
||||
fill: rgba(0,0,0,0.05);
|
||||
stroke: none;
|
||||
}
|
||||
circle.connector:hover{
|
||||
fill: rgba(0,0,0,0.6);
|
||||
}
|
||||
|
||||
#backdrop{
|
||||
fill: transparent;
|
||||
}
|
||||
|
||||
.arrow circle{
|
||||
stroke: none;
|
||||
fill: white;
|
||||
}
|
||||
.arrow text{
|
||||
fill: blue;
|
||||
stroke: none;
|
||||
}
|
||||
|
||||
.arrow:hover circle{
|
||||
fill: rgba(0,0,255,0.3);
|
||||
}
|
||||
BIN
legacy/src/main/resources/css/fontawesome-webfont.woff
Normal file
BIN
legacy/src/main/resources/css/fontawesome-webfont.woff
Normal file
Binary file not shown.
23
legacy/src/main/resources/css/style.css
Normal file
23
legacy/src/main/resources/css/style.css
Normal file
@@ -0,0 +1,23 @@
|
||||
a {
|
||||
color: palegreen;
|
||||
}
|
||||
body {
|
||||
background: black;
|
||||
color: white;
|
||||
}
|
||||
|
||||
.error{
|
||||
background: red;
|
||||
color: black;
|
||||
padding: 3px;
|
||||
}
|
||||
|
||||
.error button{
|
||||
margin: 2px 5px;
|
||||
}
|
||||
#navi .button{
|
||||
border: 1px solid red;
|
||||
padding: 2px;
|
||||
margin: 2px;
|
||||
text-decoration: none;
|
||||
}
|
||||
21
legacy/src/main/resources/css/svg_common.css
Normal file
21
legacy/src/main/resources/css/svg_common.css
Normal file
@@ -0,0 +1,21 @@
|
||||
.model svg{
|
||||
max-width: 100%;
|
||||
max-height: 1000px;
|
||||
}
|
||||
.arrow{
|
||||
stroke-width: 2;
|
||||
}
|
||||
circle, ellipse, rect{
|
||||
stroke-width: 2;
|
||||
}
|
||||
circle.connector:hover{
|
||||
r: 30;
|
||||
}
|
||||
text{
|
||||
text-anchor:middle;
|
||||
alignment-baseline:middle;
|
||||
font-size:12;
|
||||
}
|
||||
.arrow:hover circle{
|
||||
r: 50;
|
||||
}
|
||||
80
legacy/src/main/resources/css/winter/colors.css
Normal file
80
legacy/src/main/resources/css/winter/colors.css
Normal file
@@ -0,0 +1,80 @@
|
||||
body{
|
||||
color: black;
|
||||
background-color: white;
|
||||
}
|
||||
a{
|
||||
color: #005678;
|
||||
}
|
||||
|
||||
.tasks .pending>a{
|
||||
color: #888888;
|
||||
}
|
||||
|
||||
.completed>a,
|
||||
.started>a{
|
||||
color: #53822c;
|
||||
}
|
||||
|
||||
.canceled>a{
|
||||
color: gray;
|
||||
}
|
||||
|
||||
tr{
|
||||
background-color: #dadada91;
|
||||
}
|
||||
tr:nth-child(2n+1){
|
||||
background-color: #b9b9b982;
|
||||
}
|
||||
|
||||
fieldset {
|
||||
border-color: black;
|
||||
}
|
||||
|
||||
.button,
|
||||
input,
|
||||
button {
|
||||
background-color: black;
|
||||
color: #d3d3d3;
|
||||
}
|
||||
.hover{
|
||||
background-color: white;
|
||||
border-color: black;
|
||||
}
|
||||
|
||||
form.invoice textarea {
|
||||
background-color: black;
|
||||
color: white;
|
||||
}
|
||||
|
||||
.infos span{
|
||||
background-color: #00ad00;
|
||||
color: white;
|
||||
}
|
||||
.errors span{
|
||||
background-color: #ff9847;
|
||||
color: white;
|
||||
}
|
||||
|
||||
.hit,
|
||||
.warnings span{
|
||||
background-color: #ffff00;
|
||||
color: black;
|
||||
}
|
||||
|
||||
#announce{
|
||||
background-color: white;
|
||||
}
|
||||
|
||||
#main_menu .button:hover {
|
||||
color: white;
|
||||
background-color: gray;
|
||||
}
|
||||
|
||||
tr:hover td{
|
||||
background-color: #edf9f9;
|
||||
}
|
||||
|
||||
code {
|
||||
background-color: black;
|
||||
color: lime;
|
||||
}
|
||||
597
legacy/src/main/resources/css/winter/style.css
Normal file
597
legacy/src/main/resources/css/winter/style.css
Normal file
@@ -0,0 +1,597 @@
|
||||
@font-face {
|
||||
font-family: "awesome";
|
||||
src: url("../fontawesome-webfont.woff");
|
||||
}
|
||||
*{
|
||||
max-width:100%;
|
||||
min-width:auto;
|
||||
}
|
||||
a{
|
||||
text-decoration: none;
|
||||
}
|
||||
body{
|
||||
font-family: sans-serif;
|
||||
}
|
||||
code {
|
||||
display: inline-block;
|
||||
padding: 5px;
|
||||
margin: 5px 0;
|
||||
}
|
||||
textarea {
|
||||
min-height: 60px;
|
||||
width: 100%;
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
textarea:hover{
|
||||
min-height: 400px;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
input[type=text]{
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
td.connectors form input{
|
||||
width: 200px;
|
||||
}
|
||||
|
||||
img#logo{
|
||||
position: fixed;
|
||||
top: 10px;
|
||||
right: 10px;
|
||||
z-index: -1;
|
||||
}
|
||||
|
||||
blockquote{
|
||||
font-style: italic;
|
||||
}
|
||||
#main_menu,
|
||||
#main_menu form{
|
||||
display: block;
|
||||
}
|
||||
|
||||
#main_menu .button {
|
||||
font-size: 12px;
|
||||
font-weight: normal;
|
||||
margin-top: 7px;
|
||||
vertical-align: bottom;
|
||||
}
|
||||
|
||||
.hidden{
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
.hover:hover .hidden{
|
||||
display: inherit !important;
|
||||
}
|
||||
|
||||
.emphasized{
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.add_positions,
|
||||
.requirements{
|
||||
max-height: 60px;
|
||||
max-width: 66%;
|
||||
overflow: hidden;
|
||||
}
|
||||
.add_positions:hover,
|
||||
.requirements:hover{
|
||||
max-height: 999999px;
|
||||
max-width: 999999px;
|
||||
}
|
||||
|
||||
.add_positions > ul > li{
|
||||
max-height: 20px;
|
||||
overflow: hidden;
|
||||
padding-top: 20px;
|
||||
}
|
||||
|
||||
.add_positions > ul > li:hover{
|
||||
max-height: 999999px;
|
||||
}
|
||||
|
||||
fieldset.add.document:hover {
|
||||
max-height: unset;
|
||||
}
|
||||
|
||||
fieldset.add.document {
|
||||
max-height: 5px;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
fieldset.options label,
|
||||
.add_positions label span,
|
||||
.poll_status label,
|
||||
.requirements label{
|
||||
display: block;
|
||||
}
|
||||
|
||||
.tasks .canceled a,
|
||||
.children .inactive,
|
||||
.requirements .inactive,
|
||||
.tasks .inactive{
|
||||
text-decoration: line-through;
|
||||
}
|
||||
|
||||
.tasks .navi a{
|
||||
display: inline-table;
|
||||
}
|
||||
|
||||
blockquote a,
|
||||
p a,
|
||||
.description a{
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
table {
|
||||
border-collapse: collapse;
|
||||
}
|
||||
tr > *{
|
||||
padding: 5px 10px;
|
||||
}
|
||||
|
||||
label.street:after,
|
||||
label.location::after {
|
||||
content: "\a ";
|
||||
white-space: pre;
|
||||
}
|
||||
|
||||
.poll.evaluate table tr:nth-child(n+2) th,
|
||||
.poll.evaluate table td{
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.poll .disabled{
|
||||
text-decoration: line-through;
|
||||
}
|
||||
|
||||
.company div > fieldset,
|
||||
.company > table{
|
||||
margin-right: 10px;
|
||||
float: left;
|
||||
}
|
||||
|
||||
table.time h2{
|
||||
margin-right: 60px;
|
||||
}
|
||||
|
||||
.file label,
|
||||
.document .dates label{
|
||||
display: block
|
||||
}
|
||||
.clear,
|
||||
.document .header,
|
||||
.document .tags{
|
||||
clear: both;
|
||||
}
|
||||
|
||||
fieldset {
|
||||
border-radius: 10px;
|
||||
border-width: 1px;
|
||||
}
|
||||
|
||||
.contacts fieldset,
|
||||
.document .customer,
|
||||
.document .document_type,
|
||||
.document .sender,
|
||||
.document .court,
|
||||
.document .dates,
|
||||
.document .template,
|
||||
fieldset.del_note,
|
||||
fieldset.login_service_list,
|
||||
fieldset.userlist,
|
||||
fieldset.document.list{
|
||||
float: left;
|
||||
}
|
||||
|
||||
.document .dates label{
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.button,
|
||||
input,
|
||||
button {
|
||||
border: 0 none;
|
||||
font-weight: bold;
|
||||
margin: 0 2px;
|
||||
padding: 3px;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.change_state,
|
||||
td.connectors button[type="submit"],
|
||||
.prop_action,
|
||||
input[type="submit"] {
|
||||
clear: both;
|
||||
float: right;
|
||||
}
|
||||
|
||||
.symbol{
|
||||
font-family: awesome;
|
||||
font-size: 20px;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
#main_menu .symbol{
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
.right{
|
||||
float: right;
|
||||
margin: 0 0 0 5px;
|
||||
}
|
||||
|
||||
.tasks .project {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.right-abs {
|
||||
position: absolute;
|
||||
right: 5px;
|
||||
top: 5px;
|
||||
}
|
||||
.right-fix {
|
||||
position: fixed;
|
||||
right: 5px;
|
||||
top: 5px;
|
||||
}
|
||||
.hover {
|
||||
border-width: 1px;
|
||||
border-style: solid;
|
||||
border-radius: 5px;
|
||||
max-height: 35px;
|
||||
overflow: hidden;
|
||||
z-index: 10;
|
||||
}
|
||||
|
||||
|
||||
.hover:hover {
|
||||
max-height: unset;
|
||||
}
|
||||
|
||||
.hover_h > a:nth-child(n+2){
|
||||
display: none;
|
||||
}
|
||||
|
||||
.hover_h:hover {
|
||||
padding: 5px 0 20px;
|
||||
}
|
||||
|
||||
.hover_h:hover > a:nth-child(n+2){
|
||||
display: inherit;
|
||||
}
|
||||
|
||||
form.document textarea {
|
||||
font-weight: bold;
|
||||
min-height: 90px;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.pos_price,
|
||||
form.document input.price,
|
||||
form.document input.amount{
|
||||
max-width: 60px;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
form.document .tax{
|
||||
min-width: 70px;
|
||||
}
|
||||
form.document .tax input{
|
||||
max-width: 40px;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
td > h1{
|
||||
display: inline-block;
|
||||
margin: 0 10px 0 0;
|
||||
}
|
||||
|
||||
.center,
|
||||
.infos,
|
||||
.errors,
|
||||
.warnings{
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.infos span,
|
||||
.errors span,
|
||||
.warnings span{
|
||||
margin: 5px 0 0;
|
||||
padding: 5px;
|
||||
border-radius: 10px;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.tags span{
|
||||
display: inline-block;
|
||||
vertical-align: top;
|
||||
}
|
||||
.bookmark .share,
|
||||
.bookmark .tags{
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.bookmark form .share{
|
||||
height: 20px;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.bookmark form .share:hover{
|
||||
height: initial;
|
||||
}
|
||||
|
||||
fieldset.bookmark > fieldset{
|
||||
max-height: 14px;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
fieldset.bookmark > fieldset.tags{
|
||||
max-height: unset;
|
||||
}
|
||||
|
||||
fieldset.bookmark > fieldset:hover{
|
||||
max-height: unset;
|
||||
}
|
||||
.bookmark>fieldset>a{
|
||||
word-wrap: break-word;
|
||||
display: block;
|
||||
min-width: auto;
|
||||
}
|
||||
|
||||
.bookmark>fieldset>a.button{
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
.copytext{
|
||||
position:fixed;
|
||||
width: 100px;
|
||||
left: -1000px;
|
||||
}
|
||||
|
||||
img[src*="pos=right"] {
|
||||
float:right;
|
||||
margin: 5px 0 5px 5px;
|
||||
}
|
||||
|
||||
img[src*="pos=left"] {
|
||||
float:left;
|
||||
margin: 5px 5px 5px 0;
|
||||
}
|
||||
|
||||
img[src*="width=100"]{
|
||||
max-width: 100px;
|
||||
}
|
||||
img[src*="width=200"]{
|
||||
max-width: 200px;
|
||||
}
|
||||
img[src*="width=300"]{
|
||||
max-width: 300px;
|
||||
}
|
||||
img[src*="width=400"]{
|
||||
max-width: 400px;
|
||||
}
|
||||
img[src*="width=500"]{
|
||||
max-width: 500px;
|
||||
}
|
||||
img[src*="width=600"]{
|
||||
max-width: 600px;
|
||||
}
|
||||
img[src*="width=700"]{
|
||||
max-width: 700px;
|
||||
}
|
||||
img[src*="width=800"]{
|
||||
max-width: 800px;
|
||||
}
|
||||
img[src*="width=900"]{
|
||||
max-width: 900px;
|
||||
}
|
||||
img[src*="width=50%"]{
|
||||
max-width: 50%;
|
||||
}
|
||||
|
||||
img[src*="width=33%"]{
|
||||
max-width: 33%;
|
||||
}
|
||||
|
||||
img[src$="width=25%"]{
|
||||
max-width: 25%;
|
||||
}
|
||||
|
||||
#announce{
|
||||
position: fixed;
|
||||
bottom: 0;
|
||||
right: 0;
|
||||
padding: 3px 5px 0;
|
||||
border-top-left-radius: 7px;
|
||||
}
|
||||
|
||||
fieldset.scrolling{
|
||||
overflow: scroll;
|
||||
max-height: 80%;
|
||||
}
|
||||
|
||||
svg#gantt{
|
||||
max-width: unset;
|
||||
}
|
||||
|
||||
svg .row{
|
||||
fill: none;
|
||||
pointer-events: all;
|
||||
}
|
||||
|
||||
svg .row:hover{
|
||||
fill: #333333;
|
||||
}
|
||||
|
||||
svg .duration{
|
||||
fill:rgba(255,0,255,0.4);
|
||||
stroke:none;
|
||||
}
|
||||
|
||||
svg .schedule{
|
||||
fill:none;
|
||||
stroke-width:1;
|
||||
stroke: yellow;
|
||||
}
|
||||
|
||||
svg .start{
|
||||
stroke-dasharray: 10,30,40;
|
||||
}
|
||||
|
||||
svg .stop{
|
||||
stroke-dasharray: 50,30;
|
||||
}
|
||||
|
||||
svg text{
|
||||
stroke: none;
|
||||
fill: red;
|
||||
}
|
||||
|
||||
div.search{
|
||||
display: inline-block;
|
||||
max-width: 150px;
|
||||
}
|
||||
|
||||
div.search input,
|
||||
div.search label{
|
||||
display: none;
|
||||
}
|
||||
|
||||
div.search:hover input,
|
||||
div.search:hover label{
|
||||
display: initial;
|
||||
}
|
||||
|
||||
.note td.code {
|
||||
width: 50%;
|
||||
}
|
||||
|
||||
.note td.code textarea {
|
||||
min-height: 200px;
|
||||
}
|
||||
|
||||
.project-index td .users{
|
||||
max-height: 30px;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.project-index tr:hover td .users{
|
||||
max-height: none;
|
||||
}
|
||||
|
||||
.easylist fieldset a.button {
|
||||
width: 80%;
|
||||
padding: 30px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
#preview,
|
||||
#preview-source{
|
||||
display: inline-block;
|
||||
max-width: calc(50% - 20px);
|
||||
vertical-align: bottom;
|
||||
}
|
||||
|
||||
table #preview,
|
||||
table #preview-source{
|
||||
display: inherit;
|
||||
max-width: unset;
|
||||
vertical-align: inherit;
|
||||
}
|
||||
|
||||
#preview.loading{
|
||||
opacity: 0.2;
|
||||
}
|
||||
|
||||
.completed > a::before {
|
||||
content: " ✓";
|
||||
}
|
||||
|
||||
@media (max-width:1199px) {
|
||||
*[hide="12"]{
|
||||
display: none;
|
||||
}
|
||||
table.document input{
|
||||
max-width: 100px;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 1100px){
|
||||
*[hide="11"]{
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 1000px){
|
||||
*[hide="10"]{
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 900px){
|
||||
*[hide="9"]{
|
||||
display: none;
|
||||
}
|
||||
table.document input{
|
||||
max-width: 60px;
|
||||
}
|
||||
table.document .tax input,
|
||||
table.document input.amount{
|
||||
max-width: 25px;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 800px){
|
||||
*[hide="8"]{
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 700px){
|
||||
*[hide="7"]{
|
||||
display: none;
|
||||
}
|
||||
fieldset.bookmark > fieldset{
|
||||
max-height: 50px;
|
||||
}
|
||||
#preview,
|
||||
#preview-source{
|
||||
display: block;
|
||||
max-width: unset;
|
||||
}
|
||||
}
|
||||
|
||||
@media (max-width: 600px){
|
||||
*[hide="6"]{
|
||||
display: none;
|
||||
}
|
||||
|
||||
.easylist fieldset a.button {
|
||||
width: 60%;
|
||||
}
|
||||
}
|
||||
@media (max-width: 500px){
|
||||
*[hide="5"]{
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
@media (max-width: 400px){
|
||||
*[hide="4"]{
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
@media print{
|
||||
fieldset.note span.right,
|
||||
#logo, #main_menu {
|
||||
display: none;
|
||||
}
|
||||
fieldset.process, fieldset.database{
|
||||
page-break-after: always;
|
||||
}
|
||||
.export>fieldset{
|
||||
border: 0 none;
|
||||
}
|
||||
}
|
||||
37
legacy/src/main/resources/css/winter/svg_colors.css
Normal file
37
legacy/src/main/resources/css/winter/svg_colors.css
Normal file
@@ -0,0 +1,37 @@
|
||||
.arrow{
|
||||
stroke: blue;
|
||||
}
|
||||
circle, ellipse, rect{
|
||||
stroke: black;
|
||||
}
|
||||
ellipse,
|
||||
circle.process{
|
||||
fill: rgba(255,255,255,0.5);
|
||||
}
|
||||
rect.terminal{
|
||||
fill: white;
|
||||
}
|
||||
circle.connector{
|
||||
fill: rgba(0,0,0,0.05);
|
||||
stroke: none;
|
||||
}
|
||||
circle.connector:hover{
|
||||
fill: rgba(0,0,0,0.6);
|
||||
}
|
||||
|
||||
#backdrop{
|
||||
fill: transparent;
|
||||
}
|
||||
|
||||
.arrow circle{
|
||||
stroke: none;
|
||||
fill: white;
|
||||
}
|
||||
.arrow text{
|
||||
fill: blue;
|
||||
stroke: none;
|
||||
}
|
||||
|
||||
.arrow:hover circle{
|
||||
fill: rgba(0,0,255,0.3);
|
||||
}
|
||||
BIN
legacy/src/main/resources/edit.cur
Normal file
BIN
legacy/src/main/resources/edit.cur
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 4.2 KiB |
171
legacy/src/main/resources/js/common.js
Normal file
171
legacy/src/main/resources/js/common.js
Normal file
@@ -0,0 +1,171 @@
|
||||
const DEL = 'DELETE';
|
||||
const PATCH = 'PATCH';
|
||||
const POST = 'POST';
|
||||
|
||||
// remove all children from element, leave only the first <keep> children
|
||||
function clearElement(key,keep = 1){
|
||||
var elem = key instanceof Element ? key : get(key);
|
||||
while (elem.childElementCount > keep) elem.removeChild(elem.lastChild);
|
||||
return elem;
|
||||
}
|
||||
|
||||
function create(type,code){
|
||||
var elem = document.createElement(type);
|
||||
if (code) elem.innerHTML = code;
|
||||
return elem;
|
||||
}
|
||||
|
||||
function disable(id){
|
||||
var elem = get(id);
|
||||
elem.setAttribute('disabled','disabled');
|
||||
return elem;
|
||||
}
|
||||
|
||||
function enable(id){
|
||||
var elem = get(id);
|
||||
elem.removeAttribute('disabled');
|
||||
return elem;
|
||||
}
|
||||
|
||||
function get(id){
|
||||
return document.getElementById(id);
|
||||
}
|
||||
|
||||
function getCookie(cname) {
|
||||
let name = cname + "=";
|
||||
let decodedCookie = decodeURIComponent(document.cookie);
|
||||
let arr = decodedCookie.split(';');
|
||||
for(let i = 0; i <arr.length; i++) {
|
||||
let c = arr[i];
|
||||
while (c.charAt(0) == ' ') c = c.substring(1);
|
||||
if (c.indexOf(name) == 0) return c.substring(name.length, c.length);
|
||||
}
|
||||
return "";
|
||||
}
|
||||
|
||||
function getValue(id){
|
||||
return get(id).value;
|
||||
}
|
||||
|
||||
function hide(id){
|
||||
var elem = get(id);
|
||||
if (elem) elem.style.display = 'none';
|
||||
return elem;
|
||||
}
|
||||
|
||||
function hideAll(clazz){
|
||||
var elems = document.getElementsByTagName('*'), i;
|
||||
for (i in elems) {
|
||||
if((' ' + elems[i].className + ' ').indexOf(' ' + clazz + ' ') > -1) elems[i].style.display = 'none';
|
||||
}
|
||||
}
|
||||
|
||||
function isChecked(id){
|
||||
return get(id).checked;
|
||||
}
|
||||
|
||||
function menu(){
|
||||
fetch('<? user.api.menu ?>').then(showMenu);
|
||||
}
|
||||
|
||||
// Replacement for Object.toEntries(…)
|
||||
function paramsToObject(entries) {
|
||||
const result = {};
|
||||
for(var key of entries) { // each 'entry' is a [key, value] tupple
|
||||
result[key[0]] = key[1];
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
function redirect(page){
|
||||
window.location.href = page;
|
||||
}
|
||||
|
||||
function setText(id, text){
|
||||
var elem = get(id);
|
||||
elem.innerHTML = text;
|
||||
return elem;
|
||||
}
|
||||
|
||||
function setValue(id,newVal){
|
||||
var elem = get(id);
|
||||
if (elem) elem.value = newVal;
|
||||
return elem;
|
||||
}
|
||||
|
||||
function show(id){
|
||||
var elem = get(id);
|
||||
if (elem) elem.style.display = '';
|
||||
return elem;
|
||||
}
|
||||
|
||||
function showAll(clazz){
|
||||
var elems = document.getElementsByTagName('*'), i;
|
||||
for (i in elems) {
|
||||
if((' ' + elems[i].className + ' ').indexOf(' ' + clazz + ' ') > -1) elems[i].style.display = '';
|
||||
}
|
||||
}
|
||||
|
||||
function showError(json){
|
||||
var message = json.message;
|
||||
var box = show('error');
|
||||
box.innerHTML = message;
|
||||
|
||||
var button = document.createElement('button');
|
||||
button.innerText = 'ok';
|
||||
button.addEventListener('click',() => hide('error'))
|
||||
box.appendChild(button);
|
||||
box.scrollIntoView();
|
||||
}
|
||||
|
||||
async function showMenu(resp){
|
||||
if (resp.ok){
|
||||
var menu = get('main_menu');
|
||||
var json = await resp.json();
|
||||
var entries = json.entries;
|
||||
entries.sort((a,b) => a.index - b.index);
|
||||
for (var idx in entries){
|
||||
var entry = entries[idx];
|
||||
menu.insertAdjacentHTML('beforeend','<a class="button" href="'+entry.url+'">'+entry.caption+'</a>');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function sortTableColumn(column){
|
||||
var table = column;
|
||||
var columnIndex = [...column.parentNode.children].indexOf(column);
|
||||
while (table.localName != 'table'){
|
||||
if (!table.parentNode) return;
|
||||
table = table.parentNode;
|
||||
}
|
||||
var rows = Array.from(table.tBodies[0].rows);
|
||||
var asc = table.getAttribute("data-sort-dir") !== "desc";
|
||||
table.setAttribute("data-sort-dir", asc ? "desc" : "asc");
|
||||
rows.sort(function(a, b) {
|
||||
var cellA = a.cells[columnIndex].innerText.trim();
|
||||
var cellB = b.cells[columnIndex].innerText.trim();
|
||||
var numA = parseFloat(cellA);
|
||||
var numB = parseFloat(cellB);
|
||||
if (!isNaN(numA) && !isNaN(numB)) return asc ? numA - numB : numB - numA;
|
||||
return asc ? cellA.localeCompare(cellB) : cellB.localeCompare(cellA);
|
||||
});
|
||||
|
||||
// Append sorted rows back to the tbody
|
||||
rows.forEach(function(row) {
|
||||
table.tBodies[0].appendChild(row);
|
||||
});
|
||||
}
|
||||
|
||||
function spread(json,prefix){
|
||||
for (var key in json){
|
||||
var val = json[key];
|
||||
var id = prefix+"."+key;
|
||||
if (typeof val === 'object'){
|
||||
spread(val,id);
|
||||
continue;
|
||||
}
|
||||
if (typeof val === 'string') val = val.replaceAll("\n","<br/>\n");
|
||||
var tag = get(id);
|
||||
if (tag) tag.innerHTML = val;
|
||||
}
|
||||
}
|
||||
4
legacy/src/main/resources/js/jquery-3.2.1.min.js
vendored
Normal file
4
legacy/src/main/resources/js/jquery-3.2.1.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
124
legacy/src/main/resources/js/umbrella.js
Normal file
124
legacy/src/main/resources/js/umbrella.js
Normal file
@@ -0,0 +1,124 @@
|
||||
const POST = 'POST';
|
||||
|
||||
function toggle(selector){
|
||||
$(selector).toggle("slow");
|
||||
}
|
||||
|
||||
function addDescriptionOption(text){
|
||||
if (text.trim() == '') return;
|
||||
var select = $('select[name=alt_comment]');
|
||||
if (select.length == 0){
|
||||
var area=$('textarea[name=comment]');
|
||||
var hint= area.attr('descr');
|
||||
$('<select/>',{name: 'alt_comment'})
|
||||
.append($('<option/>',{value: '',text: hint}))
|
||||
.insertBefore(area);
|
||||
select = $('select[name=alt_comment]');
|
||||
select.on('change',function(){
|
||||
$('textarea[name=comment]').val(select.find('option:selected').text());
|
||||
});
|
||||
}
|
||||
select.append($('<option/>',{text: text}));
|
||||
}
|
||||
|
||||
function getHeadings(elem){
|
||||
$('select[name=alt_comment]').remove();
|
||||
$('textarea[name=comment]').val('');
|
||||
var url=window.location.href.replace(/\/([^\/]*)$/,'/headings')+'?page='+encodeURIComponent(elem.value);
|
||||
$.ajax({
|
||||
url: url,
|
||||
dataType: "json",
|
||||
success: function(data){
|
||||
for (var index in data.headings) addDescriptionOption(data.headings[index]);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
var preview_timer = 0;
|
||||
|
||||
function keyEvent(e){
|
||||
if (e.ctrlKey){
|
||||
if (e.key === 'f') { // display search form on Ctrl+F
|
||||
e.preventDefault();
|
||||
$('.search *').show();
|
||||
$('.search form>input').focus();
|
||||
} else
|
||||
if (e.key === 's') { // save current element on Ctrl+S
|
||||
var saveBtn = $('form[method=POST] button[type="submit"]')[0];
|
||||
if (saveBtn) {
|
||||
e.preventDefault();
|
||||
saveBtn.click();
|
||||
}
|
||||
}
|
||||
return;
|
||||
}
|
||||
if (e.altKey){
|
||||
switch (e.keyCode){
|
||||
case 38:
|
||||
$('a.parent').each(function(){this.click()});
|
||||
return;
|
||||
case 39:
|
||||
$('a.next').each(function(){this.click()});
|
||||
return
|
||||
default:
|
||||
console.log(e.keyCode);
|
||||
}
|
||||
}
|
||||
switch (e.keyCode){
|
||||
case 27: // ESC
|
||||
if (document.location.href.includes("/add")) window.history.back();
|
||||
if (document.location.href.includes("/edit")) window.history.back();
|
||||
return;
|
||||
case 107: // +
|
||||
var active = document.activeElement.tagName;
|
||||
switch (active){
|
||||
case 'TEXTAREA':
|
||||
// do not activate add-link when in these fields
|
||||
return;
|
||||
}
|
||||
var addLink = $('a[href^="add"]')[0];
|
||||
if (addLink) addLink.click();
|
||||
return;
|
||||
}
|
||||
if (e.target.id == 'preview-source') {
|
||||
clearTimeout(preview_timer);
|
||||
preview_timer = setTimeout(preview,750,e.target);
|
||||
}
|
||||
|
||||
console.log(e);
|
||||
}
|
||||
|
||||
getHeadingsTimer = null;
|
||||
|
||||
function getHeadings_delayed(){
|
||||
if (getHeadingsTimer != null) clearTimeout(getHeadingsTimer);
|
||||
getHeadingsTimer = window.setTimeout(getHeadings,200,this);
|
||||
}
|
||||
|
||||
async function handlePreview(resp,txt){
|
||||
const target = document.getElementById('preview');
|
||||
if (resp.ok){
|
||||
const content = await resp.text();
|
||||
$(target).removeClass('loading').html(content);
|
||||
setTimeout(() => {
|
||||
$(txt).css('height',Math.max(target.clientHeight,200));
|
||||
},200);
|
||||
} else {
|
||||
$(target).removeClass('loading').html('Preview failed…');
|
||||
console.log("preview request failed!");
|
||||
}
|
||||
}
|
||||
|
||||
function preview(txt){
|
||||
let target = document.getElementById('preview');
|
||||
if (!target) return;
|
||||
$(target).addClass('loading');
|
||||
$(target).html('loading…');
|
||||
let url = '<? base ?>/api/preview';
|
||||
fetch(url,{
|
||||
method: POST,
|
||||
body: txt.value,
|
||||
credentials: 'include'
|
||||
}).then(resp => handlePreview(resp,txt));
|
||||
}
|
||||
document.addEventListener('keydown',keyEvent);
|
||||
BIN
legacy/src/main/resources/umbrella100px.png
Normal file
BIN
legacy/src/main/resources/umbrella100px.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 6.4 KiB |
Reference in New Issue
Block a user