浏览代码

Fixed calendar, gantt loading, better messages page display in mobile, better back breadcrumb when no breadcrumbs

version-14
Anand Doshi 10 年前
父节点
当前提交
0a9c2ce972
共有 10 个文件被更改,包括 108 次插入80 次删除
  1. +1
    -1
      frappe/desk/page/messages/messages_main.html
  2. +4
    -3
      frappe/desk/page/messages/messages_row.html
  3. +3
    -3
      frappe/public/build.json
  4. +42
    -34
      frappe/public/css/mobile.css
  5. +0
    -4
      frappe/public/js/frappe/assets.js
  6. +6
    -0
      frappe/public/js/frappe/views/calendar.js
  7. +6
    -1
      frappe/public/js/frappe/views/container.js
  8. +4
    -0
      frappe/public/js/frappe/views/ganttview.js
  9. +1
    -1
      frappe/public/js/frappe/views/module/moduleview.js
  10. +41
    -33
      frappe/public/less/mobile.less

+ 1
- 1
frappe/desk/page/messages/messages_main.html 查看文件

@@ -1,6 +1,6 @@
<div class="message-box"> <div class="message-box">
<div class="media timeline-head"> <div class="media timeline-head">
<span class="pull-left avatar avatar-medium">
<span class="pull-left avatar avatar-medium hidden-xs">
<img class="media-object" src="{%= frappe.user.image() %}"> <img class="media-object" src="{%= frappe.user.image() %}">
</span> </span>
<div class="media-body"> <div class="media-body">


+ 4
- 3
frappe/desk/page/messages/messages_row.html 查看文件

@@ -2,9 +2,9 @@
{% if (data.owner==data.comment_docname && data.parenttype!="Assignment") { %} {% if (data.owner==data.comment_docname && data.parenttype!="Assignment") { %}
<span class="pull-left indicator orange" title="{%= __("Public") %}"></span> <span class="pull-left indicator orange" title="{%= __("Public") %}"></span>
{% } %} {% } %}
<div class="col-xs-9">
<div class="col-sm-9">
<div class="media"> <div class="media">
<div class="pull-left">
<div class="pull-left hidden-xs">
<span class="avatar avatar-small" title="{%= frappe.user.full_name(data.owner) %} "> <span class="avatar avatar-small" title="{%= frappe.user.full_name(data.owner) %} ">
<img class="media-object" src="{%= frappe.user.image(data.owner) %}"> <img class="media-object" src="{%= frappe.user.image(data.owner) %}">
</span> </span>
@@ -14,8 +14,9 @@
</div> </div>
</div> </div>
</div> </div>
<div class="col-xs-3 text-right">
<div class="col-sm-3 text-right message-row-right">
<div class="text-muted"> <div class="text-muted">
<span class="hidden-sm hidden-md hidden-lg">{%= frappe.user.full_name(data.owner) %}, </span>
{%= comment_when(data.modified) %} {%= comment_when(data.modified) %}
</div> </div>
{% if (data.owner==user /* && !data.comment_type && data.parenttype!="Assignment" */ ) { %} {% if (data.owner==user /* && !data.comment_type && data.parenttype!="Assignment" */ ) { %}


+ 3
- 3
frappe/public/build.json 查看文件

@@ -172,9 +172,7 @@
"public/js/frappe/list/list_item_main_head.html", "public/js/frappe/list/list_item_main_head.html",
"public/js/frappe/list/list_item_row_head.html", "public/js/frappe/list/list_item_row_head.html",
"public/js/frappe/list/list_item_subject.html", "public/js/frappe/list/list_item_subject.html",
"public/js/frappe/list/listview.js",
"public/js/frappe/views/calendar.js",
"public/js/frappe/views/ganttview.js"
"public/js/frappe/list/listview.js"
], ],
"css/report.min.css": [ "css/report.min.css": [
"public/css/report.css", "public/css/report.css",
@@ -189,6 +187,8 @@
"public/js/frappe/views/reports/query_report.js", "public/js/frappe/views/reports/query_report.js",
"public/js/frappe/views/reports/grid_report.js", "public/js/frappe/views/reports/grid_report.js",
"public/js/frappe/views/reports/print_grid.html", "public/js/frappe/views/reports/print_grid.html",
"public/js/frappe/views/calendar.js",
"public/js/frappe/views/ganttview.js",


"public/js/lib/slickgrid/jquery.event.drag.js", "public/js/lib/slickgrid/jquery.event.drag.js",
"public/js/lib/slickgrid/plugins/slick.cellrangedecorator.js", "public/js/lib/slickgrid/plugins/slick.cellrangedecorator.js",


+ 42
- 34
frappe/public/css/mobile.css 查看文件

@@ -159,6 +159,10 @@
#page-messages .list-row { #page-messages .list-row {
padding: 7px 0px; padding: 7px 0px;
} }
#page-messages .message-row-right {
margin-top: 10px;
text-align: left;
}
} }
@media (max-width: 991px) { @media (max-width: 991px) {
.intro-area, .intro-area,
@@ -197,40 +201,6 @@
.navbar > .container > .navbar-right { .navbar > .container > .navbar-right {
float: right; float: right;
} }
body[data-route^="Module"] .navbar .navbar-home {
display: inline-block !important;
padding-left: 0px;
margin-left: 0px;
padding-top: 6px;
}
body[data-route^="Module"] .navbar .navbar-home:before {
font-family: FontAwesome;
font-weight: normal;
font-style: normal;
text-decoration: inherit;
-webkit-font-smoothing: antialiased;
*margin-right: .3em;
display: inline-block;
speak: none;
font-size: 24px;
transition: 0.2s;
position: relative;
top: 3px;
content: "\f104";
margin-right: 5px;
color: #6c7680;
}
body[data-route^="Module"] .navbar .navbar-home:hover:before,
body[data-route^="Module"] .navbar .navbar-home:focus:before,
body[data-route^="Module"] .navbar .navbar-home:active:before {
color: #36414c !important;
}
body[data-route^="Module"] .page-title {
width: 100%;
}
body[data-route^="Module"] .page-actions {
display: none !important;
}
.module-item { .module-item {
padding: 7px 0px !important; padding: 7px 0px !important;
} }
@@ -358,4 +328,42 @@
right: 25%; right: 25%;
text-align: center; text-align: center;
} }
body.no-breadcrumbs .navbar .navbar-home {
display: inline-block !important;
padding-left: 0px;
margin-left: 0px;
padding-top: 6px;
}
body.no-breadcrumbs .navbar .navbar-home:before {
font-family: FontAwesome;
font-weight: normal;
font-style: normal;
text-decoration: inherit;
-webkit-font-smoothing: antialiased;
*margin-right: .3em;
display: inline-block;
speak: none;
font-size: 24px;
transition: 0.2s;
position: relative;
top: 3px;
content: "\f104";
margin-right: 5px;
color: #6c7680;
}
body.no-breadcrumbs .navbar .navbar-home:hover:before,
body.no-breadcrumbs .navbar .navbar-home:focus:before,
body.no-breadcrumbs .navbar .navbar-home:active:before {
color: #36414c !important;
}
body[data-route=""] .navbar .navbar-home,
body[data-route="desktop"] .navbar .navbar-home {
display: none !important;
}
body[data-route^="Module"] .page-title {
width: 100%;
}
body[data-route^="Module"] .page-actions {
display: none !important;
}
} }

