infopark_cloud_connector 6.9.5 → 7.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/app/controllers/rails_connector/default_cms_controller.rb +0 -1
- data/app/controllers/rails_connector/objs_controller.rb +31 -27
- data/app/helpers/rails_connector/cms_tag_helper.rb +20 -12
- data/app/views/rails_connector/objs/show_widget.html.erb +1 -0
- data/config/ca-bundle.crt +1 -1
- data/config/locales/de.rails_connector.views.yml +0 -3
- data/config/locales/en.rails_connector.views.yml +0 -3
- data/config/routes.rb +2 -1
- data/lib/assets/fonts/infopark_icons-webfont.eot +0 -0
- data/lib/assets/fonts/infopark_icons-webfont.ttf +0 -0
- data/lib/assets/fonts/infopark_icons-webfont.woff +0 -0
- data/lib/assets/javascripts/infopark_editing.js +84 -35
- data/lib/assets/stylesheets/infopark_editing.css +227 -33
- data/lib/generators/cms/migration/migration_generator.rb +1 -1
- data/lib/generators/cms/migration/templates/{migration.rb → migration.erb} +0 -0
- data/lib/rails_connector/attribute_content.rb +39 -40
- data/lib/rails_connector/basic_obj.rb +64 -56
- data/lib/rails_connector/basic_widget.rb +2 -0
- data/lib/rails_connector/cms_accessible.rb +0 -17
- data/lib/rails_connector/cms_backend.rb +2 -2
- data/lib/rails_connector/cms_env.rb +0 -5
- data/lib/rails_connector/cms_rest_api.rb +62 -30
- data/lib/rails_connector/configuration.rb +3 -3
- data/lib/rails_connector/connection_manager.rb +98 -0
- data/lib/rails_connector/content_service.rb +12 -94
- data/lib/rails_connector/content_state_caching.rb +3 -5
- data/lib/rails_connector/deprecation.rb +21 -0
- data/lib/rails_connector/link.rb +12 -22
- data/lib/rails_connector/migrations/cms_backend.rb +1 -1
- data/lib/rails_connector/migrations/migration.rb +1 -1
- data/lib/rails_connector/migrations/migration_dsl.rb +10 -101
- data/lib/rails_connector/named_link.rb +1 -1
- data/lib/rails_connector/obj_search_enumerator.rb +37 -49
- metadata +6 -5
- data/app/views/errors/410_gone.html.erb +0 -7
- data/app/views/rails_connector/objs/show.html.erb +0 -1
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
Njg3ODYzOWQxMmFhNzRjNTAyNmYzNWFlMGRkMmIyZDc0NjBlNmY3NQ==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
YWU2ZTYxNzZlMTkyYjI2OTEzZWJlMmY2NzIwODA1ZTczOGM5N2NjMA==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
NDBhZTc0Y2M1NzRmYjg2ODg4NDRhZDBjZWZhYjRmYTUzNWJiOTEyZjFkNzUy
|
10
|
+
Nzg5MDdmZmNkYzBkMTYxZGJlODEyYTIwMDk5YmE2NTFiNjVhZjIwNjBjMTU0
|
11
|
+
NDk4M2NhMzI3MDQ1M2RhMzRhOWZhNGYxMDBiMjQzZGNkMmRiMWM=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
MWE0ODA5Mzk3ZjliOGMwNTBiNDk5NjA1YThjODliNDA1NjVmOGIwYWI0Yzc2
|
14
|
+
ZDUyOGMyY2UxMDM2ZTUxM2QxNTNiNmMzMTZhZmRlZDc2Y2ZiN2ZmNzQ2NDQ5
|
15
|
+
Y2VhYzk5ZGJmZmVkMzVkZGUzYmYzN2Y0ZWQyNGUxMDg0OTViMTM=
|
@@ -1,16 +1,12 @@
|
|
1
1
|
module RailsConnector
|
2
2
|
|
3
3
|
class ObjsController < WebserviceController
|
4
|
-
before_filter :load_object, only: [:
|
5
|
-
:create_widget, :edit_widget]
|
6
|
-
|
7
|
-
def show
|
8
|
-
render json: {markup: render_to_string(layout: false)}
|
9
|
-
end
|
4
|
+
before_filter :load_object, only: [:edit, :update, :destroy,
|
5
|
+
:show_widget, :widget_class_selection, :create_widget, :edit_widget]
|
10
6
|
|
11
7
|
def create
|
12
|
-
created_obj =
|
13
|
-
"
|
8
|
+
created_obj = task_unaware_request(:post,
|
9
|
+
"workspaces/#{Workspace.current.id}/objs",
|
14
10
|
{obj: obj_params}
|
15
11
|
)
|
16
12
|
render json: created_obj
|
@@ -21,8 +17,8 @@ module RailsConnector
|
|
21
17
|
end
|
22
18
|
|
23
19
|
def update
|
24
|
-
changed_obj =
|
25
|
-
"
|
20
|
+
changed_obj = task_unaware_request(:put,
|
21
|
+
"workspaces/#{Workspace.current.id}/objs/#{params[:id]}",
|
26
22
|
{obj: obj_params}
|
27
23
|
)
|
28
24
|
render json: changed_obj
|
@@ -58,6 +54,12 @@ module RailsConnector
|
|
58
54
|
render json: page_class_names.compact
|
59
55
|
end
|
60
56
|
|
57
|
+
def show_widget
|
58
|
+
@widget = @obj.widget_from_pool(params[:widget_id])
|
59
|
+
|
60
|
+
render json: {markup: render_to_string(layout: false)}
|
61
|
+
end
|
62
|
+
|
61
63
|
def widget_class_selection
|
62
64
|
valid_widget_classes = @obj.valid_widget_classes_for(params[:field_name]) || all_widget_classes
|
63
65
|
valid_widget_classes.map!(&:to_s)
|
@@ -71,23 +73,25 @@ module RailsConnector
|
|
71
73
|
end
|
72
74
|
|
73
75
|
def create_widget
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
)
|
76
|
+
widget_pool_id = BasicObj.generate_widget_pool_id
|
77
|
+
|
78
|
+
task_unaware_request(:put, "workspaces/#{Workspace.current.id}/objs/#{params[:id]}",
|
79
|
+
{obj: {_widget_pool: {widget_pool_id => {_obj_class: params[:obj_class]}}}})
|
80
|
+
|
81
|
+
Workspace.current = Workspace.find(Workspace.current.id)
|
82
|
+
@obj.reload
|
82
83
|
|
83
|
-
@widget =
|
84
|
+
@widget = @obj.widget_from_pool(widget_pool_id)
|
84
85
|
|
85
86
|
render json: {markup: render_to_string(layout: false)}
|
86
87
|
end
|
87
88
|
|
88
89
|
def edit_widget
|
89
|
-
|
90
|
-
|
90
|
+
@widget = @obj.widget_from_pool(params[:widget_id])
|
91
|
+
|
92
|
+
markup = WidgetRenderer.new(request)
|
93
|
+
.process(:edit, @widget, current_page, params[:field_name], @obj)
|
94
|
+
|
91
95
|
render json: {markup: markup}
|
92
96
|
end
|
93
97
|
|
@@ -120,13 +124,11 @@ module RailsConnector
|
|
120
124
|
|
121
125
|
copied_attributes['_path'] = "#{target_path}/#{SecureRandom.hex(6)}"
|
122
126
|
|
123
|
-
|
124
|
-
:post, "revisions/#{Workspace.current.revision_id}/objs", obj: copied_attributes)
|
127
|
+
task_unaware_request(:post, "workspaces/#{Workspace.current.id}/objs", obj: copied_attributes)
|
125
128
|
end
|
126
129
|
|
127
130
|
def get_obj_attributes(id)
|
128
|
-
|
129
|
-
:get, "revisions/#{Workspace.current.revision_id}/objs/#{id}")
|
131
|
+
task_unaware_request(:get, "workspaces/#{Workspace.current.id}/objs/#{id}")
|
130
132
|
end
|
131
133
|
|
132
134
|
def parent_path(path)
|
@@ -139,14 +141,16 @@ module RailsConnector
|
|
139
141
|
helper_method :current_page
|
140
142
|
|
141
143
|
def all_page_classes
|
142
|
-
page_classes =
|
143
|
-
"
|
144
|
+
page_classes = task_unaware_request(:get,
|
145
|
+
"workspaces/#{Workspace.current.id}/obj_classes")['results']
|
144
146
|
page_classes.map { |page_class| page_class['name'] }.sort
|
145
147
|
end
|
146
148
|
|
147
149
|
def all_widget_classes
|
148
150
|
Dir[Rails.root + 'app/widgets/*'].map { |path| File.basename(path).camelize }.sort
|
149
151
|
end
|
152
|
+
|
153
|
+
delegate :task_unaware_request, to: CmsRestApi
|
150
154
|
end
|
151
155
|
|
152
156
|
end
|
@@ -38,33 +38,41 @@ module RailsConnector
|
|
38
38
|
# <% end %>
|
39
39
|
#
|
40
40
|
# @api public
|
41
|
-
def cms_tag(tag_name,
|
41
|
+
def cms_tag(tag_name, obj_or_widget, field_name, options = {}, &block)
|
42
42
|
begin
|
43
|
-
field_type =
|
43
|
+
field_type = obj_or_widget.type_of_attribute(field_name.to_s)
|
44
44
|
rescue RailsConnectorError => e
|
45
45
|
return content_tag(tag_name, '', options)
|
46
46
|
end
|
47
47
|
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
48
|
+
if inplace_editing_allowed?
|
49
|
+
options = options.merge({
|
50
|
+
'data-ip-field-name' => field_name,
|
51
|
+
'data-ip-field-obj-class' => obj_or_widget.obj_class,
|
52
|
+
'data-ip-field-type' => field_type,
|
53
|
+
})
|
54
|
+
|
55
|
+
if obj_or_widget.kind_of?(BasicWidget)
|
56
|
+
options['data-ip-private-field-id'] = obj_or_widget.obj.id
|
57
|
+
options['data-ip-private-field-widget-id'] = obj_or_widget.id
|
58
|
+
else
|
59
|
+
options['data-ip-private-field-id'] = obj_or_widget.id
|
60
|
+
end
|
61
|
+
end
|
54
62
|
|
55
63
|
if field_type == 'widget'
|
56
|
-
rendered_widgets =
|
57
|
-
render_widget(widget,
|
64
|
+
rendered_widgets = obj_or_widget.widgets(field_name).map do |widget|
|
65
|
+
render_widget(widget, obj_or_widget, field_name, obj_or_widget)
|
58
66
|
end
|
59
67
|
inner_html = safe_join(rendered_widgets)
|
60
68
|
else
|
61
69
|
if inplace_editing_allowed? && FIELD_TYPES_WITH_ORIGINAL_CONTENT.include?(field_type)
|
62
|
-
original_value = display_original_value(
|
70
|
+
original_value = display_original_value(obj_or_widget[field_name])
|
63
71
|
original_content = cms_tag_original_content(field_type, original_value)
|
64
72
|
options['data-ip-private-field-original-content'] = MultiJson.encode(original_content)
|
65
73
|
end
|
66
74
|
|
67
|
-
inner_html = block_given? ? capture { yield } : display_value(
|
75
|
+
inner_html = block_given? ? capture { yield } : display_value(obj_or_widget[field_name])
|
68
76
|
end
|
69
77
|
|
70
78
|
if VOID_TAGS.include?(tag_name.to_s)
|
@@ -0,0 +1 @@
|
|
1
|
+
<%= render_widget(@widget, current_page, params[:field_name], @obj) %>
|
data/config/ca-bundle.crt
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
##
|
2
2
|
## /Network/Servers/xs2.infopark/Users/develop/dcc/tmp/Rails_Connector__Kris__dev__93/repos/cloud_connector/config/ca-bundle.crt -- Bundle of CA Root Certificates
|
3
3
|
##
|
4
|
-
## Converted at:
|
4
|
+
## Converted at: Mon Nov 11 13:18:12 2013 UTC
|
5
5
|
##
|
6
6
|
## This is a bundle of X.509 certificates of public Certificate Authorities
|
7
7
|
## (CA). These were automatically extracted from Mozilla's root certificates
|
data/config/routes.rb
CHANGED
@@ -1,9 +1,10 @@
|
|
1
1
|
Rails.application.routes.draw do
|
2
2
|
resources :objs, controller: 'rails_connector/objs', path: '__ipcms/objs',
|
3
|
-
only: [:
|
3
|
+
only: [:edit, :create, :update, :destroy] do
|
4
4
|
get :page_class_selection, on: :collection
|
5
5
|
|
6
6
|
member do
|
7
|
+
get :show_widget
|
7
8
|
get :widget_class_selection
|
8
9
|
post :create_widget
|
9
10
|
get :edit_widget
|
Binary file
|
Binary file
|
Binary file
|
@@ -7247,7 +7247,7 @@ $.i18n().load({
|
|
7247
7247
|
'menu_bar.create_new_ws_confirmation_desc': 'Bitte geben Sie den Titel der neuen Arbeitskopie ein.',
|
7248
7248
|
'menu_bar.create_new_ws_confirmation_placeholder': 'Neuer Titel',
|
7249
7249
|
|
7250
|
-
'menu_bar_dropdown.edit_current_page': '
|
7250
|
+
'menu_bar_dropdown.edit_current_page': 'Seiteneigenschaften',
|
7251
7251
|
'menu_bar_dropdown.delete_current_page': 'Diese Seite löschen',
|
7252
7252
|
'menu_bar_dropdown.save_current_page_to_clipboard': 'Diese Seite im Clipboard ablegen',
|
7253
7253
|
'menu_bar_dropdown.duplicate_current_page': 'Diese Seite duplizieren',
|
@@ -7262,9 +7262,8 @@ $.i18n().load({
|
|
7262
7262
|
'child_list_menus.copy_here': 'Seite im Clipboard hier einfügen',
|
7263
7263
|
|
7264
7264
|
'widget_menus.add_widget': 'Widget einfügen',
|
7265
|
-
'widget_menus.edit_widget': 'Widget
|
7265
|
+
'widget_menus.edit_widget': 'Widget-Eigenschaften',
|
7266
7266
|
'widget_menus.delete_widget': 'Widget löschen',
|
7267
|
-
'widget_menus.open_in_admin_gui': 'Im Admin-GUI öffnen',
|
7268
7267
|
|
7269
7268
|
'commands.delete_obj.confirm_title': 'Wirklich diese Seite löschen?',
|
7270
7269
|
'commands.delete_obj.confirm_description': 'Eine gelöschte Seite kann nicht wiederhergestellt werden.',
|
@@ -7332,7 +7331,7 @@ $.i18n().load({
|
|
7332
7331
|
'menu_bar.create_new_ws_confirmation_desc': 'Please enter the title of the new working copy.',
|
7333
7332
|
'menu_bar.create_new_ws_confirmation_placeholder': 'new title',
|
7334
7333
|
|
7335
|
-
'menu_bar_dropdown.edit_current_page': '
|
7334
|
+
'menu_bar_dropdown.edit_current_page': 'Page properties',
|
7336
7335
|
'menu_bar_dropdown.delete_current_page': 'Delete this page',
|
7337
7336
|
'menu_bar_dropdown.save_current_page_to_clipboard': 'Place this page on the clipboard',
|
7338
7337
|
'menu_bar_dropdown.duplicate_current_page': 'Duplicate this page',
|
@@ -7347,9 +7346,8 @@ $.i18n().load({
|
|
7347
7346
|
'child_list_menus.copy_here': 'Copy page on clipboard here',
|
7348
7347
|
|
7349
7348
|
'widget_menus.add_widget': 'Insert widget',
|
7350
|
-
'widget_menus.edit_widget': '
|
7349
|
+
'widget_menus.edit_widget': 'Widget properties',
|
7351
7350
|
'widget_menus.delete_widget': 'Delete widget',
|
7352
|
-
'widget_menus.open_in_admin_gui': 'Open in admin GUI',
|
7353
7351
|
|
7354
7352
|
'commands.delete_obj.confirm_title': 'Really delete this page?',
|
7355
7353
|
'commands.delete_obj.confirm_description': 'A deleted page cannot be restored.',
|
@@ -8254,6 +8252,15 @@ $(function() {
|
|
8254
8252
|
);
|
8255
8253
|
},
|
8256
8254
|
|
8255
|
+
widget: function() {
|
8256
|
+
var widget_id = that.dom_element().attr('data-ip-private-field-widget-id');
|
8257
|
+
|
8258
|
+
if (widget_id) {
|
8259
|
+
return infopark.widget.create_instance(that.obj(), widget_id,
|
8260
|
+
that.dom_element().attr('data-ip-private-widget-obj-class'));
|
8261
|
+
}
|
8262
|
+
},
|
8263
|
+
|
8257
8264
|
save: function(content) {
|
8258
8265
|
if (content === undefined) {
|
8259
8266
|
if (that.content) {
|
@@ -8265,7 +8272,13 @@ $(function() {
|
|
8265
8272
|
|
8266
8273
|
var changes = {};
|
8267
8274
|
changes[that.field_name()] = content;
|
8268
|
-
|
8275
|
+
|
8276
|
+
var widget = that.widget();
|
8277
|
+
if (widget) {
|
8278
|
+
return that.widget().save(changes);
|
8279
|
+
} else {
|
8280
|
+
return that.obj().save(changes);
|
8281
|
+
}
|
8269
8282
|
},
|
8270
8283
|
|
8271
8284
|
original_content: function() {
|
@@ -8489,6 +8502,43 @@ $(function() {
|
|
8489
8502
|
|
8490
8503
|
infopark.cms_element.definitions.push(infopark.string_field_element);
|
8491
8504
|
}());
|
8505
|
+
(function() {
|
8506
|
+
$.extend(infopark, {
|
8507
|
+
widget: {
|
8508
|
+
create_instance: function(obj, id, widget_class_name) {
|
8509
|
+
var that = {
|
8510
|
+
id: function() {
|
8511
|
+
return id;
|
8512
|
+
},
|
8513
|
+
|
8514
|
+
obj: function() {
|
8515
|
+
return obj;
|
8516
|
+
},
|
8517
|
+
|
8518
|
+
widget_class_name: function() {
|
8519
|
+
return widget_class_name;
|
8520
|
+
},
|
8521
|
+
|
8522
|
+
save: function(widget_attributes) {
|
8523
|
+
return that.obj().save(build_obj_attributes(widget_attributes));
|
8524
|
+
},
|
8525
|
+
|
8526
|
+
destroy: function() {
|
8527
|
+
return that.obj().save(build_obj_attributes(null));
|
8528
|
+
}
|
8529
|
+
};
|
8530
|
+
|
8531
|
+
var build_obj_attributes = function(widget_attributes) {
|
8532
|
+
var obj_attributes = {_widget_pool: {}};
|
8533
|
+
obj_attributes._widget_pool[that.id()] = widget_attributes;
|
8534
|
+
return obj_attributes;
|
8535
|
+
};
|
8536
|
+
|
8537
|
+
return that;
|
8538
|
+
}
|
8539
|
+
}
|
8540
|
+
});
|
8541
|
+
}());
|
8492
8542
|
(function() {
|
8493
8543
|
$.extend(infopark, {
|
8494
8544
|
widget_element: {
|
@@ -8497,12 +8547,13 @@ $(function() {
|
|
8497
8547
|
var that = cms_element;
|
8498
8548
|
|
8499
8549
|
$.extend(that, {
|
8500
|
-
|
8501
|
-
return infopark.
|
8550
|
+
widget: function() {
|
8551
|
+
return infopark.widget.create_instance(that.widget_field().obj(),
|
8502
8552
|
that.dom_element().attr('data-ip-private-widget-id'),
|
8503
8553
|
that.dom_element().attr('data-ip-private-widget-obj-class')
|
8504
8554
|
);
|
8505
8555
|
},
|
8556
|
+
|
8506
8557
|
widget_field: function() {
|
8507
8558
|
return infopark.cms_element.from_dom_element(that.dom_element().parent());
|
8508
8559
|
},
|
@@ -8512,16 +8563,23 @@ $(function() {
|
|
8512
8563
|
},
|
8513
8564
|
|
8514
8565
|
fetch_edit_markup: function() {
|
8515
|
-
|
8566
|
+
var url = 'objs/' + that.widget().obj().id() + '/edit_widget?' + $.param({
|
8567
|
+
widget_id: that.widget().id()
|
8568
|
+
});
|
8569
|
+
|
8570
|
+
return infopark.ajax('GET', url).then(function(data) {
|
8516
8571
|
return data.markup;
|
8517
8572
|
});
|
8518
8573
|
},
|
8519
8574
|
|
8520
8575
|
fetch_show_markup: function() {
|
8521
|
-
|
8576
|
+
var url = 'objs/' + that.widget().obj().id() + '/show_widget?' + $.param({
|
8577
|
+
widget_id: that.widget().id(),
|
8522
8578
|
current_page_id: infopark.obj.current_page().id(),
|
8523
8579
|
field_name: that.field_name()
|
8524
|
-
})
|
8580
|
+
});
|
8581
|
+
|
8582
|
+
return infopark.ajax('GET', url).then(function(data) {
|
8525
8583
|
return data.markup;
|
8526
8584
|
});
|
8527
8585
|
},
|
@@ -8548,20 +8606,17 @@ $(function() {
|
|
8548
8606
|
|
8549
8607
|
$.extend(that, {
|
8550
8608
|
content: function() {
|
8551
|
-
|
8552
|
-
|
8553
|
-
|
8554
|
-
return { widget: widget.obj().id() };
|
8555
|
-
})
|
8556
|
-
};
|
8609
|
+
return {list: _.map(that.widget_elements(), function(widget_element) {
|
8610
|
+
return {widget: widget_element.widget().id()};
|
8611
|
+
})};
|
8557
8612
|
},
|
8558
8613
|
|
8559
|
-
|
8560
|
-
var
|
8561
|
-
var
|
8562
|
-
return infopark.cms_element.from_dom_element($(
|
8614
|
+
widget_elements: function() {
|
8615
|
+
var widget_elements_dom = that.dom_element().children('[data-ip-private-widget-id]');
|
8616
|
+
var widget_elements = _.map(widget_elements_dom, function(widget_element_dom) {
|
8617
|
+
return infopark.cms_element.from_dom_element($(widget_element_dom));
|
8563
8618
|
});
|
8564
|
-
return
|
8619
|
+
return widget_elements;
|
8565
8620
|
},
|
8566
8621
|
|
8567
8622
|
create_widget: function(widget_class) {
|
@@ -9579,7 +9634,7 @@ $(window).on('load', function () { infopark.inplace_menus.refresh_positions(); }
|
|
9579
9634
|
},
|
9580
9635
|
|
9581
9636
|
edit_widget: function(widget_element) {
|
9582
|
-
var
|
9637
|
+
var widget = widget_element.widget();
|
9583
9638
|
var dom_element = widget_element.dom_element();
|
9584
9639
|
|
9585
9640
|
var has_changes = false;
|
@@ -9587,10 +9642,11 @@ $(window).on('load', function () { infopark.inplace_menus.refresh_positions(); }
|
|
9587
9642
|
has_changes = true;
|
9588
9643
|
});
|
9589
9644
|
|
9590
|
-
var title =
|
9645
|
+
var title = widget.widget_class_name();
|
9591
9646
|
var fetch_markup = function() {
|
9592
9647
|
return widget_element.fetch_edit_markup();
|
9593
9648
|
};
|
9649
|
+
|
9594
9650
|
return infopark.edit_dialog.open(title, fetch_markup).then(function() {
|
9595
9651
|
infopark.write_monitor.off(token);
|
9596
9652
|
if (has_changes) {
|
@@ -9607,10 +9663,11 @@ $(window).on('load', function () { infopark.inplace_menus.refresh_positions(); }
|
|
9607
9663
|
title: infopark.i18n.translate('commands.delete_widget.confirm_title'),
|
9608
9664
|
description: infopark.i18n.translate('commands.delete_widget.confirm_description')
|
9609
9665
|
}).then(function() {
|
9666
|
+
var widget = widget_element.widget();
|
9610
9667
|
widget_element.dom_element().remove();
|
9611
9668
|
|
9612
9669
|
return widget_field_element.save().then(function() {
|
9613
|
-
return
|
9670
|
+
return widget.destroy();
|
9614
9671
|
});
|
9615
9672
|
});
|
9616
9673
|
},
|
@@ -9647,7 +9704,7 @@ $(window).on('load', function () { infopark.inplace_menus.refresh_positions(); }
|
|
9647
9704
|
infopark.inplace_menus.define(function(menu) {
|
9648
9705
|
if (infopark.editing.workspace().is_editable()) {
|
9649
9706
|
_.each(infopark.widget_field_element.all(), function(widget_field_element) {
|
9650
|
-
var widget_elements = widget_field_element.
|
9707
|
+
var widget_elements = widget_field_element.widget_elements();
|
9651
9708
|
|
9652
9709
|
if (widget_elements.length === 0) {
|
9653
9710
|
menu.add_item(widget_field_element.dom_element(), {
|
@@ -9685,14 +9742,6 @@ $(window).on('load', function () { infopark.inplace_menus.refresh_positions(); }
|
|
9685
9742
|
infopark.commands.delete_widget(widget_field_element, widget_element);
|
9686
9743
|
}
|
9687
9744
|
});
|
9688
|
-
|
9689
|
-
menu.add_item(widget_dom_element, {
|
9690
|
-
title: infopark.i18n.translate('widget_menus.open_in_admin_gui'),
|
9691
|
-
icon: '\uF000',
|
9692
|
-
execute: function() {
|
9693
|
-
infopark.commands.open_in_admin_gui(widget_element.obj().id());
|
9694
|
-
}
|
9695
|
-
});
|
9696
9745
|
});
|
9697
9746
|
});
|
9698
9747
|
}
|