fix(minor): fix login style and routing for calendar, navbar

This commit is contained in:
Rushabh Mehta 2020-12-14 22:35:08 +05:30
parent 4b8d484215
commit 40025e2a70
15 changed files with 140 additions and 127 deletions

View file

@ -692,7 +692,7 @@ class DatabaseQuery(object):
if c:
conditions.append(c)
permision_script_name = get_server_script_map().get("permission_query").get(self.doctype)
permision_script_name = get_server_script_map().get("permission_query", {}).get(self.doctype)
if permision_script_name:
script = frappe.get_doc("Server Script", permision_script_name)
condition = script.get_permission_query_conditions(self.user)

View file

@ -300,7 +300,7 @@ frappe.patches.v13_0.update_duration_options
frappe.patches.v13_0.replace_old_data_import # 2020-06-24
frappe.patches.v13_0.create_custom_dashboards_cards_and_charts
frappe.patches.v13_0.rename_is_custom_field_in_dashboard_chart
frappe.patches.v13_0.add_standard_navbar_items
frappe.patches.v13_0.add_standard_navbar_items # 2020-12-15
frappe.patches.v13_0.generate_theme_files_in_public_folder
frappe.patches.v13_0.increase_password_length
frappe.patches.v12_0.fix_email_id_formatting

View file

