Merge branch 'edge' of github.com:webnotes/wnframework into edge

This commit is contained in:
Nabin Hait 2013-02-06 13:27:11 +05:30
commit 755ebc97e5
4 changed files with 69 additions and 3 deletions

View file

@ -138,6 +138,7 @@
"lib/public/js/wn/ui/toolbar/search.js",
"lib/public/js/wn/ui/toolbar/report.js",
"lib/public/js/wn/ui/toolbar/recent.js",
"lib/public/js/wn/ui/toolbar/bookmarks.js",
"lib/public/js/wn/ui/toolbar/toolbar.js",
"lib/public/js/legacy/widgets/form/fields.js",

View file

@ -0,0 +1,61 @@
// recent document list
wn.ui.toolbar.Bookmarks = Class.extend({
init:function() {
$('.navbar .nav:first').append('<li class="dropdown">\
<a class="dropdown-toggle" data-toggle="dropdown" href="#" \
title="'+wn._("Bookmarks")+'"\
onclick="return false;"><i class="icon-star"></i> <b class="caret"></b></a>\
<ul class="dropdown-menu" id="toolbar-bookmarks">\
<li class="divider"></li>\
<li><a href="#" id="add-bookmark-link">'+wn._('Add Bookmark')+'</a></li>\
</ul>\
</li>');
this.setup();
},
setup: function() {
var me = this;
this.bookmarks = wn.user.get_default("_bookmarks") || [];
for(var i=this.bookmarks.length-1; i>=0; i--) {
var bookmark = this.bookmarks[i];
this.add_item(bookmark.route, bookmark.title)
}
$("#add-bookmark-link").click(function() {
me.add(wn.get_route_str(), document.title);
return false;
})
},
add_item: function(route, title) {
var html = repl('<li><a href="#%(route)s">%(title)s</a></li>',
{route: route, title: title});
$('#toolbar-bookmarks').prepend(html);
},
add: function(route, title) {
// bring to front
if(wn.utils.filter_dict(this.bookmarks, {"route": route}).length) {
this.remove(route);
}
// max length
if(this.bookmarks.length >= 17) {
this.remove(this.bookmarks[this.bookmarks.length-1].route);
}
this.add_item(route, title);
this.bookmarks = [{"route":route, "title":title}].concat(this.bookmarks);
// update server
wn.user.set_default("_bookmarks", this.bookmarks);
},
remove: function(route) {
this.bookmarks = $.map(this.bookmarks, function(d) {
if(d.route!=route) return d; });
$(repl('#toolbar-bookmarks li a[href="#%(route)s"]', {route:route})).parent().remove();
},
});

View file

@ -25,7 +25,8 @@ wn.ui.toolbar.RecentDocs = Class.extend({
init:function() {
$('.navbar .nav:first').append('<li class="dropdown">\
<a class="dropdown-toggle" data-toggle="dropdown" href="#" \
onclick="return false;">'+wn._('Recent')+'<b class="caret"></b></a>\
title="'+wn._("Recent")+'"\
onclick="return false;"><i class="icon-undo"></i> <b class="caret"></b></a>\
<ul class="dropdown-menu" id="toolbar-recent"></ul>\
</li>');
this.setup();

View file

@ -27,6 +27,7 @@ wn.ui.toolbar.Toolbar = Class.extend({
this.make_home();
this.make_document();
wn.ui.toolbar.recent = new wn.ui.toolbar.RecentDocs();
wn.ui.toolbar.bookmarks = new wn.ui.toolbar.Bookmarks();
this.make_tools();
this.set_user_name();
this.make_logout();
@ -64,7 +65,8 @@ wn.ui.toolbar.Toolbar = Class.extend({
wn.ui.toolbar.report = new wn.ui.toolbar.Report();
$('.navbar .nav:first').append('<li class="dropdown">\
<a class="dropdown-toggle" href="#" data-toggle="dropdown"\
onclick="return false;">'+wn._('Document')+'<b class="caret"></b></a>\
title="'+wn._("Documents")+'"\
onclick="return false;"><i class="icon-copy"></i> <b class="caret"></b></a>\
<ul class="dropdown-menu" id="toolbar-document">\
<li><a href="#" onclick="return wn.ui.toolbar.new_dialog.show();">\
<i class="icon-plus"></i> '+wn._('New')+'</a></li>\
@ -79,7 +81,8 @@ wn.ui.toolbar.Toolbar = Class.extend({
make_tools: function() {
$('.navbar .nav:first').append('<li class="dropdown">\
<a class="dropdown-toggle" data-toggle="dropdown" href="#" \
onclick="return false;">'+wn._('Tools')+'<b class="caret"></b></a>\
title="'+wn._("Tools")+'"\
onclick="return false;"><i class="icon-wrench"></i> <b class="caret"></b></a>\
<ul class="dropdown-menu" id="toolbar-tools">\
<li><a href="#" onclick="return wn.ui.toolbar.clear_cache();">'
+wn._('Clear Cache & Refresh')+'</a></li>\