Added $showSearchForm to ModelAdmin

This commit is contained in:
zauberfisch 2016-10-26 11:35:52 +00:00
parent 7778357b03
commit 6697327a98
3 changed files with 31 additions and 14 deletions

View File

@ -65,10 +65,17 @@ abstract class ModelAdmin extends LeftAndMain {
/**
* Change this variable if you don't want the Import from CSV form to appear.
* This variable can be a boolean or an array.
* If array, you can list className you want the form to appear on. i.e. array('myClassOne','myClasstwo')
* If array, you can list className you want the form to appear on. i.e. array('myClassOne','myClassTwo')
*/
public $showImportForm = true;
/**
* Change this variable if you don't want the search form to appear.
* This variable can be a boolean or an array.
* If array, you can list className you want the form to appear on. i.e. array('myClassOne','myClassTwo')
*/
public $showSearchForm = true;
/**
* List of all {@link DataObject}s which can be imported through
* a subclass of {@link BulkLoader} (mostly CSV data).
@ -182,9 +189,14 @@ abstract class ModelAdmin extends LeftAndMain {
}
/**
* @return Form
* @return Form|bool
*/
public function SearchForm() {
if(!$this->showSearchForm ||
(is_array($this->showSearchForm) && !in_array($this->modelClass, $this->showSearchForm))
) {
return false;
}
$context = $this->getSearchContext();
$form = new Form($this, "SearchForm",
$context->getSearchFields(),
@ -326,7 +338,7 @@ abstract class ModelAdmin extends LeftAndMain {
/**
* Generate a CSV import form for a single {@link DataObject} subclass.
*
* @return Form
* @return Form|bool
*/
public function ImportForm() {
$modelSNG = singleton($this->modelClass);
@ -402,6 +414,7 @@ abstract class ModelAdmin extends LeftAndMain {
* @param array $data
* @param Form $form
* @param SS_HTTPRequest $request
* @return bool|null
*/
public function import($data, $form, $request) {
if(!$this->showImportForm || (is_array($this->showImportForm)

View File

@ -16,7 +16,9 @@
</div>
<div class="cms-content-header-tabs cms-tabset-nav-primary ss-ui-tabs-nav">
<button id="filters-button" class="icon-button font-icon-search no-text" title="<%t CMSPagesController_Tools_ss.FILTER 'Filter' %>"></button>
<% if $SearchForm || $ImportForm %>
<button id="filters-button" class="icon-button font-icon-search no-text" title="<%t CMSPagesController_Tools_ss.FILTER 'Filter' %>"></button>
<% end_if %>
<ul class="cms-tabset-nav-primary">
<% loop $ManagedModelTabs %>
<li class="tab-$ClassName $LinkOrCurrent<% if $LinkOrCurrent == 'current' %> ui-tabs-active<% end_if %>">

View File

@ -1,11 +1,13 @@
<div id="cms-content-tools-ModelAdmin" class="cms-content-filters">
<% if $SearchForm %>
<h3 class="cms-panel-header"><%t ModelAdmin_Tools_ss.FILTER 'Filter' %></h3>
$SearchForm
<% end_if %>
<% if $SearchForm || $ImportForm %>
<div id="cms-content-tools-ModelAdmin" class="cms-content-filters">
<% if $SearchForm %>
<h3 class="cms-panel-header"><%t ModelAdmin_Tools_ss.FILTER 'Filter' %></h3>
$SearchForm
<% end_if %>
<% if $ImportForm %>
<h3 class="cms-panel-header"><%t ModelAdmin_Tools_ss.IMPORT 'Import' %></h3>
$ImportForm
<% end_if %>
</div>
<% if $ImportForm %>
<h3 class="cms-panel-header"><%t ModelAdmin_Tools_ss.IMPORT 'Import' %></h3>
$ImportForm
<% end_if %>
</div>
<% end_if %>