[ticket/624] Display modules on all pages if column disabled in portal
B3P-624
This commit is contained in:
@@ -244,7 +244,7 @@ class main
|
||||
return false;
|
||||
}
|
||||
|
||||
if (in_array($column, array('left', 'right')) && $this->config['board3_' . $column . '_column'])
|
||||
if ($this->is_enabled_side_column($column))
|
||||
{
|
||||
++$this->module_count[$column];
|
||||
$template_module = $module->get_template_side($row['module_id']);
|
||||
@@ -258,6 +258,18 @@ class main
|
||||
return $template_module;
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if column is enabled side column
|
||||
*
|
||||
* @param string $column Column string
|
||||
*
|
||||
* @return bool True if column is side column and enabled, false if not
|
||||
*/
|
||||
protected function is_enabled_side_column($column)
|
||||
{
|
||||
return in_array($column, array('left', 'right')) && ($this->config['board3_' . $column . '_column'] || $this->allowed_columns);
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if portal needs to redirect to index page
|
||||
*/
|
||||
@@ -302,7 +314,7 @@ class main
|
||||
*/
|
||||
protected function check_module_count($column, $config = true)
|
||||
{
|
||||
return $this->module_count[$column] > 0 && $config;
|
||||
return $this->module_count[$column] > 0 && ($config || $this->allowed_columns);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -100,4 +100,13 @@ class main_test extends \board3\portal\tests\testframework\database_test_case
|
||||
$this->assertNull($this->controller_main->handle(array('left' => 1)));
|
||||
$this->template->assert_same(null, 'S_PORTAL_ALL');
|
||||
}
|
||||
|
||||
public function test_is_enabled_side_column()
|
||||
{
|
||||
$this->assertFalse($this->controller_main->get_module_template(array(), new \board3\portal\modules\clock($this->config, $this->template)));
|
||||
$this->assertNull($this->controller_main->handle(array('left' => 1)));
|
||||
$this->template->assert_same(true, 'S_PORTAL_ALL');
|
||||
$this->config['board3_left_column'] = false;
|
||||
$this->assertSame('clock_side.html', $this->controller_main->get_module_template(array('module_column' => 1), new \board3\portal\modules\clock($this->config, $this->template)));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user