/
kev
/
Nextcloud_Users-mod
Обзор
Документация
Войти
/
kev
/
Nextcloud_Users-mod
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
css/admin.css
446 строк
10 KB
Evgeny Konovalov
first_commit
01 мар 2026, 10:22
01 мар 2026, 10:22
1750a95
Код
Авторство
О чём код?
/* Управление пользователями — светлая тема в стиле оригинала Nextcloud */ /* Контейнер контента: симметричные отступы, правый и нижний край всегда видны */ .users-mod-content { --app-sidebar-padding: calc(var(--default-grid-baseline, 4px) * 2); --app-sidebar-offset: 0; transition: --app-sidebar-offset 0ms !important; box-sizing: border-box; display: flex; flex-direction: column; border-radius: var(--body-container-radius); overflow: hidden; padding: 0; margin: 0; } .users-mod-content:not(.with-sidebar--full) { position: fixed; left: var(--body-container-margin); right: var(--body-container-margin); top: var(--header-height); bottom: var(--body-container-margin); width: auto; height: auto; min-height: 0; } /* Контраст: панели приложения — светлая поверхность и тёмный текст в любой теме */ #users-mod-app .users-mod-content, #users-mod-app .users-mod-sidebar, #users-mod-app .users-mod-detail { background: #ffffff !important; color: #222222 !important; } #users-mod-app .users-mod-list, #users-mod-app .users-mod-group-members { background: #ffffff !important; border-color: #e5e5e5 !important; } #users-mod-app .users-mod-list li { color: #222222 !important; } #users-mod-app .users-mod-list li:hover { background: #f5f5f5 !important; } #users-mod-app .users-mod-list li.active { background: var(--color-primary-element, #0082c9) !important; color: #fff !important; } #users-mod-app .users-mod-placeholder, #users-mod-app .users-mod-empty { color: #666666 !important; } #users-mod-app .users-mod-form-title, #users-mod-app .users-mod-form-grid > label { color: #222222 !important; } #users-mod-app .users-mod-form-actions .button.primary { background: var(--color-primary-element, #0082c9) !important; color: #fff !important; border: none; } #users-mod-app .users-mod-form-actions .button:not(.primary) { background: #f5f5f5 !important; color: #222222 !important; } /* Небольшой отступ надписей в шапке от левого края */ .users-mod-content > h2, .users-mod-content > .users-mod-desc { padding-left: 1rem; margin-left: 0; } .users-mod-admin { max-width: 100%; min-width: 0; font-weight: normal; } .users-mod-desc { color: #666666 !important; margin-bottom: 1rem; font-size: 0.95rem; } .users-mod-content .users-mod-layout { flex: 1; min-height: 0; overflow: auto; } .users-mod-layout { display: grid; grid-template-columns: 280px minmax(320px, 1fr); gap: 1.25rem; min-height: 420px; align-items: start; } @media (max-width: 768px) { .users-mod-layout { grid-template-columns: 1fr; } } /* Левая панель — светлый фон, как в оригинале */ .users-mod-sidebar { display: flex; flex-direction: column; gap: 1rem; border: 1px solid var(--color-border, #e5e5e5); border-radius: var(--border-radius, 8px); background: var(--color-background-plain, #fff); padding: 0.75rem; box-shadow: 0 1px 3px rgba(0,0,0,0.06); } .users-mod-block { display: flex; flex-direction: column; gap: 0.5rem; } .users-mod-block .users-mod-search { width: 100%; min-width: 0; max-width: none; padding: 0.4rem 0.6rem; font-size: 0.95rem; } .users-mod-btn-add { width: 100%; margin: 0; } .users-mod-list { list-style: none; margin: 0; padding: 0; max-height: 200px; overflow-y: auto; border: 1px solid var(--color-border, #e5e5e5); border-radius: var(--border-radius, 6px); background: var(--color-background-plain, #fff); } .users-mod-groups-list { max-height: 180px; } .users-mod-list li { padding: 0.5rem 0.75rem; border-bottom: 1px solid var(--color-border, #eee); cursor: pointer; font-size: 0.95rem; } .users-mod-list li:last-child { border-bottom: none; } .users-mod-list li:hover { background: var(--color-background-hover, #f5f5f5); } .users-mod-list li.active { background: var(--color-primary-element, #0082c9); color: var(--color-primary-text, #fff); } .users-mod-list li .displayname { font-weight: 500; } .users-mod-list li .userid, .users-mod-list li .gid { font-size: 0.85rem; opacity: 0.9; } .users-mod-empty { padding: 0.75rem; text-align: center; color: var(--color-text-lighter, #666); font-size: 0.9rem; } /* Правая панель — светлая, просторная */ .users-mod-detail { border: 1px solid var(--color-border, #e5e5e5); border-radius: var(--border-radius, 8px); background: var(--color-background-plain, #fff); padding: 1.25rem; min-width: 0; min-height: 320px; box-shadow: 0 1px 3px rgba(0,0,0,0.06); } .users-mod-placeholder { color: var(--color-text-lighter, #666); padding: 1.5rem 0; font-size: 0.95rem; } .users-mod-form-header { display: flex; align-items: center; gap: 1.5rem; flex-wrap: wrap; margin-bottom: 1rem; } .users-mod-form-title { margin: 0; font-size: 1.1rem; font-weight: 600; color: var(--color-main-text, #222); } .users-mod-form-enabled { display: inline-flex; align-items: center; gap: 0.35rem; font-weight: normal; font-size: 0.95rem; cursor: pointer; margin: 0; } #users-mod-app .users-mod-form-enabled { color: #222222 !important; } /* Форма: два столбца полей, подпись сверху */ .users-mod-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0.25rem 1.5rem; margin-bottom: 1rem; } .users-mod-form-grid.users-mod-form-grid--full { grid-column: 1 / -1; } .users-mod-form-grid > label { text-align: left; font-size: 0.9rem; font-weight: normal; color: var(--color-main-text, #222); margin-top: 0.75rem; } .users-mod-form-grid > label:first-child { margin-top: 0; } /* Метка и блок «Группы» — на всю ширину */ .users-mod-form-grid > label.users-mod-label-full, .users-mod-form-grid .users-mod-groups, .users-mod-form-grid .users-mod-group-members-wrap, .users-mod-form-grid .users-mod-password-group { grid-column: 1 / -1; } /* Поля ввода: ширина 60%, сдвиг влево */ .users-mod-form-grid { max-width: 100%; } /* Обычные поля и их подписи — 60% ширины, сдвиг влево */ .users-mod-form-grid > label:not(.users-mod-label-full), .users-mod-form-grid > input[type="text"], .users-mod-form-grid > input[type="email"], .users-mod-form-grid > input[type="url"] { max-width: 60%; } /* Группа «Изменить пароль»: выделенный блок, короткие поля */ .users-mod-password-group { display: grid; grid-template-columns: 1fr 1fr; gap: 0.25rem 1rem; align-items: start; border: 1px solid var(--color-border-dark, #dbdbdb); border-radius: var(--border-radius, 8px); padding: 1rem; margin-top: 0.75rem; background: var(--color-background-dark, #f5f5f5); max-width: 60%; } #users-mod-app .users-mod-password-group { background: #f5f5f5 !important; border-color: #e0e0e0 !important; } .users-mod-password-group-title { grid-column: 1 / -1; font-weight: 600; font-size: 0.95rem; margin: 0 0 0.25rem 0; color: var(--color-main-text, #222); } #users-mod-app .users-mod-password-group-title { color: #222222 !important; } .users-mod-password-group label { margin-top: 0; font-size: 0.9rem; } .users-mod-password-group input { max-width: 100%; width: 100%; box-sizing: border-box; } @media (max-width: 640px) { .users-mod-form-grid { grid-template-columns: 1fr; } } .users-mod-form-grid input[type="text"], .users-mod-form-grid input[type="email"], .users-mod-form-grid input[type="url"], .users-mod-form-grid input[type="password"] { min-width: 0; width: 100%; box-sizing: border-box; padding: 0.5rem 0.6rem; font-size: 0.95rem; } .users-mod-form-grid input[type="checkbox"] { margin-top: 0.75rem; width: auto; } .users-mod-groups { display: flex; flex-wrap: wrap; gap: 0.5rem 1rem; min-height: 2rem; align-items: center; margin-top: 0.25rem; } .users-mod-groups.loading { color: var(--color-text-lighter, #666); } .users-mod-groups label { display: inline-flex; align-items: center; gap: 0.35rem; text-align: left; font-weight: normal; margin: 0; white-space: nowrap; font-size: 0.9rem; } .users-mod-form-actions { display: flex; gap: 0.75rem; margin-top: 1.25rem; padding-top: 0.75rem; border-top: 1px solid var(--color-border, #eee); } .users-mod-form-actions .button { margin: 0; } /* Форма новой группы — один блок как у нового пользователя */ .users-mod-new-group-form .users-mod-form-grid { max-width: 400px; } /* Форма группы: участники */ .users-mod-group-members-wrap { display: flex; flex-direction: column; gap: 0.5rem; } .users-mod-group-members { list-style: none; margin: 0; padding: 0; border: 1px solid var(--color-border, #e5e5e5); border-radius: var(--border-radius, 6px); max-height: 200px; overflow-y: auto; background: var(--color-background-plain, #fff); } .users-mod-group-members li { display: flex; align-items: center; justify-content: space-between; padding: 0.5rem 0.75rem; border-bottom: 1px solid var(--color-border, #eee); font-size: 0.95rem; } .users-mod-group-members li:last-child { border-bottom: none; } .users-mod-group-members .remove-member { padding: 0.25rem 0.5rem; font-size: 0.85rem; } .users-mod-group-add { display: flex; gap: 0.5rem; align-items: center; flex-wrap: wrap; } .users-mod-group-add select { min-width: 0; flex: 1; max-width: 280px; padding: 0.4rem 0.6rem; } .hidden { display: none !important; }