infopark_cloud_connector 6.9.5 → 7.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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
|
}
|