+ 0
- 4
frappe/public/js/frappe/assets.js 查看文件

@@ -148,13 +148,9 @@ frappe.assets = {
}, },
"Calendar": function() { "Calendar": function() {
frappe.assets.views["Report"](); frappe.assets.views["Report"]();
frappe.require('assets/frappe/js/lib/fullcalendar/fullcalendar.css');
frappe.require('assets/frappe/js/lib/fullcalendar/fullcalendar.js');
}, },
"Gantt": function() { "Gantt": function() {
frappe.assets.views["Report"](); frappe.assets.views["Report"]();
frappe.require('assets/frappe/js/lib/jQuery.Gantt/css/style.css');
frappe.require('assets/frappe/js/lib/jQuery.Gantt/js/jquery.fn.gantt.js');
}, },
} }
}; };

+ 6
- 0
frappe/public/js/frappe/views/calendar.js 查看文件

@@ -7,6 +7,10 @@ frappe.provide("frappe.views.calendars");
frappe.views.CalendarFactory = frappe.views.Factory.extend({ frappe.views.CalendarFactory = frappe.views.Factory.extend({
make: function(route) { make: function(route) {
var me = this; var me = this;

frappe.require('assets/frappe/js/lib/fullcalendar/fullcalendar.css');
frappe.require('assets/frappe/js/lib/fullcalendar/fullcalendar.js');

frappe.model.with_doctype(route[1], function() { frappe.model.with_doctype(route[1], function() {
var options = { var options = {
doctype: route[1] doctype: route[1]
@@ -56,6 +60,8 @@ frappe.views.Calendar = Class.extend({
// .html(__("Select dates to create a new ") + __(me.doctype)) // .html(__("Select dates to create a new ") + __(me.doctype))
// .appendTo(this.$wrapper); // .appendTo(this.$wrapper);


console.log(this.$cal);

this.$cal.fullCalendar(this.cal_options); this.$cal.fullCalendar(this.cal_options);


this.set_css(); this.set_css();


+ 6
- 1
frappe/public/js/frappe/views/container.js 查看文件

@@ -85,7 +85,10 @@ frappe.views.Container = Class.extend({
update_breadcrumbs: function() { update_breadcrumbs: function() {
var breadcrumbs = frappe.breadcrumbs[frappe.get_route_str()]; var breadcrumbs = frappe.breadcrumbs[frappe.get_route_str()];
var $breadcrumbs = $("#navbar-breadcrumbs").empty(); var $breadcrumbs = $("#navbar-breadcrumbs").empty();
if(!breadcrumbs) return;
if(!breadcrumbs) {
$("body").addClass("no-breadcrumbs");
return;
}


if(breadcrumbs.module && breadcrumbs.module != "Desk") { if(breadcrumbs.module && breadcrumbs.module != "Desk") {
if(in_list(["Core", "Email", "Custom", "Workflow"], breadcrumbs.module)) if(in_list(["Core", "Email", "Custom", "Workflow"], breadcrumbs.module))
@@ -106,6 +109,8 @@ frappe.views.Container = Class.extend({
{doctype: breadcrumbs.doctype, label: __(breadcrumbs.doctype)})) {doctype: breadcrumbs.doctype, label: __(breadcrumbs.doctype)}))
.appendTo($breadcrumbs); .appendTo($breadcrumbs);
} }

$("body").removeClass("no-breadcrumbs");
}, },
rename_breadcrumbs: function(doctype, old_name, new_name) { rename_breadcrumbs: function(doctype, old_name, new_name) {
var old_route_str = ["Form", doctype, old_name].join("/"); var old_route_str = ["Form", doctype, old_name].join("/");


+ 4
- 0
frappe/public/js/frappe/views/ganttview.js 查看文件

@@ -6,6 +6,10 @@ frappe.provide("frappe.views.calendar");
frappe.views.GanttFactory = frappe.views.Factory.extend({ frappe.views.GanttFactory = frappe.views.Factory.extend({
make: function(route) { make: function(route) {
var me = this; var me = this;

frappe.require('assets/frappe/js/lib/jQuery.Gantt/css/style.css');
frappe.require('assets/frappe/js/lib/jQuery.Gantt/js/jquery.fn.gantt.js');

frappe.model.with_doctype(route[1], function() { frappe.model.with_doctype(route[1], function() {
var page = me.make_page(); var page = me.make_page();
$(page).on("show", function() { $(page).on("show", function() {


+ 1
- 1
frappe/public/js/frappe/views/module/moduleview.js 查看文件

@@ -61,7 +61,7 @@ frappe.views.moduleview.ModuleView = Class.extend({
.appendTo(this.page.sidebar.addClass("hidden-xs hidden-sm")); .appendTo(this.page.sidebar.addClass("hidden-xs hidden-sm"));
var offcanvas_module_sidebar = $(sidebar_content) var offcanvas_module_sidebar = $(sidebar_content)
.addClass("list-unstyled sidebar-menu") .addClass("list-unstyled sidebar-menu")
.appendTo($(".sidebar-left .module-sidebar"));
.appendTo($(".sidebar-left .module-sidebar").empty());


this.sidebar = offcanvas_module_sidebar.add(module_sidebar); this.sidebar = offcanvas_module_sidebar.add(module_sidebar);
this.sidebar.on("click", ".module-link", function() { this.sidebar.on("click", ".module-link", function() {


+ 41
- 33
frappe/public/less/mobile.less 查看文件

@@ -206,6 +206,11 @@
.list-row { .list-row {
padding: 7px 0px; padding: 7px 0px;
} }

.message-row-right {
margin-top: 10px;
text-align: left;
}
} }
} }


@@ -245,10 +250,6 @@
} }


// navbar & breadcrumbs // navbar & breadcrumbs
// .nav > li > a {
// padding: 10px 0px;
// }

.toggle-navbar-new-comments { .toggle-navbar-new-comments {
padding: 8px 0px !important; padding: 8px 0px !important;
} }
@@ -262,35 +263,6 @@
float: right; float: right;
} }


// show home in module page
body[data-route^="Module"] .navbar .navbar-home& {
display: inline-block !important;
padding-left: 0px;
margin-left: 0px;
padding-top: 6px;

&:before {
.breadcrumb-divider();
.breadcrumb-divider-left();
}

&:hover:before,
&:focus:before,
&:active:before {
color: @text-color !important;
}
}

body[data-route^="Module"] {
.page-title {
width: 100%;
}

.page-actions {
display: none !important;
}
}

.module-item { .module-item {
padding: 7px 0px !important; padding: 7px 0px !important;
} }
@@ -440,4 +412,40 @@
body[data-route^="Module"] { body[data-route^="Module"] {
.navbar-center-show; .navbar-center-show;
} }

// show home when no breadcrumbs
body.no-breadcrumbs .navbar .navbar-home& {
display: inline-block !important;
padding-left: 0px;
margin-left: 0px;
padding-top: 6px;

&:before {
.breadcrumb-divider();
.breadcrumb-divider-left();
}

&:hover:before,
&:focus:before,
&:active:before {
color: @text-color !important;
}
}

body[data-route=""],
body[data-route="desktop"] {
.navbar .navbar-home {
display: none !important;
}
}

body[data-route^="Module"] {
.page-title {
width: 100%;
}

.page-actions {
display: none !important;
}
}
} }

正在加载...
取消
保存