infopark_fiona7 1.1.0.0.1 → 1.1.0.0.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/assets/javascripts/scrivito_patches/models/ajax.js +17 -28
- data/app/controllers/fiona7/release_controller.rb +1 -0
- data/lib/fiona7/engine.rb +1 -0
- data/lib/fiona7/scrivito_patches/basic_obj.rb +16 -0
- data/lib/fiona7/scrivito_patches/cms_routing.rb +6 -2
- data/lib/fiona7/scrivito_patches/obj_params_parser.rb +20 -0
- data/lib/fiona7/version.rb +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2aa4f95c72dbb1df2df30eb2aecf812eeadfbe0e
|
4
|
+
data.tar.gz: b2b9ba8c7221323adb1aaa6b9cf2dcf4001e8959
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: aca73230bef220c3bf97df405f9e6d83c4df11860856ac91db5dde5a40dfe4fd269e15253339e8fd68232b06ccb63e66681497c9392d88a05fb15caf5e23e128
|
7
|
+
data.tar.gz: 566f30c2e5dd1a29086b8e36639c9045b7e8886e6b996ef9661f980fcc18c4d1f1725661a4523e5f57bea637474174f86d0a6fbef3f2ff32413f4890e4a175a7
|
@@ -32,23 +32,12 @@
|
|
32
32
|
}, options || {})).then(
|
33
33
|
function(result, text_status, xhr) {
|
34
34
|
return $.Deferred().resolve(result);
|
35
|
-
}, function(xhr, text_status,
|
36
|
-
var error_message;
|
37
|
-
var error_code;
|
35
|
+
}, function(xhr, text_status, xhr_error) {
|
38
36
|
try {
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
} catch (SyntaxError) {}
|
43
|
-
|
44
|
-
if (!error_message) {
|
45
|
-
error_message = error;
|
37
|
+
return $.Deferred().reject(JSON.parse(xhr.responseText));
|
38
|
+
} catch (SyntaxError) {
|
39
|
+
return $.Deferred().reject(xhr_error);
|
46
40
|
}
|
47
|
-
return $.Deferred().reject({
|
48
|
-
status: xhr.status,
|
49
|
-
message: error_message,
|
50
|
-
code: error_code
|
51
|
-
});
|
52
41
|
}
|
53
42
|
);
|
54
43
|
};
|
@@ -59,7 +48,7 @@
|
|
59
48
|
if (is_write_request) {
|
60
49
|
options = options || {};
|
61
50
|
// HIGHER TIMEOUT HERE!
|
62
|
-
options.timeout =
|
51
|
+
options.timeout = 60000; // miliseconds
|
63
52
|
scrivito.write_monitor.start_write();
|
64
53
|
}
|
65
54
|
|
@@ -87,23 +76,23 @@
|
|
87
76
|
},
|
88
77
|
|
89
78
|
display_ajax_error: function(error) {
|
90
|
-
var
|
91
|
-
|
92
|
-
if (_.
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
error_message = scrivito.t('ajax.error', ajax_error);
|
79
|
+
var message, message_for_editor;
|
80
|
+
|
81
|
+
if (_.isObject(error)) {
|
82
|
+
message = scrivito.t('ajax.error', error.message);
|
83
|
+
message_for_editor = error.message_for_editor;
|
84
|
+
} else if (_.contains(['abort', 'parsererror', 'timeout'], error)) {
|
85
|
+
message = scrivito.t('ajax.error.communication');
|
98
86
|
} else {
|
99
|
-
|
87
|
+
message = scrivito.t('ajax.error', error);
|
100
88
|
}
|
101
89
|
|
102
90
|
if (scrivito.is_development_mode) {
|
103
|
-
scrivito.alert_dialog(
|
91
|
+
scrivito.alert_dialog(message);
|
104
92
|
} else {
|
105
|
-
scrivito.log_error(
|
106
|
-
scrivito.
|
93
|
+
scrivito.log_error(message);
|
94
|
+
scrivito.error_dialog(message_for_editor || scrivito.t('ajax.error.message_for_editor'),
|
95
|
+
[error.timestamp, message]);
|
107
96
|
}
|
108
97
|
}
|
109
98
|
});
|
data/lib/fiona7/engine.rb
CHANGED
@@ -32,6 +32,7 @@ require "fiona7/scrivito_patches/layout_tags"
|
|
32
32
|
require "fiona7/scrivito_patches/log_subscriber"
|
33
33
|
require "fiona7/scrivito_patches/link_parser"
|
34
34
|
require "fiona7/scrivito_patches/migrator"
|
35
|
+
require "fiona7/scrivito_patches/obj_params_parser"
|
35
36
|
require "fiona7/scrivito_patches/page_config"
|
36
37
|
require "fiona7/scrivito_patches/preset_routes"
|
37
38
|
require "fiona7/scrivito_patches/routing_extensions"
|
@@ -86,6 +86,22 @@ module Scrivito
|
|
86
86
|
|
87
87
|
def inherited(subclass,*args)
|
88
88
|
super
|
89
|
+
# Under certain condition a circular dependency may arise in rails when
|
90
|
+
# loading classes, especially when eager_load = true
|
91
|
+
# Thusfar it has only been observed in standalone-mode thus far:
|
92
|
+
# Loading Obj < Scrivito::BasicObj triggers this hook
|
93
|
+
# which tries to set RailsConnector::Obj to a reasonable value,
|
94
|
+
# RailsConnector::AbstractObj provided by reactor.
|
95
|
+
# RailsConnector::AbstractObj tries set itself to couple of
|
96
|
+
# values, one of which is ::Obj
|
97
|
+
# If this occurs with eager_load = true Rails may get confused
|
98
|
+
# and trigger circular dependency error.
|
99
|
+
# We work around this problem by hijacking intelligent initialization
|
100
|
+
# of RailsConnector::AbstractObj in reactor and set it to a
|
101
|
+
# desired value ourselves.
|
102
|
+
if subclass.name == 'Obj' && !::RailsConnector.const_defined?('AbstractObj', false)
|
103
|
+
::RailsConnector.const_set('AbstractObj', ::RailsConnector::BasicObj)
|
104
|
+
end
|
89
105
|
if subclass.name == 'Obj' && !::RailsConnector.const_defined?('Obj', false)
|
90
106
|
::RailsConnector.const_set('Obj', ::RailsConnector::AbstractObj)
|
91
107
|
end
|
@@ -46,9 +46,13 @@ module Scrivito
|
|
46
46
|
# use fiona connector routes when possible
|
47
47
|
if Fiona7.mode == :legacy
|
48
48
|
if binary = obj.binary
|
49
|
-
|
49
|
+
params = {
|
50
|
+
id: obj.id,
|
51
|
+
slug: obj.slug,
|
52
|
+
format: obj.file_extension
|
53
|
+
}
|
50
54
|
|
51
|
-
context.public_send("cms_id_#{path_or_url}",
|
55
|
+
context.public_send("cms_id_#{path_or_url}", params)
|
52
56
|
else
|
53
57
|
LINK_TO_EMPTY_BLOB
|
54
58
|
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
require "scrivito/obj_params_parser"
|
2
|
+
|
3
|
+
|
4
|
+
module Scrivito
|
5
|
+
class ObjParamsParser
|
6
|
+
private
|
7
|
+
def parse_binary_params(params)
|
8
|
+
return unless params
|
9
|
+
|
10
|
+
if params.kind_of?(Hash) && params[:copy]
|
11
|
+
parse_copy_binary_params(params[:copy])
|
12
|
+
else
|
13
|
+
# Uploaded binary may contain anything at this point
|
14
|
+
# an ID (string) or a File or even UploadedFile
|
15
|
+
# but the backed will sort this out
|
16
|
+
UploadedBinary.new(params)
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
data/lib/fiona7/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: infopark_fiona7
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1.0.0.
|
4
|
+
version: 1.1.0.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tomasz Przedmojski
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-02-
|
11
|
+
date: 2016-02-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -234,6 +234,7 @@ files:
|
|
234
234
|
- lib/fiona7/scrivito_patches/link_parser.rb
|
235
235
|
- lib/fiona7/scrivito_patches/log_subscriber.rb
|
236
236
|
- lib/fiona7/scrivito_patches/migrator.rb
|
237
|
+
- lib/fiona7/scrivito_patches/obj_params_parser.rb
|
237
238
|
- lib/fiona7/scrivito_patches/page_config.rb
|
238
239
|
- lib/fiona7/scrivito_patches/preset_routes.rb
|
239
240
|
- lib/fiona7/scrivito_patches/routing_extensions.rb
|