start on content type setting
This commit is contained in:
parent
723e217a6f
commit
1d501de6c4
2 changed files with 57 additions and 4 deletions
|
@ -44,6 +44,10 @@
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div style="padding: 10px 0;">
|
<div style="padding: 10px 0;">
|
||||||
|
<div data-role="fieldcontain" id="fldContentType" style="display:none;">
|
||||||
|
<label for="selectContentType">${LabelContentType}</label>
|
||||||
|
<select id="selectContentType" data-mini="true"></select>
|
||||||
|
</div>
|
||||||
<div data-role="fieldcontain" id="fldPath">
|
<div data-role="fieldcontain" id="fldPath">
|
||||||
<label for="txtPath">${LabelPath}</label>
|
<label for="txtPath">${LabelPath}</label>
|
||||||
<input type="text" id="txtPath" data-mini="true" readonly="readonly" />
|
<input type="text" id="txtPath" data-mini="true" readonly="readonly" />
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
(function ($, document, window) {
|
(function ($, document, window) {
|
||||||
|
|
||||||
var currentItem;
|
var currentItem;
|
||||||
|
var metadataEditorInfo;
|
||||||
|
|
||||||
function updateTabs(page, item) {
|
function updateTabs(page, item) {
|
||||||
|
|
||||||
|
@ -21,6 +22,7 @@
|
||||||
$.when(promise1, promise2).done(function (response1, response2) {
|
$.when(promise1, promise2).done(function (response1, response2) {
|
||||||
|
|
||||||
var item = response1[0];
|
var item = response1[0];
|
||||||
|
metadataEditorInfo = response2[0];
|
||||||
|
|
||||||
currentItem = item;
|
currentItem = item;
|
||||||
|
|
||||||
|
@ -31,10 +33,11 @@
|
||||||
$('.editPageInnerContent', page).show();
|
$('.editPageInnerContent', page).show();
|
||||||
}
|
}
|
||||||
|
|
||||||
var metadataEditorInfo = response2[0];
|
|
||||||
var languages = metadataEditorInfo.Cultures;
|
var languages = metadataEditorInfo.Cultures;
|
||||||
var countries = metadataEditorInfo.Countries;
|
var countries = metadataEditorInfo.Countries;
|
||||||
|
|
||||||
|
renderContentTypeOptions(page, metadataEditorInfo);
|
||||||
|
|
||||||
loadExternalIds(page, item, metadataEditorInfo.ExternalIdInfos);
|
loadExternalIds(page, item, metadataEditorInfo.ExternalIdInfos);
|
||||||
|
|
||||||
Dashboard.populateLanguages($('#selectLanguage', page), languages);
|
Dashboard.populateLanguages($('#selectLanguage', page), languages);
|
||||||
|
@ -99,6 +102,24 @@
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function renderContentTypeOptions(page, metadataInfo) {
|
||||||
|
|
||||||
|
if (metadataInfo.ContentTypeOptions.length) {
|
||||||
|
$('#fldContentType', page).show();
|
||||||
|
} else {
|
||||||
|
$('#fldContentType', page).hide();
|
||||||
|
}
|
||||||
|
|
||||||
|
var html = metadataInfo.ContentTypeOptions.map(function (i) {
|
||||||
|
|
||||||
|
|
||||||
|
return '<option value="' + i.Value + '">' + i.Name + '</option>';
|
||||||
|
|
||||||
|
}).join('');
|
||||||
|
|
||||||
|
$('#selectContentType', page).html(html).val(metadataInfo.ContentType || '').selectmenu('refresh');
|
||||||
|
}
|
||||||
|
|
||||||
function onExternalIdChange() {
|
function onExternalIdChange() {
|
||||||
|
|
||||||
var formatString = this.getAttribute('data-formatstring');
|
var formatString = this.getAttribute('data-formatstring');
|
||||||
|
@ -871,17 +892,45 @@
|
||||||
var tagline = $('#txtTagline', form).val();
|
var tagline = $('#txtTagline', form).val();
|
||||||
item.Taglines = tagline ? [tagline] : [];
|
item.Taglines = tagline ? [tagline] : [];
|
||||||
|
|
||||||
ApiClient.updateItem(item).done(function () {
|
self.submitUpdatedItem(form, item);
|
||||||
|
|
||||||
|
return false;
|
||||||
|
};
|
||||||
|
|
||||||
|
self.submitUpdatedItem = function (form, item) {
|
||||||
|
|
||||||
|
function afterContentTypeUpdated() {
|
||||||
|
|
||||||
Dashboard.alert(Globalize.translate('MessageItemSaved'));
|
Dashboard.alert(Globalize.translate('MessageItemSaved'));
|
||||||
|
|
||||||
MetadataEditor.getItemPromise().done(function (i) {
|
MetadataEditor.getItemPromise().done(function (i) {
|
||||||
$(form).parents('.page').trigger('itemsaved', [i]);
|
$(form).parents('.page').trigger('itemsaved', [i]);
|
||||||
});
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
ApiClient.updateItem(item).done(function () {
|
||||||
|
|
||||||
|
var newContentType = $('#selectContentType', form).val() || '';
|
||||||
|
|
||||||
|
if ((metadataEditorInfo.ContentType || '') != newContentType) {
|
||||||
|
|
||||||
|
ApiClient.ajax({
|
||||||
|
|
||||||
|
url: ApiClient.getUrl('Items/' + item.Id + '/ContentType', {
|
||||||
|
ContentType: newContentType
|
||||||
|
}),
|
||||||
|
|
||||||
|
type: 'POST'
|
||||||
|
|
||||||
|
}).done(function () {
|
||||||
|
afterContentTypeUpdated();
|
||||||
|
});
|
||||||
|
|
||||||
|
} else {
|
||||||
|
afterContentTypeUpdated();
|
||||||
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
return false;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
self.getDateFromForm = function (form, element, property) {
|
self.getDateFromForm = function (form, element, property) {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue