mirror of
https://github.com/silverstripe/silverstripe-framework
synced 2024-10-22 12:05:37 +00:00
MINOR Removed ModelAdmin JS which no longer applies due to rewrite
This commit is contained in:
parent
2d151b8cfa
commit
2c42ffdba7
@ -2,188 +2,8 @@
|
||||
* File: ModelAdmin.js
|
||||
*/
|
||||
|
||||
/**
|
||||
* Javascript handlers for generic model admin.
|
||||
*
|
||||
* Most of the work being done here is intercepting clicks on form submits,
|
||||
* and managing the loading and sequencing of data between the different panels of
|
||||
* the CMS interface.
|
||||
*
|
||||
* @todo add live query to manage application of events to DOM refreshes
|
||||
* @todo alias the $ function instead of literal jQuery
|
||||
*/
|
||||
(function($) {
|
||||
$.entwine('ss', function($){
|
||||
|
||||
//////////////////////////////////////////////////////////////////
|
||||
// Search form
|
||||
//////////////////////////////////////////////////////////////////
|
||||
|
||||
/**
|
||||
* Class: #ModelClassSelector select
|
||||
*
|
||||
* If a dropdown is used to choose between the classes, it is handled by this code
|
||||
*/
|
||||
$('#ModelClassSelector select').entwine({
|
||||
onmatch: function() {
|
||||
// Initialise the form by calling this onchange event straight away
|
||||
this.change();
|
||||
|
||||
this._super();
|
||||
},
|
||||
|
||||
/**
|
||||
* Function: onchange
|
||||
*
|
||||
* Set up an onchange function to show the applicable form and hide all others
|
||||
*/
|
||||
onchange: function(e) {
|
||||
var self = this;
|
||||
this.find('option').each(function() {
|
||||
var val = $(this).attr('value');
|
||||
$('#' + val)[(val == $(self).val()) ? 'show' : 'hide']();
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
/**
|
||||
* Class: #SearchForm_holder form
|
||||
*
|
||||
* Submits a search filter query and attaches event handlers
|
||||
* to the response table, excluding the import form because
|
||||
* file ($_FILES) submission doesn't work using AJAX
|
||||
*
|
||||
* Note: This is used for Form_CreateForm and all Form_SearchForm_* variations
|
||||
*/
|
||||
$('#SearchForm_holder form').entwine({
|
||||
|
||||
/**
|
||||
* Function: onsubmit
|
||||
*/
|
||||
onsubmit: function(e) {
|
||||
// Import forms are processed without ajax
|
||||
if(this.attr('id').match(/^Form_ImportForm/)) return true;
|
||||
|
||||
$('.cms-editor-dialogs').closeRightPanel();
|
||||
|
||||
this.trigger('beforeSubmit');
|
||||
|
||||
var btn = $(this[0].clickedButton);
|
||||
btn.addClass('loading');
|
||||
|
||||
$('.cms-content').loadForm(
|
||||
this.attr('action'),
|
||||
null,
|
||||
function() {
|
||||
btn.removeClass('loading');
|
||||
},
|
||||
{data: this.serialize()}
|
||||
);
|
||||
|
||||
return false;
|
||||
}
|
||||
});
|
||||
|
||||
/**
|
||||
* Class: a.form_frontend_function.toggle_result_assembly
|
||||
*
|
||||
* Column selection in search form
|
||||
*/
|
||||
$('a.form_frontend_function.toggle_result_assembly').entwine({
|
||||
|
||||
/**
|
||||
* Function: onclick
|
||||
*/
|
||||
onclick: function(e) {
|
||||
var toggleElement = $(this).next();
|
||||
toggleElement.toggle();
|
||||
return false;
|
||||
}
|
||||
});
|
||||
|
||||
/**
|
||||
* Class: a.form_frontend_function.tick_all_result_assembly
|
||||
*/
|
||||
$('a.form_frontend_function.tick_all_result_assembly').entwine({
|
||||
/**
|
||||
* Function: onclick
|
||||
*/
|
||||
onclick: function(e) {
|
||||
var resultAssembly = $(this).prevAll('div#ResultAssembly').find('ul li input');
|
||||
resultAssembly.attr('checked', 'checked');
|
||||
return false;
|
||||
}
|
||||
});
|
||||
|
||||
$('a.form_frontend_function.untick_all_result_assembly').entwine({
|
||||
onclick: function(e) {
|
||||
var resultAssembly = $(this).prevAll('div#ResultAssembly').find('ul li input');
|
||||
resultAssembly.removeAttr('checked');
|
||||
return false;
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
/**
|
||||
* Class: .resultsTable tbody td
|
||||
*
|
||||
* Table record handler for search result record
|
||||
*/
|
||||
$('.resultsTable tbody td').entwine({
|
||||
/**
|
||||
* Function: onclick
|
||||
*/
|
||||
onclick: function(e) {
|
||||
var firstLink = this.find('a[href]');
|
||||
if(!firstLink) return;
|
||||
|
||||
if(window.History.enabled) {
|
||||
$('.cms-container').loadPanel(firstLink.attr('href'), '', {selector: '.cms-content-fields form:first'});
|
||||
return false;
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
/**
|
||||
* Class: #Form_ManagedModelsSelect
|
||||
*
|
||||
* Add object button
|
||||
*/
|
||||
$('#Form_ManagedModelsSelect').entwine({
|
||||
/**
|
||||
* Function: onsubmit
|
||||
*/
|
||||
onsubmit: function(e) {
|
||||
className = $('select option:selected', this).val();
|
||||
requestPath = this.attr('action').replace('ManagedModelsSelect', className + '/add');
|
||||
var $button = $(':submit', this);
|
||||
$('.cms-content').loadForm(
|
||||
requestPath,
|
||||
null,
|
||||
function() {
|
||||
$button.removeClass('loading');
|
||||
$button = null;
|
||||
}
|
||||
);
|
||||
|
||||
return false;
|
||||
}
|
||||
});
|
||||
|
||||
/**
|
||||
* Class: .cms-edit-form input[name=action_doDelete]
|
||||
*
|
||||
* RHS panel Delete button
|
||||
*/
|
||||
$('.cms-edit-form :submit[name=action_doDelete]').entwine({
|
||||
// Function: onclick
|
||||
onclick: function(e) {
|
||||
if(!confirm(ss.i18n._t('ModelAdmin.REALLYDELETE', 'Really delete?'))) {
|
||||
this.removeClass('loading');
|
||||
return false;
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
/**
|
||||
* Class: .importSpec
|
||||
@ -202,19 +22,5 @@
|
||||
}
|
||||
});
|
||||
|
||||
$('.cms-editor-dialogs').entwine({
|
||||
/**
|
||||
* Close TinyMCE image, link or flash panel.
|
||||
* this function is called everytime a new search, back or add new DataObject are clicked
|
||||
**/
|
||||
closeRightPanel: function(){
|
||||
if($('.cms-editor-dialogs').is(':visible')) {
|
||||
$('.cms-editor-dialogs').hide();
|
||||
$('#Form_EditorToolbarMediaForm').hide();
|
||||
$('#Form_EditorToolbarLinkForm').hide();
|
||||
}
|
||||
}
|
||||
|
||||
});
|
||||
});
|
||||
})(jQuery);
|
Loading…
x
Reference in New Issue
Block a user