2020-08-21 17:10:45 +03:00
|
|
|
|
html {
|
2022-02-19 01:03:27 +03:00
|
|
|
|
overflow-y: scroll;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
body {
|
|
|
|
|
margin: 0;
|
|
|
|
|
padding: 0;
|
|
|
|
|
background-color: #fff;
|
|
|
|
|
text-align: left;
|
|
|
|
|
font-family: tahoma, verdana, arial, sans-serif;
|
|
|
|
|
font-size: 11px;
|
|
|
|
|
word-break: break-word;
|
|
|
|
|
word-wrap: break-word;
|
|
|
|
|
}
|
|
|
|
|
|
2024-11-03 21:28:32 +03:00
|
|
|
|
body, .ovk-fullscreen-dimmer {
|
|
|
|
|
scrollbar-gutter: stable both-edges;
|
|
|
|
|
}
|
|
|
|
|
|
2022-02-19 12:32:30 +03:00
|
|
|
|
.nobold,
|
|
|
|
|
nobold {
|
|
|
|
|
font-weight: normal;
|
|
|
|
|
color: gray;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.hidden {
|
|
|
|
|
display: none;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
a {
|
|
|
|
|
text-decoration: none;
|
|
|
|
|
color: #2B587A;
|
|
|
|
|
cursor: pointer;
|
|
|
|
|
}
|
|
|
|
|
|
2023-08-15 02:39:48 +03:00
|
|
|
|
.linkunderline:hover {
|
|
|
|
|
text-decoration: underline;
|
|
|
|
|
}
|
|
|
|
|
|
2022-02-22 13:44:13 +03:00
|
|
|
|
p {
|
|
|
|
|
margin: 5px 0;
|
|
|
|
|
}
|
|
|
|
|
|
2023-01-07 23:04:11 +03:00
|
|
|
|
h1 {
|
|
|
|
|
margin-top: 0;
|
|
|
|
|
}
|
|
|
|
|
|
2024-11-03 21:28:32 +03:00
|
|
|
|
.display_flex_column {
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
}
|
|
|
|
|
|
2022-02-19 12:32:30 +03:00
|
|
|
|
.layout {
|
|
|
|
|
width: 791px;
|
|
|
|
|
margin: 0 auto;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.page_header {
|
|
|
|
|
position: relative;
|
|
|
|
|
width: 791px;
|
|
|
|
|
height: 45px;
|
2022-04-17 13:16:34 +03:00
|
|
|
|
background: url('../img/header.png');
|
2022-02-19 12:32:30 +03:00
|
|
|
|
background-repeat: no-repeat;
|
|
|
|
|
background-position: 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.page_custom_header {
|
|
|
|
|
background: url('../img/header_custom.png');
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#page_act {
|
|
|
|
|
border-bottom: 1px solid #d5dde6;
|
2022-04-17 13:16:34 +03:00
|
|
|
|
padding: 2px 10px 5px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
color: #2B587A;
|
|
|
|
|
width: 608px;
|
|
|
|
|
margin-left: -10px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.home_button {
|
|
|
|
|
position: absolute;
|
|
|
|
|
width: 145px;
|
|
|
|
|
height: 42px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.home_button_custom {
|
|
|
|
|
width: 175px;
|
|
|
|
|
text-indent: 58px;
|
|
|
|
|
line-height: 41px;
|
|
|
|
|
text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.5);
|
|
|
|
|
font-weight: bold;
|
|
|
|
|
color: white;
|
|
|
|
|
white-space: nowrap;
|
|
|
|
|
text-overflow: ellipsis;
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.header_navigation {
|
|
|
|
|
text-align: center;
|
|
|
|
|
line-height: 20px;
|
|
|
|
|
padding-right: 8px;
|
|
|
|
|
text-transform: lowercase;
|
|
|
|
|
float: right;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.header_navigation .link {
|
|
|
|
|
display: inline-block;
|
|
|
|
|
height: 29px;
|
|
|
|
|
padding: 11px 4px 0 7px;
|
2024-10-25 16:28:35 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.header_navigation .link, .header_navigation .header_divider_stick {
|
2022-02-19 12:32:30 +03:00
|
|
|
|
background: url('../img/divider.png') no-repeat;
|
2022-04-17 13:16:34 +03:00
|
|
|
|
background-size: 1.5px 41px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
2024-10-25 16:28:35 +03:00
|
|
|
|
.page_header.search_expanded .header_navigation .header_divider_stick {
|
|
|
|
|
background: unset;
|
2023-06-10 18:54:02 +03:00
|
|
|
|
}
|
|
|
|
|
|
2022-02-19 12:32:30 +03:00
|
|
|
|
.header_navigation .link a {
|
2022-02-19 01:03:27 +03:00
|
|
|
|
color: #D7D7D7;
|
2020-08-21 17:10:45 +03:00
|
|
|
|
text-decoration: none;
|
|
|
|
|
font-weight: bold;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.header_navigation .link a:hover {
|
|
|
|
|
text-decoration: underline;
|
|
|
|
|
color: #fff;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.sidebar {
|
2023-06-14 11:29:58 +03:00
|
|
|
|
width: 131px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
margin: 4px 0 0 4px;
|
|
|
|
|
float: left;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.navigation {
|
|
|
|
|
position: relative;
|
|
|
|
|
padding: 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.navigation .link {
|
|
|
|
|
display: block;
|
|
|
|
|
padding: 3px 3px 3px 6px;
|
|
|
|
|
text-decoration: none;
|
|
|
|
|
border-top: 1px solid #fff;
|
|
|
|
|
color: #000;
|
|
|
|
|
border-bottom: 0;
|
|
|
|
|
border-left: 0;
|
|
|
|
|
border-right: 0;
|
|
|
|
|
font-size: 11px;
|
|
|
|
|
text-align: left;
|
|
|
|
|
cursor: pointer;
|
|
|
|
|
background: none;
|
|
|
|
|
margin-bottom: 1px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.navigation .link:hover {
|
|
|
|
|
background-color: #E4E4E4;
|
|
|
|
|
border-top: 1px solid #CCCCCC;
|
|
|
|
|
}
|
|
|
|
|
|
2022-12-12 00:36:49 +03:00
|
|
|
|
.navigation .link_soon {
|
|
|
|
|
display: block;
|
|
|
|
|
padding: 3px 3px 3px 6px;
|
|
|
|
|
text-decoration: none;
|
|
|
|
|
border-top: 1px solid #fff;
|
|
|
|
|
color: #000;
|
|
|
|
|
border-bottom: 0;
|
|
|
|
|
border-left: 0;
|
|
|
|
|
border-right: 0;
|
|
|
|
|
font-size: 11px;
|
|
|
|
|
text-align: left;
|
|
|
|
|
cursor: pointer;
|
|
|
|
|
background: none;
|
|
|
|
|
margin-bottom: 1px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.navigation .link_soon {
|
|
|
|
|
color: #2B587A63;
|
|
|
|
|
}
|
|
|
|
|
.navigation .link_soon:hover {
|
|
|
|
|
background:#DAE1E8;
|
|
|
|
|
border-top:1px solid #CAD1D9
|
|
|
|
|
}
|
|
|
|
|
|
2022-02-19 12:32:30 +03:00
|
|
|
|
.navigation .edit-button {
|
|
|
|
|
background-color: #fff !important;
|
|
|
|
|
color: gray !important;
|
|
|
|
|
position: absolute;
|
|
|
|
|
right: 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.navigation .group_link {
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
text-overflow: ellipsis;
|
|
|
|
|
white-space: nowrap;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.navigation_footer {
|
|
|
|
|
padding: 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.navigation_footer .link {
|
|
|
|
|
display: block;
|
|
|
|
|
padding: 3px 3px 3px 6px;
|
|
|
|
|
text-decoration: none;
|
|
|
|
|
border-top: 1px solid #fff;
|
|
|
|
|
color: #000;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.navigation_footer .link:hover {
|
|
|
|
|
background-color: #E4E4E4;
|
|
|
|
|
border-top: 1px solid #CCCCCC;
|
|
|
|
|
}
|
|
|
|
|
|
2022-12-12 02:23:42 +03:00
|
|
|
|
#backdrop {
|
|
|
|
|
position: fixed;
|
|
|
|
|
top: 0;
|
|
|
|
|
bottom: 0;
|
|
|
|
|
right: 0;
|
|
|
|
|
left: 0;
|
|
|
|
|
z-index: -100;
|
|
|
|
|
background-repeat: no-repeat;
|
|
|
|
|
background-size: contain;
|
|
|
|
|
background-position: center left, center right;
|
|
|
|
|
pointer-events: none;
|
|
|
|
|
opacity: .8;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#backdropDripper {
|
|
|
|
|
width: 800px;
|
|
|
|
|
height: 100%;
|
|
|
|
|
margin: auto;
|
|
|
|
|
background-color: #fff;
|
|
|
|
|
box-shadow: -30px 0px 20px 20px #fff, -50px 0px 20px 20px hsl(0deg 0% 100% / 59%), -70px 0px 20px 20px hsl(0deg 0% 100% / 43%), -90px 0px 20px 20px hsl(0deg 0% 100% / 35%), -110px 0px 20px 20px hsl(0deg 0% 100% / 28%), -130px 0px 20px 20px hsl(0deg 0% 100% / 16%), 30px 0px 20px 20px #fff, 50px 0px 20px 20px hsl(0deg 0% 100% / 59%), 70px 0px 20px 20px hsl(0deg 0% 100% / 43%), 90px 0px 20px 20px hsl(0deg 0% 100% / 35%), 110px 0px 20px 20px hsl(0deg 0% 100% / 28%), 130px 0px 20px 20px hsl(0deg 0% 100% / 16%);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#backdropEditor {
|
|
|
|
|
position: relative;
|
|
|
|
|
border: 4px inset #cfcfcf;
|
|
|
|
|
padding: 8px;
|
|
|
|
|
width: 550px;
|
|
|
|
|
height: 270px;
|
|
|
|
|
margin: 8px auto;
|
|
|
|
|
background-image: url("../img/backdrop-editor.gif");
|
|
|
|
|
background-size: cover;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#backdropFilePicker {
|
|
|
|
|
position: absolute;
|
|
|
|
|
top: 140px;
|
|
|
|
|
padding: 0 19px;
|
2023-04-24 18:50:26 +03:00
|
|
|
|
margin: 24px;
|
2022-12-12 02:23:42 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#backdropFilePicker > input {
|
|
|
|
|
width: 90px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#backdropFilePicker > #spacer {
|
|
|
|
|
display: inline-block;
|
|
|
|
|
width: calc(550px - 16px - 38px - 171px);
|
|
|
|
|
}
|
|
|
|
|
|
2024-11-03 21:28:32 +03:00
|
|
|
|
.upLeftErrors {
|
|
|
|
|
position: absolute;
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
z-index: 1025;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.upLeftErrors .upLeftError {
|
|
|
|
|
padding: 2px 2px 2px 2px;
|
|
|
|
|
display: inline-block;
|
|
|
|
|
border-radius: 0px 0px 5px 0px;
|
|
|
|
|
font-size: 15px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.upLeftErrors .upLeftError.upLeftErrorRed {
|
|
|
|
|
background: #ff7474;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.upLeftErrors .upLeftError.upLeftErrorGreen {
|
|
|
|
|
background: #74ff92;
|
|
|
|
|
}
|
|
|
|
|
|
2022-02-19 12:32:30 +03:00
|
|
|
|
.page_body {
|
|
|
|
|
width: 632px;
|
|
|
|
|
float: right;
|
|
|
|
|
margin-right: 15px;
|
|
|
|
|
margin-top: -2px;
|
|
|
|
|
font-size: 11px;
|
|
|
|
|
text-align: left;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.wrap1 {
|
|
|
|
|
border: 1px solid #EBF0F4;
|
2022-04-17 13:16:34 +03:00
|
|
|
|
border-top: 0;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
width: auto;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.wrap2 {
|
|
|
|
|
border-right: 1px solid #F6F8FA;
|
2022-04-17 13:16:34 +03:00
|
|
|
|
border-top: 0;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.page_yellowheader {
|
2022-04-17 13:16:34 +03:00
|
|
|
|
padding: 4px 10px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
font-weight: bold;
|
|
|
|
|
background: url('../img/header_yellow.png') repeat-x;
|
|
|
|
|
background-color: #EEE5B8;
|
|
|
|
|
border-right: solid 1px #DCD4A4;
|
|
|
|
|
border-left: solid 1px #E4DDB4;
|
|
|
|
|
border-bottom: solid 1px #D7CF9E;
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#wrapHI {
|
|
|
|
|
border-right: solid 1px #D5DDE6;
|
|
|
|
|
border-left: solid 1px #D5DDE6;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#wrapH {
|
|
|
|
|
border-right: solid 1px #EAEEF3;
|
|
|
|
|
border-left: solid 1px #EAEEF3;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.page_yellowheader span {
|
|
|
|
|
color: #C8BF85;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.page_yellowheader a {
|
|
|
|
|
color: #696029;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.page_content {
|
|
|
|
|
display: inline-block;
|
|
|
|
|
width: 610px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.page_wrap {
|
|
|
|
|
border-bottom: solid 1px #c3cad2;
|
|
|
|
|
border-left: solid 1px #d5dde6;
|
|
|
|
|
border-right: solid 1px #d5dde6;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.page_wrap.padding_top {
|
|
|
|
|
padding-top: 12px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.content-main-tile {
|
|
|
|
|
margin: -10px;
|
|
|
|
|
margin-top: 3pt;
|
|
|
|
|
padding: 7pt;
|
|
|
|
|
border-top: 1px solid #ebf0f4;
|
|
|
|
|
background-color: #fbfbfb;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.float-right {
|
|
|
|
|
float: right;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.lowercase {
|
|
|
|
|
text-transform: lowercase;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.album {
|
|
|
|
|
margin: 8px;
|
|
|
|
|
padding: 8px;
|
|
|
|
|
width: 95%;
|
|
|
|
|
background-color: #fff;
|
|
|
|
|
border: 1px solid #ebf0f4;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.album-photo {
|
|
|
|
|
position: relative;
|
|
|
|
|
width: 25%;
|
|
|
|
|
max-height: 140px;
|
|
|
|
|
margin-bottom: 8px;
|
|
|
|
|
text-align: center;
|
|
|
|
|
display: flex;
|
|
|
|
|
align-items: center;
|
|
|
|
|
justify-content: center;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.album-photo img {
|
|
|
|
|
width: unset;
|
|
|
|
|
max-height: 120px !important;
|
|
|
|
|
max-width: 83%;
|
|
|
|
|
vertical-align: top;
|
|
|
|
|
border: 1px #ccc solid;
|
|
|
|
|
padding: 8px;
|
|
|
|
|
background-color: #fff;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.album-photo>.album-photo--delete {
|
|
|
|
|
position: absolute;
|
|
|
|
|
right: 0;
|
|
|
|
|
top: 0;
|
|
|
|
|
padding: 5px;
|
|
|
|
|
margin: 4px;
|
|
|
|
|
color: #fff;
|
|
|
|
|
background-color: hsla(0, 0%, 0%, 0.3);
|
|
|
|
|
width: 10px;
|
|
|
|
|
height: 10px;
|
|
|
|
|
line-height: 10px;
|
|
|
|
|
opacity: 0;
|
|
|
|
|
transition: .1s opacity ease-out;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.album-photo:hover>.album-photo--delete {
|
|
|
|
|
opacity: 1;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.album-flex {
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-wrap: wrap;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.name-checkmark {
|
|
|
|
|
margin-left: 2pt;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#profile_link,
|
|
|
|
|
.profile_link {
|
|
|
|
|
display: block;
|
|
|
|
|
box-sizing: border-box;
|
|
|
|
|
padding: 3px;
|
|
|
|
|
background: transparent;
|
|
|
|
|
border: none;
|
|
|
|
|
border-bottom: 1px solid #CCC;
|
|
|
|
|
font-size: 11px;
|
|
|
|
|
color: #2b587a;
|
|
|
|
|
width: 200px;
|
|
|
|
|
text-align: left;
|
|
|
|
|
cursor: pointer;
|
2023-10-23 22:28:41 +03:00
|
|
|
|
font-family: tahoma, verdana, arial, sans-serif;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.profile_link_form {
|
|
|
|
|
margin-bottom: 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#profile_links {
|
|
|
|
|
margin: 10px 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#profile_link:hover,
|
|
|
|
|
.profile_link:hover {
|
|
|
|
|
background: #ECECEC;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.action_links>.profile_link,
|
|
|
|
|
.action_links>.profile_link_form>.profile_link {
|
|
|
|
|
width: 150px;
|
2022-08-09 02:36:02 +03:00
|
|
|
|
text-transform: lowercase;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
2024-09-18 01:02:56 +03:00
|
|
|
|
.action_links.disable>a,
|
|
|
|
|
.action_links.disable>form>input,
|
|
|
|
|
.action_links.disable {
|
|
|
|
|
cursor: not-allowed;
|
|
|
|
|
color: grey;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.action_links.loading::after {
|
|
|
|
|
content: "";
|
|
|
|
|
display: inline-block;
|
|
|
|
|
background-image: url('/assets/packages/static/openvk/img/loading_mini.gif');
|
|
|
|
|
width: 30px;
|
|
|
|
|
height: 7px;
|
|
|
|
|
margin-left: 5px;
|
|
|
|
|
}
|
|
|
|
|
|
2022-02-19 12:32:30 +03:00
|
|
|
|
.profile_link.disable>a,
|
|
|
|
|
.profile_link.disable {
|
|
|
|
|
cursor: not-allowed;
|
|
|
|
|
color: grey;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.profile_link.loading>a::after,
|
|
|
|
|
.profile_link.loading::after {
|
|
|
|
|
content: "";
|
|
|
|
|
display: inline-block;
|
|
|
|
|
background-image: url('/assets/packages/static/openvk/img/loading_mini.gif');
|
|
|
|
|
width: 30px;
|
|
|
|
|
height: 7px;
|
|
|
|
|
margin-left: 5px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.page_footer {
|
2022-03-30 14:48:54 +03:00
|
|
|
|
margin-left: 130px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
padding-top: 5px;
|
|
|
|
|
clear: both;
|
|
|
|
|
text-align: center;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
table {
|
|
|
|
|
font-size: 11px;
|
|
|
|
|
text-align: left;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.information {
|
|
|
|
|
padding: 9px;
|
|
|
|
|
background-color: #c3e4ff;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.error {
|
|
|
|
|
padding: 9px;
|
|
|
|
|
background-color: #ffc3c3;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.page_footer .link {
|
|
|
|
|
padding: 3px 7px;
|
|
|
|
|
display: inline-block;
|
|
|
|
|
color: #444;
|
|
|
|
|
text-decoration: none;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.page_footer .link:hover {
|
|
|
|
|
background-color: #DFDFDF;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.content_divider {
|
|
|
|
|
margin-bottom: 6px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.menu_divider {
|
|
|
|
|
height: 1px;
|
|
|
|
|
background: #CCC;
|
|
|
|
|
margin: 4px 0 2px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.page_status {
|
|
|
|
|
font-weight: normal;
|
|
|
|
|
font-size: 11px;
|
2022-04-17 13:16:34 +03:00
|
|
|
|
padding: 3px 1px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
color: #000;
|
|
|
|
|
width: 380px;
|
|
|
|
|
height: auto !important;
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.page_status_edit_button {
|
|
|
|
|
cursor: pointer;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.page_status_edit_button:hover {
|
|
|
|
|
text-decoration: underline;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.page_status_popup {
|
|
|
|
|
position: absolute;
|
|
|
|
|
border: 1px solid #CCC;
|
|
|
|
|
background-color: #f7f7f7;
|
|
|
|
|
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12);
|
|
|
|
|
padding: 10px;
|
|
|
|
|
float: right;
|
|
|
|
|
margin-top: 5px;
|
|
|
|
|
margin-left: -6px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.page_status_popup form {
|
|
|
|
|
margin: 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.button {
|
|
|
|
|
border-radius: 2px;
|
|
|
|
|
border: #595959;
|
|
|
|
|
font-size: 11px;
|
|
|
|
|
outline: none;
|
|
|
|
|
white-space: nowrap;
|
|
|
|
|
background: #595959;
|
2022-04-17 13:16:34 +03:00
|
|
|
|
background-position: 0 -16px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
color: #fff;
|
2022-04-17 13:16:34 +03:00
|
|
|
|
padding: 4px 8px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
text-shadow: 0 1px 0 #686868;
|
|
|
|
|
cursor: pointer;
|
|
|
|
|
text-decoration: none;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.button:hover {
|
|
|
|
|
color: #e8e8e8;
|
|
|
|
|
}
|
|
|
|
|
|
2022-10-11 19:04:43 +03:00
|
|
|
|
.button[disabled] {
|
|
|
|
|
filter: opacity(0.5);
|
|
|
|
|
cursor: not-allowed;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.button[disabled]:hover {
|
|
|
|
|
color: #fff;
|
|
|
|
|
}
|
|
|
|
|
|
2022-02-19 12:32:30 +03:00
|
|
|
|
.button-loading {
|
|
|
|
|
display: inline-block;
|
|
|
|
|
background-image: url('/assets/packages/static/openvk/img/loading_mini.gif');
|
|
|
|
|
width: 30px;
|
|
|
|
|
height: 7px;
|
|
|
|
|
margin-left: -3px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
input[class=button] {
|
|
|
|
|
padding: 5px 7px 4px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
input[type=checkbox],
|
|
|
|
|
input[type=radio] {
|
|
|
|
|
background-color: transparent;
|
|
|
|
|
-webkit-appearance: none;
|
|
|
|
|
-moz-appearance: none;
|
|
|
|
|
-ms-appearance: none;
|
|
|
|
|
height: 14px;
|
|
|
|
|
width: 14px;
|
|
|
|
|
outline: none;
|
|
|
|
|
cursor: pointer;
|
|
|
|
|
vertical-align: middle;
|
2022-04-17 13:16:34 +03:00
|
|
|
|
margin: 4px 3px 3px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
input[type=checkbox] {
|
2023-01-18 22:05:33 +03:00
|
|
|
|
background-image: url("data:image/gif;base64,R0lGODlhDwA4ALMAAP//////AP8A//8AAAD//wD/AAAA/wAAADtZd8XKzuHh4crKysHBwba2tv///wAAACH5BAEAAA4ALAAAAAAPADgAAASzcMlJqVsg653X5SDgYeE2luaHdup6rmKLvq5c0rMdjlUvXb6eDoRAkFBF4yqZOBKLi2aJSUNomE1VEoCNkRLJYiLB+oLF5LJmjBinnOO0BncDBi2NvH6/dzQUgIGCgA1+g4cKhX+IgoqMjYaPhJGSjpKJlI+WlZmMm5qdiIp8pHl+paShh0WLj0mtiEywg0kMCbOBTAyUCLlolkkKWJiLZ8PEgGxogZtsY5CwcYOfnqeofREAOw==");
|
|
|
|
|
width: 15px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
input[type=radio] {
|
|
|
|
|
background-image: url("../img/radio.png");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
input[type=checkbox]:hover,
|
|
|
|
|
input[type=radio]:hover {
|
|
|
|
|
background-position: 0 -28px;
|
|
|
|
|
}
|
|
|
|
|
|
2024-07-06 14:34:18 +03:00
|
|
|
|
input[type=checkbox]:disabled {
|
|
|
|
|
background-position: 0 -28px;
|
|
|
|
|
cursor: initial;
|
|
|
|
|
}
|
|
|
|
|
|
2022-02-19 12:32:30 +03:00
|
|
|
|
input[type=checkbox]:checked,
|
|
|
|
|
input[type=radio]:checked {
|
|
|
|
|
background-position: 0 -14px;
|
|
|
|
|
}
|
|
|
|
|
|
2023-01-18 22:05:33 +03:00
|
|
|
|
input[type=checkbox]:checked:hover,
|
|
|
|
|
input[type=radio]:checked:hover {
|
|
|
|
|
background-position: 0 -42px;
|
|
|
|
|
}
|
|
|
|
|
|
2024-07-06 14:34:18 +03:00
|
|
|
|
input[type=checkbox]:checked:disabled {
|
|
|
|
|
background-position: 0 -42px;
|
|
|
|
|
}
|
|
|
|
|
|
2022-02-19 12:32:30 +03:00
|
|
|
|
#auth {
|
|
|
|
|
padding: 10px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.left_small_block {
|
|
|
|
|
float: left;
|
|
|
|
|
width: 200px;
|
|
|
|
|
margin-right: 10px;
|
|
|
|
|
border-right: 1px #eeeeee solid;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.left_big_block {
|
|
|
|
|
width: 397px;
|
|
|
|
|
float: left;
|
|
|
|
|
margin-right: 13px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.right_small_block {
|
|
|
|
|
float: right;
|
|
|
|
|
width: 200px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.content_title_expanded {
|
2022-12-12 11:06:46 +03:00
|
|
|
|
background-image: url('../img/flex_arrow_open2.png')!important;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
background-repeat: no-repeat;
|
|
|
|
|
background-color: #e6e6e6;
|
|
|
|
|
border-top: #8B8B8B solid 1px;
|
|
|
|
|
padding: 3px 8px 3px 24px;
|
2022-04-17 13:16:34 +03:00
|
|
|
|
margin-top: 5px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
font-weight: bold;
|
|
|
|
|
color: #626262;
|
|
|
|
|
font-size: 11px;
|
|
|
|
|
cursor: pointer;
|
|
|
|
|
display: block;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.content_title_unexpanded {
|
2022-12-12 11:06:46 +03:00
|
|
|
|
background-image: url('../img/flex_arrow_shut.gif')!important;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
background-repeat: no-repeat;
|
|
|
|
|
background-color: #eee;
|
|
|
|
|
border-top: solid 1px #ccc;
|
|
|
|
|
padding: 3px 8px 3px 24px;
|
|
|
|
|
font-weight: bold;
|
|
|
|
|
color: #888;
|
|
|
|
|
font-size: 11px;
|
|
|
|
|
cursor: pointer;
|
|
|
|
|
display: block;
|
|
|
|
|
margin-top: 5px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.content_subtitle {
|
|
|
|
|
background-color: #F0F0F0;
|
|
|
|
|
display: block;
|
|
|
|
|
font-size: 11px;
|
|
|
|
|
border-bottom: 1px solid #EEEEEE;
|
|
|
|
|
color: #777777;
|
|
|
|
|
padding: 3px 8px;
|
|
|
|
|
border-top: #ccc solid 1px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.content {
|
|
|
|
|
padding: 8px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.content-withouttop {
|
2022-04-17 13:16:34 +03:00
|
|
|
|
padding-top: 0;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
input[type="text"],
|
|
|
|
|
input[type="password"],
|
|
|
|
|
input[type~="text"],
|
|
|
|
|
input[type~="password"],
|
|
|
|
|
input[type="email"],
|
|
|
|
|
input[type="phone"],
|
|
|
|
|
input[type~="email"],
|
|
|
|
|
input[type~="phone"],
|
|
|
|
|
input[type="search"],
|
|
|
|
|
input[type~="search"],
|
2022-07-09 17:33:55 +03:00
|
|
|
|
input[type~="date"],
|
2023-08-11 16:50:19 +03:00
|
|
|
|
input[type~="datetime-local"],
|
2022-02-19 12:32:30 +03:00
|
|
|
|
select {
|
|
|
|
|
border: 1px solid #C0CAD5;
|
|
|
|
|
padding: 3px;
|
|
|
|
|
font-size: 11px;
|
|
|
|
|
font-family: tahoma, verdana, arial, sans-serif;
|
|
|
|
|
width: 100%;
|
|
|
|
|
box-sizing: border-box;
|
2023-06-10 18:54:02 +03:00
|
|
|
|
outline:none;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
2023-01-07 22:52:50 +03:00
|
|
|
|
.header2 {
|
|
|
|
|
border-bottom: 1px solid #E8EBEE;
|
|
|
|
|
color: #45688E;
|
|
|
|
|
font-size: 14px;
|
|
|
|
|
font-weight: bold;
|
|
|
|
|
margin: 0;
|
|
|
|
|
font-family: verdana, arial, sans-serif;
|
|
|
|
|
}
|
|
|
|
|
|
2022-02-19 12:32:30 +03:00
|
|
|
|
h4 {
|
|
|
|
|
border-bottom: 1px solid #E8EBEE;
|
|
|
|
|
color: #45688E;
|
|
|
|
|
font-size: 12px;
|
|
|
|
|
font-weight: bold;
|
2022-04-17 13:16:34 +03:00
|
|
|
|
margin: 0;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
font-family: verdana, arial, sans-serif;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.post {
|
|
|
|
|
width: 100%;
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
display: block;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.post-online {
|
|
|
|
|
color: #AAA;
|
|
|
|
|
text-align: center;
|
|
|
|
|
width: 50px;
|
|
|
|
|
padding-top: 5px;
|
|
|
|
|
display: block;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.post-author {
|
|
|
|
|
background-color: #F6F6F6;
|
|
|
|
|
border-top: #8B8B8B solid 1px;
|
|
|
|
|
border-bottom: #ECECEC solid 1px;
|
|
|
|
|
font-size: 11px;
|
2022-04-17 13:16:34 +03:00
|
|
|
|
padding: 3px 5px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
line-height: 125%;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.post-author .date {
|
|
|
|
|
font-size: 9px;
|
|
|
|
|
color: black;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.post-content {
|
|
|
|
|
border-bottom: #ECECEC solid 1px;
|
|
|
|
|
font-size: 9px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.post-content .text {
|
|
|
|
|
padding: 4px;
|
|
|
|
|
font-size: 11px;
|
|
|
|
|
hyphens: manual;
|
|
|
|
|
line-height: 130%;
|
|
|
|
|
}
|
|
|
|
|
|
2023-10-03 19:40:13 +03:00
|
|
|
|
.post-content .attachments:first-of-type {
|
2022-02-19 12:32:30 +03:00
|
|
|
|
margin-top: 8px;
|
|
|
|
|
}
|
|
|
|
|
|
2023-10-03 19:40:13 +03:00
|
|
|
|
.post-content .attachments_m .attachment {
|
|
|
|
|
width: 98%;
|
|
|
|
|
}
|
|
|
|
|
|
2022-02-19 12:32:30 +03:00
|
|
|
|
.attachment .post {
|
|
|
|
|
width: 102%;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.post-content .media {
|
|
|
|
|
max-width: 100%;
|
|
|
|
|
image-rendering: -webkit-optimize-contrast;
|
|
|
|
|
}
|
|
|
|
|
|
2023-10-03 19:40:13 +03:00
|
|
|
|
.post-content .media_makima {
|
|
|
|
|
width: calc(100% - 4px);
|
|
|
|
|
height: calc(100% - 4px);
|
|
|
|
|
object-fit: cover;
|
|
|
|
|
}
|
|
|
|
|
|
2022-02-19 12:32:30 +03:00
|
|
|
|
.post-signature {
|
|
|
|
|
margin: 4px;
|
|
|
|
|
margin-bottom: 2px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.post-signature span {
|
|
|
|
|
color: grey;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.post-signature a {
|
|
|
|
|
font-weight: 700;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.post-menu {
|
|
|
|
|
height: 12px;
|
|
|
|
|
padding: 4px;
|
|
|
|
|
font-size: 9px;
|
|
|
|
|
color: #bcbcbc;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.post:target {
|
|
|
|
|
animation-duration: 5s;
|
|
|
|
|
animation-name: post-target;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@keyframes post-target {
|
|
|
|
|
from {
|
|
|
|
|
background-color: rgba(208, 208, 208, 1);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
to {
|
|
|
|
|
background-color: rgba(208, 208, 208, 0);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.small-textarea {
|
|
|
|
|
height: 24px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.expanded-textarea {
|
|
|
|
|
min-height: 48px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
ul {
|
|
|
|
|
list-style-type: square;
|
|
|
|
|
color: #a2a2a2;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
span {
|
|
|
|
|
padding: 0 0 2px;
|
|
|
|
|
color: black;
|
|
|
|
|
font-weight: normal;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#logininput {
|
|
|
|
|
width: 123px;
|
|
|
|
|
height: 21px;
|
|
|
|
|
padding: 3px;
|
|
|
|
|
border: 1px solid #C0CAD5;
|
|
|
|
|
font-size: 11;
|
|
|
|
|
margin: 3px 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#fastLogin {
|
|
|
|
|
min-width: 122px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#fastLogin input {
|
|
|
|
|
margin-bottom: 5px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#fastLogin input[type=submit] {
|
|
|
|
|
margin-top: 5px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#fastlogin input[type=text],
|
|
|
|
|
#fastlogin input[type=password] {
|
|
|
|
|
width: 100%;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.ovk-avView {
|
|
|
|
|
padding: 8px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.ovk-avView--el {
|
|
|
|
|
width: 32%;
|
|
|
|
|
max-height: 90px;
|
|
|
|
|
text-align: center;
|
|
|
|
|
display: inline-block;
|
|
|
|
|
vertical-align: text-top;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.ovk-avView--el .ava {
|
|
|
|
|
max-width: 80%;
|
|
|
|
|
max-height: 63px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.content_list {
|
|
|
|
|
display: flex;
|
|
|
|
|
width: 200px;
|
|
|
|
|
flex-wrap: wrap;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.content_list.long {
|
|
|
|
|
width: 397px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.content_list .cl_element {
|
|
|
|
|
width: 33%;
|
2023-04-19 19:47:05 +03:00
|
|
|
|
display: inline-block;
|
|
|
|
|
text-align: center;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.content_list.long .cl_element {
|
|
|
|
|
width: 16.5%;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.content_list .cl_element .cl_avatar {
|
2022-04-17 13:16:34 +03:00
|
|
|
|
padding: 7px 7px 0;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
text-align: center;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.content_list .cl_element .cl_name {
|
|
|
|
|
padding: 0 3px;
|
|
|
|
|
text-align: center;
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.content_list .cl_element .cl_name .cl_lname {
|
|
|
|
|
font-size: 7pt;
|
2023-04-19 19:47:05 +03:00
|
|
|
|
display: block;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.ava {
|
|
|
|
|
width: 45px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
table.User {
|
|
|
|
|
vertical-align: text-top;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.container_gray {
|
|
|
|
|
background: #F6F6F6;
|
|
|
|
|
padding: 12px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.container_gray.bottom {
|
|
|
|
|
border-bottom: #ebebeb solid 1px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#auth .container_gray {
|
|
|
|
|
margin-left: -10px;
|
|
|
|
|
margin-bottom: -10px;
|
|
|
|
|
width: 603px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.tabs {
|
|
|
|
|
border-bottom: 1px solid #707070;
|
|
|
|
|
padding: 0 10px;
|
2022-05-31 17:39:52 +03:00
|
|
|
|
margin-left: -10px;
|
|
|
|
|
width: 607px;
|
2022-10-11 19:04:43 +03:00
|
|
|
|
overflow-x: auto;
|
|
|
|
|
white-space: nowrap;
|
2022-05-31 17:39:52 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.tabs.stupid-fix {
|
|
|
|
|
margin-left: 0;
|
|
|
|
|
width: auto;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#activetabs {
|
|
|
|
|
background: #707070;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#activetabs:hover {
|
|
|
|
|
color: #e8e8e8;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.tab {
|
|
|
|
|
display: inline-block;
|
|
|
|
|
padding: 5px 10px;
|
|
|
|
|
margin-right: 3px;
|
2022-04-17 13:16:34 +03:00
|
|
|
|
border-radius: 3px 3px 0 0;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.tab:hover {
|
|
|
|
|
background: #E4E4E4;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#act_tab_a {
|
|
|
|
|
color: white;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.container_gray .content {
|
|
|
|
|
background: #fff;
|
|
|
|
|
padding: 4px;
|
|
|
|
|
border: #DEDEDE solid 1px;
|
|
|
|
|
clear: both;
|
2022-06-20 06:39:25 +03:00
|
|
|
|
margin-bottom: 6px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
overflow: hidden;
|
|
|
|
|
word-break: break-word;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.gray-block {
|
|
|
|
|
background: #F7F7F7;
|
|
|
|
|
border: #DEDEDE solid 1px;
|
|
|
|
|
padding: 6px;
|
|
|
|
|
margin-top: 6px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.ovk-album {
|
|
|
|
|
width: 100%;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.ovk-album:not(:first-child),
|
|
|
|
|
.ovk-note:not(:first-child) {
|
|
|
|
|
display: inline-block;
|
|
|
|
|
margin-top: 10px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.msg {
|
|
|
|
|
width: 70%;
|
|
|
|
|
margin: auto;
|
|
|
|
|
margin-bottom: 5pt;
|
|
|
|
|
padding: 8pt;
|
|
|
|
|
border: 1pt solid #667e96;
|
|
|
|
|
background-color: #e6f2f3;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#wrapHI>.msg {
|
|
|
|
|
margin-top: 15pt;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.msg.msg_succ {
|
|
|
|
|
border-color: #3b584f;
|
|
|
|
|
background-color: #ddf3d7;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.msg.msg_err {
|
|
|
|
|
border-color: #9a205e;
|
|
|
|
|
background-color: #f5e9ec;
|
|
|
|
|
}
|
|
|
|
|
|
2023-12-02 20:21:16 +03:00
|
|
|
|
.msg.msg_yellow {
|
|
|
|
|
border-color:#D4BC4C;
|
|
|
|
|
background-color:#F9F6E7;
|
|
|
|
|
}
|
|
|
|
|
|
2022-02-19 12:32:30 +03:00
|
|
|
|
.edit_link {
|
|
|
|
|
color: #c5c5c5;
|
|
|
|
|
font-family: verdana, arial, sans-serif;
|
|
|
|
|
font-size: 11px;
|
|
|
|
|
font-weight: bold;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.crp-list {
|
|
|
|
|
margin: 10px -6px -10px -11px;
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
border-top: 1px solid #d6d6d6;
|
|
|
|
|
max-height: 70%;
|
|
|
|
|
overflow-y: auto;
|
|
|
|
|
width: 628px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.crp-entry {
|
|
|
|
|
display: flex;
|
|
|
|
|
padding: 8px;
|
|
|
|
|
cursor: pointer;
|
|
|
|
|
margin-left: 1px;
|
|
|
|
|
border-bottom: 1px solid #d6d6d6;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.crp-entry:hover {
|
|
|
|
|
background-color: #f9f9f9;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.crp-entry:first-of-type {
|
|
|
|
|
border-top: 1px solid #d6d6d6;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.crp-entry--image,
|
|
|
|
|
.crp-entry--info {
|
|
|
|
|
margin-right: 15px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.crp-entry--info {
|
2022-05-31 17:39:52 +03:00
|
|
|
|
width: 130px;
|
|
|
|
|
margin-top: 2%;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.crp-entry--message{
|
|
|
|
|
padding: 3px;
|
|
|
|
|
width: 395px;
|
|
|
|
|
border-radius: 3px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.crp-entry--image>img {
|
2022-05-31 17:39:52 +03:00
|
|
|
|
max-width: 50px;
|
|
|
|
|
border-radius: 3px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.crp-entry--info span {
|
|
|
|
|
color: grey;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.crp-entry--info a {
|
|
|
|
|
font-weight: 900;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.crp-entry--message.unread {
|
2022-05-31 17:39:52 +03:00
|
|
|
|
padding: 3px;
|
|
|
|
|
width: 395px;
|
|
|
|
|
background: #e6e6e6;
|
|
|
|
|
border-radius: 3px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.messenger-app--messages---message.unread {
|
|
|
|
|
background-color: #ededed;
|
|
|
|
|
padding-bottom: 1.2rem;
|
|
|
|
|
margin-bottom: 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.messenger-app--messages---message.unread:first-of-type {
|
|
|
|
|
border-top-left-radius: 3px;
|
|
|
|
|
border-top-right-radius: 3px;
|
|
|
|
|
padding-bottom: 5px;
|
|
|
|
|
margin-bottom: 1.2rem;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.messenger-app--messages---message.unread:last-of-type {
|
|
|
|
|
padding-bottom: 5px;
|
|
|
|
|
margin-bottom: 1.2rem;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.crp-entry--message---av img {
|
2022-05-31 17:39:52 +03:00
|
|
|
|
max-width: 32px;
|
|
|
|
|
border-radius: 3px;
|
|
|
|
|
margin-top: 20%;
|
|
|
|
|
margin-left: 10%;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.crp-entry--message---av,
|
|
|
|
|
.crp-entry--message---text {
|
|
|
|
|
display: inline-block;
|
|
|
|
|
vertical-align: top;
|
2022-05-31 17:39:52 +03:00
|
|
|
|
max-width: 50px;
|
|
|
|
|
border-radius: 3px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.crp-entry--message---text {
|
2022-05-31 17:39:52 +03:00
|
|
|
|
max-height: 40px;
|
|
|
|
|
max-width: 310px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
overflow: hidden;
|
|
|
|
|
text-overflow: ellipsis;
|
2022-05-31 17:39:52 +03:00
|
|
|
|
/* white-space: nowrap; */ /* myslivets: а как........... */
|
|
|
|
|
margin-left: 3%;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.crp-entry--message---text,
|
|
|
|
|
.messenger-app--messages---message .time {
|
|
|
|
|
color: #404036;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.messenger-app--input {
|
2022-05-31 17:39:52 +03:00
|
|
|
|
padding: 10px 60px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.messenger-app--messages {
|
2023-06-22 15:56:53 +03:00
|
|
|
|
height: 570px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
overflow-y: auto;
|
2022-05-31 17:39:52 +03:00
|
|
|
|
padding: 10px 60px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.messenger-app--messages---message,
|
|
|
|
|
.messenger-app--input {
|
|
|
|
|
display: flex;
|
|
|
|
|
align-items: flex-start;
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.messenger-app--messages---message {
|
2022-05-31 17:39:52 +03:00
|
|
|
|
margin-bottom: 3px;
|
|
|
|
|
padding: 10px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.messenger-app--input>.ava {
|
|
|
|
|
width: 52px;
|
|
|
|
|
height: 52px;
|
2022-05-31 17:39:52 +03:00
|
|
|
|
object-fit: cover;
|
|
|
|
|
border-radius: 3px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.messenger-app--messages---message .ava {
|
|
|
|
|
width: 37px;
|
|
|
|
|
height: 37px;
|
|
|
|
|
object-fit: cover;
|
|
|
|
|
border-radius: 3px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.messenger-app--messages---message ._content {
|
2022-05-31 17:39:52 +03:00
|
|
|
|
width: 310px;
|
|
|
|
|
line-height: 13.2pt;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
2022-05-31 17:39:52 +03:00
|
|
|
|
|
|
|
|
|
|
2022-02-19 12:32:30 +03:00
|
|
|
|
.messenger-app--messages---message ._content span,
|
|
|
|
|
.messenger-app--messages---message ._content>a {
|
|
|
|
|
display: block;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.messenger-app--messages---message ._content span {
|
|
|
|
|
width: 100%;
|
|
|
|
|
height: fit-content;
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.messenger-app--messages---message ._content .attachments {
|
|
|
|
|
width: 100%;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.messenger-app--messages---message ._content .attachments>.msg-attach-j * {
|
|
|
|
|
max-width: 86%;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.messenger-app--messages---message ._content .attachments:not(:empty) {
|
|
|
|
|
margin-top: 15px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.messenger-app--messages---message .time {
|
|
|
|
|
width: 100px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.messenger-app--input {
|
|
|
|
|
background-color: #f9f9f9;
|
|
|
|
|
height: 80px !important;
|
|
|
|
|
border-top: 1px solid #d6d6d6;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.messenger-app--input---messagebox {
|
|
|
|
|
box-sizing: border-box;
|
|
|
|
|
padding: 0 10px;
|
|
|
|
|
width: calc(100% - 128px);
|
2022-04-17 13:16:34 +03:00
|
|
|
|
float: right;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.messenger-app--input---messagebox textarea {
|
|
|
|
|
width: 100%;
|
|
|
|
|
height: 50px !important;
|
|
|
|
|
resize: none;
|
|
|
|
|
margin-bottom: 8px !important;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.messenger-app--input .blocked {
|
|
|
|
|
width: 100%;
|
|
|
|
|
height: 100%;
|
|
|
|
|
position: relative;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.messenger-app--input .blocked::after {
|
|
|
|
|
content: attr(data-localized-text);
|
|
|
|
|
position: absolute;
|
|
|
|
|
top: 50%;
|
|
|
|
|
left: 50%;
|
|
|
|
|
margin-right: -50%;
|
|
|
|
|
transform: translate(-50%, -50%);
|
|
|
|
|
font-weight: 900;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.messenger-app {
|
|
|
|
|
width: 628px;
|
|
|
|
|
border-right: 1px solid #d5dde6;
|
|
|
|
|
border-left: 1px solid #d5dde6;
|
|
|
|
|
margin-left: 1px;
|
|
|
|
|
border-bottom: 1px solid #c3cad2;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.settings_delete {
|
|
|
|
|
margin: -12px;
|
|
|
|
|
padding: 12px;
|
|
|
|
|
margin-top: -8px;
|
|
|
|
|
background: #fff;
|
|
|
|
|
text-align: center;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
textarea {
|
|
|
|
|
font-family: unset;
|
|
|
|
|
border: 1px solid #C0CAD5;
|
|
|
|
|
font-size: 9pt;
|
|
|
|
|
min-height: 24px;
|
|
|
|
|
width: 100%;
|
|
|
|
|
padding: 4px;
|
|
|
|
|
resize: none;
|
|
|
|
|
box-sizing: border-box;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#faqhead {
|
|
|
|
|
background: #fbf3c3;
|
2022-04-17 13:16:34 +03:00
|
|
|
|
margin: 0 5px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
padding: 5px;
|
|
|
|
|
font-weight: bold;
|
|
|
|
|
border: 1px solid #d7cf9e;
|
2022-04-17 13:16:34 +03:00
|
|
|
|
border-bottom: 0;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#faqcontent {
|
|
|
|
|
background: #fafafa;
|
2022-04-17 13:16:34 +03:00
|
|
|
|
margin: 0 5px 10px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
padding: 5px 5px 5px 10px;
|
|
|
|
|
border: 1px solid #ddd;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.ovk-lw-container {
|
|
|
|
|
display: flex;
|
|
|
|
|
border-bottom: solid 1px #c4c4c4;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.ovk-lw-container>.ovk-lw--list {
|
|
|
|
|
flex: 9;
|
|
|
|
|
border-right: 1px solid #BEBEBE;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.ovk-lw-container>.ovk-lw--list>.post {
|
|
|
|
|
margin-left: 10px;
|
|
|
|
|
margin-top: 10px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.ovk-lw-container>.ovk-lw--actions {
|
|
|
|
|
flex: 5;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.ovk-lw-container>.ovk-lw--actions>.tile {
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
padding: 10px 5px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.ovk-lw-container>.ovk-lw--actions>.tile>.profile_link {
|
|
|
|
|
width: auto !important;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.ovk-lw-container>.ovk-lw--actions>hr {
|
|
|
|
|
margin: 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.profile-hints a {
|
|
|
|
|
display: block;
|
|
|
|
|
margin-bottom: 2px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.profile-hints a img {
|
|
|
|
|
vertical-align: bottom;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.completeness-gauge {
|
|
|
|
|
position: relative;
|
|
|
|
|
width: 95%;
|
|
|
|
|
height: 16px;
|
|
|
|
|
background-color: #e6e6e6;
|
|
|
|
|
border-top: 1px solid #bbb;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.completeness-gauge>div {
|
|
|
|
|
height: 100%;
|
|
|
|
|
background-color: #d4d4d4;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.completeness-gauge>span {
|
|
|
|
|
position: absolute;
|
|
|
|
|
top: 55%;
|
|
|
|
|
left: 50%;
|
|
|
|
|
margin-right: -50%;
|
|
|
|
|
transform: translate(-50%, -50%);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.completeness-gauge-gold {
|
|
|
|
|
background-color: #f6ebbb;
|
|
|
|
|
border-top: 1px solid #b9b597;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.completeness-gauge-gold>div {
|
|
|
|
|
background-color: #e1d7a2;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.toTop {
|
|
|
|
|
position: fixed;
|
|
|
|
|
padding: 20px;
|
|
|
|
|
width: 100px;
|
|
|
|
|
height: 100%;
|
|
|
|
|
background-color: #f3f3f3;
|
|
|
|
|
font-weight: 900;
|
|
|
|
|
color: #2b2b2b;
|
|
|
|
|
box-sizing: border-box;
|
|
|
|
|
opacity: 0;
|
|
|
|
|
transition: .1s all;
|
2023-07-06 13:20:49 +03:00
|
|
|
|
z-index: 129;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
body.scrolled .toTop:hover {
|
|
|
|
|
opacity: .5;
|
|
|
|
|
cursor: pointer;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.ugc-table.slim {
|
|
|
|
|
width: 100%;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.ugc-table tr>td {
|
|
|
|
|
word-break: break-word;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.ugc-table tr>td:nth-of-type(1) {
|
|
|
|
|
width: 120px;
|
|
|
|
|
vertical-align: super;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.ugc-table.slim tr>td:nth-of-type(1) {
|
|
|
|
|
width: unset;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.ugc-table.slim tr>td:nth-of-type(2) {
|
|
|
|
|
width: 75%;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#sudo-banner {
|
|
|
|
|
background: #fffae6;
|
|
|
|
|
border-color: #fffae6;
|
|
|
|
|
color: #172b4d;
|
|
|
|
|
padding: 8px;
|
|
|
|
|
text-align: center;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#sudo-banner p {
|
|
|
|
|
margin: 0;
|
|
|
|
|
font-size: 15px;
|
|
|
|
|
}
|
|
|
|
|
|
2022-04-09 08:54:24 +03:00
|
|
|
|
#test-label {
|
|
|
|
|
padding: 8pt;
|
|
|
|
|
margin: 4pt;
|
|
|
|
|
border: 1px solid #9a205e;
|
|
|
|
|
background-color: #f5e9ec;
|
|
|
|
|
position: fixed;
|
|
|
|
|
font-weight: bold;
|
|
|
|
|
}
|
|
|
|
|
|
2023-07-05 14:54:58 +03:00
|
|
|
|
.post-upload, .post-has-poll, .post-has-note {
|
2022-02-19 12:32:30 +03:00
|
|
|
|
margin-top: 11px;
|
|
|
|
|
margin-left: 3px;
|
|
|
|
|
color: #3c3c3c;
|
|
|
|
|
display: none;
|
|
|
|
|
}
|
|
|
|
|
|
Music, finally! (#512)
* Add audio upload feature
* Add audio embed thing
* Move bullet.gif to ovk
* Draft some music API methods
* Add support for base64 ids to Audios.getById
* Disallow having more than 65k audios in playlist
* Add playlist model
* Draft some playlist-related API methods
* Fix behabiour of album-related methods
Generators f***** me in le a**
* Add IDv3 autofill
* Add sql dumps
i forgor to upload it xdddd
* Add playlists sql
* Fix audio upload not working on Windows 11 because Windows is the worst operating system which doesn't work properly under any circumstances
* Fix cocksex in audio.get
yes
* Интерфейсы
* Interface updade
* Update en.strings
* Add audio queue
* Make repeat button work
* Some improvements to audio queue
* Фгвшщ йгугу шьзкщмуьутеы
* Make shuffle and "наушники" buttons work, add f...
avicons when playing audio, save some values (like volume and last played track) to localstorage, add ability to toggle time type in player, fix uploading audios with cover (maybe) and add dragndrop to upload page
* Add funny tip with time when hover track div
* Add something
* Add audios picker & move track in smal player вниз
* Summary (required)
Description
* [WIP] Add calls, stories and clips.
Изменены фавиконки (поменьше стали)
У миниплеера ползунок теперь в стиле bsdn и большого плеера, добавлен ползунок громкости
Добавлена кнопка добавления аудио в группу (у миниплеера)
Если вы смотрите аудио группы, которой можете управлять, появляется кнопка "удалить аудио из группы"
Снизу плейлиста в списке теперь показывается автор.
При прикреплении аудиозаписей к посту теперь есть поиск "по композиции" и "по исполнителю"
Добавил explicit.svg, который я забыл добавить в предыдущем коммите.
Вкладочки немного переделаны
При наведении на кнопки "трек вперёд" или "трек назад" показывается название предыдущего или следующего трека соответственно
* 1 new commit to master: [WIP]: Add audios
- Теперь группа может разрешать загружать всем треки в неё
- Теперь треки загружаются на сервер ajax'ом, и так можно очень много аудио загружать
- Вёрстка списка плейлистов изменена, теперь она на гридах
- Немного изменено апи, теперь метод editAlbum сохраняет новую информацию ee объект плейлистов теперь возвращают реальное время
- Удалены лишние пути из routes.yml
- При переключении страниц теперь если на текущей странице есть играющий трек, он нормально подсвечивается
- Из init-db.sql удалены таблицы аудиозаписей
- В Groups.getSettings и groups.edit теперь есть информация о аудиозаписях
* (смешное название коммита)
- Теперь на странице пользователя/группы показываются три случайные песни, а не первые три как раньше
- Теперь пробел на странице аудио не перемещает вас в низ страницы
- Оптимизирован мини-плеер, теперь он инициализируется при любом нажатии на него, а не при наведении
- Теперь при завершении проигрывания трека в мини-плеере он ищет другой трек рядом, и если находит то воспроизводит. Будет удобно для постов с подборками треков
- Поиск теперь показывает 14 результатов
- Теперь при возникновении ошибки загрузки аудио она нормально отображается
- Вместе с плеером на странице с аудиозаписями теперь двигаются и вкладки
- Добавление аудио в группу по идее должно нормально работать
* Implement playlists listens
- У плейлистов теперь есть прослушивания в общем.
- Прослушивания у большого плеера теперь засчитываются, если трек был дослушан до конца
- В объекте плейлистов теперь возвращается listens и cover_url
- Получение плееров через /audios/context переписано, повторяющийся код удалён, правда сильно количество строк сократить не получилось
- Теперь цвета плеера темнее, а иконка проигрывания изменена
- Теперь, если очередь из треков кончилась, то плеер перенаправляет вас в начало очереди.
* php 8.2 fixxxxxxxxxxxxxxxxxxxxxxx
* Implement audiostatuses
Добавлены аудиостатусы (у пользователей), блок с друзьями, слушающих музыку на странице аудиозаписей, объект status_audio в users.get, улучшены настройки приватности и ещё что-то
* ?
- Переделан метод в классе user для получения друзей с проигрываемыми песнями. Теперь среди них могут появляться и группы (хз стоит ли оставлять это или нет). Так же больше не показываются удалённые пользователи
- Трек у плеера теперь двигается немного плавнее. Ещё теперь нету смешных багов с подсказкой времени, когда можно было увести её за экран или промотать дальше трека. Переключить повторение трека теперь можно нажатием кнопки R.
- Длинное название трека больше не сносит время
- Наверное, теперь аудиозаписи нормально отображаются в темах midnight и modern
- Аудиозаписи больше не крашаются, если пользователь неавторизован.
- Немного переделан миниплеер.
- В миниплеере теперь громкость берётся из локалсторейджа.
- Улучшено редактирование аудиозаписей. Теперь данные в дата атрибуты нормально сохраняются, а так же слова песни и метка "explicit" меняются
- Удалён css, оставшийся ещё от public technical preview 1, а так же путь /audios{num}
- При наведении на трек теперь пропадает время, и на его месте появляются кнопки
- Стандартная аватарка в midnight теперь инвертируется
- В админке в редактировании аудио теперь показывается дата редактирования, дата создания, длина и оригинальный файл аудио. Так же на странице редактирования больше нет вылетов, если вы задали несуществующий аккаунт
* !
- Добавлены строки для мобильной темы
- Добавлено предупреждение перед полным удалением плейлиста
- Нажатие кнопки M = нажатие кнопки наушников
- В классе апи Audio поставлены willExecuteWriteAction, ещё теперь нельзя получить число аудиозаписей у пользователей, которые их закрыли. Ещё теперь нельзя получать uploaded_only аудиозаписи у тех ну вы поняли короче.
- При наведении на длинное название песни оно теперь показывается полностью
- Надо ещё что-то сюда написать, так что: При редактировании аудиозаписи название окна теперь не "Редактировать", а "Редактировать аудиозапись", а вместо кнопки OK кнопка "Сохранить"
* .
- Добавлен тур по аудиозаписям, но пока без скриншотов.
- "Мои Аудиозаписи" в меню теперь располагаются под Моими Видеозаписями для канона
- В настройках приватности "кто может видеть мои аудиозаписи" теперь располагаются под "кто может видеть мои видеозаписи"
- В настройках внешнего вида мои аудиозаписи тоже под видео
- Изменён <title> на странице аудиозаписей. Теперь показывается "Аудиозаписи" + имя пользователя в родительном падеже. А если это группа, то "Аудиозаписи группы". То же самое с плейлистами
- Исправлены ссылка в ссылке на странице с плейлистами
- При наведении на название песни больше не сносится иконка explicit
- Добавлена максимальная длина названия и описания плейлиста при редактировании.
* М
- Долокализована админка (точно помню, что уже делал это, но ладно)
- Удалён лишний пункт "audios" в getLeftMenuItemStatus (реально)
- Если. У плеера есть параметр "hideButtons", то при наведении на него не пропадает время.
- На странице редактирования/создания плейлиста если у песни длинное название, то оно да похуй короче. Ну в общем лучше стало
- Там где нужно, добавлена строка в конце файла
- Возвращена строка "photo" в английской локали (я её случайно удалил :+1: )
* у
- У изъятых аудиозаписей больше не показывается кнопка "добавить в группу". Так же при нажатии на кнопку удаления из коллекции окно не всплывает.
- "Удаление аудио из группы" тоже лучше работать стало с изъятыми аудио.
* з
- В пикере аудиозаписей "more..." заменено на "показать больше аудиозаписей"
- Если включен режим показа оставшегося времени, то при окончании песни больше не показывается "--1:--1"
- В пикере аудиозаписей, если у вас нет аудиозаписей и вы ничего не искали, показывается "Вы ещё не добавляли аудиозаписей"
- <hr>'ы стали серыми
- Добавлены title'ы у кнопок в большом плеере
- Проставлены alt'ы у плейлистов
* Musique: linux saport)
назар хуйню релизнул кста, плейерс клаб два не слушайте не рекомендую
* Update and rename gamma-00000-disco.sql to 00041-music.sql
* Update 00041-music.sql
---------
Co-authored-by: Ilya Prokopenko <dsrev@protonmail.com>
Co-authored-by: n1rwana <aydashkin@vk.com>
Co-authored-by: lalka2018 <99399973+lalka2016@users.noreply.github.com>
Co-authored-by: veselcraft <veselcraft@icloud.com>
Co-authored-by: DeathPleiad <43928323+Parad1seF0x@users.noreply.github.com>
2023-11-12 00:41:07 +03:00
|
|
|
|
.post-has-videos, .post-has-audios {
|
2023-09-17 19:19:25 +03:00
|
|
|
|
margin-top: 11px;
|
|
|
|
|
margin-left: 3px;
|
|
|
|
|
color: #3c3c3c;
|
|
|
|
|
}
|
|
|
|
|
|
2024-11-01 14:46:41 +03:00
|
|
|
|
.post-source #remove_source_button {
|
|
|
|
|
display: inline-block;
|
|
|
|
|
background-repeat: no-repeat;
|
|
|
|
|
background: url('/assets/packages/static/openvk/img/arrows.png?v=2');
|
|
|
|
|
|
|
|
|
|
margin-bottom: -2px;
|
|
|
|
|
background-position: -18px 0px;
|
|
|
|
|
height: 11px;
|
|
|
|
|
width: 11px;
|
|
|
|
|
opacity: 0.6;
|
|
|
|
|
transition-duration: 0.3s;
|
|
|
|
|
cursor: pointer;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.post-source #remove_source_button:hover {
|
|
|
|
|
opacity: 0.8;
|
|
|
|
|
}
|
|
|
|
|
|
2023-07-05 14:54:58 +03:00
|
|
|
|
.post-upload::before, .post-has-poll::before, .post-has-note::before {
|
2022-02-19 12:32:30 +03:00
|
|
|
|
content: " ";
|
|
|
|
|
width: 8px;
|
|
|
|
|
height: 8px;
|
|
|
|
|
display: inline-block;
|
|
|
|
|
vertical-align: bottom;
|
|
|
|
|
background-color: #4f4f4f;
|
|
|
|
|
margin: 3px;
|
|
|
|
|
margin-left: 2px;
|
|
|
|
|
}
|
|
|
|
|
|
Music, finally! (#512)
* Add audio upload feature
* Add audio embed thing
* Move bullet.gif to ovk
* Draft some music API methods
* Add support for base64 ids to Audios.getById
* Disallow having more than 65k audios in playlist
* Add playlist model
* Draft some playlist-related API methods
* Fix behabiour of album-related methods
Generators f***** me in le a**
* Add IDv3 autofill
* Add sql dumps
i forgor to upload it xdddd
* Add playlists sql
* Fix audio upload not working on Windows 11 because Windows is the worst operating system which doesn't work properly under any circumstances
* Fix cocksex in audio.get
yes
* Интерфейсы
* Interface updade
* Update en.strings
* Add audio queue
* Make repeat button work
* Some improvements to audio queue
* Фгвшщ йгугу шьзкщмуьутеы
* Make shuffle and "наушники" buttons work, add f...
avicons when playing audio, save some values (like volume and last played track) to localstorage, add ability to toggle time type in player, fix uploading audios with cover (maybe) and add dragndrop to upload page
* Add funny tip with time when hover track div
* Add something
* Add audios picker & move track in smal player вниз
* Summary (required)
Description
* [WIP] Add calls, stories and clips.
Изменены фавиконки (поменьше стали)
У миниплеера ползунок теперь в стиле bsdn и большого плеера, добавлен ползунок громкости
Добавлена кнопка добавления аудио в группу (у миниплеера)
Если вы смотрите аудио группы, которой можете управлять, появляется кнопка "удалить аудио из группы"
Снизу плейлиста в списке теперь показывается автор.
При прикреплении аудиозаписей к посту теперь есть поиск "по композиции" и "по исполнителю"
Добавил explicit.svg, который я забыл добавить в предыдущем коммите.
Вкладочки немного переделаны
При наведении на кнопки "трек вперёд" или "трек назад" показывается название предыдущего или следующего трека соответственно
* 1 new commit to master: [WIP]: Add audios
- Теперь группа может разрешать загружать всем треки в неё
- Теперь треки загружаются на сервер ajax'ом, и так можно очень много аудио загружать
- Вёрстка списка плейлистов изменена, теперь она на гридах
- Немного изменено апи, теперь метод editAlbum сохраняет новую информацию ee объект плейлистов теперь возвращают реальное время
- Удалены лишние пути из routes.yml
- При переключении страниц теперь если на текущей странице есть играющий трек, он нормально подсвечивается
- Из init-db.sql удалены таблицы аудиозаписей
- В Groups.getSettings и groups.edit теперь есть информация о аудиозаписях
* (смешное название коммита)
- Теперь на странице пользователя/группы показываются три случайные песни, а не первые три как раньше
- Теперь пробел на странице аудио не перемещает вас в низ страницы
- Оптимизирован мини-плеер, теперь он инициализируется при любом нажатии на него, а не при наведении
- Теперь при завершении проигрывания трека в мини-плеере он ищет другой трек рядом, и если находит то воспроизводит. Будет удобно для постов с подборками треков
- Поиск теперь показывает 14 результатов
- Теперь при возникновении ошибки загрузки аудио она нормально отображается
- Вместе с плеером на странице с аудиозаписями теперь двигаются и вкладки
- Добавление аудио в группу по идее должно нормально работать
* Implement playlists listens
- У плейлистов теперь есть прослушивания в общем.
- Прослушивания у большого плеера теперь засчитываются, если трек был дослушан до конца
- В объекте плейлистов теперь возвращается listens и cover_url
- Получение плееров через /audios/context переписано, повторяющийся код удалён, правда сильно количество строк сократить не получилось
- Теперь цвета плеера темнее, а иконка проигрывания изменена
- Теперь, если очередь из треков кончилась, то плеер перенаправляет вас в начало очереди.
* php 8.2 fixxxxxxxxxxxxxxxxxxxxxxx
* Implement audiostatuses
Добавлены аудиостатусы (у пользователей), блок с друзьями, слушающих музыку на странице аудиозаписей, объект status_audio в users.get, улучшены настройки приватности и ещё что-то
* ?
- Переделан метод в классе user для получения друзей с проигрываемыми песнями. Теперь среди них могут появляться и группы (хз стоит ли оставлять это или нет). Так же больше не показываются удалённые пользователи
- Трек у плеера теперь двигается немного плавнее. Ещё теперь нету смешных багов с подсказкой времени, когда можно было увести её за экран или промотать дальше трека. Переключить повторение трека теперь можно нажатием кнопки R.
- Длинное название трека больше не сносит время
- Наверное, теперь аудиозаписи нормально отображаются в темах midnight и modern
- Аудиозаписи больше не крашаются, если пользователь неавторизован.
- Немного переделан миниплеер.
- В миниплеере теперь громкость берётся из локалсторейджа.
- Улучшено редактирование аудиозаписей. Теперь данные в дата атрибуты нормально сохраняются, а так же слова песни и метка "explicit" меняются
- Удалён css, оставшийся ещё от public technical preview 1, а так же путь /audios{num}
- При наведении на трек теперь пропадает время, и на его месте появляются кнопки
- Стандартная аватарка в midnight теперь инвертируется
- В админке в редактировании аудио теперь показывается дата редактирования, дата создания, длина и оригинальный файл аудио. Так же на странице редактирования больше нет вылетов, если вы задали несуществующий аккаунт
* !
- Добавлены строки для мобильной темы
- Добавлено предупреждение перед полным удалением плейлиста
- Нажатие кнопки M = нажатие кнопки наушников
- В классе апи Audio поставлены willExecuteWriteAction, ещё теперь нельзя получить число аудиозаписей у пользователей, которые их закрыли. Ещё теперь нельзя получать uploaded_only аудиозаписи у тех ну вы поняли короче.
- При наведении на длинное название песни оно теперь показывается полностью
- Надо ещё что-то сюда написать, так что: При редактировании аудиозаписи название окна теперь не "Редактировать", а "Редактировать аудиозапись", а вместо кнопки OK кнопка "Сохранить"
* .
- Добавлен тур по аудиозаписям, но пока без скриншотов.
- "Мои Аудиозаписи" в меню теперь располагаются под Моими Видеозаписями для канона
- В настройках приватности "кто может видеть мои аудиозаписи" теперь располагаются под "кто может видеть мои видеозаписи"
- В настройках внешнего вида мои аудиозаписи тоже под видео
- Изменён <title> на странице аудиозаписей. Теперь показывается "Аудиозаписи" + имя пользователя в родительном падеже. А если это группа, то "Аудиозаписи группы". То же самое с плейлистами
- Исправлены ссылка в ссылке на странице с плейлистами
- При наведении на название песни больше не сносится иконка explicit
- Добавлена максимальная длина названия и описания плейлиста при редактировании.
* М
- Долокализована админка (точно помню, что уже делал это, но ладно)
- Удалён лишний пункт "audios" в getLeftMenuItemStatus (реально)
- Если. У плеера есть параметр "hideButtons", то при наведении на него не пропадает время.
- На странице редактирования/создания плейлиста если у песни длинное название, то оно да похуй короче. Ну в общем лучше стало
- Там где нужно, добавлена строка в конце файла
- Возвращена строка "photo" в английской локали (я её случайно удалил :+1: )
* у
- У изъятых аудиозаписей больше не показывается кнопка "добавить в группу". Так же при нажатии на кнопку удаления из коллекции окно не всплывает.
- "Удаление аудио из группы" тоже лучше работать стало с изъятыми аудио.
* з
- В пикере аудиозаписей "more..." заменено на "показать больше аудиозаписей"
- Если включен режим показа оставшегося времени, то при окончании песни больше не показывается "--1:--1"
- В пикере аудиозаписей, если у вас нет аудиозаписей и вы ничего не искали, показывается "Вы ещё не добавляли аудиозаписей"
- <hr>'ы стали серыми
- Добавлены title'ы у кнопок в большом плеере
- Проставлены alt'ы у плейлистов
* Musique: linux saport)
назар хуйню релизнул кста, плейерс клаб два не слушайте не рекомендую
* Update and rename gamma-00000-disco.sql to 00041-music.sql
* Update 00041-music.sql
---------
Co-authored-by: Ilya Prokopenko <dsrev@protonmail.com>
Co-authored-by: n1rwana <aydashkin@vk.com>
Co-authored-by: lalka2018 <99399973+lalka2016@users.noreply.github.com>
Co-authored-by: veselcraft <veselcraft@icloud.com>
Co-authored-by: DeathPleiad <43928323+Parad1seF0x@users.noreply.github.com>
2023-11-12 00:41:07 +03:00
|
|
|
|
.post-has-video, .post-has-audio {
|
2023-09-17 19:19:25 +03:00
|
|
|
|
padding-bottom: 4px;
|
|
|
|
|
cursor: pointer;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.post-has-video:hover span {
|
|
|
|
|
text-decoration: underline;
|
|
|
|
|
}
|
|
|
|
|
|
Music, finally! (#512)
* Add audio upload feature
* Add audio embed thing
* Move bullet.gif to ovk
* Draft some music API methods
* Add support for base64 ids to Audios.getById
* Disallow having more than 65k audios in playlist
* Add playlist model
* Draft some playlist-related API methods
* Fix behabiour of album-related methods
Generators f***** me in le a**
* Add IDv3 autofill
* Add sql dumps
i forgor to upload it xdddd
* Add playlists sql
* Fix audio upload not working on Windows 11 because Windows is the worst operating system which doesn't work properly under any circumstances
* Fix cocksex in audio.get
yes
* Интерфейсы
* Interface updade
* Update en.strings
* Add audio queue
* Make repeat button work
* Some improvements to audio queue
* Фгвшщ йгугу шьзкщмуьутеы
* Make shuffle and "наушники" buttons work, add f...
avicons when playing audio, save some values (like volume and last played track) to localstorage, add ability to toggle time type in player, fix uploading audios with cover (maybe) and add dragndrop to upload page
* Add funny tip with time when hover track div
* Add something
* Add audios picker & move track in smal player вниз
* Summary (required)
Description
* [WIP] Add calls, stories and clips.
Изменены фавиконки (поменьше стали)
У миниплеера ползунок теперь в стиле bsdn и большого плеера, добавлен ползунок громкости
Добавлена кнопка добавления аудио в группу (у миниплеера)
Если вы смотрите аудио группы, которой можете управлять, появляется кнопка "удалить аудио из группы"
Снизу плейлиста в списке теперь показывается автор.
При прикреплении аудиозаписей к посту теперь есть поиск "по композиции" и "по исполнителю"
Добавил explicit.svg, который я забыл добавить в предыдущем коммите.
Вкладочки немного переделаны
При наведении на кнопки "трек вперёд" или "трек назад" показывается название предыдущего или следующего трека соответственно
* 1 new commit to master: [WIP]: Add audios
- Теперь группа может разрешать загружать всем треки в неё
- Теперь треки загружаются на сервер ajax'ом, и так можно очень много аудио загружать
- Вёрстка списка плейлистов изменена, теперь она на гридах
- Немного изменено апи, теперь метод editAlbum сохраняет новую информацию ee объект плейлистов теперь возвращают реальное время
- Удалены лишние пути из routes.yml
- При переключении страниц теперь если на текущей странице есть играющий трек, он нормально подсвечивается
- Из init-db.sql удалены таблицы аудиозаписей
- В Groups.getSettings и groups.edit теперь есть информация о аудиозаписях
* (смешное название коммита)
- Теперь на странице пользователя/группы показываются три случайные песни, а не первые три как раньше
- Теперь пробел на странице аудио не перемещает вас в низ страницы
- Оптимизирован мини-плеер, теперь он инициализируется при любом нажатии на него, а не при наведении
- Теперь при завершении проигрывания трека в мини-плеере он ищет другой трек рядом, и если находит то воспроизводит. Будет удобно для постов с подборками треков
- Поиск теперь показывает 14 результатов
- Теперь при возникновении ошибки загрузки аудио она нормально отображается
- Вместе с плеером на странице с аудиозаписями теперь двигаются и вкладки
- Добавление аудио в группу по идее должно нормально работать
* Implement playlists listens
- У плейлистов теперь есть прослушивания в общем.
- Прослушивания у большого плеера теперь засчитываются, если трек был дослушан до конца
- В объекте плейлистов теперь возвращается listens и cover_url
- Получение плееров через /audios/context переписано, повторяющийся код удалён, правда сильно количество строк сократить не получилось
- Теперь цвета плеера темнее, а иконка проигрывания изменена
- Теперь, если очередь из треков кончилась, то плеер перенаправляет вас в начало очереди.
* php 8.2 fixxxxxxxxxxxxxxxxxxxxxxx
* Implement audiostatuses
Добавлены аудиостатусы (у пользователей), блок с друзьями, слушающих музыку на странице аудиозаписей, объект status_audio в users.get, улучшены настройки приватности и ещё что-то
* ?
- Переделан метод в классе user для получения друзей с проигрываемыми песнями. Теперь среди них могут появляться и группы (хз стоит ли оставлять это или нет). Так же больше не показываются удалённые пользователи
- Трек у плеера теперь двигается немного плавнее. Ещё теперь нету смешных багов с подсказкой времени, когда можно было увести её за экран или промотать дальше трека. Переключить повторение трека теперь можно нажатием кнопки R.
- Длинное название трека больше не сносит время
- Наверное, теперь аудиозаписи нормально отображаются в темах midnight и modern
- Аудиозаписи больше не крашаются, если пользователь неавторизован.
- Немного переделан миниплеер.
- В миниплеере теперь громкость берётся из локалсторейджа.
- Улучшено редактирование аудиозаписей. Теперь данные в дата атрибуты нормально сохраняются, а так же слова песни и метка "explicit" меняются
- Удалён css, оставшийся ещё от public technical preview 1, а так же путь /audios{num}
- При наведении на трек теперь пропадает время, и на его месте появляются кнопки
- Стандартная аватарка в midnight теперь инвертируется
- В админке в редактировании аудио теперь показывается дата редактирования, дата создания, длина и оригинальный файл аудио. Так же на странице редактирования больше нет вылетов, если вы задали несуществующий аккаунт
* !
- Добавлены строки для мобильной темы
- Добавлено предупреждение перед полным удалением плейлиста
- Нажатие кнопки M = нажатие кнопки наушников
- В классе апи Audio поставлены willExecuteWriteAction, ещё теперь нельзя получить число аудиозаписей у пользователей, которые их закрыли. Ещё теперь нельзя получать uploaded_only аудиозаписи у тех ну вы поняли короче.
- При наведении на длинное название песни оно теперь показывается полностью
- Надо ещё что-то сюда написать, так что: При редактировании аудиозаписи название окна теперь не "Редактировать", а "Редактировать аудиозапись", а вместо кнопки OK кнопка "Сохранить"
* .
- Добавлен тур по аудиозаписям, но пока без скриншотов.
- "Мои Аудиозаписи" в меню теперь располагаются под Моими Видеозаписями для канона
- В настройках приватности "кто может видеть мои аудиозаписи" теперь располагаются под "кто может видеть мои видеозаписи"
- В настройках внешнего вида мои аудиозаписи тоже под видео
- Изменён <title> на странице аудиозаписей. Теперь показывается "Аудиозаписи" + имя пользователя в родительном падеже. А если это группа, то "Аудиозаписи группы". То же самое с плейлистами
- Исправлены ссылка в ссылке на странице с плейлистами
- При наведении на название песни больше не сносится иконка explicit
- Добавлена максимальная длина названия и описания плейлиста при редактировании.
* М
- Долокализована админка (точно помню, что уже делал это, но ладно)
- Удалён лишний пункт "audios" в getLeftMenuItemStatus (реально)
- Если. У плеера есть параметр "hideButtons", то при наведении на него не пропадает время.
- На странице редактирования/создания плейлиста если у песни длинное название, то оно да похуй короче. Ну в общем лучше стало
- Там где нужно, добавлена строка в конце файла
- Возвращена строка "photo" в английской локали (я её случайно удалил :+1: )
* у
- У изъятых аудиозаписей больше не показывается кнопка "добавить в группу". Так же при нажатии на кнопку удаления из коллекции окно не всплывает.
- "Удаление аудио из группы" тоже лучше работать стало с изъятыми аудио.
* з
- В пикере аудиозаписей "more..." заменено на "показать больше аудиозаписей"
- Если включен режим показа оставшегося времени, то при окончании песни больше не показывается "--1:--1"
- В пикере аудиозаписей, если у вас нет аудиозаписей и вы ничего не искали, показывается "Вы ещё не добавляли аудиозаписей"
- <hr>'ы стали серыми
- Добавлены title'ы у кнопок в большом плеере
- Проставлены alt'ы у плейлистов
* Musique: linux saport)
назар хуйню релизнул кста, плейерс клаб два не слушайте не рекомендую
* Update and rename gamma-00000-disco.sql to 00041-music.sql
* Update 00041-music.sql
---------
Co-authored-by: Ilya Prokopenko <dsrev@protonmail.com>
Co-authored-by: n1rwana <aydashkin@vk.com>
Co-authored-by: lalka2018 <99399973+lalka2016@users.noreply.github.com>
Co-authored-by: veselcraft <veselcraft@icloud.com>
Co-authored-by: DeathPleiad <43928323+Parad1seF0x@users.noreply.github.com>
2023-11-12 00:41:07 +03:00
|
|
|
|
.post-has-audio:hover span {
|
|
|
|
|
text-decoration: underline;
|
|
|
|
|
}
|
|
|
|
|
|
2023-09-17 19:19:25 +03:00
|
|
|
|
.post-has-video::before {
|
|
|
|
|
content: " ";
|
|
|
|
|
width: 14px;
|
|
|
|
|
height: 15px;
|
|
|
|
|
display: inline-block;
|
|
|
|
|
vertical-align: bottom;
|
|
|
|
|
background-image: url("/assets/packages/static/openvk/img/video.png");
|
|
|
|
|
background-repeat: no-repeat;
|
|
|
|
|
margin: 3px;
|
|
|
|
|
margin-left: 2px;
|
|
|
|
|
margin-bottom: -1px;
|
|
|
|
|
}
|
|
|
|
|
|
Music, finally! (#512)
* Add audio upload feature
* Add audio embed thing
* Move bullet.gif to ovk
* Draft some music API methods
* Add support for base64 ids to Audios.getById
* Disallow having more than 65k audios in playlist
* Add playlist model
* Draft some playlist-related API methods
* Fix behabiour of album-related methods
Generators f***** me in le a**
* Add IDv3 autofill
* Add sql dumps
i forgor to upload it xdddd
* Add playlists sql
* Fix audio upload not working on Windows 11 because Windows is the worst operating system which doesn't work properly under any circumstances
* Fix cocksex in audio.get
yes
* Интерфейсы
* Interface updade
* Update en.strings
* Add audio queue
* Make repeat button work
* Some improvements to audio queue
* Фгвшщ йгугу шьзкщмуьутеы
* Make shuffle and "наушники" buttons work, add f...
avicons when playing audio, save some values (like volume and last played track) to localstorage, add ability to toggle time type in player, fix uploading audios with cover (maybe) and add dragndrop to upload page
* Add funny tip with time when hover track div
* Add something
* Add audios picker & move track in smal player вниз
* Summary (required)
Description
* [WIP] Add calls, stories and clips.
Изменены фавиконки (поменьше стали)
У миниплеера ползунок теперь в стиле bsdn и большого плеера, добавлен ползунок громкости
Добавлена кнопка добавления аудио в группу (у миниплеера)
Если вы смотрите аудио группы, которой можете управлять, появляется кнопка "удалить аудио из группы"
Снизу плейлиста в списке теперь показывается автор.
При прикреплении аудиозаписей к посту теперь есть поиск "по композиции" и "по исполнителю"
Добавил explicit.svg, который я забыл добавить в предыдущем коммите.
Вкладочки немного переделаны
При наведении на кнопки "трек вперёд" или "трек назад" показывается название предыдущего или следующего трека соответственно
* 1 new commit to master: [WIP]: Add audios
- Теперь группа может разрешать загружать всем треки в неё
- Теперь треки загружаются на сервер ajax'ом, и так можно очень много аудио загружать
- Вёрстка списка плейлистов изменена, теперь она на гридах
- Немного изменено апи, теперь метод editAlbum сохраняет новую информацию ee объект плейлистов теперь возвращают реальное время
- Удалены лишние пути из routes.yml
- При переключении страниц теперь если на текущей странице есть играющий трек, он нормально подсвечивается
- Из init-db.sql удалены таблицы аудиозаписей
- В Groups.getSettings и groups.edit теперь есть информация о аудиозаписях
* (смешное название коммита)
- Теперь на странице пользователя/группы показываются три случайные песни, а не первые три как раньше
- Теперь пробел на странице аудио не перемещает вас в низ страницы
- Оптимизирован мини-плеер, теперь он инициализируется при любом нажатии на него, а не при наведении
- Теперь при завершении проигрывания трека в мини-плеере он ищет другой трек рядом, и если находит то воспроизводит. Будет удобно для постов с подборками треков
- Поиск теперь показывает 14 результатов
- Теперь при возникновении ошибки загрузки аудио она нормально отображается
- Вместе с плеером на странице с аудиозаписями теперь двигаются и вкладки
- Добавление аудио в группу по идее должно нормально работать
* Implement playlists listens
- У плейлистов теперь есть прослушивания в общем.
- Прослушивания у большого плеера теперь засчитываются, если трек был дослушан до конца
- В объекте плейлистов теперь возвращается listens и cover_url
- Получение плееров через /audios/context переписано, повторяющийся код удалён, правда сильно количество строк сократить не получилось
- Теперь цвета плеера темнее, а иконка проигрывания изменена
- Теперь, если очередь из треков кончилась, то плеер перенаправляет вас в начало очереди.
* php 8.2 fixxxxxxxxxxxxxxxxxxxxxxx
* Implement audiostatuses
Добавлены аудиостатусы (у пользователей), блок с друзьями, слушающих музыку на странице аудиозаписей, объект status_audio в users.get, улучшены настройки приватности и ещё что-то
* ?
- Переделан метод в классе user для получения друзей с проигрываемыми песнями. Теперь среди них могут появляться и группы (хз стоит ли оставлять это или нет). Так же больше не показываются удалённые пользователи
- Трек у плеера теперь двигается немного плавнее. Ещё теперь нету смешных багов с подсказкой времени, когда можно было увести её за экран или промотать дальше трека. Переключить повторение трека теперь можно нажатием кнопки R.
- Длинное название трека больше не сносит время
- Наверное, теперь аудиозаписи нормально отображаются в темах midnight и modern
- Аудиозаписи больше не крашаются, если пользователь неавторизован.
- Немного переделан миниплеер.
- В миниплеере теперь громкость берётся из локалсторейджа.
- Улучшено редактирование аудиозаписей. Теперь данные в дата атрибуты нормально сохраняются, а так же слова песни и метка "explicit" меняются
- Удалён css, оставшийся ещё от public technical preview 1, а так же путь /audios{num}
- При наведении на трек теперь пропадает время, и на его месте появляются кнопки
- Стандартная аватарка в midnight теперь инвертируется
- В админке в редактировании аудио теперь показывается дата редактирования, дата создания, длина и оригинальный файл аудио. Так же на странице редактирования больше нет вылетов, если вы задали несуществующий аккаунт
* !
- Добавлены строки для мобильной темы
- Добавлено предупреждение перед полным удалением плейлиста
- Нажатие кнопки M = нажатие кнопки наушников
- В классе апи Audio поставлены willExecuteWriteAction, ещё теперь нельзя получить число аудиозаписей у пользователей, которые их закрыли. Ещё теперь нельзя получать uploaded_only аудиозаписи у тех ну вы поняли короче.
- При наведении на длинное название песни оно теперь показывается полностью
- Надо ещё что-то сюда написать, так что: При редактировании аудиозаписи название окна теперь не "Редактировать", а "Редактировать аудиозапись", а вместо кнопки OK кнопка "Сохранить"
* .
- Добавлен тур по аудиозаписям, но пока без скриншотов.
- "Мои Аудиозаписи" в меню теперь располагаются под Моими Видеозаписями для канона
- В настройках приватности "кто может видеть мои аудиозаписи" теперь располагаются под "кто может видеть мои видеозаписи"
- В настройках внешнего вида мои аудиозаписи тоже под видео
- Изменён <title> на странице аудиозаписей. Теперь показывается "Аудиозаписи" + имя пользователя в родительном падеже. А если это группа, то "Аудиозаписи группы". То же самое с плейлистами
- Исправлены ссылка в ссылке на странице с плейлистами
- При наведении на название песни больше не сносится иконка explicit
- Добавлена максимальная длина названия и описания плейлиста при редактировании.
* М
- Долокализована админка (точно помню, что уже делал это, но ладно)
- Удалён лишний пункт "audios" в getLeftMenuItemStatus (реально)
- Если. У плеера есть параметр "hideButtons", то при наведении на него не пропадает время.
- На странице редактирования/создания плейлиста если у песни длинное название, то оно да похуй короче. Ну в общем лучше стало
- Там где нужно, добавлена строка в конце файла
- Возвращена строка "photo" в английской локали (я её случайно удалил :+1: )
* у
- У изъятых аудиозаписей больше не показывается кнопка "добавить в группу". Так же при нажатии на кнопку удаления из коллекции окно не всплывает.
- "Удаление аудио из группы" тоже лучше работать стало с изъятыми аудио.
* з
- В пикере аудиозаписей "more..." заменено на "показать больше аудиозаписей"
- Если включен режим показа оставшегося времени, то при окончании песни больше не показывается "--1:--1"
- В пикере аудиозаписей, если у вас нет аудиозаписей и вы ничего не искали, показывается "Вы ещё не добавляли аудиозаписей"
- <hr>'ы стали серыми
- Добавлены title'ы у кнопок в большом плеере
- Проставлены alt'ы у плейлистов
* Musique: linux saport)
назар хуйню релизнул кста, плейерс клаб два не слушайте не рекомендую
* Update and rename gamma-00000-disco.sql to 00041-music.sql
* Update 00041-music.sql
---------
Co-authored-by: Ilya Prokopenko <dsrev@protonmail.com>
Co-authored-by: n1rwana <aydashkin@vk.com>
Co-authored-by: lalka2018 <99399973+lalka2016@users.noreply.github.com>
Co-authored-by: veselcraft <veselcraft@icloud.com>
Co-authored-by: DeathPleiad <43928323+Parad1seF0x@users.noreply.github.com>
2023-11-12 00:41:07 +03:00
|
|
|
|
.post-has-audio::before {
|
|
|
|
|
content: " ";
|
|
|
|
|
width: 14px;
|
|
|
|
|
height: 15px;
|
|
|
|
|
display: inline-block;
|
|
|
|
|
vertical-align: bottom;
|
|
|
|
|
background-image: url("/assets/packages/static/openvk/img/audio.png");
|
|
|
|
|
background-repeat: no-repeat;
|
|
|
|
|
margin: 3px;
|
|
|
|
|
margin-left: 2px;
|
|
|
|
|
margin-bottom: -1px;
|
|
|
|
|
}
|
|
|
|
|
|
2022-02-19 12:32:30 +03:00
|
|
|
|
.post-opts {
|
|
|
|
|
margin-top: 10px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.post-opts label {
|
|
|
|
|
width: 100%;
|
|
|
|
|
display: block;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.like_wrap {
|
|
|
|
|
color: #2F5879;
|
|
|
|
|
font-size: 10px;
|
|
|
|
|
cursor: pointer;
|
|
|
|
|
float: right;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.heart {
|
2022-04-17 13:16:34 +03:00
|
|
|
|
background: url('/assets/packages/static/openvk/img/like.gif') no-repeat 1px 0;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
height: 10px;
|
2022-04-17 13:16:34 +03:00
|
|
|
|
margin: 2px 3px 0;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
width: 11px;
|
|
|
|
|
float: left;
|
|
|
|
|
opacity: 0.4;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.likeCnt {
|
|
|
|
|
font-size: 10px;
|
|
|
|
|
margin-right: 3px;
|
|
|
|
|
float: left;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.heart:hover {
|
|
|
|
|
opacity: 1 !important;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#liked {
|
|
|
|
|
opacity: 1 !important;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.page-wrap {
|
|
|
|
|
border-bottom: solid 1px #C3CAD2;
|
|
|
|
|
border-left: solid 1px #DAE1E8;
|
|
|
|
|
border-right: solid 1px #DAE1E8;
|
|
|
|
|
padding: 10px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.ugc-table td {
|
|
|
|
|
vertical-align: top !important;
|
|
|
|
|
font-size: 11px;
|
|
|
|
|
line-height: 13px;
|
2022-04-17 13:16:34 +03:00
|
|
|
|
margin: 0;
|
|
|
|
|
padding: 1px 0;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.label {
|
|
|
|
|
width: 120px !important;
|
|
|
|
|
color: gray;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.ugc-table tr>td:nth-of-type(2) {
|
|
|
|
|
display: block;
|
|
|
|
|
width: unset;
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.right_big_block {
|
|
|
|
|
width: 396px;
|
|
|
|
|
float: right;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#basicInfo {
|
2022-04-17 13:16:34 +03:00
|
|
|
|
padding: 5px 0 15px 8px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.accountInfo {
|
2022-04-17 13:16:34 +03:00
|
|
|
|
padding: 0;
|
|
|
|
|
margin: 0 0 0 8px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
border-bottom: solid 1px #DAE1E8;
|
|
|
|
|
display: block;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.profileName {
|
|
|
|
|
color: #45688E;
|
|
|
|
|
font-size: 11px;
|
|
|
|
|
font-weight: bold;
|
2022-04-17 13:16:34 +03:00
|
|
|
|
margin: 0;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.profileName h2 {
|
|
|
|
|
color: #45688E;
|
|
|
|
|
font-size: 13px;
|
2022-04-17 13:16:34 +03:00
|
|
|
|
margin: 0;
|
|
|
|
|
padding: 0;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.notes_titles {
|
2022-04-17 13:16:34 +03:00
|
|
|
|
margin: 0;
|
|
|
|
|
padding: 0;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
list-style: none;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.written {
|
2022-04-17 13:16:34 +03:00
|
|
|
|
background: url('/assets/packages/static/openvk/img/note.gif') no-repeat 0 1px;
|
|
|
|
|
padding: 0 0 6px 22px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.written a {
|
|
|
|
|
display: block;
|
2022-04-17 13:16:34 +03:00
|
|
|
|
padding: 0 0 1px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.notes_titles small {
|
|
|
|
|
color: #333;
|
|
|
|
|
font-weight: normal;
|
|
|
|
|
display: block;
|
|
|
|
|
font-size: 9px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.notes_titles small a {
|
|
|
|
|
display: inline;
|
|
|
|
|
font-weight: normal;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.data {
|
|
|
|
|
width: 260px !important;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.right_big_block h4 {
|
2022-04-17 13:16:34 +03:00
|
|
|
|
margin: 1px 0 0;
|
|
|
|
|
padding: 4px 0 2px !important;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.knowledgeBaseArticle ul {
|
|
|
|
|
color: unset;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.gift_grid {
|
|
|
|
|
width: 100%;
|
|
|
|
|
display: grid;
|
|
|
|
|
grid-template-columns: 1fr 1fr 1fr 1fr;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.gift_sel {
|
|
|
|
|
display: grid;
|
|
|
|
|
box-sizing: border-box;
|
|
|
|
|
padding: 15px 8px;
|
|
|
|
|
justify-items: center;
|
|
|
|
|
cursor: pointer;
|
|
|
|
|
border-radius: 10px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.gift_pic {
|
|
|
|
|
max-width: 70%;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.gift_sel:hover {
|
|
|
|
|
background-color: #f1f1f1;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.gift_sel.disabled:hover {
|
|
|
|
|
cursor: not-allowed;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.gift_sel>.gift_price,
|
|
|
|
|
.gift_sel>.gift_limit {
|
|
|
|
|
visibility: hidden;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.gift_sel:hover>.gift_price,
|
|
|
|
|
.gift_sel:hover>.gift_limit {
|
|
|
|
|
visibility: unset;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.gift_sel.disabled {
|
|
|
|
|
opacity: .5;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.ovk-video {
|
|
|
|
|
margin-bottom: 1rem;
|
|
|
|
|
padding: 0 6px;
|
|
|
|
|
}
|
|
|
|
|
|
2022-02-22 13:44:13 +03:00
|
|
|
|
.ovk-video>.preview, .video-preview {
|
2022-02-19 12:32:30 +03:00
|
|
|
|
width: 170px;
|
|
|
|
|
height: 127px;
|
|
|
|
|
align-content: center;
|
|
|
|
|
display: flex;
|
2022-02-22 13:44:13 +03:00
|
|
|
|
padding: 2px;
|
2022-04-17 13:16:34 +03:00
|
|
|
|
box-shadow: inset 0 0 0 1px #ccc, inset 0 0 0 2px #fff;
|
2022-02-22 13:44:13 +03:00
|
|
|
|
background-color: #000;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#wallAttachmentMenu {
|
|
|
|
|
position: absolute;
|
|
|
|
|
border: 1px solid darkgrey;
|
|
|
|
|
background-color: white;
|
|
|
|
|
z-index: 32;
|
2022-05-26 17:42:27 +03:00
|
|
|
|
margin-top: -7px;
|
|
|
|
|
margin-left: -16px;
|
|
|
|
|
box-shadow: 0 1px 3px -1px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#wallAttachmentMenu>a {
|
2022-05-26 17:42:27 +03:00
|
|
|
|
display: flex;
|
|
|
|
|
gap: 5px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
padding: 2px 6px;
|
2021-12-14 16:36:02 +03:00
|
|
|
|
cursor: pointer;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#wallAttachmentMenu>a>img {
|
2022-02-19 01:03:27 +03:00
|
|
|
|
vertical-align: middle;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#wallAttachmentMenu>a:hover {
|
|
|
|
|
background-color: #f0f0f0;
|
|
|
|
|
}
|
|
|
|
|
|
2022-05-26 17:42:27 +03:00
|
|
|
|
#wallAttachmentMenu>.header {
|
|
|
|
|
padding: 6px 15px;
|
|
|
|
|
background-color: #eee;
|
|
|
|
|
text-align: center;
|
|
|
|
|
}
|
|
|
|
|
|
2022-02-19 12:32:30 +03:00
|
|
|
|
#ovkDraw {
|
|
|
|
|
border: 1px solid #757575;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#ovkDraw .lc-drawing.with-gui {
|
|
|
|
|
background-color: white !important;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#ovkDraw .literally {
|
|
|
|
|
border-radius: 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#ovkDraw .literally .lc-picker,
|
|
|
|
|
.literally .lc-options.horz-toolbar {
|
|
|
|
|
background-color: #f7f7f7;
|
|
|
|
|
border-color: rgba(0, 0, 0, 0.15);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#ovkDraw .literally .lc-picker .toolbar-button.selected:not(.disabled),
|
|
|
|
|
#ovkDraw .literally .horz-toolbar .square-toolbar-button.selected:not(.disabled) {
|
|
|
|
|
background-color: #cdcdcd;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#ovkDraw .literally .lc-picker .toolbar-button:hover:not(.disabled),
|
|
|
|
|
#ovkDraw .literally .horz-toolbar .square-toolbar-button:hover:not(.disabled) {
|
|
|
|
|
border-color: #cdcdcd;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.postFeedWrapper {
|
|
|
|
|
padding: 4px 8px;
|
|
|
|
|
background-color: rgb(240, 240, 240);
|
|
|
|
|
border-bottom: 1px solid #ccc;
|
|
|
|
|
border-top: 1px solid #ccc;
|
2022-06-20 02:27:42 +03:00
|
|
|
|
margin-left: -10px;
|
|
|
|
|
margin-bottom: 10px;
|
|
|
|
|
width: 611px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.postFeedWrapperMicroblog {
|
|
|
|
|
margin-bottom: 5px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.postFeedBottom .postFeedPaginator {
|
|
|
|
|
float: right;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.postFeedBottom .postFeedPageSelect {
|
|
|
|
|
float: left;
|
|
|
|
|
padding-top: 8px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#pageSelect {
|
|
|
|
|
width: 200px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.user-alert {
|
|
|
|
|
margin-left: 8px;
|
|
|
|
|
margin-bottom: 8px;
|
|
|
|
|
padding: 4px;
|
|
|
|
|
border: 1px solid #c3a476;
|
|
|
|
|
font-weight: 900;
|
|
|
|
|
background-color: #f3ddbd;
|
|
|
|
|
color: #58462a;
|
|
|
|
|
}
|
|
|
|
|
|
2022-04-14 13:29:07 +03:00
|
|
|
|
.group-alert {
|
|
|
|
|
margin-bottom: 8px;
|
|
|
|
|
padding: 4px;
|
|
|
|
|
border: 1px solid #c3a476;
|
|
|
|
|
font-weight: 900;
|
|
|
|
|
background-color: #f3ddbd;
|
|
|
|
|
color: #58462a;
|
|
|
|
|
}
|
|
|
|
|
|
2022-02-19 12:32:30 +03:00
|
|
|
|
.avatar-list {
|
2022-04-17 13:16:34 +03:00
|
|
|
|
padding: 4px 8px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.avatar-list-item {
|
2022-04-17 13:16:34 +03:00
|
|
|
|
padding: 4px 0;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.avatar-list-item::after {
|
|
|
|
|
content: '.';
|
|
|
|
|
display: block;
|
|
|
|
|
height: 0;
|
|
|
|
|
clear: both;
|
|
|
|
|
visibility: hidden;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.avatar-list-item .avatar {
|
|
|
|
|
float: left;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.avatar-list-item .avatar img {
|
|
|
|
|
width: 32px;
|
|
|
|
|
height: 32px;
|
|
|
|
|
object-fit: cover;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.avatar-list-item .info {
|
|
|
|
|
float: left;
|
|
|
|
|
padding-left: 8px;
|
|
|
|
|
width: 134px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.avatar-list-item .info-centered {
|
|
|
|
|
padding-top: 8px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.avatar-list-item .info .title {
|
|
|
|
|
font-size: 11px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.avatar-list-item .info .subtitle {
|
|
|
|
|
color: rgb(128, 128, 128);
|
|
|
|
|
font-size: 10px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.paginator {
|
|
|
|
|
float: right;
|
|
|
|
|
margin-top: -1px;
|
|
|
|
|
}
|
|
|
|
|
|
2024-10-25 16:28:35 +03:00
|
|
|
|
.paginator.tidy {
|
|
|
|
|
float: unset;
|
|
|
|
|
}
|
|
|
|
|
|
2022-02-19 12:32:30 +03:00
|
|
|
|
.paginator-at-bottom {
|
|
|
|
|
margin-top: -6px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.paginator a {
|
|
|
|
|
border-top: 3px solid transparent;
|
|
|
|
|
display: inline-block;
|
|
|
|
|
padding: 4px 5px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.paginator a:hover {
|
|
|
|
|
border-top: 3px solid rgb(170, 170, 170);
|
|
|
|
|
background-color: rgb(230, 230, 230);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.paginator a.active {
|
|
|
|
|
border-top: 3px solid rgb(130, 130, 130);
|
|
|
|
|
font-weight: bold;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.accent-box {
|
|
|
|
|
background-color: white;
|
|
|
|
|
padding: 10px;
|
|
|
|
|
margin: 5px;
|
|
|
|
|
border: 1px solid #C0CAD5;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.header_search {
|
|
|
|
|
background: #f7f7f7;
|
|
|
|
|
width: 607px;
|
|
|
|
|
padding: 10px;
|
|
|
|
|
border-bottom: 1px solid #e1e1e1;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.header_search_inputbt {
|
|
|
|
|
padding: 10px;
|
|
|
|
|
border-top: 1px solid #ebebeb;
|
|
|
|
|
display: flex;
|
|
|
|
|
margin-bottom: 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.header_search_input {
|
|
|
|
|
border: 1px solid #C0CAD5;
|
|
|
|
|
padding: 3px;
|
|
|
|
|
padding-left: 19px;
|
|
|
|
|
font-size: 11px;
|
|
|
|
|
font-family: tahoma, verdana, arial, sans-serif;
|
|
|
|
|
width: 549px;
|
|
|
|
|
background: #fff url('/assets/packages/static/openvk/img/search_icon.png') no-repeat;
|
|
|
|
|
background-position-x: 4px;
|
|
|
|
|
background-position-y: 4px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.button_search {
|
|
|
|
|
border-radius: 2px;
|
|
|
|
|
border: #595959;
|
|
|
|
|
font-size: 11px;
|
|
|
|
|
outline: none;
|
|
|
|
|
white-space: nowrap;
|
|
|
|
|
background: #595959;
|
2022-04-17 13:16:34 +03:00
|
|
|
|
background-position: 0 -16px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
color: #fff;
|
2022-04-17 13:16:34 +03:00
|
|
|
|
padding: 4px 8px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
text-shadow: 0 1px 0 #686868;
|
|
|
|
|
cursor: pointer;
|
|
|
|
|
text-decoration: none;
|
|
|
|
|
margin-left: 10px;
|
|
|
|
|
width: 7.5%;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.content_search {
|
|
|
|
|
width: 607px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.content_search_list {
|
|
|
|
|
display: flex;
|
|
|
|
|
width: 100%;
|
|
|
|
|
padding: 10px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.content_search_list:hover {
|
|
|
|
|
background: #f5f5f5;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.content_search_list_ava img {
|
|
|
|
|
width: 75px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.content_search_list_ava {
|
|
|
|
|
width: 85px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.content_search_list_name_h4 {
|
|
|
|
|
color: #2b587a;
|
|
|
|
|
font-weight: bold;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.content_search_list_span {
|
|
|
|
|
color: #7b7b7b;
|
2021-12-14 16:36:02 +03:00
|
|
|
|
margin-top: 5px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.pinned-mark {
|
2021-12-15 01:27:17 +03:00
|
|
|
|
display: inline-block;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
height: 16px;
|
|
|
|
|
width: 16px;
|
|
|
|
|
overflow: auto;
|
2022-04-17 13:16:34 +03:00
|
|
|
|
background: url("/assets/packages/static/openvk/img/pin.png") no-repeat 0 0;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
vertical-align: middle;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.topic-list-item {
|
|
|
|
|
border-bottom: #e6e6e6 solid 1px;
|
|
|
|
|
padding: 4px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.messagebox-content-header {
|
|
|
|
|
background: #F7F7F7;
|
|
|
|
|
margin: -20px;
|
|
|
|
|
padding: 10px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.hover-box {
|
|
|
|
|
background-color: white;
|
|
|
|
|
padding: 10px;
|
|
|
|
|
margin: 5px;
|
|
|
|
|
border: 1px solid #C0CAD5;
|
|
|
|
|
cursor: pointer;
|
|
|
|
|
user-select: none;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.hover-box:hover {
|
|
|
|
|
background-color: #C0CAD5;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.summaryBar {
|
2022-02-19 01:03:27 +03:00
|
|
|
|
border-bottom: #DEDEDE solid 1px;
|
2022-01-25 01:21:58 +03:00
|
|
|
|
clear: both;
|
|
|
|
|
padding: 11px 10px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
padding-bottom: 11px;
|
2022-01-25 01:21:58 +03:00
|
|
|
|
line-height: normal;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
2024-10-25 16:28:35 +03:00
|
|
|
|
.summaryBar.summaryBarFlex {
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-direction: row;
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.summaryBar.padding {
|
|
|
|
|
padding-top: 10px;
|
|
|
|
|
padding-bottom: 8px;
|
|
|
|
|
height: 23px;
|
|
|
|
|
}
|
|
|
|
|
|
2022-02-19 12:32:30 +03:00
|
|
|
|
.summaryBar .summary {
|
|
|
|
|
color: #45688E;
|
|
|
|
|
font-weight: bold;
|
|
|
|
|
padding-top: 3px;
|
|
|
|
|
padding-bottom: 4px;
|
|
|
|
|
display: inline-block;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.note_header {
|
|
|
|
|
background: #f7f7f7;
|
|
|
|
|
border-bottom: solid 1px #DAE1E8;
|
|
|
|
|
border-top: solid 1px #45688E;
|
2022-04-17 13:16:34 +03:00
|
|
|
|
padding: 4px 6px 5px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.note_header .note_title {
|
|
|
|
|
color: #45688E;
|
|
|
|
|
font-size: 13px;
|
|
|
|
|
font-weight: bold;
|
|
|
|
|
line-height: 15px;
|
|
|
|
|
margin: 0;
|
2022-04-17 13:16:34 +03:00
|
|
|
|
padding: 0 0 1px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.note_footer {
|
|
|
|
|
border-top: 1px solid #ddd;
|
|
|
|
|
clear: both;
|
|
|
|
|
margin-top: 10px;
|
2022-04-17 13:16:34 +03:00
|
|
|
|
padding: 0 2px 0 6px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.comments_count {
|
2022-04-17 13:16:34 +03:00
|
|
|
|
padding: 5px 0 0;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.groups_options {
|
2022-01-31 02:30:15 +03:00
|
|
|
|
padding: 10px 20px 20px;
|
|
|
|
|
border-top: #DEDEDE solid 1px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#gp_container {
|
|
|
|
|
display: inline-block;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#gp_container span {
|
|
|
|
|
display: block;
|
|
|
|
|
margin: 10px 0 15px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#gp_container h4 {
|
|
|
|
|
font-size: 11px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.container_gray .content:last-child {
|
|
|
|
|
margin-bottom: 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.group_info {
|
|
|
|
|
padding: 0 0 0 5px !important;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.group_info .label {
|
|
|
|
|
width: auto !important;
|
|
|
|
|
padding-right: 5px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
table td[width="120"] {
|
|
|
|
|
text-align: right;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.profile_thumb {
|
2022-04-17 13:16:34 +03:00
|
|
|
|
padding: 0 10px 0 0;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
width: 50px;
|
|
|
|
|
display: inline-block;
|
|
|
|
|
vertical-align: top;
|
2022-04-04 20:13:24 +03:00
|
|
|
|
box-sizing: border-box;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.mb_tabs {
|
2022-02-19 01:03:27 +03:00
|
|
|
|
background-color: #F6F6F6;
|
|
|
|
|
border-bottom: #DEDEDE solid 1px;
|
|
|
|
|
padding: 10px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
2022-01-31 02:30:15 +03:00
|
|
|
|
|
2022-02-19 12:32:30 +03:00
|
|
|
|
.mb_tab {
|
2022-02-19 01:03:27 +03:00
|
|
|
|
cursor: pointer;
|
|
|
|
|
font-weight: bold;
|
|
|
|
|
margin-right: 10px;
|
2022-01-31 02:30:15 +03:00
|
|
|
|
display: inline-block;
|
2024-09-16 02:11:00 +03:00
|
|
|
|
border-radius: 2px;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
2022-01-31 15:15:51 +03:00
|
|
|
|
|
2024-10-25 16:28:35 +03:00
|
|
|
|
.mb_tab div, .mb_tab > a {
|
2024-09-16 02:11:00 +03:00
|
|
|
|
padding: 5px 9px;
|
2024-10-25 16:28:35 +03:00
|
|
|
|
display: block;
|
2022-01-31 04:45:12 +03:00
|
|
|
|
}
|
2022-01-31 02:30:15 +03:00
|
|
|
|
|
2022-02-19 12:32:30 +03:00
|
|
|
|
.mb_tab#active {
|
2024-10-25 16:28:35 +03:00
|
|
|
|
background-color: #606060;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
2022-02-01 19:50:53 +03:00
|
|
|
|
|
2022-02-19 12:32:30 +03:00
|
|
|
|
.mb_tab#active a {
|
2022-02-19 01:03:27 +03:00
|
|
|
|
color: white;
|
2022-02-19 12:32:30 +03:00
|
|
|
|
}
|
|
|
|
|
|
2022-01-31 14:45:53 +03:00
|
|
|
|
.border-block {
|
2022-04-17 13:16:34 +03:00
|
|
|
|
box-shadow: inset 0 0 0 1px #b6bfca, inset 0 0 0 10px #d8dfe7;
|
2022-01-31 14:45:53 +03:00
|
|
|
|
width: 300px;
|
|
|
|
|
padding: 20px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.center {
|
|
|
|
|
margin: 0 auto;
|
2022-02-19 01:32:46 +03:00
|
|
|
|
}
|
2022-04-18 18:54:50 +03:00
|
|
|
|
|
Music, finally! (#512)
* Add audio upload feature
* Add audio embed thing
* Move bullet.gif to ovk
* Draft some music API methods
* Add support for base64 ids to Audios.getById
* Disallow having more than 65k audios in playlist
* Add playlist model
* Draft some playlist-related API methods
* Fix behabiour of album-related methods
Generators f***** me in le a**
* Add IDv3 autofill
* Add sql dumps
i forgor to upload it xdddd
* Add playlists sql
* Fix audio upload not working on Windows 11 because Windows is the worst operating system which doesn't work properly under any circumstances
* Fix cocksex in audio.get
yes
* Интерфейсы
* Interface updade
* Update en.strings
* Add audio queue
* Make repeat button work
* Some improvements to audio queue
* Фгвшщ йгугу шьзкщмуьутеы
* Make shuffle and "наушники" buttons work, add f...
avicons when playing audio, save some values (like volume and last played track) to localstorage, add ability to toggle time type in player, fix uploading audios with cover (maybe) and add dragndrop to upload page
* Add funny tip with time when hover track div
* Add something
* Add audios picker & move track in smal player вниз
* Summary (required)
Description
* [WIP] Add calls, stories and clips.
Изменены фавиконки (поменьше стали)
У миниплеера ползунок теперь в стиле bsdn и большого плеера, добавлен ползунок громкости
Добавлена кнопка добавления аудио в группу (у миниплеера)
Если вы смотрите аудио группы, которой можете управлять, появляется кнопка "удалить аудио из группы"
Снизу плейлиста в списке теперь показывается автор.
При прикреплении аудиозаписей к посту теперь есть поиск "по композиции" и "по исполнителю"
Добавил explicit.svg, который я забыл добавить в предыдущем коммите.
Вкладочки немного переделаны
При наведении на кнопки "трек вперёд" или "трек назад" показывается название предыдущего или следующего трека соответственно
* 1 new commit to master: [WIP]: Add audios
- Теперь группа может разрешать загружать всем треки в неё
- Теперь треки загружаются на сервер ajax'ом, и так можно очень много аудио загружать
- Вёрстка списка плейлистов изменена, теперь она на гридах
- Немного изменено апи, теперь метод editAlbum сохраняет новую информацию ee объект плейлистов теперь возвращают реальное время
- Удалены лишние пути из routes.yml
- При переключении страниц теперь если на текущей странице есть играющий трек, он нормально подсвечивается
- Из init-db.sql удалены таблицы аудиозаписей
- В Groups.getSettings и groups.edit теперь есть информация о аудиозаписях
* (смешное название коммита)
- Теперь на странице пользователя/группы показываются три случайные песни, а не первые три как раньше
- Теперь пробел на странице аудио не перемещает вас в низ страницы
- Оптимизирован мини-плеер, теперь он инициализируется при любом нажатии на него, а не при наведении
- Теперь при завершении проигрывания трека в мини-плеере он ищет другой трек рядом, и если находит то воспроизводит. Будет удобно для постов с подборками треков
- Поиск теперь показывает 14 результатов
- Теперь при возникновении ошибки загрузки аудио она нормально отображается
- Вместе с плеером на странице с аудиозаписями теперь двигаются и вкладки
- Добавление аудио в группу по идее должно нормально работать
* Implement playlists listens
- У плейлистов теперь есть прослушивания в общем.
- Прослушивания у большого плеера теперь засчитываются, если трек был дослушан до конца
- В объекте плейлистов теперь возвращается listens и cover_url
- Получение плееров через /audios/context переписано, повторяющийся код удалён, правда сильно количество строк сократить не получилось
- Теперь цвета плеера темнее, а иконка проигрывания изменена
- Теперь, если очередь из треков кончилась, то плеер перенаправляет вас в начало очереди.
* php 8.2 fixxxxxxxxxxxxxxxxxxxxxxx
* Implement audiostatuses
Добавлены аудиостатусы (у пользователей), блок с друзьями, слушающих музыку на странице аудиозаписей, объект status_audio в users.get, улучшены настройки приватности и ещё что-то
* ?
- Переделан метод в классе user для получения друзей с проигрываемыми песнями. Теперь среди них могут появляться и группы (хз стоит ли оставлять это или нет). Так же больше не показываются удалённые пользователи
- Трек у плеера теперь двигается немного плавнее. Ещё теперь нету смешных багов с подсказкой времени, когда можно было увести её за экран или промотать дальше трека. Переключить повторение трека теперь можно нажатием кнопки R.
- Длинное название трека больше не сносит время
- Наверное, теперь аудиозаписи нормально отображаются в темах midnight и modern
- Аудиозаписи больше не крашаются, если пользователь неавторизован.
- Немного переделан миниплеер.
- В миниплеере теперь громкость берётся из локалсторейджа.
- Улучшено редактирование аудиозаписей. Теперь данные в дата атрибуты нормально сохраняются, а так же слова песни и метка "explicit" меняются
- Удалён css, оставшийся ещё от public technical preview 1, а так же путь /audios{num}
- При наведении на трек теперь пропадает время, и на его месте появляются кнопки
- Стандартная аватарка в midnight теперь инвертируется
- В админке в редактировании аудио теперь показывается дата редактирования, дата создания, длина и оригинальный файл аудио. Так же на странице редактирования больше нет вылетов, если вы задали несуществующий аккаунт
* !
- Добавлены строки для мобильной темы
- Добавлено предупреждение перед полным удалением плейлиста
- Нажатие кнопки M = нажатие кнопки наушников
- В классе апи Audio поставлены willExecuteWriteAction, ещё теперь нельзя получить число аудиозаписей у пользователей, которые их закрыли. Ещё теперь нельзя получать uploaded_only аудиозаписи у тех ну вы поняли короче.
- При наведении на длинное название песни оно теперь показывается полностью
- Надо ещё что-то сюда написать, так что: При редактировании аудиозаписи название окна теперь не "Редактировать", а "Редактировать аудиозапись", а вместо кнопки OK кнопка "Сохранить"
* .
- Добавлен тур по аудиозаписям, но пока без скриншотов.
- "Мои Аудиозаписи" в меню теперь располагаются под Моими Видеозаписями для канона
- В настройках приватности "кто может видеть мои аудиозаписи" теперь располагаются под "кто может видеть мои видеозаписи"
- В настройках внешнего вида мои аудиозаписи тоже под видео
- Изменён <title> на странице аудиозаписей. Теперь показывается "Аудиозаписи" + имя пользователя в родительном падеже. А если это группа, то "Аудиозаписи группы". То же самое с плейлистами
- Исправлены ссылка в ссылке на странице с плейлистами
- При наведении на название песни больше не сносится иконка explicit
- Добавлена максимальная длина названия и описания плейлиста при редактировании.
* М
- Долокализована админка (точно помню, что уже делал это, но ладно)
- Удалён лишний пункт "audios" в getLeftMenuItemStatus (реально)
- Если. У плеера есть параметр "hideButtons", то при наведении на него не пропадает время.
- На странице редактирования/создания плейлиста если у песни длинное название, то оно да похуй короче. Ну в общем лучше стало
- Там где нужно, добавлена строка в конце файла
- Возвращена строка "photo" в английской локали (я её случайно удалил :+1: )
* у
- У изъятых аудиозаписей больше не показывается кнопка "добавить в группу". Так же при нажатии на кнопку удаления из коллекции окно не всплывает.
- "Удаление аудио из группы" тоже лучше работать стало с изъятыми аудио.
* з
- В пикере аудиозаписей "more..." заменено на "показать больше аудиозаписей"
- Если включен режим показа оставшегося времени, то при окончании песни больше не показывается "--1:--1"
- В пикере аудиозаписей, если у вас нет аудиозаписей и вы ничего не искали, показывается "Вы ещё не добавляли аудиозаписей"
- <hr>'ы стали серыми
- Добавлены title'ы у кнопок в большом плеере
- Проставлены alt'ы у плейлистов
* Musique: linux saport)
назар хуйню релизнул кста, плейерс клаб два не слушайте не рекомендую
* Update and rename gamma-00000-disco.sql to 00041-music.sql
* Update 00041-music.sql
---------
Co-authored-by: Ilya Prokopenko <dsrev@protonmail.com>
Co-authored-by: n1rwana <aydashkin@vk.com>
Co-authored-by: lalka2018 <99399973+lalka2016@users.noreply.github.com>
Co-authored-by: veselcraft <veselcraft@icloud.com>
Co-authored-by: DeathPleiad <43928323+Parad1seF0x@users.noreply.github.com>
2023-11-12 00:41:07 +03:00
|
|
|
|
#upload_container {
|
|
|
|
|
background: white;
|
|
|
|
|
padding: 30px 80px 20px;
|
|
|
|
|
margin: 10px 25px 30px;
|
|
|
|
|
border: 1px solid #d6d6d6;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#upload_container h4 {
|
|
|
|
|
border-bottom: solid 1px #daE1E8;
|
|
|
|
|
text-align: left;
|
|
|
|
|
padding: 0 0 4px 0;
|
|
|
|
|
margin: 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#audio_upload {
|
|
|
|
|
width: 350px;
|
|
|
|
|
margin: 20px auto;
|
|
|
|
|
margin-bottom: 10px;
|
|
|
|
|
padding: 15px 0;
|
|
|
|
|
border: 2px solid #ccc;
|
|
|
|
|
background-color: #EFEFEF;
|
|
|
|
|
text-align: center;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
ul {
|
|
|
|
|
list-style: url(/assets/packages/static/openvk/img/bullet.gif) outside;
|
|
|
|
|
margin: 10px 0;
|
|
|
|
|
padding-left: 30px;
|
|
|
|
|
color: black;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
li {
|
|
|
|
|
padding: 1px 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#upload_container ul {
|
|
|
|
|
padding-left: 15px;
|
|
|
|
|
}
|
|
|
|
|
|
2022-04-18 18:54:50 +03:00
|
|
|
|
#votesBalance {
|
2022-06-20 06:39:25 +03:00
|
|
|
|
margin-top: 10px;
|
2022-04-18 18:54:50 +03:00
|
|
|
|
padding: 7px;
|
|
|
|
|
background-color: #f6f6f6;
|
2022-06-20 06:39:25 +03:00
|
|
|
|
border-bottom: 1.5px solid #DDDDDD;
|
2022-04-18 18:54:50 +03:00
|
|
|
|
text-align: center;
|
|
|
|
|
user-select: none;
|
2022-05-09 16:01:37 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.cookies-popup {
|
|
|
|
|
position: fixed;
|
|
|
|
|
bottom: 0;
|
2023-01-08 01:01:48 +03:00
|
|
|
|
left: 0;
|
2022-05-09 16:01:37 +03:00
|
|
|
|
width: 100%;
|
|
|
|
|
height: 40px;
|
|
|
|
|
background: linear-gradient(#fff, #eee);
|
|
|
|
|
box-shadow: inset 0px 1px 0px #bbb, inset 0px 2px 0px #ddd;
|
2023-05-08 05:06:18 +03:00
|
|
|
|
z-index: 2048;
|
2022-05-09 16:01:37 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.cookies-popup .contanier {
|
|
|
|
|
width: 760px;
|
|
|
|
|
display: flex;
|
|
|
|
|
margin: 0 auto;
|
|
|
|
|
align-items: center;
|
|
|
|
|
height: 100%;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.cookies-popup .contanier .text {
|
|
|
|
|
width: 100%;
|
|
|
|
|
}
|
2022-08-13 13:21:20 +03:00
|
|
|
|
|
|
|
|
|
.floating_sidebar {
|
|
|
|
|
position: fixed;
|
|
|
|
|
top: 0;
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
width: 118px;
|
|
|
|
|
align-items: end;
|
|
|
|
|
transition: 250ms;
|
|
|
|
|
display: none;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.floating_sidebar.show {
|
|
|
|
|
display: flex;
|
|
|
|
|
animation-name: appearing;
|
|
|
|
|
animation-duration: 250ms;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.floating_sidebar.hide_anim {
|
|
|
|
|
opacity: 0;
|
|
|
|
|
display: flex;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.floating_sidebar .minilink {
|
|
|
|
|
text-align: right;
|
|
|
|
|
opacity: 0.5;
|
|
|
|
|
padding: 8px 4px;
|
|
|
|
|
width: fit-content;
|
|
|
|
|
transition: 250ms;
|
|
|
|
|
height: 11px;
|
|
|
|
|
display: flex;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.floating_sidebar .minilink:hover {
|
|
|
|
|
opacity: 1;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.minilink .counter {
|
|
|
|
|
font-weight: bold;
|
|
|
|
|
background-color: #eee;
|
|
|
|
|
line-height: 10px;
|
|
|
|
|
margin: -1px 3px 0 0;
|
|
|
|
|
padding: 1px 1px;
|
|
|
|
|
border-radius: 2px;
|
|
|
|
|
height: 11px;
|
|
|
|
|
}
|
|
|
|
|
|
2022-08-20 21:07:54 +03:00
|
|
|
|
#app_news_container {
|
|
|
|
|
margin-bottom: 30px;
|
|
|
|
|
overflow-x: hidden;
|
|
|
|
|
overflow-y: auto;
|
|
|
|
|
max-height: 250px;
|
|
|
|
|
}
|
|
|
|
|
|
2022-10-11 19:04:43 +03:00
|
|
|
|
.poll {
|
|
|
|
|
padding: 8px;
|
|
|
|
|
transition: .1s filter ease-in;
|
|
|
|
|
border: 1px solid #e3e3e3;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.poll.loading {
|
|
|
|
|
filter: opacity(0.5);
|
|
|
|
|
cursor: progress;
|
|
|
|
|
user-select: none;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.poll.loading * {
|
|
|
|
|
pointer-events: none;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.poll-embed {
|
|
|
|
|
float: right;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.poll h4 {
|
|
|
|
|
padding-bottom: 4px;
|
|
|
|
|
margin-bottom: 8px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.poll-meta .nobold {
|
|
|
|
|
font-style: oblique;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.poll-result-barspace {
|
|
|
|
|
display: flex;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.poll-result {
|
|
|
|
|
margin-bottom: 5px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.poll-result a {
|
|
|
|
|
color: unset;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.poll-result-bar {
|
|
|
|
|
position: relative;
|
|
|
|
|
margin: 5px 0;
|
|
|
|
|
background-color: #f7f7f7;
|
|
|
|
|
height: 13pt;
|
|
|
|
|
flex: 14;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
span.poll-result-count {
|
|
|
|
|
position: absolute;
|
|
|
|
|
top: 50%;
|
|
|
|
|
left: 50%;
|
|
|
|
|
margin-right: -50%;
|
|
|
|
|
transform: translate(-50%, -50%);
|
|
|
|
|
color: #7d96af;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.poll-result-bar-sub {
|
|
|
|
|
height: 100%;
|
|
|
|
|
background-color: #d9e1ea;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.poll-result-pct {
|
|
|
|
|
flex: 2;
|
|
|
|
|
display: flex;
|
|
|
|
|
justify-content: flex-end;
|
|
|
|
|
align-items: center;
|
|
|
|
|
padding-left: 5px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
a.poll-retract-vote {
|
|
|
|
|
float: right;
|
|
|
|
|
}
|
|
|
|
|
|
2022-10-09 11:34:57 +03:00
|
|
|
|
.tippy-box[data-theme~="vk"] {
|
|
|
|
|
user-select: none;
|
|
|
|
|
background-color: #fff;
|
|
|
|
|
border: 1px solid #DCE1E6;
|
|
|
|
|
border-radius: 1px;
|
|
|
|
|
}
|
|
|
|
|
|
2023-10-03 19:40:13 +03:00
|
|
|
|
.progress {
|
|
|
|
|
border: 1px solid #eee;
|
|
|
|
|
height: 15px;
|
|
|
|
|
background: linear-gradient(to bottom, #fefefe, #fafafa);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.progress .progress-bar {
|
|
|
|
|
background: url('progress.png');
|
|
|
|
|
background-repeat: repeat-x;
|
|
|
|
|
height: 15px;
|
|
|
|
|
animation-name: progress;
|
|
|
|
|
animation-duration: 1s;
|
|
|
|
|
animation-iteration-count: infinite;
|
|
|
|
|
animation-timing-function: linear;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@keyframes progress {
|
|
|
|
|
from {
|
|
|
|
|
background-position: 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
to {
|
|
|
|
|
background-position: 20px;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.upload {
|
|
|
|
|
margin-top: 8px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.upload .upload-item {
|
|
|
|
|
width: 75px;
|
|
|
|
|
height: 60px;
|
|
|
|
|
overflow: hidden;
|
|
|
|
|
display: inline-block;
|
|
|
|
|
margin-right: 3px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.upload-item .upload-delete {
|
|
|
|
|
position: absolute;
|
|
|
|
|
background: rgba(0,0,0,0.5);
|
|
|
|
|
padding: 2px 5px;
|
|
|
|
|
text-decoration: none;
|
|
|
|
|
color: #fff;
|
|
|
|
|
font-size: 11px;
|
|
|
|
|
margin-left: 57px; /* мне лень переделывать :DDDD */
|
|
|
|
|
opacity: 0;
|
|
|
|
|
transition: 0.25s;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.upload-item:hover > .upload-delete {
|
|
|
|
|
opacity: 1;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.upload-item img {
|
|
|
|
|
width: 100%;
|
|
|
|
|
max-height: 60px;
|
|
|
|
|
object-fit: cover;
|
|
|
|
|
border-radius: 3px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* https://imgur.com/a/ihB3JZ4 */
|
|
|
|
|
|
|
|
|
|
.ovk-photo-view-dimmer {
|
|
|
|
|
position: fixed;
|
|
|
|
|
left: 0px;
|
|
|
|
|
top: 0px;
|
|
|
|
|
right: 0px;
|
|
|
|
|
bottom: 0px;
|
|
|
|
|
overflow: auto;
|
|
|
|
|
padding-bottom: 20px;
|
|
|
|
|
z-index: 300;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.ovk-photo-view {
|
|
|
|
|
position: relative;
|
|
|
|
|
z-index: 999;
|
|
|
|
|
background: #fff;
|
|
|
|
|
width: 610px;
|
|
|
|
|
padding: 20px;
|
|
|
|
|
padding-top: 15px;
|
|
|
|
|
padding-bottom: 10px;
|
|
|
|
|
box-shadow: 0px 0px 3px 1px #222;
|
|
|
|
|
margin: 15px auto 0 auto;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.ovk-photo-details {
|
|
|
|
|
overflow: auto;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.photo_com_title {
|
|
|
|
|
font-weight: bold;
|
|
|
|
|
padding-bottom: 20px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.photo_com_title div {
|
|
|
|
|
float: right;
|
|
|
|
|
font-weight: normal;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.ovk-photo-slide-left {
|
|
|
|
|
left: 0;
|
|
|
|
|
width: 35%;
|
|
|
|
|
height: 100%;
|
|
|
|
|
max-height: 60vh;
|
|
|
|
|
position: absolute;
|
|
|
|
|
cursor: pointer;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.ovk-photo-slide-right {
|
|
|
|
|
right: 0;
|
|
|
|
|
width: 35%;
|
|
|
|
|
height: 100%;
|
|
|
|
|
max-height: 60vh;
|
|
|
|
|
position: absolute;
|
|
|
|
|
cursor: pointer;
|
|
|
|
|
}
|
|
|
|
|
|
2022-12-17 02:03:02 +03:00
|
|
|
|
.client_app > img {
|
|
|
|
|
top: 3px;
|
|
|
|
|
position: relative;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.client_app.client_app_titlebar > img {
|
|
|
|
|
top: 2px;
|
|
|
|
|
position: relative;
|
|
|
|
|
filter: invert(100%) sepia(100%) saturate(800%) hue-rotate(2deg) brightness(130%) contrast(50.1%);
|
|
|
|
|
}
|
|
|
|
|
|
2022-08-13 13:21:20 +03:00
|
|
|
|
@keyframes appearing {
|
|
|
|
|
from {
|
|
|
|
|
opacity: 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
to {
|
|
|
|
|
opacity: 1;
|
|
|
|
|
}
|
|
|
|
|
}
|
2023-01-07 22:52:50 +03:00
|
|
|
|
|
|
|
|
|
.regform-left{
|
2023-04-19 19:47:05 +03:00
|
|
|
|
text-align: right;
|
2023-01-07 22:52:50 +03:00
|
|
|
|
min-width: 110px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.regform-right{
|
|
|
|
|
min-width: 200px;
|
2023-01-08 00:53:25 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
.tour {
|
|
|
|
|
background: #F9F6E7;
|
|
|
|
|
border: 1px solid #BEAD61;
|
|
|
|
|
padding: 8px 25px;
|
|
|
|
|
width:205px;
|
|
|
|
|
text-align:center;
|
|
|
|
|
color: #000;
|
|
|
|
|
font-size:12px;
|
|
|
|
|
margin:10px auto;
|
|
|
|
|
cursor:hand;cursor:pointer;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.tour div {
|
2023-04-19 19:47:05 +03:00
|
|
|
|
font-size: 11px; color:#000;
|
2023-01-08 01:01:48 +03:00
|
|
|
|
}
|
2023-01-28 23:25:00 +03:00
|
|
|
|
|
|
|
|
|
.video-wowzer > img {
|
|
|
|
|
vertical-align: bottom;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.video-wowzer {
|
|
|
|
|
font-weight: bolder;
|
|
|
|
|
font-size: 12px;
|
|
|
|
|
padding: 3px 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.video-wowzer a::before {
|
|
|
|
|
content: "b";
|
|
|
|
|
color: transparent;
|
|
|
|
|
width: 12px;
|
|
|
|
|
background-image: url(/assets/packages/static/openvk/img/videoico.png);
|
|
|
|
|
display: none;
|
2023-04-19 19:47:05 +03:00
|
|
|
|
}
|
2023-05-26 18:13:47 +03:00
|
|
|
|
|
2024-10-25 16:28:35 +03:00
|
|
|
|
/* Da search */
|
|
|
|
|
|
|
|
|
|
/* Header part */
|
|
|
|
|
|
|
|
|
|
.header_navigation #search_box {
|
|
|
|
|
display: inline-block;
|
|
|
|
|
height: 29px;
|
|
|
|
|
padding: 11px 4px 0 7px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.header_navigation #search_box input[type='search'] {
|
|
|
|
|
height: 20px;
|
|
|
|
|
background: url('/assets/packages/static/openvk/img/search_icon.png') no-repeat 3px 4px;
|
|
|
|
|
background-color: #fff;
|
|
|
|
|
padding-left: 18px;
|
|
|
|
|
width: 120px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.header_navigation #search_box input[type='search']::-webkit-search-cancel-button {
|
|
|
|
|
display: none;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.header_navigation #search_box #search_box_fr form, .header_navigation #search_box #search_box_fr #search_and_one_more_wrapper {
|
|
|
|
|
display: flex;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.header_navigation #search_box #searchBoxFastTips {
|
|
|
|
|
display: none;
|
|
|
|
|
position: absolute;
|
|
|
|
|
background: #fff;
|
|
|
|
|
border: 1px solid #d8d8d8;
|
|
|
|
|
border-top: unset;
|
|
|
|
|
margin-top: -1px;
|
|
|
|
|
box-shadow: 2px 3px 4px -1px rgba(34, 60, 80, 0.2);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.header_navigation #search_box #searchBoxFastTips a {
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-direction: row;
|
|
|
|
|
gap: 6px;
|
|
|
|
|
padding: 5px;
|
|
|
|
|
cursor: pointer;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.header_navigation #search_box #searchBoxFastTips a b, .header_navigation #search_box #searchBoxFastTips a span {
|
|
|
|
|
display: block;
|
|
|
|
|
text-transform: initial;
|
|
|
|
|
line-height: 12px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.header_navigation #search_box #searchBoxFastTips a:hover, .header_navigation #search_box #searchBoxFastTips a:focus {
|
|
|
|
|
background: #f3f3f3;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.header_navigation #search_box #searchBoxFastTips a .search_tip_info_block {
|
|
|
|
|
display: flex;
|
|
|
|
|
justify-content: center;
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
align-items: baseline;
|
|
|
|
|
gap: 4px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.header_navigation #search_box #searchBoxFastTips a img {
|
|
|
|
|
width: 33px;
|
|
|
|
|
height: 33px;
|
|
|
|
|
object-fit: cover;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.page_header.search_expanded .header_navigation #search_box #searchBoxFastTips.shown {
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
z-index: 2;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.page_header.search_expanded .link {
|
|
|
|
|
display: none;
|
2023-06-10 18:54:02 +03:00
|
|
|
|
}
|
|
|
|
|
|
2024-10-25 16:28:35 +03:00
|
|
|
|
.page_header.search_expanded #search_and_one_more_wrapper {
|
|
|
|
|
width: 627px;
|
|
|
|
|
position: relative;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* не говновёрстка, а пиксель-пёрфект) */
|
|
|
|
|
.page_header.search_expanded.search_expanded_at_all #search_and_one_more_wrapper {
|
|
|
|
|
width: 547px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.page_header.search_expanded #search_box input[type='search'] {
|
|
|
|
|
width: 100%;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.header_navigation #search_box select[name='section'], .header_navigation #search_box .search_box_button {
|
|
|
|
|
display: none;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.page_header.search_expanded select[name='section'] {
|
|
|
|
|
display: inline-block !important;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.page_header.search_expanded_at_all .search_box_button {
|
|
|
|
|
display: inline-block !important;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.page_header select[name='section'] {
|
|
|
|
|
width: auto;
|
|
|
|
|
height: 20px;
|
|
|
|
|
position: absolute;
|
|
|
|
|
padding: 0px 0px;
|
|
|
|
|
right: 0;
|
|
|
|
|
text-align: right;
|
|
|
|
|
border-left: 0px;
|
|
|
|
|
background: transparent;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.header_navigation #search_box .search_box_button {
|
2023-06-10 18:54:02 +03:00
|
|
|
|
border: solid 1px #575757;
|
|
|
|
|
background-color: #696969;
|
2024-10-25 16:28:35 +03:00
|
|
|
|
color: #ffffff;
|
|
|
|
|
padding: 1px 0px 1px 0px;
|
|
|
|
|
width: 80px;
|
2023-06-10 18:54:02 +03:00
|
|
|
|
cursor: pointer;
|
|
|
|
|
box-shadow: 0px 2px 0px 0px rgba(255, 255, 255, 0.18) inset;
|
|
|
|
|
}
|
|
|
|
|
|
2024-10-25 16:28:35 +03:00
|
|
|
|
.header_navigation #search_box .search_box_button span {
|
|
|
|
|
color: white;
|
|
|
|
|
font-weight: 600;
|
|
|
|
|
font-size: 12px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.header_navigation #search_box .search_box_button:active {
|
2023-06-10 18:54:02 +03:00
|
|
|
|
border: solid 1px #666666;
|
|
|
|
|
background-color: #696969;
|
|
|
|
|
color:white;
|
|
|
|
|
box-shadow: 0px -2px 0px 0px rgba(255, 255, 255, 0.18) inset;
|
|
|
|
|
}
|
|
|
|
|
|
2024-10-25 16:28:35 +03:00
|
|
|
|
.searchHide {
|
|
|
|
|
padding-right: 5px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* Search layout */
|
|
|
|
|
#search_page {
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-direction: row;
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.page_content_paginator_bottom {
|
|
|
|
|
background: #f7f7f7;
|
|
|
|
|
border-top: 1px solid #d8d8d8;
|
|
|
|
|
padding: 8px 8px;
|
|
|
|
|
display: flex;
|
|
|
|
|
justify-content: right;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.page_wrap_content_main {
|
|
|
|
|
padding: 3px 3px;
|
|
|
|
|
width: 74%;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.page_wrap_content_main.audios_padding {
|
|
|
|
|
padding: 8px 8px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.page_wrap_content_main .def_row_content {
|
|
|
|
|
border-bottom: #ECECEC solid 1px;
|
|
|
|
|
padding: 3px 1px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.page_wrap_content_main .def_row_content:first-of-type {
|
|
|
|
|
padding: 0px 1px 3px 1px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.page_wrap_content_main .search_content:first-of-type .post {
|
|
|
|
|
border-top: unset;
|
|
|
|
|
padding-top: unset;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.page_wrap_content_main .search_content:last-of-type .post, .page_wrap_content_main .def_row_content:last-of-type {
|
|
|
|
|
border-bottom: unset;
|
|
|
|
|
padding-bottom: unset;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.verticalGrayTabsWrapper {
|
|
|
|
|
width: 158px;
|
|
|
|
|
border-top: 1px solid #E5E7E6;
|
|
|
|
|
border-left: 1px solid #d8d8d8;
|
|
|
|
|
scrollbar-width: none;
|
|
|
|
|
font-size: 12px;
|
|
|
|
|
background-color:#f7f7f7;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.searchList, .verticalGrayTabs {
|
2023-06-10 18:54:02 +03:00
|
|
|
|
list-style: none;
|
|
|
|
|
user-select: none;
|
2024-10-25 16:28:35 +03:00
|
|
|
|
padding-left: 0px;
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
gap: 1px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.searchList hr, .verticalGrayTabs hr {
|
|
|
|
|
width: 153px;
|
|
|
|
|
margin-left: 0px;
|
|
|
|
|
margin-top: 6px;
|
2023-06-10 18:54:02 +03:00
|
|
|
|
}
|
|
|
|
|
|
2024-10-25 16:28:35 +03:00
|
|
|
|
.verticalGrayTabs.with_padding, .verticalGrayTabs > .with_padding {
|
|
|
|
|
padding: 4px 4px 4px 4px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.searchList #used, .verticalGrayTabs #used {
|
|
|
|
|
color: #ffffff !important;
|
|
|
|
|
padding: 5px 9px 5px 9px;
|
Music, finally! (#512)
* Add audio upload feature
* Add audio embed thing
* Move bullet.gif to ovk
* Draft some music API methods
* Add support for base64 ids to Audios.getById
* Disallow having more than 65k audios in playlist
* Add playlist model
* Draft some playlist-related API methods
* Fix behabiour of album-related methods
Generators f***** me in le a**
* Add IDv3 autofill
* Add sql dumps
i forgor to upload it xdddd
* Add playlists sql
* Fix audio upload not working on Windows 11 because Windows is the worst operating system which doesn't work properly under any circumstances
* Fix cocksex in audio.get
yes
* Интерфейсы
* Interface updade
* Update en.strings
* Add audio queue
* Make repeat button work
* Some improvements to audio queue
* Фгвшщ йгугу шьзкщмуьутеы
* Make shuffle and "наушники" buttons work, add f...
avicons when playing audio, save some values (like volume and last played track) to localstorage, add ability to toggle time type in player, fix uploading audios with cover (maybe) and add dragndrop to upload page
* Add funny tip with time when hover track div
* Add something
* Add audios picker & move track in smal player вниз
* Summary (required)
Description
* [WIP] Add calls, stories and clips.
Изменены фавиконки (поменьше стали)
У миниплеера ползунок теперь в стиле bsdn и большого плеера, добавлен ползунок громкости
Добавлена кнопка добавления аудио в группу (у миниплеера)
Если вы смотрите аудио группы, которой можете управлять, появляется кнопка "удалить аудио из группы"
Снизу плейлиста в списке теперь показывается автор.
При прикреплении аудиозаписей к посту теперь есть поиск "по композиции" и "по исполнителю"
Добавил explicit.svg, который я забыл добавить в предыдущем коммите.
Вкладочки немного переделаны
При наведении на кнопки "трек вперёд" или "трек назад" показывается название предыдущего или следующего трека соответственно
* 1 new commit to master: [WIP]: Add audios
- Теперь группа может разрешать загружать всем треки в неё
- Теперь треки загружаются на сервер ajax'ом, и так можно очень много аудио загружать
- Вёрстка списка плейлистов изменена, теперь она на гридах
- Немного изменено апи, теперь метод editAlbum сохраняет новую информацию ee объект плейлистов теперь возвращают реальное время
- Удалены лишние пути из routes.yml
- При переключении страниц теперь если на текущей странице есть играющий трек, он нормально подсвечивается
- Из init-db.sql удалены таблицы аудиозаписей
- В Groups.getSettings и groups.edit теперь есть информация о аудиозаписях
* (смешное название коммита)
- Теперь на странице пользователя/группы показываются три случайные песни, а не первые три как раньше
- Теперь пробел на странице аудио не перемещает вас в низ страницы
- Оптимизирован мини-плеер, теперь он инициализируется при любом нажатии на него, а не при наведении
- Теперь при завершении проигрывания трека в мини-плеере он ищет другой трек рядом, и если находит то воспроизводит. Будет удобно для постов с подборками треков
- Поиск теперь показывает 14 результатов
- Теперь при возникновении ошибки загрузки аудио она нормально отображается
- Вместе с плеером на странице с аудиозаписями теперь двигаются и вкладки
- Добавление аудио в группу по идее должно нормально работать
* Implement playlists listens
- У плейлистов теперь есть прослушивания в общем.
- Прослушивания у большого плеера теперь засчитываются, если трек был дослушан до конца
- В объекте плейлистов теперь возвращается listens и cover_url
- Получение плееров через /audios/context переписано, повторяющийся код удалён, правда сильно количество строк сократить не получилось
- Теперь цвета плеера темнее, а иконка проигрывания изменена
- Теперь, если очередь из треков кончилась, то плеер перенаправляет вас в начало очереди.
* php 8.2 fixxxxxxxxxxxxxxxxxxxxxxx
* Implement audiostatuses
Добавлены аудиостатусы (у пользователей), блок с друзьями, слушающих музыку на странице аудиозаписей, объект status_audio в users.get, улучшены настройки приватности и ещё что-то
* ?
- Переделан метод в классе user для получения друзей с проигрываемыми песнями. Теперь среди них могут появляться и группы (хз стоит ли оставлять это или нет). Так же больше не показываются удалённые пользователи
- Трек у плеера теперь двигается немного плавнее. Ещё теперь нету смешных багов с подсказкой времени, когда можно было увести её за экран или промотать дальше трека. Переключить повторение трека теперь можно нажатием кнопки R.
- Длинное название трека больше не сносит время
- Наверное, теперь аудиозаписи нормально отображаются в темах midnight и modern
- Аудиозаписи больше не крашаются, если пользователь неавторизован.
- Немного переделан миниплеер.
- В миниплеере теперь громкость берётся из локалсторейджа.
- Улучшено редактирование аудиозаписей. Теперь данные в дата атрибуты нормально сохраняются, а так же слова песни и метка "explicit" меняются
- Удалён css, оставшийся ещё от public technical preview 1, а так же путь /audios{num}
- При наведении на трек теперь пропадает время, и на его месте появляются кнопки
- Стандартная аватарка в midnight теперь инвертируется
- В админке в редактировании аудио теперь показывается дата редактирования, дата создания, длина и оригинальный файл аудио. Так же на странице редактирования больше нет вылетов, если вы задали несуществующий аккаунт
* !
- Добавлены строки для мобильной темы
- Добавлено предупреждение перед полным удалением плейлиста
- Нажатие кнопки M = нажатие кнопки наушников
- В классе апи Audio поставлены willExecuteWriteAction, ещё теперь нельзя получить число аудиозаписей у пользователей, которые их закрыли. Ещё теперь нельзя получать uploaded_only аудиозаписи у тех ну вы поняли короче.
- При наведении на длинное название песни оно теперь показывается полностью
- Надо ещё что-то сюда написать, так что: При редактировании аудиозаписи название окна теперь не "Редактировать", а "Редактировать аудиозапись", а вместо кнопки OK кнопка "Сохранить"
* .
- Добавлен тур по аудиозаписям, но пока без скриншотов.
- "Мои Аудиозаписи" в меню теперь располагаются под Моими Видеозаписями для канона
- В настройках приватности "кто может видеть мои аудиозаписи" теперь располагаются под "кто может видеть мои видеозаписи"
- В настройках внешнего вида мои аудиозаписи тоже под видео
- Изменён <title> на странице аудиозаписей. Теперь показывается "Аудиозаписи" + имя пользователя в родительном падеже. А если это группа, то "Аудиозаписи группы". То же самое с плейлистами
- Исправлены ссылка в ссылке на странице с плейлистами
- При наведении на название песни больше не сносится иконка explicit
- Добавлена максимальная длина названия и описания плейлиста при редактировании.
* М
- Долокализована админка (точно помню, что уже делал это, но ладно)
- Удалён лишний пункт "audios" в getLeftMenuItemStatus (реально)
- Если. У плеера есть параметр "hideButtons", то при наведении на него не пропадает время.
- На странице редактирования/создания плейлиста если у песни длинное название, то оно да похуй короче. Ну в общем лучше стало
- Там где нужно, добавлена строка в конце файла
- Возвращена строка "photo" в английской локали (я её случайно удалил :+1: )
* у
- У изъятых аудиозаписей больше не показывается кнопка "добавить в группу". Так же при нажатии на кнопку удаления из коллекции окно не всплывает.
- "Удаление аудио из группы" тоже лучше работать стало с изъятыми аудио.
* з
- В пикере аудиозаписей "more..." заменено на "показать больше аудиозаписей"
- Если включен режим показа оставшегося времени, то при окончании песни больше не показывается "--1:--1"
- В пикере аудиозаписей, если у вас нет аудиозаписей и вы ничего не искали, показывается "Вы ещё не добавляли аудиозаписей"
- <hr>'ы стали серыми
- Добавлены title'ы у кнопок в большом плеере
- Проставлены alt'ы у плейлистов
* Musique: linux saport)
назар хуйню релизнул кста, плейерс клаб два не слушайте не рекомендую
* Update and rename gamma-00000-disco.sql to 00041-music.sql
* Update 00041-music.sql
---------
Co-authored-by: Ilya Prokopenko <dsrev@protonmail.com>
Co-authored-by: n1rwana <aydashkin@vk.com>
Co-authored-by: lalka2018 <99399973+lalka2016@users.noreply.github.com>
Co-authored-by: veselcraft <veselcraft@icloud.com>
Co-authored-by: DeathPleiad <43928323+Parad1seF0x@users.noreply.github.com>
2023-11-12 00:41:07 +03:00
|
|
|
|
border: solid 0.125rem #4F4F4F;
|
|
|
|
|
background: #606060;
|
2023-06-10 18:54:02 +03:00
|
|
|
|
}
|
|
|
|
|
|
2024-10-25 16:28:35 +03:00
|
|
|
|
.searchList #used a, .verticalGrayTabs #used a {
|
2023-06-10 18:54:02 +03:00
|
|
|
|
color: white;
|
|
|
|
|
}
|
|
|
|
|
|
2024-10-25 16:28:35 +03:00
|
|
|
|
.searchList li, .searchList a, .verticalGrayTabs a {
|
|
|
|
|
display: block;
|
|
|
|
|
font-size: 12px;
|
|
|
|
|
color: #2B587A !important;
|
|
|
|
|
cursor: pointer;
|
|
|
|
|
padding: 5px 9px 5px 9px;
|
2023-06-10 18:54:02 +03:00
|
|
|
|
}
|
|
|
|
|
|
2024-10-25 16:28:35 +03:00
|
|
|
|
.searchList a:hover, .verticalGrayTabs a:hover {
|
|
|
|
|
margin-left: 0px;
|
|
|
|
|
color: #2B587A !important;
|
|
|
|
|
background: #ebebeb;
|
2023-06-10 18:54:02 +03:00
|
|
|
|
}
|
|
|
|
|
|
2024-10-25 16:28:35 +03:00
|
|
|
|
.highlight {
|
|
|
|
|
background: #ffea6d;
|
|
|
|
|
border-bottom: 1px solid #c7c727;
|
|
|
|
|
font-weight: bolder;
|
|
|
|
|
padding: 0px 1px;
|
2023-06-10 18:54:02 +03:00
|
|
|
|
}
|
|
|
|
|
|
2024-10-25 16:28:35 +03:00
|
|
|
|
/* Options */
|
|
|
|
|
|
|
|
|
|
.page_wrap_content .page_search_options {
|
|
|
|
|
padding: 0px 4px 4px 4px;
|
2023-06-10 18:54:02 +03:00
|
|
|
|
}
|
|
|
|
|
|
2024-10-25 16:28:35 +03:00
|
|
|
|
.page_wrap_content .page_search_options .search_option {
|
|
|
|
|
user-select: none;
|
Music, finally! (#512)
* Add audio upload feature
* Add audio embed thing
* Move bullet.gif to ovk
* Draft some music API methods
* Add support for base64 ids to Audios.getById
* Disallow having more than 65k audios in playlist
* Add playlist model
* Draft some playlist-related API methods
* Fix behabiour of album-related methods
Generators f***** me in le a**
* Add IDv3 autofill
* Add sql dumps
i forgor to upload it xdddd
* Add playlists sql
* Fix audio upload not working on Windows 11 because Windows is the worst operating system which doesn't work properly under any circumstances
* Fix cocksex in audio.get
yes
* Интерфейсы
* Interface updade
* Update en.strings
* Add audio queue
* Make repeat button work
* Some improvements to audio queue
* Фгвшщ йгугу шьзкщмуьутеы
* Make shuffle and "наушники" buttons work, add f...
avicons when playing audio, save some values (like volume and last played track) to localstorage, add ability to toggle time type in player, fix uploading audios with cover (maybe) and add dragndrop to upload page
* Add funny tip with time when hover track div
* Add something
* Add audios picker & move track in smal player вниз
* Summary (required)
Description
* [WIP] Add calls, stories and clips.
Изменены фавиконки (поменьше стали)
У миниплеера ползунок теперь в стиле bsdn и большого плеера, добавлен ползунок громкости
Добавлена кнопка добавления аудио в группу (у миниплеера)
Если вы смотрите аудио группы, которой можете управлять, появляется кнопка "удалить аудио из группы"
Снизу плейлиста в списке теперь показывается автор.
При прикреплении аудиозаписей к посту теперь есть поиск "по композиции" и "по исполнителю"
Добавил explicit.svg, который я забыл добавить в предыдущем коммите.
Вкладочки немного переделаны
При наведении на кнопки "трек вперёд" или "трек назад" показывается название предыдущего или следующего трека соответственно
* 1 new commit to master: [WIP]: Add audios
- Теперь группа может разрешать загружать всем треки в неё
- Теперь треки загружаются на сервер ajax'ом, и так можно очень много аудио загружать
- Вёрстка списка плейлистов изменена, теперь она на гридах
- Немного изменено апи, теперь метод editAlbum сохраняет новую информацию ee объект плейлистов теперь возвращают реальное время
- Удалены лишние пути из routes.yml
- При переключении страниц теперь если на текущей странице есть играющий трек, он нормально подсвечивается
- Из init-db.sql удалены таблицы аудиозаписей
- В Groups.getSettings и groups.edit теперь есть информация о аудиозаписях
* (смешное название коммита)
- Теперь на странице пользователя/группы показываются три случайные песни, а не первые три как раньше
- Теперь пробел на странице аудио не перемещает вас в низ страницы
- Оптимизирован мини-плеер, теперь он инициализируется при любом нажатии на него, а не при наведении
- Теперь при завершении проигрывания трека в мини-плеере он ищет другой трек рядом, и если находит то воспроизводит. Будет удобно для постов с подборками треков
- Поиск теперь показывает 14 результатов
- Теперь при возникновении ошибки загрузки аудио она нормально отображается
- Вместе с плеером на странице с аудиозаписями теперь двигаются и вкладки
- Добавление аудио в группу по идее должно нормально работать
* Implement playlists listens
- У плейлистов теперь есть прослушивания в общем.
- Прослушивания у большого плеера теперь засчитываются, если трек был дослушан до конца
- В объекте плейлистов теперь возвращается listens и cover_url
- Получение плееров через /audios/context переписано, повторяющийся код удалён, правда сильно количество строк сократить не получилось
- Теперь цвета плеера темнее, а иконка проигрывания изменена
- Теперь, если очередь из треков кончилась, то плеер перенаправляет вас в начало очереди.
* php 8.2 fixxxxxxxxxxxxxxxxxxxxxxx
* Implement audiostatuses
Добавлены аудиостатусы (у пользователей), блок с друзьями, слушающих музыку на странице аудиозаписей, объект status_audio в users.get, улучшены настройки приватности и ещё что-то
* ?
- Переделан метод в классе user для получения друзей с проигрываемыми песнями. Теперь среди них могут появляться и группы (хз стоит ли оставлять это или нет). Так же больше не показываются удалённые пользователи
- Трек у плеера теперь двигается немного плавнее. Ещё теперь нету смешных багов с подсказкой времени, когда можно было увести её за экран или промотать дальше трека. Переключить повторение трека теперь можно нажатием кнопки R.
- Длинное название трека больше не сносит время
- Наверное, теперь аудиозаписи нормально отображаются в темах midnight и modern
- Аудиозаписи больше не крашаются, если пользователь неавторизован.
- Немного переделан миниплеер.
- В миниплеере теперь громкость берётся из локалсторейджа.
- Улучшено редактирование аудиозаписей. Теперь данные в дата атрибуты нормально сохраняются, а так же слова песни и метка "explicit" меняются
- Удалён css, оставшийся ещё от public technical preview 1, а так же путь /audios{num}
- При наведении на трек теперь пропадает время, и на его месте появляются кнопки
- Стандартная аватарка в midnight теперь инвертируется
- В админке в редактировании аудио теперь показывается дата редактирования, дата создания, длина и оригинальный файл аудио. Так же на странице редактирования больше нет вылетов, если вы задали несуществующий аккаунт
* !
- Добавлены строки для мобильной темы
- Добавлено предупреждение перед полным удалением плейлиста
- Нажатие кнопки M = нажатие кнопки наушников
- В классе апи Audio поставлены willExecuteWriteAction, ещё теперь нельзя получить число аудиозаписей у пользователей, которые их закрыли. Ещё теперь нельзя получать uploaded_only аудиозаписи у тех ну вы поняли короче.
- При наведении на длинное название песни оно теперь показывается полностью
- Надо ещё что-то сюда написать, так что: При редактировании аудиозаписи название окна теперь не "Редактировать", а "Редактировать аудиозапись", а вместо кнопки OK кнопка "Сохранить"
* .
- Добавлен тур по аудиозаписям, но пока без скриншотов.
- "Мои Аудиозаписи" в меню теперь располагаются под Моими Видеозаписями для канона
- В настройках приватности "кто может видеть мои аудиозаписи" теперь располагаются под "кто может видеть мои видеозаписи"
- В настройках внешнего вида мои аудиозаписи тоже под видео
- Изменён <title> на странице аудиозаписей. Теперь показывается "Аудиозаписи" + имя пользователя в родительном падеже. А если это группа, то "Аудиозаписи группы". То же самое с плейлистами
- Исправлены ссылка в ссылке на странице с плейлистами
- При наведении на название песни больше не сносится иконка explicit
- Добавлена максимальная длина названия и описания плейлиста при редактировании.
* М
- Долокализована админка (точно помню, что уже делал это, но ладно)
- Удалён лишний пункт "audios" в getLeftMenuItemStatus (реально)
- Если. У плеера есть параметр "hideButtons", то при наведении на него не пропадает время.
- На странице редактирования/создания плейлиста если у песни длинное название, то оно да похуй короче. Ну в общем лучше стало
- Там где нужно, добавлена строка в конце файла
- Возвращена строка "photo" в английской локали (я её случайно удалил :+1: )
* у
- У изъятых аудиозаписей больше не показывается кнопка "добавить в группу". Так же при нажатии на кнопку удаления из коллекции окно не всплывает.
- "Удаление аудио из группы" тоже лучше работать стало с изъятыми аудио.
* з
- В пикере аудиозаписей "more..." заменено на "показать больше аудиозаписей"
- Если включен режим показа оставшегося времени, то при окончании песни больше не показывается "--1:--1"
- В пикере аудиозаписей, если у вас нет аудиозаписей и вы ничего не искали, показывается "Вы ещё не добавляли аудиозаписей"
- <hr>'ы стали серыми
- Добавлены title'ы у кнопок в большом плеере
- Проставлены alt'ы у плейлистов
* Musique: linux saport)
назар хуйню релизнул кста, плейерс клаб два не слушайте не рекомендую
* Update and rename gamma-00000-disco.sql to 00041-music.sql
* Update 00041-music.sql
---------
Co-authored-by: Ilya Prokopenko <dsrev@protonmail.com>
Co-authored-by: n1rwana <aydashkin@vk.com>
Co-authored-by: lalka2018 <99399973+lalka2016@users.noreply.github.com>
Co-authored-by: veselcraft <veselcraft@icloud.com>
Co-authored-by: DeathPleiad <43928323+Parad1seF0x@users.noreply.github.com>
2023-11-12 00:41:07 +03:00
|
|
|
|
}
|
|
|
|
|
|
2024-10-25 16:28:35 +03:00
|
|
|
|
.page_wrap_content .page_search_options .search_option .search_option_name_ico {
|
|
|
|
|
width: 9px;
|
|
|
|
|
height: 8px;
|
|
|
|
|
display: inline-block;
|
|
|
|
|
background-repeat: no-repeat;
|
|
|
|
|
background: url('/assets/packages/static/openvk/img/arrows.png');
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.page_wrap_content .page_search_options .search_option.search_option_hidden .search_option_name_ico {
|
|
|
|
|
background-position: -9px 0px;
|
2023-06-10 18:54:02 +03:00
|
|
|
|
}
|
|
|
|
|
|
2024-10-25 16:28:35 +03:00
|
|
|
|
.page_wrap_content .page_search_options .search_option.search_option_hidden .search_option_content {
|
|
|
|
|
display: none;
|
2023-06-10 18:54:02 +03:00
|
|
|
|
}
|
|
|
|
|
|
2024-10-25 16:28:35 +03:00
|
|
|
|
.page_wrap_content .page_search_options .search_option .search_option_name {
|
|
|
|
|
cursor: pointer;
|
2023-06-10 18:54:02 +03:00
|
|
|
|
background-color: #EAEAEA;
|
2024-10-25 16:28:35 +03:00
|
|
|
|
padding: 5px 5px 5px 5px;
|
2023-06-10 18:54:02 +03:00
|
|
|
|
font-weight: 600;
|
|
|
|
|
color: #585858;
|
|
|
|
|
border-bottom: 2px solid #E4E4E4;
|
|
|
|
|
|
2024-10-25 16:28:35 +03:00
|
|
|
|
overflow: hidden;
|
|
|
|
|
text-overflow: ellipsis;
|
|
|
|
|
white-space: nowrap;
|
2023-06-10 18:54:02 +03:00
|
|
|
|
}
|
|
|
|
|
|
2024-10-25 16:28:35 +03:00
|
|
|
|
.page_wrap_content .page_search_options .search_option .search_option_content {
|
2023-06-10 18:54:02 +03:00
|
|
|
|
margin-top: -5px;
|
2024-10-25 16:28:35 +03:00
|
|
|
|
padding-top: 10px;
|
|
|
|
|
padding-bottom: 6px;
|
2023-06-10 18:54:02 +03:00
|
|
|
|
}
|
|
|
|
|
|
2024-10-25 16:28:35 +03:00
|
|
|
|
.page_wrap_content .page_search_options .search_option .search_option_content label {
|
|
|
|
|
display: block;
|
2023-06-10 18:54:02 +03:00
|
|
|
|
}
|
|
|
|
|
|
2024-10-25 16:28:35 +03:00
|
|
|
|
.page_wrap_content .page_search_options .search_option .search_option_content select {
|
|
|
|
|
padding-left: 3px;
|
|
|
|
|
padding-top: 3px;
|
|
|
|
|
padding-bottom: 3px;
|
|
|
|
|
width: 100%;
|
2023-06-10 18:54:02 +03:00
|
|
|
|
}
|
|
|
|
|
|
2024-10-25 16:28:35 +03:00
|
|
|
|
.page_wrap_content .page_search_options #search_reset {
|
|
|
|
|
margin-top: 5px;
|
2023-06-10 18:54:02 +03:00
|
|
|
|
}
|
|
|
|
|
|
2024-10-25 16:28:35 +03:00
|
|
|
|
.page_wrap_content .page_search_options .search_option .search_option_content input[type=text], .page_wrap_content .page_search_options .search_option .search_option_content input[type=date] {
|
|
|
|
|
margin-bottom: 5px;
|
2023-06-10 18:54:02 +03:00
|
|
|
|
}
|
|
|
|
|
|
2024-10-25 16:28:35 +03:00
|
|
|
|
.content_page_error {
|
|
|
|
|
background: white;
|
|
|
|
|
border: #DEDEDE solid 1px;
|
|
|
|
|
height: 100%;
|
|
|
|
|
|
|
|
|
|
display: flex;
|
|
|
|
|
align-items: center;
|
|
|
|
|
justify-content: center;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.content_page_error span {
|
|
|
|
|
color: #707070;
|
|
|
|
|
display: block;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/* Da search end. */
|
|
|
|
|
|
2023-05-26 18:13:47 +03:00
|
|
|
|
#standaloneCommentBox {
|
|
|
|
|
position: sticky;
|
|
|
|
|
top: 0;
|
|
|
|
|
background-color: #fff;
|
|
|
|
|
border-bottom: 1px dotted #8b8b8b;
|
|
|
|
|
z-index: 10;
|
2023-05-26 18:21:56 +03:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.page_content.overscrolled div[class$="_small_block"] {
|
|
|
|
|
position: absolute;
|
|
|
|
|
visibility: hidden;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.page_content.overscrolled div[class$="_big_block"] {
|
2023-06-11 14:48:59 +03:00
|
|
|
|
width: 100%;
|
|
|
|
|
}
|
2023-06-22 12:39:25 +03:00
|
|
|
|
|
2023-07-05 14:54:58 +03:00
|
|
|
|
.attachment_note_icon {
|
|
|
|
|
max-width: 9px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.attachment_note_text {
|
|
|
|
|
color: #605F63;
|
|
|
|
|
margin-left: 2px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.attachment_note {
|
|
|
|
|
user-select: none;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#notesList
|
|
|
|
|
{
|
|
|
|
|
overflow-y: scroll;
|
|
|
|
|
max-height: 130px;
|
|
|
|
|
margin-top: 5px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.ntSelect
|
|
|
|
|
{
|
|
|
|
|
cursor: pointer;
|
|
|
|
|
padding: 6px;
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.ntSelect:hover
|
|
|
|
|
{
|
|
|
|
|
background-color: rgb(233, 232, 232);
|
|
|
|
|
}
|
2023-07-06 13:20:49 +03:00
|
|
|
|
|
|
|
|
|
body.article {
|
|
|
|
|
height: 100vh;
|
|
|
|
|
overflow-y: hidden;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
body.article .articleView {
|
|
|
|
|
display: unset;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
body.article .floating_sidebar, body.article .page_content {
|
|
|
|
|
display: none;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.articleView {
|
|
|
|
|
display: none;
|
|
|
|
|
position: absolute;
|
|
|
|
|
z-index: 128;
|
|
|
|
|
width: 100%;
|
|
|
|
|
height: 100vh;
|
|
|
|
|
padding: 20px;
|
|
|
|
|
box-sizing: border-box;
|
|
|
|
|
background-color: #fff;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.articleView_container {
|
|
|
|
|
width: 791px;
|
|
|
|
|
margin: auto;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.articleView_info {
|
|
|
|
|
display: flex;
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
align-items: center;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.articleView_author {
|
|
|
|
|
display: flex;
|
|
|
|
|
gap: 10px;
|
|
|
|
|
align-items: flex-start;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.articleView_author > img {
|
|
|
|
|
width: 48px;
|
|
|
|
|
height: 48px;
|
|
|
|
|
object-fit: cover;
|
|
|
|
|
border-radius: 100%;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.articleView_author > div {
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.articleView_author > div > span {
|
|
|
|
|
font-size: 13pt;
|
|
|
|
|
font-weight: 600;
|
|
|
|
|
font-family: sans-serif;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.articleView_author > div > span > a {
|
|
|
|
|
color: #000;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.articleView_author > div > time {
|
|
|
|
|
font-size: 11pt;
|
|
|
|
|
font-family: sans-serif;
|
|
|
|
|
color: grey;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.articleView_text {
|
|
|
|
|
padding: 30px 0;
|
|
|
|
|
font-size: 19px;
|
|
|
|
|
font-family: serif;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.articleView_text h1, .articleView_text h2, .articleView_text h3, .articleView_text h4 {
|
|
|
|
|
font-family: sans-serif;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.articleView_text h1 {
|
|
|
|
|
font-size: 38px;
|
|
|
|
|
line-height: 41px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.articleView_text h2 {
|
|
|
|
|
font-size: 32px;
|
|
|
|
|
line-height: 1.13em;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.articleView_text h3 {
|
|
|
|
|
font-size: 24px;
|
|
|
|
|
line-height: 1.4em;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.articleView_text h4 {
|
|
|
|
|
font-size: 19px;
|
|
|
|
|
line-height: 1.2em;
|
|
|
|
|
color: black;
|
|
|
|
|
border: none;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.articleView_text p {
|
|
|
|
|
margin-top: 24px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.articleView_text p:first-of-type {
|
|
|
|
|
margin-top: 40px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.articleView_text ::selection {
|
|
|
|
|
color: #fff;
|
|
|
|
|
background: #000;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.articleView_link > a {
|
|
|
|
|
font-size: 14px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.articleView_text hr {
|
|
|
|
|
border: none;
|
|
|
|
|
height: 20px;
|
|
|
|
|
background: url(data:image/svg+xml;charset=utf-8,%3Csvg%20height%3D%229%22%20width%3D%2235%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cg%20fill%3D%22none%22%20fill-rule%3D%22evenodd%22%20opacity%3D%22.5%22%3E%3Cpath%20d%3D%22m0%200h35v9h-35z%22%2F%3E%3Cpath%20d%3D%22m3.997%200h1v3h-1zm4.147%201.817.5.866-2.598%201.5-.5-.866zm.5%204.5-.5.866-2.598-1.5.5-.866zm-3.647%202.683h-1v-3h1zm-4.147-1.817-.5-.866%202.598-1.5.5.866zm-.5-4.5.5-.866%202.598%201.5-.5.866zm16.647-2.683h1v3h-1zm4.147%201.817.5.866-2.598%201.5-.5-.866zm.5%204.5-.5.866-2.598-1.5.5-.866zm-3.647%202.683h-1v-3h1zm-4.147-1.817-.5-.866%202.598-1.5.5.866zm-.5-4.5.5-.866%202.598%201.5-.5.866zm16.647-2.683h1v3h-1zm4.147%201.817.5.866-2.598%201.5-.5-.866zm.5%204.5-.5.866-2.598-1.5.5-.866zm-3.647%202.683h-1v-3h1zm-4.147-1.817-.5-.866%202.598-1.5.5.866zm-.5-4.5.5-.866%202.598%201.5-.5.866z%22%20fill%3D%22%23000%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E) no-repeat center;
|
|
|
|
|
margin: 0;
|
|
|
|
|
}
|
|
|
|
|
#articleCloseButton {
|
|
|
|
|
position: absolute;
|
|
|
|
|
right: 22px;
|
|
|
|
|
font-size: 12px;
|
2023-09-14 20:36:29 +03:00
|
|
|
|
}
|
|
|
|
|
|
2024-11-01 14:46:41 +03:00
|
|
|
|
.post .sourceDiv {
|
|
|
|
|
margin-top: 3px;
|
|
|
|
|
margin-left: 4px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.post .sourceDiv span {
|
|
|
|
|
color: grey;
|
|
|
|
|
font-size: 10px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.post .sourceDiv a:hover {
|
|
|
|
|
text-decoration: underline;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#source_flex_kunteynir {
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
gap: 22px;
|
|
|
|
|
}
|
|
|
|
|
|
2023-11-16 19:44:12 +03:00
|
|
|
|
.sugglist {
|
|
|
|
|
padding-bottom: 5px;
|
|
|
|
|
padding-top: 5px;
|
|
|
|
|
margin-bottom: -5px;
|
|
|
|
|
padding-left: 9px;
|
|
|
|
|
border-top: 1px solid gray;
|
|
|
|
|
background-color: #e6e6e6;
|
|
|
|
|
margin-top: 5px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.sugglist a {
|
|
|
|
|
color: #626262;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.suggestionControls {
|
|
|
|
|
text-align: center;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.button.loaded {
|
|
|
|
|
background: #595959 url("/assets/packages/static/openvk/img/loading_mini.gif") no-repeat 50% 50%;
|
|
|
|
|
padding: 2px 9px 7px 39px;
|
|
|
|
|
margin-bottom: -6px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@-moz-document url-prefix() {
|
|
|
|
|
.button.loaded {
|
|
|
|
|
padding: 16px 40px 6px 4px !important;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.sugglist a:hover {
|
|
|
|
|
text-decoration: underline;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.sugglist a[data-toogled="true"] {
|
|
|
|
|
text-decoration: underline;
|
|
|
|
|
color:#4a4a4a;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.authorIcon {
|
|
|
|
|
height: 11px;
|
|
|
|
|
margin-top: 1px;
|
|
|
|
|
width: 10px;
|
|
|
|
|
float: left;
|
|
|
|
|
background: url("/assets/packages/static/openvk/img/person.png") no-repeat 0 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.authorName {
|
|
|
|
|
margin-left: 4px;
|
|
|
|
|
font-weight: normal !important;
|
|
|
|
|
font-size: 11px;
|
|
|
|
|
}
|
|
|
|
|
|
2023-09-17 19:19:25 +03:00
|
|
|
|
.topGrayBlock {
|
|
|
|
|
background: #F0F0F0;
|
|
|
|
|
height: 37px;
|
|
|
|
|
border-bottom: 1px solid #C7C7C7;
|
|
|
|
|
}
|
|
|
|
|
|
2023-09-14 20:54:22 +03:00
|
|
|
|
.edited {
|
|
|
|
|
color: #9b9b9b;
|
|
|
|
|
}
|
|
|
|
|
|
2023-09-14 20:36:29 +03:00
|
|
|
|
.uploadedImage img {
|
|
|
|
|
max-height: 76px;
|
|
|
|
|
object-fit: cover;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.lagged {
|
|
|
|
|
filter: opacity(0.5);
|
Music, finally! (#512)
* Add audio upload feature
* Add audio embed thing
* Move bullet.gif to ovk
* Draft some music API methods
* Add support for base64 ids to Audios.getById
* Disallow having more than 65k audios in playlist
* Add playlist model
* Draft some playlist-related API methods
* Fix behabiour of album-related methods
Generators f***** me in le a**
* Add IDv3 autofill
* Add sql dumps
i forgor to upload it xdddd
* Add playlists sql
* Fix audio upload not working on Windows 11 because Windows is the worst operating system which doesn't work properly under any circumstances
* Fix cocksex in audio.get
yes
* Интерфейсы
* Interface updade
* Update en.strings
* Add audio queue
* Make repeat button work
* Some improvements to audio queue
* Фгвшщ йгугу шьзкщмуьутеы
* Make shuffle and "наушники" buttons work, add f...
avicons when playing audio, save some values (like volume and last played track) to localstorage, add ability to toggle time type in player, fix uploading audios with cover (maybe) and add dragndrop to upload page
* Add funny tip with time when hover track div
* Add something
* Add audios picker & move track in smal player вниз
* Summary (required)
Description
* [WIP] Add calls, stories and clips.
Изменены фавиконки (поменьше стали)
У миниплеера ползунок теперь в стиле bsdn и большого плеера, добавлен ползунок громкости
Добавлена кнопка добавления аудио в группу (у миниплеера)
Если вы смотрите аудио группы, которой можете управлять, появляется кнопка "удалить аудио из группы"
Снизу плейлиста в списке теперь показывается автор.
При прикреплении аудиозаписей к посту теперь есть поиск "по композиции" и "по исполнителю"
Добавил explicit.svg, который я забыл добавить в предыдущем коммите.
Вкладочки немного переделаны
При наведении на кнопки "трек вперёд" или "трек назад" показывается название предыдущего или следующего трека соответственно
* 1 new commit to master: [WIP]: Add audios
- Теперь группа может разрешать загружать всем треки в неё
- Теперь треки загружаются на сервер ajax'ом, и так можно очень много аудио загружать
- Вёрстка списка плейлистов изменена, теперь она на гридах
- Немного изменено апи, теперь метод editAlbum сохраняет новую информацию ee объект плейлистов теперь возвращают реальное время
- Удалены лишние пути из routes.yml
- При переключении страниц теперь если на текущей странице есть играющий трек, он нормально подсвечивается
- Из init-db.sql удалены таблицы аудиозаписей
- В Groups.getSettings и groups.edit теперь есть информация о аудиозаписях
* (смешное название коммита)
- Теперь на странице пользователя/группы показываются три случайные песни, а не первые три как раньше
- Теперь пробел на странице аудио не перемещает вас в низ страницы
- Оптимизирован мини-плеер, теперь он инициализируется при любом нажатии на него, а не при наведении
- Теперь при завершении проигрывания трека в мини-плеере он ищет другой трек рядом, и если находит то воспроизводит. Будет удобно для постов с подборками треков
- Поиск теперь показывает 14 результатов
- Теперь при возникновении ошибки загрузки аудио она нормально отображается
- Вместе с плеером на странице с аудиозаписями теперь двигаются и вкладки
- Добавление аудио в группу по идее должно нормально работать
* Implement playlists listens
- У плейлистов теперь есть прослушивания в общем.
- Прослушивания у большого плеера теперь засчитываются, если трек был дослушан до конца
- В объекте плейлистов теперь возвращается listens и cover_url
- Получение плееров через /audios/context переписано, повторяющийся код удалён, правда сильно количество строк сократить не получилось
- Теперь цвета плеера темнее, а иконка проигрывания изменена
- Теперь, если очередь из треков кончилась, то плеер перенаправляет вас в начало очереди.
* php 8.2 fixxxxxxxxxxxxxxxxxxxxxxx
* Implement audiostatuses
Добавлены аудиостатусы (у пользователей), блок с друзьями, слушающих музыку на странице аудиозаписей, объект status_audio в users.get, улучшены настройки приватности и ещё что-то
* ?
- Переделан метод в классе user для получения друзей с проигрываемыми песнями. Теперь среди них могут появляться и группы (хз стоит ли оставлять это или нет). Так же больше не показываются удалённые пользователи
- Трек у плеера теперь двигается немного плавнее. Ещё теперь нету смешных багов с подсказкой времени, когда можно было увести её за экран или промотать дальше трека. Переключить повторение трека теперь можно нажатием кнопки R.
- Длинное название трека больше не сносит время
- Наверное, теперь аудиозаписи нормально отображаются в темах midnight и modern
- Аудиозаписи больше не крашаются, если пользователь неавторизован.
- Немного переделан миниплеер.
- В миниплеере теперь громкость берётся из локалсторейджа.
- Улучшено редактирование аудиозаписей. Теперь данные в дата атрибуты нормально сохраняются, а так же слова песни и метка "explicit" меняются
- Удалён css, оставшийся ещё от public technical preview 1, а так же путь /audios{num}
- При наведении на трек теперь пропадает время, и на его месте появляются кнопки
- Стандартная аватарка в midnight теперь инвертируется
- В админке в редактировании аудио теперь показывается дата редактирования, дата создания, длина и оригинальный файл аудио. Так же на странице редактирования больше нет вылетов, если вы задали несуществующий аккаунт
* !
- Добавлены строки для мобильной темы
- Добавлено предупреждение перед полным удалением плейлиста
- Нажатие кнопки M = нажатие кнопки наушников
- В классе апи Audio поставлены willExecuteWriteAction, ещё теперь нельзя получить число аудиозаписей у пользователей, которые их закрыли. Ещё теперь нельзя получать uploaded_only аудиозаписи у тех ну вы поняли короче.
- При наведении на длинное название песни оно теперь показывается полностью
- Надо ещё что-то сюда написать, так что: При редактировании аудиозаписи название окна теперь не "Редактировать", а "Редактировать аудиозапись", а вместо кнопки OK кнопка "Сохранить"
* .
- Добавлен тур по аудиозаписям, но пока без скриншотов.
- "Мои Аудиозаписи" в меню теперь располагаются под Моими Видеозаписями для канона
- В настройках приватности "кто может видеть мои аудиозаписи" теперь располагаются под "кто может видеть мои видеозаписи"
- В настройках внешнего вида мои аудиозаписи тоже под видео
- Изменён <title> на странице аудиозаписей. Теперь показывается "Аудиозаписи" + имя пользователя в родительном падеже. А если это группа, то "Аудиозаписи группы". То же самое с плейлистами
- Исправлены ссылка в ссылке на странице с плейлистами
- При наведении на название песни больше не сносится иконка explicit
- Добавлена максимальная длина названия и описания плейлиста при редактировании.
* М
- Долокализована админка (точно помню, что уже делал это, но ладно)
- Удалён лишний пункт "audios" в getLeftMenuItemStatus (реально)
- Если. У плеера есть параметр "hideButtons", то при наведении на него не пропадает время.
- На странице редактирования/создания плейлиста если у песни длинное название, то оно да похуй короче. Ну в общем лучше стало
- Там где нужно, добавлена строка в конце файла
- Возвращена строка "photo" в английской локали (я её случайно удалил :+1: )
* у
- У изъятых аудиозаписей больше не показывается кнопка "добавить в группу". Так же при нажатии на кнопку удаления из коллекции окно не всплывает.
- "Удаление аудио из группы" тоже лучше работать стало с изъятыми аудио.
* з
- В пикере аудиозаписей "more..." заменено на "показать больше аудиозаписей"
- Если включен режим показа оставшегося времени, то при окончании песни больше не показывается "--1:--1"
- В пикере аудиозаписей, если у вас нет аудиозаписей и вы ничего не искали, показывается "Вы ещё не добавляли аудиозаписей"
- <hr>'ы стали серыми
- Добавлены title'ы у кнопок в большом плеере
- Проставлены alt'ы у плейлистов
* Musique: linux saport)
назар хуйню релизнул кста, плейерс клаб два не слушайте не рекомендую
* Update and rename gamma-00000-disco.sql to 00041-music.sql
* Update 00041-music.sql
---------
Co-authored-by: Ilya Prokopenko <dsrev@protonmail.com>
Co-authored-by: n1rwana <aydashkin@vk.com>
Co-authored-by: lalka2018 <99399973+lalka2016@users.noreply.github.com>
Co-authored-by: veselcraft <veselcraft@icloud.com>
Co-authored-by: DeathPleiad <43928323+Parad1seF0x@users.noreply.github.com>
2023-11-12 00:41:07 +03:00
|
|
|
|
cursor: not-allowed;
|
2023-09-14 20:36:29 +03:00
|
|
|
|
user-select: none;
|
|
|
|
|
}
|
|
|
|
|
|
2023-09-14 20:54:22 +03:00
|
|
|
|
.editMenu.loading {
|
|
|
|
|
filter: opacity(0.5);
|
|
|
|
|
cursor: progress;
|
|
|
|
|
user-select: none;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.editMenu.loading * {
|
|
|
|
|
pointer-events: none;
|
|
|
|
|
}
|
|
|
|
|
|
Music, finally! (#512)
* Add audio upload feature
* Add audio embed thing
* Move bullet.gif to ovk
* Draft some music API methods
* Add support for base64 ids to Audios.getById
* Disallow having more than 65k audios in playlist
* Add playlist model
* Draft some playlist-related API methods
* Fix behabiour of album-related methods
Generators f***** me in le a**
* Add IDv3 autofill
* Add sql dumps
i forgor to upload it xdddd
* Add playlists sql
* Fix audio upload not working on Windows 11 because Windows is the worst operating system which doesn't work properly under any circumstances
* Fix cocksex in audio.get
yes
* Интерфейсы
* Interface updade
* Update en.strings
* Add audio queue
* Make repeat button work
* Some improvements to audio queue
* Фгвшщ йгугу шьзкщмуьутеы
* Make shuffle and "наушники" buttons work, add f...
avicons when playing audio, save some values (like volume and last played track) to localstorage, add ability to toggle time type in player, fix uploading audios with cover (maybe) and add dragndrop to upload page
* Add funny tip with time when hover track div
* Add something
* Add audios picker & move track in smal player вниз
* Summary (required)
Description
* [WIP] Add calls, stories and clips.
Изменены фавиконки (поменьше стали)
У миниплеера ползунок теперь в стиле bsdn и большого плеера, добавлен ползунок громкости
Добавлена кнопка добавления аудио в группу (у миниплеера)
Если вы смотрите аудио группы, которой можете управлять, появляется кнопка "удалить аудио из группы"
Снизу плейлиста в списке теперь показывается автор.
При прикреплении аудиозаписей к посту теперь есть поиск "по композиции" и "по исполнителю"
Добавил explicit.svg, который я забыл добавить в предыдущем коммите.
Вкладочки немного переделаны
При наведении на кнопки "трек вперёд" или "трек назад" показывается название предыдущего или следующего трека соответственно
* 1 new commit to master: [WIP]: Add audios
- Теперь группа может разрешать загружать всем треки в неё
- Теперь треки загружаются на сервер ajax'ом, и так можно очень много аудио загружать
- Вёрстка списка плейлистов изменена, теперь она на гридах
- Немного изменено апи, теперь метод editAlbum сохраняет новую информацию ee объект плейлистов теперь возвращают реальное время
- Удалены лишние пути из routes.yml
- При переключении страниц теперь если на текущей странице есть играющий трек, он нормально подсвечивается
- Из init-db.sql удалены таблицы аудиозаписей
- В Groups.getSettings и groups.edit теперь есть информация о аудиозаписях
* (смешное название коммита)
- Теперь на странице пользователя/группы показываются три случайные песни, а не первые три как раньше
- Теперь пробел на странице аудио не перемещает вас в низ страницы
- Оптимизирован мини-плеер, теперь он инициализируется при любом нажатии на него, а не при наведении
- Теперь при завершении проигрывания трека в мини-плеере он ищет другой трек рядом, и если находит то воспроизводит. Будет удобно для постов с подборками треков
- Поиск теперь показывает 14 результатов
- Теперь при возникновении ошибки загрузки аудио она нормально отображается
- Вместе с плеером на странице с аудиозаписями теперь двигаются и вкладки
- Добавление аудио в группу по идее должно нормально работать
* Implement playlists listens
- У плейлистов теперь есть прослушивания в общем.
- Прослушивания у большого плеера теперь засчитываются, если трек был дослушан до конца
- В объекте плейлистов теперь возвращается listens и cover_url
- Получение плееров через /audios/context переписано, повторяющийся код удалён, правда сильно количество строк сократить не получилось
- Теперь цвета плеера темнее, а иконка проигрывания изменена
- Теперь, если очередь из треков кончилась, то плеер перенаправляет вас в начало очереди.
* php 8.2 fixxxxxxxxxxxxxxxxxxxxxxx
* Implement audiostatuses
Добавлены аудиостатусы (у пользователей), блок с друзьями, слушающих музыку на странице аудиозаписей, объект status_audio в users.get, улучшены настройки приватности и ещё что-то
* ?
- Переделан метод в классе user для получения друзей с проигрываемыми песнями. Теперь среди них могут появляться и группы (хз стоит ли оставлять это или нет). Так же больше не показываются удалённые пользователи
- Трек у плеера теперь двигается немного плавнее. Ещё теперь нету смешных багов с подсказкой времени, когда можно было увести её за экран или промотать дальше трека. Переключить повторение трека теперь можно нажатием кнопки R.
- Длинное название трека больше не сносит время
- Наверное, теперь аудиозаписи нормально отображаются в темах midnight и modern
- Аудиозаписи больше не крашаются, если пользователь неавторизован.
- Немного переделан миниплеер.
- В миниплеере теперь громкость берётся из локалсторейджа.
- Улучшено редактирование аудиозаписей. Теперь данные в дата атрибуты нормально сохраняются, а так же слова песни и метка "explicit" меняются
- Удалён css, оставшийся ещё от public technical preview 1, а так же путь /audios{num}
- При наведении на трек теперь пропадает время, и на его месте появляются кнопки
- Стандартная аватарка в midnight теперь инвертируется
- В админке в редактировании аудио теперь показывается дата редактирования, дата создания, длина и оригинальный файл аудио. Так же на странице редактирования больше нет вылетов, если вы задали несуществующий аккаунт
* !
- Добавлены строки для мобильной темы
- Добавлено предупреждение перед полным удалением плейлиста
- Нажатие кнопки M = нажатие кнопки наушников
- В классе апи Audio поставлены willExecuteWriteAction, ещё теперь нельзя получить число аудиозаписей у пользователей, которые их закрыли. Ещё теперь нельзя получать uploaded_only аудиозаписи у тех ну вы поняли короче.
- При наведении на длинное название песни оно теперь показывается полностью
- Надо ещё что-то сюда написать, так что: При редактировании аудиозаписи название окна теперь не "Редактировать", а "Редактировать аудиозапись", а вместо кнопки OK кнопка "Сохранить"
* .
- Добавлен тур по аудиозаписям, но пока без скриншотов.
- "Мои Аудиозаписи" в меню теперь располагаются под Моими Видеозаписями для канона
- В настройках приватности "кто может видеть мои аудиозаписи" теперь располагаются под "кто может видеть мои видеозаписи"
- В настройках внешнего вида мои аудиозаписи тоже под видео
- Изменён <title> на странице аудиозаписей. Теперь показывается "Аудиозаписи" + имя пользователя в родительном падеже. А если это группа, то "Аудиозаписи группы". То же самое с плейлистами
- Исправлены ссылка в ссылке на странице с плейлистами
- При наведении на название песни больше не сносится иконка explicit
- Добавлена максимальная длина названия и описания плейлиста при редактировании.
* М
- Долокализована админка (точно помню, что уже делал это, но ладно)
- Удалён лишний пункт "audios" в getLeftMenuItemStatus (реально)
- Если. У плеера есть параметр "hideButtons", то при наведении на него не пропадает время.
- На странице редактирования/создания плейлиста если у песни длинное название, то оно да похуй короче. Ну в общем лучше стало
- Там где нужно, добавлена строка в конце файла
- Возвращена строка "photo" в английской локали (я её случайно удалил :+1: )
* у
- У изъятых аудиозаписей больше не показывается кнопка "добавить в группу". Так же при нажатии на кнопку удаления из коллекции окно не всплывает.
- "Удаление аудио из группы" тоже лучше работать стало с изъятыми аудио.
* з
- В пикере аудиозаписей "more..." заменено на "показать больше аудиозаписей"
- Если включен режим показа оставшегося времени, то при окончании песни больше не показывается "--1:--1"
- В пикере аудиозаписей, если у вас нет аудиозаписей и вы ничего не искали, показывается "Вы ещё не добавляли аудиозаписей"
- <hr>'ы стали серыми
- Добавлены title'ы у кнопок в большом плеере
- Проставлены alt'ы у плейлистов
* Musique: linux saport)
назар хуйню релизнул кста, плейерс клаб два не слушайте не рекомендую
* Update and rename gamma-00000-disco.sql to 00041-music.sql
* Update 00041-music.sql
---------
Co-authored-by: Ilya Prokopenko <dsrev@protonmail.com>
Co-authored-by: n1rwana <aydashkin@vk.com>
Co-authored-by: lalka2018 <99399973+lalka2016@users.noreply.github.com>
Co-authored-by: veselcraft <veselcraft@icloud.com>
Co-authored-by: DeathPleiad <43928323+Parad1seF0x@users.noreply.github.com>
2023-11-12 00:41:07 +03:00
|
|
|
|
.lagged *, .lagged {
|
2023-09-14 20:36:29 +03:00
|
|
|
|
pointer-events: none;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.button.dragged {
|
|
|
|
|
background: #c4c4c4 !important;
|
|
|
|
|
border-color: #c4c4c4 !important;
|
|
|
|
|
color: black !important;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.whiteBox {
|
|
|
|
|
background: white;
|
|
|
|
|
width: 421px;
|
|
|
|
|
margin-left: auto;
|
|
|
|
|
margin-right: auto;
|
|
|
|
|
border: 1px solid #E8E8E8;
|
|
|
|
|
margin-top: 7%;
|
|
|
|
|
height: 231px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.boxContent {
|
|
|
|
|
padding: 24px 38px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.blueList {
|
|
|
|
|
list-style-type: none;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.blueList li {
|
|
|
|
|
color: black;
|
|
|
|
|
font-size: 11px;
|
|
|
|
|
padding-top: 7px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.blueList li::before {
|
|
|
|
|
content: " ";
|
|
|
|
|
width: 5px;
|
|
|
|
|
height: 5px;
|
|
|
|
|
display: inline-block;
|
|
|
|
|
vertical-align: bottom;
|
|
|
|
|
background-color: #73889C;
|
|
|
|
|
margin: 3px;
|
|
|
|
|
margin-left: 2px;
|
|
|
|
|
margin-right: 7px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.insertedPhoto {
|
|
|
|
|
background: white;
|
|
|
|
|
border: 1px solid #E8E7EA;
|
|
|
|
|
padding: 10px;
|
|
|
|
|
height: 100px;
|
|
|
|
|
margin-top: 6px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.uploadedImage {
|
|
|
|
|
float: right;
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.uploadedImageDescription {
|
|
|
|
|
width: 449px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.uploadedImageDescription textarea {
|
|
|
|
|
width: 84%;
|
|
|
|
|
height: 86px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.smallFrame {
|
|
|
|
|
border: 1px solid #E1E3E5;
|
|
|
|
|
background: #F0F0F0;
|
|
|
|
|
height: 33px;
|
|
|
|
|
text-align: center;
|
|
|
|
|
cursor: pointer;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.smallFrame .smallBtn {
|
|
|
|
|
margin-top: 10px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.smallFrame:hover {
|
|
|
|
|
background: #E9F0F1 !important;
|
|
|
|
|
}
|
2023-09-14 20:54:22 +03:00
|
|
|
|
|
Music, finally! (#512)
* Add audio upload feature
* Add audio embed thing
* Move bullet.gif to ovk
* Draft some music API methods
* Add support for base64 ids to Audios.getById
* Disallow having more than 65k audios in playlist
* Add playlist model
* Draft some playlist-related API methods
* Fix behabiour of album-related methods
Generators f***** me in le a**
* Add IDv3 autofill
* Add sql dumps
i forgor to upload it xdddd
* Add playlists sql
* Fix audio upload not working on Windows 11 because Windows is the worst operating system which doesn't work properly under any circumstances
* Fix cocksex in audio.get
yes
* Интерфейсы
* Interface updade
* Update en.strings
* Add audio queue
* Make repeat button work
* Some improvements to audio queue
* Фгвшщ йгугу шьзкщмуьутеы
* Make shuffle and "наушники" buttons work, add f...
avicons when playing audio, save some values (like volume and last played track) to localstorage, add ability to toggle time type in player, fix uploading audios with cover (maybe) and add dragndrop to upload page
* Add funny tip with time when hover track div
* Add something
* Add audios picker & move track in smal player вниз
* Summary (required)
Description
* [WIP] Add calls, stories and clips.
Изменены фавиконки (поменьше стали)
У миниплеера ползунок теперь в стиле bsdn и большого плеера, добавлен ползунок громкости
Добавлена кнопка добавления аудио в группу (у миниплеера)
Если вы смотрите аудио группы, которой можете управлять, появляется кнопка "удалить аудио из группы"
Снизу плейлиста в списке теперь показывается автор.
При прикреплении аудиозаписей к посту теперь есть поиск "по композиции" и "по исполнителю"
Добавил explicit.svg, который я забыл добавить в предыдущем коммите.
Вкладочки немного переделаны
При наведении на кнопки "трек вперёд" или "трек назад" показывается название предыдущего или следующего трека соответственно
* 1 new commit to master: [WIP]: Add audios
- Теперь группа может разрешать загружать всем треки в неё
- Теперь треки загружаются на сервер ajax'ом, и так можно очень много аудио загружать
- Вёрстка списка плейлистов изменена, теперь она на гридах
- Немного изменено апи, теперь метод editAlbum сохраняет новую информацию ee объект плейлистов теперь возвращают реальное время
- Удалены лишние пути из routes.yml
- При переключении страниц теперь если на текущей странице есть играющий трек, он нормально подсвечивается
- Из init-db.sql удалены таблицы аудиозаписей
- В Groups.getSettings и groups.edit теперь есть информация о аудиозаписях
* (смешное название коммита)
- Теперь на странице пользователя/группы показываются три случайные песни, а не первые три как раньше
- Теперь пробел на странице аудио не перемещает вас в низ страницы
- Оптимизирован мини-плеер, теперь он инициализируется при любом нажатии на него, а не при наведении
- Теперь при завершении проигрывания трека в мини-плеере он ищет другой трек рядом, и если находит то воспроизводит. Будет удобно для постов с подборками треков
- Поиск теперь показывает 14 результатов
- Теперь при возникновении ошибки загрузки аудио она нормально отображается
- Вместе с плеером на странице с аудиозаписями теперь двигаются и вкладки
- Добавление аудио в группу по идее должно нормально работать
* Implement playlists listens
- У плейлистов теперь есть прослушивания в общем.
- Прослушивания у большого плеера теперь засчитываются, если трек был дослушан до конца
- В объекте плейлистов теперь возвращается listens и cover_url
- Получение плееров через /audios/context переписано, повторяющийся код удалён, правда сильно количество строк сократить не получилось
- Теперь цвета плеера темнее, а иконка проигрывания изменена
- Теперь, если очередь из треков кончилась, то плеер перенаправляет вас в начало очереди.
* php 8.2 fixxxxxxxxxxxxxxxxxxxxxxx
* Implement audiostatuses
Добавлены аудиостатусы (у пользователей), блок с друзьями, слушающих музыку на странице аудиозаписей, объект status_audio в users.get, улучшены настройки приватности и ещё что-то
* ?
- Переделан метод в классе user для получения друзей с проигрываемыми песнями. Теперь среди них могут появляться и группы (хз стоит ли оставлять это или нет). Так же больше не показываются удалённые пользователи
- Трек у плеера теперь двигается немного плавнее. Ещё теперь нету смешных багов с подсказкой времени, когда можно было увести её за экран или промотать дальше трека. Переключить повторение трека теперь можно нажатием кнопки R.
- Длинное название трека больше не сносит время
- Наверное, теперь аудиозаписи нормально отображаются в темах midnight и modern
- Аудиозаписи больше не крашаются, если пользователь неавторизован.
- Немного переделан миниплеер.
- В миниплеере теперь громкость берётся из локалсторейджа.
- Улучшено редактирование аудиозаписей. Теперь данные в дата атрибуты нормально сохраняются, а так же слова песни и метка "explicit" меняются
- Удалён css, оставшийся ещё от public technical preview 1, а так же путь /audios{num}
- При наведении на трек теперь пропадает время, и на его месте появляются кнопки
- Стандартная аватарка в midnight теперь инвертируется
- В админке в редактировании аудио теперь показывается дата редактирования, дата создания, длина и оригинальный файл аудио. Так же на странице редактирования больше нет вылетов, если вы задали несуществующий аккаунт
* !
- Добавлены строки для мобильной темы
- Добавлено предупреждение перед полным удалением плейлиста
- Нажатие кнопки M = нажатие кнопки наушников
- В классе апи Audio поставлены willExecuteWriteAction, ещё теперь нельзя получить число аудиозаписей у пользователей, которые их закрыли. Ещё теперь нельзя получать uploaded_only аудиозаписи у тех ну вы поняли короче.
- При наведении на длинное название песни оно теперь показывается полностью
- Надо ещё что-то сюда написать, так что: При редактировании аудиозаписи название окна теперь не "Редактировать", а "Редактировать аудиозапись", а вместо кнопки OK кнопка "Сохранить"
* .
- Добавлен тур по аудиозаписям, но пока без скриншотов.
- "Мои Аудиозаписи" в меню теперь располагаются под Моими Видеозаписями для канона
- В настройках приватности "кто может видеть мои аудиозаписи" теперь располагаются под "кто может видеть мои видеозаписи"
- В настройках внешнего вида мои аудиозаписи тоже под видео
- Изменён <title> на странице аудиозаписей. Теперь показывается "Аудиозаписи" + имя пользователя в родительном падеже. А если это группа, то "Аудиозаписи группы". То же самое с плейлистами
- Исправлены ссылка в ссылке на странице с плейлистами
- При наведении на название песни больше не сносится иконка explicit
- Добавлена максимальная длина названия и описания плейлиста при редактировании.
* М
- Долокализована админка (точно помню, что уже делал это, но ладно)
- Удалён лишний пункт "audios" в getLeftMenuItemStatus (реально)
- Если. У плеера есть параметр "hideButtons", то при наведении на него не пропадает время.
- На странице редактирования/создания плейлиста если у песни длинное название, то оно да похуй короче. Ну в общем лучше стало
- Там где нужно, добавлена строка в конце файла
- Возвращена строка "photo" в английской локали (я её случайно удалил :+1: )
* у
- У изъятых аудиозаписей больше не показывается кнопка "добавить в группу". Так же при нажатии на кнопку удаления из коллекции окно не всплывает.
- "Удаление аудио из группы" тоже лучше работать стало с изъятыми аудио.
* з
- В пикере аудиозаписей "more..." заменено на "показать больше аудиозаписей"
- Если включен режим показа оставшегося времени, то при окончании песни больше не показывается "--1:--1"
- В пикере аудиозаписей, если у вас нет аудиозаписей и вы ничего не искали, показывается "Вы ещё не добавляли аудиозаписей"
- <hr>'ы стали серыми
- Добавлены title'ы у кнопок в большом плеере
- Проставлены alt'ы у плейлистов
* Musique: linux saport)
назар хуйню релизнул кста, плейерс клаб два не слушайте не рекомендую
* Update and rename gamma-00000-disco.sql to 00041-music.sql
* Update 00041-music.sql
---------
Co-authored-by: Ilya Prokopenko <dsrev@protonmail.com>
Co-authored-by: n1rwana <aydashkin@vk.com>
Co-authored-by: lalka2018 <99399973+lalka2016@users.noreply.github.com>
Co-authored-by: veselcraft <veselcraft@icloud.com>
Co-authored-by: DeathPleiad <43928323+Parad1seF0x@users.noreply.github.com>
2023-11-12 00:41:07 +03:00
|
|
|
|
hr {
|
|
|
|
|
background-color: #d8d8d8;
|
|
|
|
|
border: none;
|
|
|
|
|
height: 1px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.showMore, .showMoreAudiosPlaylist {
|
|
|
|
|
width: 100%;
|
|
|
|
|
text-align: center;
|
|
|
|
|
background: #d5d5d5;
|
|
|
|
|
height: 22px;
|
|
|
|
|
padding-top: 9px;
|
|
|
|
|
cursor: pointer;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#upload_container.uploading {
|
|
|
|
|
background: white url('/assets/packages/static/openvk/img/progressbar.gif') !important;
|
|
|
|
|
background-position-x: 0% !important;
|
|
|
|
|
background-position-y: 0% !important;
|
|
|
|
|
background-repeat: repeat !important;
|
|
|
|
|
background-repeat: no-repeat !important;
|
|
|
|
|
background-position: 50% !important;
|
|
|
|
|
}
|
2023-11-16 19:44:12 +03:00
|
|
|
|
|
2024-10-25 16:28:35 +03:00
|
|
|
|
.entity_vertical_list {
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
gap: 3px;
|
|
|
|
|
height: 197px;
|
|
|
|
|
overflow-y: auto;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.entity_vertical_list .entity_vertical_list_item {
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-direction: row;
|
|
|
|
|
justify-content: space-between;
|
|
|
|
|
gap: 4px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.entity_vertical_list .entity_vertical_list_item .first_column {
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-direction: row;
|
|
|
|
|
gap: 4px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.entity_vertical_list .entity_vertical_list_item .avatar {
|
|
|
|
|
display: block;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.entity_vertical_list .entity_vertical_list_item img {
|
|
|
|
|
width: 50px;
|
|
|
|
|
height: 50px;
|
|
|
|
|
object-fit: cover;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.entity_vertical_list .entity_vertical_list_item .info {
|
|
|
|
|
width: 300px;
|
|
|
|
|
display: flex;
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
justify-content: space-around;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
.entity_vertical_list.mini .entity_vertical_list_item img {
|
|
|
|
|
width: 35px;
|
|
|
|
|
height: 35px;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#gif_loader {
|
|
|
|
|
content: "";
|
|
|
|
|
display: inline-block;
|
|
|
|
|
background-image: url('/assets/packages/static/openvk/img/loading_mini.gif');
|
|
|
|
|
width: 30px;
|
|
|
|
|
height: 7px;
|
|
|
|
|
}
|