@@ -14,11 +14,9 @@ | |||
"public/css/all-web.css": [ | |||
"lib/public/css/bootstrap.css", | |||
"lib/public/css/legacy/body.css", | |||
"lib/public/css/legacy/dialog.css", | |||
"lib/public/css/ui/common.css", | |||
"lib/public/css/ui/layout.css", | |||
"lib/public/css/ui/fonts.css", | |||
"lib/public/css/ui/list.css", | |||
"lib/public/css/ui/views.css" | |||
] | |||
}, | |||
@@ -40,7 +38,8 @@ | |||
"lib/public/css/legacy/sidebar.css", | |||
"lib/public/css/ui/common.css", | |||
"lib/public/css/ui/list.css", | |||
"lib/public/css/ui/views.css", | |||
"lib/public/css/ui/appframe.css", | |||
"lib/public/css/ui/layout.css", | |||
"lib/public/css/ui/fonts.css", | |||
"lib/public/css/views/tree_grid.css", | |||
] | |||
@@ -49,34 +48,7 @@ | |||
{ | |||
"public/js/all-web.js": [ | |||
"lib/public/js/lib/bootstrap.min.js", | |||
"lib/public/js/wn/class.js", | |||
"lib/public/js/wn/provide.js", | |||
"lib/public/js/wn/assets.js", | |||
"lib/public/js/wn/dom.js", | |||
"lib/public/js/wn/meta.js", | |||
"lib/public/js/wn/misc/user.js", | |||
"lib/public/js/wn/misc/utils.js", | |||
"lib/public/js/lib/public/json2.js", | |||
"lib/public/js/wn/ui/messages.js", | |||
"lib/public/js/wn/ui/listing.js", | |||
"lib/public/js/wn/views/container.js", | |||
"lib/public/js/wn/views/pageview.js", | |||
"lib/public/js/wn/request.js", | |||
"lib/public/js/core.js", | |||
"lib/public/js/legacy/globals.js", | |||
"lib/public/js/legacy/utils/datatype.js", | |||
"lib/public/js/legacy/utils/datetime.js", | |||
"lib/public/js/legacy/utils/dom.js", | |||
"lib/public/js/legacy/utils/handler.js", | |||
"lib/public/js/wn/ui/appframe.js", | |||
"lib/public/js/wn/ui/field_group.js", | |||
"lib/public/js/wn/ui/dialog.js", | |||
"lib/public/js/wn/ui/button.js", | |||
"lib/public/js/legacy/widgets/dialog.js", | |||
"lib/public/js/legacy/webpage/loaders.js", | |||
"lib/public/js/wn/app.js" | |||
] | |||
}, | |||
@@ -89,35 +61,66 @@ | |||
"lib/public/js/lib/mousetrap.min.js", | |||
"lib/public/js/lib/center_image.js", | |||
"lib/public/js/legacy/utils/printElement.js", | |||
"lib/public/js/lib/bootstrap.min.js", | |||
"lib/public/js/lib/public/json2.js", | |||
"lib/public/js/lib/tiny_mce_3.5.7/jquery.tinymce.js:concat", | |||
"lib/public/js/lib/mousetrap.min.js", | |||
"lib/public/js/wn/provide.js", | |||
"lib/public/js/wn/class.js", | |||
"lib/public/js/wn/assets.js", | |||
"lib/public/js/wn/dom.js", | |||
"lib/public/js/wn/ui/messages.js", | |||
"lib/public/js/wn/ui/listing.js", | |||
"lib/public/js/wn/request.js", | |||
"lib/public/js/wn/router.js", | |||
"lib/public/js/wn/app.js", | |||
"lib/public/js/legacy/globals.js", | |||
"lib/public/js/legacy/utils/datatype.js", | |||
"lib/public/js/legacy/utils/datetime.js", | |||
"lib/public/js/legacy/utils/dom.js", | |||
"lib/public/js/wn/ui/appframe.js", | |||
"lib/public/js/wn/ui/field_group.js", | |||
"lib/public/js/wn/ui/dialog.js", | |||
"lib/public/js/wn/ui/button.js", | |||
"lib/public/js/wn/model/model.js", | |||
"lib/public/js/wn/model/meta.js", | |||
"lib/public/js/wn/model/doclist.js", | |||
"lib/public/js/wn/model/sync.js", | |||
"lib/public/js/wn/model/create_new.js", | |||
"lib/public/js/wn/model/perm.js", | |||
"lib/public/js/wn/misc/user.js", | |||
"lib/public/js/wn/misc/utils.js", | |||
"lib/public/js/wn/misc/tools.js", | |||
"lib/public/js/wn/misc/about.js", | |||
"lib/public/js/legacy/utils/handler.js", | |||
"lib/public/js/legacy/utils/printElement.js", | |||
"lib/public/js/legacy/widgets/dialog.js", | |||
"lib/public/js/legacy/widgets/form/fields.js", | |||
"lib/public/js/wn/ui/field_group.js", | |||
"lib/public/js/legacy/webpage/loaders.js", | |||
"lib/public/js/wn/upload.js", | |||
"lib/public/js/wn/ui/themes.js", | |||
"lib/public/js/wn/ui/filters.js", | |||
"lib/public/js/wn/ui/search.js", | |||
"lib/public/js/wn/ui/tree.js", | |||
"lib/public/js/wn/upload.js", | |||
"lib/public/js/wn/misc/about.js", | |||
"lib/public/js/wn/views/container.js", | |||
"lib/public/js/wn/views/pageview.js", | |||
"lib/public/js/wn/views/doclistview.js", | |||
"lib/public/js/wn/views/listview.js", | |||
"lib/public/js/wn/views/formview.js", | |||
"lib/public/js/wn/form/formatters.js", | |||
"lib/public/js/wn/views/load_reportview.js", | |||
"lib/public/js/wn/views/reportview.js", | |||
"lib/public/js/wn/views/grid_report.js", | |||
"lib/public/js/wn/views/communication.js", | |||
"lib/public/js/wn/form/formatters.js", | |||
"lib/public/js/legacy/webpage/page_header.js", | |||
"lib/public/js/legacy/widgets/layout.js", | |||
"lib/public/js/legacy/widgets/tags.js", | |||
@@ -1,52 +1,3 @@ | |||
h5 { | |||
margin-bottom: 0px; | |||
} | |||
.layout_wrapper, .layout-wrapper { | |||
-moz-box-shadow: 0px 0px 3px rgba(0,0,0,0.9); | |||
-webkit-box-shadow: 0px 0px 3px rgba(0,0,0,0.9); | |||
box-shadow: 0px 0px 3px rgba(0,0,0,0.9); | |||
background-color: #fff; | |||
padding: 15px; | |||
} | |||
.layout-wrapper-appframe { | |||
padding: 0px; | |||
} | |||
.layout-main { | |||
padding: 15px; | |||
background-color: #fff; | |||
} | |||
.layout-wrapper-background { | |||
background-color: #f2f2f2 !important; | |||
padding: 0px; | |||
} | |||
.layout-main-section { | |||
width: 71%; | |||
float: left; | |||
padding: 15px; | |||
background-color: #FFF; | |||
min-height: 540px; | |||
-moz-box-shadow: 1px 0px 1px #ccc; | |||
-webkit-box-shadow: 1px 0px 1px #ccc; | |||
box-shadow: 1px 0px 1px #ccc; | |||
} | |||
.layout-side-section { | |||
width: 22%; | |||
/*float: right;*/ | |||
color: #606060; | |||
overflow-x: hidden; | |||
padding: 15px; | |||
min-height: 540px; | |||
} | |||
.breadcrumb-area, .breadcrumb-area span { | |||
vertical-align: middle; | |||
} | |||
div.appframe-titlebar { | |||
padding: 6px; |
@@ -29,12 +29,29 @@ a { | |||
visibility: hidden; | |||
} | |||
/* alert */ | |||
#alert-container { | |||
position: fixed; | |||
bottom: 8px; | |||
right: 8px; | |||
z-index: 10; | |||
} | |||
#alert-container .alert { | |||
-webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1); | |||
-moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1); | |||
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1); | |||
overflow: hidden; | |||
max-width: 400px; | |||
text-overflow: ellipsis; | |||
white-space: nowrap; | |||
} | |||
/* avatar */ | |||
.avatar { | |||
display: inline-block; | |||
vertical-align: middle; | |||
@@ -67,9 +84,7 @@ a { | |||
width: 72px; | |||
} | |||
.layout-main-section h4 { | |||
margin-bottom: 3px; | |||
} | |||
/* slickgrid */ | |||
..slick-cell { | |||
font-size: 12px; | |||
@@ -0,0 +1,51 @@ | |||
/* layout */ | |||
h5 { | |||
margin-bottom: 0px; | |||
} | |||
.layout_wrapper, .layout-wrapper { | |||
-moz-box-shadow: 0px 0px 3px rgba(0,0,0,0.9); | |||
-webkit-box-shadow: 0px 0px 3px rgba(0,0,0,0.9); | |||
box-shadow: 0px 0px 3px rgba(0,0,0,0.9); | |||
background-color: #fff; | |||
padding: 15px; | |||
} | |||
.layout-wrapper-appframe { | |||
padding: 0px; | |||
} | |||
.layout-main { | |||
padding: 15px; | |||
background-color: #fff; | |||
} | |||
.layout-wrapper-background { | |||
background-color: #f2f2f2 !important; | |||
padding: 0px; | |||
} | |||
.layout-main-section { | |||
width: 71%; | |||
float: left; | |||
padding: 15px; | |||
background-color: #FFF; | |||
min-height: 540px; | |||
-moz-box-shadow: 1px 0px 1px #ccc; | |||
-webkit-box-shadow: 1px 0px 1px #ccc; | |||
box-shadow: 1px 0px 1px #ccc; | |||
} | |||
.layout-side-section { | |||
width: 22%; | |||
/*float: right;*/ | |||
color: #606060; | |||
overflow-x: hidden; | |||
padding: 15px; | |||
min-height: 540px; | |||
} | |||
.layout-main-section h4 { | |||
margin-bottom: 3px; | |||
} |
@@ -18,7 +18,7 @@ | |||
} | |||
window.app = true; | |||
</script> | |||
<script type="text/javascript" src="js/all-web.js"></script> | |||
<script type="text/javascript" src="js/all-app.js"></script> | |||
<link type="text/css" rel="stylesheet" href="css/all-app.css"> | |||
</head> | |||
<body> | |||
@@ -1,38 +0,0 @@ | |||
// Copyright (c) 2012 Web Notes Technologies Pvt Ltd (http://erpnext.com) | |||
// | |||
// MIT License (MIT) | |||
// | |||
// Permission is hereby granted, free of charge, to any person obtaining a | |||
// copy of this software and associated documentation files (the "Software"), | |||
// to deal in the Software without restriction, including without limitation | |||
// the rights to use, copy, modify, merge, publish, distribute, sublicense, | |||
// and/or sell copies of the Software, and to permit persons to whom the | |||
// Software is furnished to do so, subject to the following conditions: | |||
// | |||
// The above copyright notice and this permission notice shall be included in | |||
// all copies or substantial portions of the Software. | |||
// | |||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, | |||
// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A | |||
// PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT | |||
// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF | |||
// CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE | |||
// OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | |||
// | |||
// find files changed since last version | |||
if(!console) { | |||
var console = { | |||
log: function(txt) { | |||
// suppress | |||
} | |||
} | |||
} | |||
/* start the application */ | |||
$(document).ready(function() { | |||
wn.assets.check(); | |||
wn.provide('wn.app'); | |||
$.extend(wn.app, new wn.Application()); | |||
}); |
@@ -39,14 +39,7 @@ var top_index=91; | |||
// form | |||
var _f = {}; | |||
var _p = {}; | |||
var _e = {}; | |||
// report buidler | |||
var _r = {}; | |||
var FILTER_SEP = '\1'; | |||
@@ -144,6 +144,17 @@ function replace_newlines(t) { | |||
return t?t.replace(/\n/g, '<br>'):''; | |||
} | |||
function cint(v, def) { | |||
v=v+''; | |||
v=lstrip(v, ['0']); | |||
v=parseInt(v); | |||
if(isNaN(v))v=def?def:0; return v; | |||
} | |||
function validate_email(id) { | |||
if(strip(id.toLowerCase()).search("[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?")==-1) return 0; else return 1; } | |||
function validate_spl_chars(txt) { | |||
if(txt.search(/^[a-zA-Z0-9_\- ]*$/)==-1) return 1; else return 0; } | |||
function cstr(s) { | |||
if(s==null)return ''; | |||
return s+''; | |||
@@ -191,20 +191,6 @@ function add_sel_options(s, list, sel_val, o_style) { | |||
} | |||
} | |||
function cint(v, def) { | |||
v=v+''; | |||
v=lstrip(v, ['0']); | |||
v=parseInt(v); | |||
if(isNaN(v))v=def?def:0; return v; | |||
} | |||
function validate_email(id) { | |||
if(strip(id.toLowerCase()).search("[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?")==-1) return 0; else return 1; } | |||
function validate_spl_chars(txt) { | |||
if(txt.search(/^[a-zA-Z0-9_\- ]*$/)==-1) return 1; else return 0; } | |||
function d2h(d) {return cint(d).toString(16);} | |||
function h2d(h) {return parseInt(h,16);} | |||
var $n = '\n'; | |||
function set_title(t) { | |||
document.title = (wn.title_prefix ? (wn.title_prefix + ' - ') : '') + t; | |||
@@ -20,63 +20,25 @@ | |||
// OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | |||
// | |||
if(!console) { | |||
var console = { | |||
log: function(txt) { | |||
// suppress | |||
} | |||
} | |||
} | |||
$(document).ready(function() { | |||
wn.assets.check(); | |||
wn.provide('wn.app'); | |||
$.extend(wn.app, new wn.Application()); | |||
}); | |||
wn.Application = Class.extend({ | |||
init: function() { | |||
var me = this; | |||
if(window.app) { | |||
this.load_app_js(function() { me.load_startup() }); | |||
} else { | |||
this.load_startup(); | |||
} | |||
this.load_startup(); | |||
}, | |||
load_app_js: function(callback) { | |||
var all_app = localStorage.getItem("all-app"); | |||
if(all_app) { | |||
wn.dom.eval(all_app); | |||
callback(); | |||
return; | |||
} | |||
var dialog = new wn.ui.Dialog({ | |||
title: "Loading...", | |||
width: 500, | |||
user_cannot_cancel: true | |||
}); | |||
dialog.show(); | |||
wn.messages.waiting(dialog.body, "", 5); | |||
var bar = $(dialog.body).find(".bar"); | |||
$.ajax({ | |||
url: "js/all-app.js", | |||
success: function(data, status, xhr) { | |||
// add it to localstorage | |||
localStorage.setItem('all-app', xhr.responseText); | |||
dialog.hide(); | |||
callback(); | |||
}, | |||
xhr: function() { | |||
var xhr = jQuery.ajaxSettings.xhr(); | |||
interval = setInterval(function() { | |||
if(xhr.readyState > 2) { | |||
var total = parseInt(xhr.getResponseHeader('Content-Length')); | |||
var completed = parseInt(xhr.responseText.length); | |||
var percent = (100.0 / total * completed).toFixed(2); | |||
bar.css('width', (percent < 10 ? 10 : percent) + '%'); | |||
} | |||
}, 50); | |||
wn.last_xhr = xhr; | |||
return xhr; | |||
}, | |||
error: function(xhr, status, e) { | |||
console.log(e.message); | |||
eval(xhr.responseText); | |||
} | |||
}); | |||
}, | |||
load_startup: function() { | |||
var me = this; | |||
if(window.app) { | |||
@@ -42,4 +42,5 @@ wn._ = function(txt) { | |||
wn.provide("locals"); | |||
wn.provide("wn.settings"); | |||
wn.provide("wn.utils"); | |||
wn.provide("wn.ui"); |
@@ -86,10 +86,10 @@ function show_alert(txt, add_class) { | |||
var div = $('<div class="alert">\ | |||
<a class="close">×</a>'+ txt +'</div>') | |||
.appendTo('#alert-container') | |||
.addClass(add_class); | |||
div.find('.close').click(function() { | |||
$(this).parent().remove(); | |||
return false; | |||
}); | |||
div.delay(7000).fadeOut(500); | |||
return div; | |||
} |