@ -904,7 +904,6 @@ frappe.views.ListView = class ListView extends frappe.views.BaseList {
let escaped_subject = frappe.utils.escape_html(subject);
const seen = this.get_seen_class(doc);
console.log(this.get_form_link(doc));
let subject_html = `
<input class="level-item list-row-checkbox hidden-xs" type="checkbox"

View file

@ -117,6 +117,7 @@ frappe.router = {
// /app/user/view/tree = ["Tree", "User"]
// /app/user/user-001 = ["Form", "User", "user-001"]
// /app/user/user-001 = ["Form", "User", "user-001"]
// /app/event/view/calendar/default = ["List", "Event", "Calendar", "Default"]
let standard_route = route;
let doctype_route = this.routes[route[0]];
@ -128,6 +129,10 @@ frappe.router = {
standard_route = ['Tree', doctype_route.doctype];
} else {
standard_route = ['List', doctype_route.doctype, frappe.utils.to_title_case(route[2])];
if (route[3]) {
// calendar / kanban / dashboard name
standard_route.push(route[3]);
}
}
} else {
standard_route = ['Form', doctype_route.doctype, route[1]];

View file

@ -126,7 +126,7 @@ frappe.ui.setup_like_popover = ($parent, selector, check_not_liked=true) => {
let liked_by_list = $(`<ul class="list-unstyled"></ul>`);
// to show social profile of the user
let link_base = '#user-profile/';
let link_base = '/app/user-profile';
liked_by.forEach(user => {
// append user list item

View file

@ -7,6 +7,7 @@ frappe.provide("frappe.views.calendars");
frappe.views.CalendarView = class CalendarView extends frappe.views.ListView {
static load_last_view() {
const route = frappe.get_route();
console.log(route);
if (route.length === 3) {
const doctype = route[1];
const user_settings = frappe.get_user_settings(doctype)['Calendar'] || {};

View file

@ -0,0 +1,86 @@
.center-content {
display: flex;
justify-content: center;
align-items: center;
}
.btn {
border: none;
border-radius: var(--border-radius);
box-shadow: var(--btn-shadow);
font-size: var(--text-md);
&.icon-btn {
height: var(--btn-height);
padding: 0px;
@extend .center-content;
&.btn-default, &.btn-secondary {
min-width: 28px;
}
}
}
.btn-secondary-dark {
@include button-variant(
$background: $gray-500,
$border: $gray-500,
$hover-background: lighten($gray-500, 1%),
$hover-border: $gray-500,
$active-background: lighten($gray-500, 1%),
$active-border: darken($gray-500, 12.5%)
);
color: $white;
&:hover, &:active, &:focus {
color: $white;
}
}
.btn-primary-light {
@include button-variant(
$background: $primary-light,
$border: $primary-light,
$hover-background: lighten($primary-light, 1%),
$hover-border: $primary-light,
$active-background: lighten($primary-light, 1%),
$active-border: darken($primary-light, 12.5%)
);
color: var(--blue-500);
&:hover, &:active {
color: var(--blue-500);
}
&:focus {
box-shadow: 0 0 0 0.2rem var(--blue-50)
}
}
.btn.btn-secondary {
background-color: var(--control-bg);
color: var(--text-color);
&:hover, &:active {
background-color: var(--gray-300);
color: var(--text-color);
}
}
.btn.btn-default {
background-color: var(--fg-color);
color: var(--text-color);
&:hover, &:active {
background: var(--fg-hover-color);
color: var(--text-color);
}
}
.btn.btn-primary {
background-color: var(--primary-color);
white-space: nowrap;
--icon-stroke: white;
--icon-fill-bg: var(--primary-color);
}
.btn.btn-danger {
background-color: var(--red-400);
color: $white;
}

View file

@ -104,97 +104,10 @@ img {
color: var(--gray-500) !important;
}
.center-content {
display: flex;
justify-content: center;
align-items: center;
}
.no-underline {
text-decoration: none !important;
}
.btn {
border: none;
border-radius: var(--border-radius);
box-shadow: var(--btn-shadow);
font-size: var(--text-md);
&.icon-btn {
height: var(--btn-height);
padding: 0px;
@extend .center-content;
&.btn-default, &.btn-secondary {
min-width: 28px;
}
}
}
.btn-secondary-dark {
@include button-variant(
$background: $gray-500,
$border: $gray-500,
$hover-background: lighten($gray-500, 1%),
$hover-border: $gray-500,
$active-background: lighten($gray-500, 1%),
$active-border: darken($gray-500, 12.5%)
);
color: $white;
&:hover, &:active, &:focus {
color: $white;
}
}
.btn-primary-light {
@include button-variant(
$background: $primary-light,
$border: $primary-light,
$hover-background: lighten($primary-light, 1%),
$hover-border: $primary-light,
$active-background: lighten($primary-light, 1%),
$active-border: darken($primary-light, 12.5%)
);
color: var(--blue-500);
&:hover, &:active {
color: var(--blue-500);
}
&:focus {
box-shadow: 0 0 0 0.2rem var(--blue-50)
}
}
.btn.btn-secondary {
background-color: var(--control-bg);
color: var(--text-color);
&:hover, &:active {
background-color: var(--gray-300);
color: var(--text-color);
}
}
.btn.btn-default {
background-color: var(--fg-color);
color: var(--text-color);
&:hover, &:active {
background: var(--fg-hover-color);
color: var(--text-color);
}
}
.btn.btn-primary {
background-color: var(--primary-color);
white-space: nowrap;
--icon-stroke: white;
--icon-fill-bg: var(--primary-color);
}
.btn.btn-danger {
background-color: var(--red-400);
color: $white;
}
h1, h2, h3, h4 {
color: var(--text-color);
margin-bottom: var(--margin-md)

View file

@ -4,6 +4,7 @@
@import "~bootstrap/scss/bootstrap";
@import "global";
@import "../common/buttons";
@import "../common/flex";
@import "form";
@import "print_preview";

View file

@ -18,19 +18,20 @@
@include media-breakpoint-up(sm) {
.page-card {
padding: 45px;
padding-top: 45px;
padding-bottom: 45px;
background-color: #fff;
box-shadow: var(--shadow-base);
}
}
.page-card {
max-width: 470px;
max-width: 400px;
margin: 0 auto;
border-radius: var(--border-radius-md);
form {
max-width: 330px;
max-width: 320px;
margin: 0 auto;
.form-group {
@ -57,7 +58,7 @@
color: var(--text-color);
font-size: var(--text-base);
background-color: var(--control-bg);
margin-bottom: 10px;
margin-bottom: 1rem;
}
&.invalid {
@ -155,29 +156,28 @@
margin: var(--margin-md) 0;
}
}
}
.page-card-head {
margin: 0 auto;
text-align: center;
.page-card-head {
margin: 0 auto;
text-align: center;
font-size: var(--text-xl);
font-weight: 600;
margin-bottom: 2.5rem;
img {
max-height: 42px;
margin-bottom: var(--margin-lg, 30px);
}
h4 {
font-size: var(--text-xl);
font-weight: 600;
margin-bottom: var(--margin-lg);
img {
max-height: 42px;
margin-bottom: var(--margin-lg, 20px);
}
h4 {
font-size: var(--text-xl);
color: var(--text-color);
}
color: var(--text-color);
}
}
.sign-up-message {
margin-top: var(--margin-md);
margin-top: 2rem;
color: var(--text-light);
font-size: var(--text-md);

View file

@ -1 +1 @@
@import './website/index';
@import './website/index';

View file

@ -76,7 +76,13 @@
}
.footer-info {
margin-top: 1rem;
border-top: 1px solid $border-color;
color: $text-muted;
font-size: $font-size-sm;
}
.form-control {
border: none;
font-size: var(--text-md);
}

View file

@ -3,6 +3,7 @@
@import 'css_variables';
@import '~bootstrap/scss/bootstrap';
@import 'base';
@import "../common/buttons";
@import 'multilevel_dropdown';
@import 'website_image';
@import 'website_avatar';

View file

@ -176,7 +176,7 @@ def add_standard_navbar_items():
{
'item_label': 'My Profile',
'item_type': 'Route',
'route': '#user-profile',
'route': '/app/user-profile',
'is_standard': 1
},
{
@ -212,7 +212,7 @@ def add_standard_navbar_items():
{
'item_label': 'Background Jobs',
'item_type': 'Route',
'route': '#background_jobs',
'route': '/app/background_jobs',
'is_standard': 1
},
{
@ -242,6 +242,9 @@ def add_standard_navbar_items():
}
]
navbar_settings.settings_dropdown = []
navbar_settings.help_dropdown = []
for item in standard_navbar_items:
navbar_settings.append('settings_dropdown', item)

View file

@ -56,6 +56,13 @@
<link type="text/css" rel="stylesheet" href="/assets/css/login.css?ver={{ build_version }}">
{% endblock %}
{% macro logo_section() %}
<div class="page-card-head">
<img class="app-logo" src="{{ logo }}">
<h4>{{ _('Login to {0}').format(app_name or _("Frappe")) }}</h4>
</div>
{% endmacro %}
{% block page_content %}
<!-- {{ for_test }} -->
<div>
@ -68,11 +75,8 @@
</noscript>
<section class='for-login'>
<div class="login-content page-card">
{{ logo_section() }}
<form class="form-signin form-login" role="form">
<div class="page-card-head">
<img class="app-logo" src="{{ logo }}">
<h4>{{ _('Login to {0}').format(app_name or _("Frappe")) }}</h4>
</div>
{%- if social_login -%}
<div class="page-card-body">
<div class="social-logins text-center">
@ -107,11 +111,8 @@
<section class='for-email-login'>
<div class="login-content page-card">
{{ logo_section() }}
<form class="form-signin form-login" role="form">
<div class="page-card-head">
<img class="app-logo" src="{{ logo }}">
<h4>{{ _('Login to {0}').format(app_name or _("Frappe")) }}</h4>
</div>
{{ email_login_body() }}
</form>
</div>
@ -124,12 +125,9 @@
</section>
<section class='for-signup {{ "signup-disabled" if disable_signup else "" }}'>
<div class="login-content page-card">
{{ logo_section() }}
{%- if not disable_signup -%}
<form class="form-signin form-signup hide" role="form">
<div class="page-card-head">
<img class="app-logo" src="{{ logo }}">
<h4>{{ _('Sign Up') }}</h4>
</div>
<div class="page-card-body">
<div class="form-group">
<label class="form-label sr-only" for="signup_fullname">Full Name</label>