From 0a9c2ce97258ade946cb45fc73fddf88751c83e6 Mon Sep 17 00:00:00 2001 From: Anand Doshi Date: Tue, 10 Feb 2015 23:16:56 +0530 Subject: [PATCH] Fixed calendar, gantt loading, better messages page display in mobile, better back breadcrumb when no breadcrumbs --- frappe/desk/page/messages/messages_main.html | 2 +- frappe/desk/page/messages/messages_row.html | 7 +- frappe/public/build.json | 6 +- frappe/public/css/mobile.css | 76 ++++++++++--------- frappe/public/js/frappe/assets.js | 4 - frappe/public/js/frappe/views/calendar.js | 6 ++ frappe/public/js/frappe/views/container.js | 7 +- frappe/public/js/frappe/views/ganttview.js | 4 + .../js/frappe/views/module/moduleview.js | 2 +- frappe/public/less/mobile.less | 74 ++++++++++-------- 10 files changed, 108 insertions(+), 80 deletions(-) diff --git a/frappe/desk/page/messages/messages_main.html b/frappe/desk/page/messages/messages_main.html index adbc339912..b401b009ad 100644 --- a/frappe/desk/page/messages/messages_main.html +++ b/frappe/desk/page/messages/messages_main.html @@ -1,6 +1,6 @@
- +
diff --git a/frappe/desk/page/messages/messages_row.html b/frappe/desk/page/messages/messages_row.html index d544b89a59..08a36ff29b 100644 --- a/frappe/desk/page/messages/messages_row.html +++ b/frappe/desk/page/messages/messages_row.html @@ -2,9 +2,9 @@ {% if (data.owner==data.comment_docname && data.parenttype!="Assignment") { %} {% } %} -
+
-
+
-
+
+ {%= comment_when(data.modified) %}
{% if (data.owner==user /* && !data.comment_type && data.parenttype!="Assignment" */ ) { %} diff --git a/frappe/public/build.json b/frappe/public/build.json index b3425e42c2..78f2c6b918 100644 --- a/frappe/public/build.json +++ b/frappe/public/build.json @@ -172,9 +172,7 @@ "public/js/frappe/list/list_item_main_head.html", "public/js/frappe/list/list_item_row_head.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": [ "public/css/report.css", @@ -189,6 +187,8 @@ "public/js/frappe/views/reports/query_report.js", "public/js/frappe/views/reports/grid_report.js", "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/plugins/slick.cellrangedecorator.js", diff --git a/frappe/public/css/mobile.css b/frappe/public/css/mobile.css index 980f5262c9..9719f6af9e 100644 --- a/frappe/public/css/mobile.css +++ b/frappe/public/css/mobile.css @@ -159,6 +159,10 @@ #page-messages .list-row { padding: 7px 0px; } + #page-messages .message-row-right { + margin-top: 10px; + text-align: left; + } } @media (max-width: 991px) { .intro-area, @@ -197,40 +201,6 @@ .navbar > .container > .navbar-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 { padding: 7px 0px !important; } @@ -358,4 +328,42 @@ right: 25%; 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; + } } diff --git a/frappe/public/js/frappe/assets.js b/frappe/public/js/frappe/assets.js index 9f2a906ad1..1d57626471 100644 --- a/frappe/public/js/frappe/assets.js +++ b/frappe/public/js/frappe/assets.js @@ -148,13 +148,9 @@ frappe.assets = { }, "Calendar": function() { frappe.assets.views["Report"](); - frappe.require('assets/frappe/js/lib/fullcalendar/fullcalendar.css'); - frappe.require('assets/frappe/js/lib/fullcalendar/fullcalendar.js'); }, "Gantt": function() { 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'); }, } }; diff --git a/frappe/public/js/frappe/views/calendar.js b/frappe/public/js/frappe/views/calendar.js index 3c06832972..f21db0b5be 100644 --- a/frappe/public/js/frappe/views/calendar.js +++ b/frappe/public/js/frappe/views/calendar.js @@ -7,6 +7,10 @@ frappe.provide("frappe.views.calendars"); frappe.views.CalendarFactory = frappe.views.Factory.extend({ make: function(route) { 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() { var options = { doctype: route[1] @@ -56,6 +60,8 @@ frappe.views.Calendar = Class.extend({ // .html(__("Select dates to create a new ") + __(me.doctype)) // .appendTo(this.$wrapper); + console.log(this.$cal); + this.$cal.fullCalendar(this.cal_options); this.set_css(); diff --git a/frappe/public/js/frappe/views/container.js b/frappe/public/js/frappe/views/container.js index 6dc8847e71..2b2601b05c 100644 --- a/frappe/public/js/frappe/views/container.js +++ b/frappe/public/js/frappe/views/container.js @@ -85,7 +85,10 @@ frappe.views.Container = Class.extend({ update_breadcrumbs: function() { var breadcrumbs = frappe.breadcrumbs[frappe.get_route_str()]; var $breadcrumbs = $("#navbar-breadcrumbs").empty(); - if(!breadcrumbs) return; + if(!breadcrumbs) { + $("body").addClass("no-breadcrumbs"); + return; + } if(breadcrumbs.module && breadcrumbs.module != "Desk") { if(in_list(["Core", "Email", "Custom", "Workflow"], breadcrumbs.module)) @@ -106,6 +109,8 @@ frappe.views.Container = Class.extend({ {doctype: breadcrumbs.doctype, label: __(breadcrumbs.doctype)})) .appendTo($breadcrumbs); } + + $("body").removeClass("no-breadcrumbs"); }, rename_breadcrumbs: function(doctype, old_name, new_name) { var old_route_str = ["Form", doctype, old_name].join("/"); diff --git a/frappe/public/js/frappe/views/ganttview.js b/frappe/public/js/frappe/views/ganttview.js index 94ceb026fa..4fc016094b 100644 --- a/frappe/public/js/frappe/views/ganttview.js +++ b/frappe/public/js/frappe/views/ganttview.js @@ -6,6 +6,10 @@ frappe.provide("frappe.views.calendar"); frappe.views.GanttFactory = frappe.views.Factory.extend({ make: function(route) { 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() { var page = me.make_page(); $(page).on("show", function() { diff --git a/frappe/public/js/frappe/views/module/moduleview.js b/frappe/public/js/frappe/views/module/moduleview.js index 0a49ae3e3e..ba3aef2f1b 100644 --- a/frappe/public/js/frappe/views/module/moduleview.js +++ b/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")); var offcanvas_module_sidebar = $(sidebar_content) .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.on("click", ".module-link", function() { diff --git a/frappe/public/less/mobile.less b/frappe/public/less/mobile.less index f5c606acda..b42969550b 100644 --- a/frappe/public/less/mobile.less +++ b/frappe/public/less/mobile.less @@ -206,6 +206,11 @@ .list-row { padding: 7px 0px; } + + .message-row-right { + margin-top: 10px; + text-align: left; + } } } @@ -245,10 +250,6 @@ } // navbar & breadcrumbs - // .nav > li > a { - // padding: 10px 0px; - // } - .toggle-navbar-new-comments { padding: 8px 0px !important; } @@ -262,35 +263,6 @@ 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 { padding: 7px 0px !important; } @@ -440,4 +412,40 @@ body[data-route^="Module"] { .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; + } + } }