spree_core 0.30.2 → 0.40.0
Sign up to get free protection for your applications and to get access to all the features.
- data/app/controllers/admin/base_controller.rb +0 -31
- data/app/controllers/admin/orders_controller.rb +10 -9
- data/app/controllers/admin/overview_controller.rb +1 -1
- data/app/controllers/admin/products_controller.rb +8 -8
- data/app/controllers/admin/properties_controller.rb +1 -1
- data/app/controllers/admin/shipments_controller.rb +6 -3
- data/app/controllers/admin/shipping_methods_controller.rb +1 -1
- data/app/controllers/admin/tax_rates_controller.rb +2 -2
- data/app/controllers/admin/taxons_controller.rb +1 -2
- data/app/controllers/admin/users_controller.rb +7 -8
- data/app/controllers/admin/variants_controller.rb +2 -2
- data/app/controllers/countries_controller.rb +1 -1
- data/app/controllers/locale_controller.rb +1 -1
- data/app/controllers/spree/base_controller.rb +1 -117
- data/app/controllers/states_controller.rb +1 -1
- data/app/helpers/spree/base_helper.rb +1 -7
- data/app/helpers/taxons_helper.rb +2 -2
- data/app/models/app_configuration.rb +0 -3
- data/app/models/calculator/flat_percent_item_total.rb +2 -1
- data/app/models/calculator/vat.rb +1 -1
- data/app/models/creditcard.rb +1 -1
- data/app/models/gateway/authorize_net.rb +13 -2
- data/app/models/gateway/authorize_net_cim.rb +11 -0
- data/app/models/gateway/beanstream.rb +30 -7
- data/app/models/inventory_unit.rb +21 -31
- data/app/models/line_item.rb +7 -8
- data/app/models/order.rb +4 -1
- data/app/models/product_group.rb +4 -8
- data/app/models/property.rb +1 -3
- data/app/models/return_authorization.rb +6 -1
- data/app/models/state_event.rb +3 -3
- data/app/models/state_monitor.rb +16 -16
- data/app/models/taxon.rb +6 -7
- data/app/models/user.rb +4 -0
- data/app/views/admin/general_settings/edit.html.erb +0 -8
- data/app/views/admin/general_settings/show.html.erb +5 -10
- data/app/views/admin/images/_form.html.erb +1 -1
- data/app/views/admin/images/index.html.erb +1 -1
- data/app/views/admin/option_types/new.html.erb +1 -1
- data/app/views/admin/orders/_add_product.html.erb +3 -3
- data/app/views/admin/orders/_form.html.erb +3 -0
- data/app/views/admin/orders/_user_form.html.erb +1 -1
- data/app/views/admin/orders/index.html.erb +2 -2
- data/app/views/admin/orders/show.html.erb +3 -8
- data/app/views/admin/orders/user.html.erb +1 -1
- data/app/views/admin/product_groups/index.html.erb +1 -1
- data/app/views/admin/product_groups/show.html.erb +1 -1
- data/app/views/admin/products/index.html.erb +1 -1
- data/app/views/admin/return_authorizations/_form.html.erb +3 -1
- data/app/views/admin/shared/_address_form.html.erb +1 -1
- data/app/views/admin/shared/_configuration_menu.html.erb +11 -11
- data/app/views/admin/shared/_order_tabs.html.erb +12 -12
- data/app/views/admin/shared/_product_tabs.html.erb +6 -6
- data/app/views/admin/states/_state_list.html.erb +2 -2
- data/app/views/admin/taxonomies/_js_head.html.erb +6 -8
- data/app/views/admin/taxonomies/edit.html.erb +11 -11
- data/app/views/admin/taxonomies/get_children.json.erb +5 -5
- data/app/views/admin/taxons/available.js.erb +10 -10
- data/app/views/admin/taxons/selected.html.erb +13 -13
- data/app/views/admin/variants/index.html.erb +1 -1
- data/app/views/checkout/_address.html.erb +2 -2
- data/app/views/layouts/admin.html.erb +1 -2
- data/app/views/layouts/spree_application.html.erb +1 -2
- data/app/views/shared/_admin_head.html.erb +3 -3
- data/app/views/shared/_doc_and_xmlns.html.erb +2 -0
- data/app/views/shared/_filters.html.erb +3 -28
- data/app/views/taxons/show.html.erb +7 -5
- data/config/initializers/spree.rb +1 -19
- data/config/locales/en.yml +0 -2
- data/config/routes.rb +3 -5
- data/db/migrate/20091007134354_change_taxons_to_nested_set.rb +2 -2
- data/lib/product_filters.rb +10 -11
- data/lib/scopes/product.rb +15 -0
- data/lib/spree/mail_settings.rb +2 -4
- data/lib/spree/preference_access.rb +3 -3
- data/lib/spree_base.rb +116 -0
- data/lib/spree_core.rb +3 -1
- data/lib/spree_core/preferences/model_hooks.rb +1 -1
- data/lib/tasks/install.rake +0 -1
- data/public/javascripts/admin.js +0 -6
- data/public/javascripts/admin/checkouts/edit.js +41 -40
- data/public/javascripts/admin/orders/edit_form.js +5 -4
- data/public/javascripts/jquery.cookie.js +96 -0
- data/public/javascripts/jquery.delayedobserver.js +35 -0
- data/public/javascripts/jsTree/jquery.jstree.js +3510 -0
- data/public/javascripts/jsTree/themes/apple/d.png +0 -0
- data/public/javascripts/jsTree/themes/apple/style.css +60 -34
- data/public/javascripts/jsTree/themes/apple/throbber.gif +0 -0
- data/public/javascripts/taxonomy.js +150 -149
- data/public/stylesheets/admin/admin.css +0 -34
- metadata +36 -43
- data/app/controllers/password_resets_controller.rb +0 -48
- data/app/helpers/users_helper.rb +0 -13
- data/app/models/spree/alert.rb +0 -13
- data/app/views/admin/shared/_alert.html.erb +0 -6
- data/app/views/shared/_login.html.erb +0 -21
- data/app/views/shared/_user_form.html.erb +0 -17
- data/lib/spree/i18n_utils.rb +0 -47
- data/public/javascripts/jquery.js +0 -19
- data/public/javascripts/jrails.autocomplete.js +0 -274
- data/public/javascripts/jrails.js +0 -1
- data/public/javascripts/jsTree/jquery.tree.js +0 -2058
- data/public/javascripts/jsTree/plugins/jquery.tree.contextmenu.js +0 -129
- data/public/javascripts/jsTree/themes/apple/icons.png +0 -0
@@ -1,129 +0,0 @@
|
|
1
|
-
(function ($) {
|
2
|
-
$.extend($.tree.plugins, {
|
3
|
-
"contextmenu" : {
|
4
|
-
object : $("<ul id='jstree-contextmenu' class='tree-context' />"),
|
5
|
-
data : {
|
6
|
-
t : false,
|
7
|
-
a : false,
|
8
|
-
r : false
|
9
|
-
},
|
10
|
-
|
11
|
-
defaults : {
|
12
|
-
class_name : "hover",
|
13
|
-
items : {
|
14
|
-
create : {
|
15
|
-
label : "Create",
|
16
|
-
icon : "create",
|
17
|
-
visible : function (NODE, TREE_OBJ) { if(NODE.length != 1) return 0; return TREE_OBJ.check("creatable", NODE); },
|
18
|
-
action : function (NODE, TREE_OBJ) { TREE_OBJ.create(false, TREE_OBJ.get_node(NODE[0])); },
|
19
|
-
separator_after : true
|
20
|
-
},
|
21
|
-
rename : {
|
22
|
-
label : "Rename",
|
23
|
-
icon : "rename",
|
24
|
-
visible : function (NODE, TREE_OBJ) { if(NODE.length != 1) return false; return TREE_OBJ.check("renameable", NODE); },
|
25
|
-
action : function (NODE, TREE_OBJ) { TREE_OBJ.rename(NODE); }
|
26
|
-
},
|
27
|
-
remove : {
|
28
|
-
label : "Delete",
|
29
|
-
icon : "remove",
|
30
|
-
visible : function (NODE, TREE_OBJ) { var ok = true; $.each(NODE, function () { if(TREE_OBJ.check("deletable", this) == false) ok = false; return false; }); return ok; },
|
31
|
-
action : function (NODE, TREE_OBJ) { $.each(NODE, function () { TREE_OBJ.remove(this); }); }
|
32
|
-
}
|
33
|
-
}
|
34
|
-
},
|
35
|
-
show : function(obj, t) {
|
36
|
-
var opts = $.extend(true, {}, $.tree.plugins.contextmenu.defaults, t.settings.plugins.contextmenu);
|
37
|
-
obj = $(obj);
|
38
|
-
$.tree.plugins.contextmenu.object.empty();
|
39
|
-
var str = "";
|
40
|
-
var cnt = 0;
|
41
|
-
for(var i in opts.items) {
|
42
|
-
if(!opts.items.hasOwnProperty(i)) continue;
|
43
|
-
if(opts.items[i] === false) continue;
|
44
|
-
var r = 1;
|
45
|
-
if(typeof opts.items[i].visible == "function") r = opts.items[i].visible.call(null, $.tree.plugins.contextmenu.data.a, t);
|
46
|
-
if(r == -1) continue;
|
47
|
-
else cnt ++;
|
48
|
-
if(opts.items[i].separator_before === true) str += "<li class='separator'><span> </span></li>";
|
49
|
-
str += '<li><a href="#" rel="' + i + '" class="' + i + ' ' + (r == 0 ? 'disabled' : '') + '">';
|
50
|
-
if(opts.items[i].icon) str += "<ins " + (opts.items[i].icon.indexOf("/") == -1 ? " class='" + opts.items[i].icon + "' " : " style='background-image:url(\"" + opts.items[i].icon + "\");' " ) + "> </ins>";
|
51
|
-
else str += "<ins> </ins>";
|
52
|
-
str += "<span>" + opts.items[i].label + '</span></a></li>';
|
53
|
-
if(opts.items[i].separator_after === true) str += "<li class='separator'><span> </span></li>";
|
54
|
-
}
|
55
|
-
var tmp = obj.children("a:visible").offset();
|
56
|
-
$.tree.plugins.contextmenu.object.attr("class","tree-context tree-" + t.settings.ui.theme_name.toString() + "-context").html(str);
|
57
|
-
var h = $.tree.plugins.contextmenu.object.height();
|
58
|
-
var w = $.tree.plugins.contextmenu.object.width();
|
59
|
-
var x = tmp.left;
|
60
|
-
var y = tmp.top + parseInt(obj.children("a:visible").height()) + 2;
|
61
|
-
var max_y = $(window).height() + $(window).scrollTop();
|
62
|
-
var max_x = $(window).width() + $(window).scrollLeft();
|
63
|
-
if(y + h > max_y) y = Math.max( (max_y - h - 2), 0);
|
64
|
-
if(x + w > max_x) x = Math.max( (max_x - w - 2), 0);
|
65
|
-
$.tree.plugins.contextmenu.object.css({ "left" : (x), "top" : (y) }).fadeIn("fast");
|
66
|
-
},
|
67
|
-
hide : function () {
|
68
|
-
if(!$.tree.plugins.contextmenu.data.t) return;
|
69
|
-
var opts = $.extend(true, {}, $.tree.plugins.contextmenu.defaults, $.tree.plugins.contextmenu.data.t.settings.plugins.contextmenu);
|
70
|
-
if($.tree.plugins.contextmenu.data.r && $.tree.plugins.contextmenu.data.a) {
|
71
|
-
$.tree.plugins.contextmenu.data.a.children("a, span").removeClass(opts.class_name);
|
72
|
-
}
|
73
|
-
$.tree.plugins.contextmenu.data = { a : false, r : false, t : false };
|
74
|
-
$.tree.plugins.contextmenu.object.fadeOut("fast");
|
75
|
-
},
|
76
|
-
exec : function (cmd) {
|
77
|
-
if($.tree.plugins.contextmenu.data.t == false) return;
|
78
|
-
var opts = $.extend(true, {}, $.tree.plugins.contextmenu.defaults, $.tree.plugins.contextmenu.data.t.settings.plugins.contextmenu);
|
79
|
-
try { opts.items[cmd].action.apply(null, [$.tree.plugins.contextmenu.data.a, $.tree.plugins.contextmenu.data.t]); } catch(e) { };
|
80
|
-
},
|
81
|
-
|
82
|
-
callbacks : {
|
83
|
-
oninit : function () {
|
84
|
-
if(!$.tree.plugins.contextmenu.css) {
|
85
|
-
var css = '#jstree-contextmenu { display:none; position:absolute; z-index:2000; list-style-type:none; margin:0; padding:0; left:-2000px; top:-2000px; } .tree-context { margin:20px; padding:0; width:180px; border:1px solid #979797; padding:2px; background:#f5f5f5; list-style-type:none; }.tree-context li { height:22px; margin:0 0 0 27px; padding:0; background:#ffffff; border-left:1px solid #e0e0e0; }.tree-context li a { position:relative; display:block; height:22px; line-height:22px; margin:0 0 0 -28px; text-decoration:none; color:black; padding:0; }.tree-context li a ins { text-decoration:none; float:left; width:16px; height:16px; margin:0 0 0 0; background-color:#f0f0f0; border:1px solid #f0f0f0; border-width:3px 5px 3px 6px; line-height:16px; }.tree-context li a span { display:block; background:#f0f0f0; margin:0 0 0 29px; padding-left:5px; }.tree-context li.separator { background:#f0f0f0; height:2px; line-height:2px; font-size:1px; border:0; margin:0; padding:0; }.tree-context li.separator span { display:block; margin:0px 0 0px 27px; height:1px; border-top:1px solid #e0e0e0; border-left:1px solid #e0e0e0; line-height:1px; font-size:1px; background:white; }.tree-context li a:hover { border:1px solid #d8f0fa; height:20px; line-height:20px; }.tree-context li a:hover span { background:#e7f4f9; margin-left:28px; }.tree-context li a:hover ins { background-color:#e7f4f9; border-color:#e7f4f9; border-width:2px 5px 2px 5px; }.tree-context li a.disabled { color:gray; }.tree-context li a.disabled ins { }.tree-context li a.disabled:hover { border:0; height:22px; line-height:22px; }.tree-context li a.disabled:hover span { background:#f0f0f0; margin-left:29px; }.tree-context li a.disabled:hover ins { border-color:#f0f0f0; background-color:#f0f0f0; border-width:3px 5px 3px 6px; }';
|
86
|
-
$.tree.plugins.contextmenu.css = this.add_sheet({ str : css });
|
87
|
-
}
|
88
|
-
},
|
89
|
-
onrgtclk : function (n, t, e) {
|
90
|
-
var opts = $.extend(true, {}, $.tree.plugins.contextmenu.defaults, t.settings.plugins.contextmenu);
|
91
|
-
n = $(n);
|
92
|
-
if(n.size() == 0) return;
|
93
|
-
$.tree.plugins.contextmenu.data.t = t;
|
94
|
-
if(!n.children("a:eq(0)").hasClass("clicked")) {
|
95
|
-
$.tree.plugins.contextmenu.data.a = n;
|
96
|
-
$.tree.plugins.contextmenu.data.r = true;
|
97
|
-
n.children("a").addClass(opts.class_name);
|
98
|
-
e.target.blur();
|
99
|
-
}
|
100
|
-
else {
|
101
|
-
$.tree.plugins.contextmenu.data.r = false;
|
102
|
-
$.tree.plugins.contextmenu.data.a = (t.selected_arr && t.selected_arr.length > 1) ? t.selected_arr : t.selected;
|
103
|
-
}
|
104
|
-
$.tree.plugins.contextmenu.show(n, t);
|
105
|
-
e.preventDefault();
|
106
|
-
e.stopPropagation();
|
107
|
-
// return false; // commented out because you might want to do something in your own callback
|
108
|
-
},
|
109
|
-
onchange : function () { $.tree.plugins.contextmenu.hide(); },
|
110
|
-
beforedata : function () { $.tree.plugins.contextmenu.hide(); },
|
111
|
-
ondestroy : function () { $.tree.plugins.contextmenu.hide(); }
|
112
|
-
}
|
113
|
-
}
|
114
|
-
});
|
115
|
-
$(function () {
|
116
|
-
$.tree.plugins.contextmenu.object.hide().appendTo("body");
|
117
|
-
$("#jstree-contextmenu a")
|
118
|
-
.live("click", function (event) {
|
119
|
-
if(!$(this).hasClass("disabled")) {
|
120
|
-
$.tree.plugins.contextmenu.exec.apply(null, [$(this).attr("rel")]);
|
121
|
-
$.tree.plugins.contextmenu.hide();
|
122
|
-
}
|
123
|
-
event.stopPropagation();
|
124
|
-
event.preventDefault();
|
125
|
-
return false;
|
126
|
-
})
|
127
|
-
$(document).bind("mousedown", function(event) { if($(event.target).parents("#jstree-contextmenu").size() == 0) $.tree.plugins.contextmenu.hide(); });
|
128
|
-
});
|
129
|
-
})(jQuery);
|
Binary file
|