Improve program management

This commit is contained in:
Eike Foken
2011-09-16 03:19:58 +02:00
parent dda117751c
commit 17a66ac75e
8 changed files with 106 additions and 80 deletions

View File

@@ -52,11 +52,11 @@ class Parameters extends Admin_Controller {
} }
if ($this->form_validation->run('parameters/create') === true) { if ($this->form_validation->run('parameters/create') === true) {
$paramName = $this->input->post('name'); $parameter = $this->input->post('name');
$data = array( $data = array(
'program_id' => $program['id'], 'program_id' => $program['id'],
'name' => $paramName, 'name' => $parameter,
'readable' => $this->input->post('readable'), 'readable' => $this->input->post('readable'),
'unit' => $this->input->post('unit'), 'unit' => $this->input->post('unit'),
'description' => $this->input->post('description'), 'description' => $this->input->post('description'),
@@ -65,7 +65,7 @@ class Parameters extends Admin_Controller {
); );
if ($this->parameter->create($data)) { if ($this->parameter->create($data)) {
$this->messages->add(sprintf(_("The parameter '%s' has been successfully created."), $paramName), 'success'); $this->messages->add(sprintf(_("The parameter "%s" has been created successfully."), $parameter), 'success');
redirect('admin/programs/edit/' . $program['id'], 303); redirect('admin/programs/edit/' . $program['id'], 303);
} }
} }
@@ -148,13 +148,14 @@ class Parameters extends Admin_Controller {
); );
if ($this->parameter->update($data, $id)) { if ($this->parameter->update($data, $id)) {
$this->messages->add(sprintf(_("The parameter '%s' has been successfully updated."), $parameter['name']), 'success'); $this->messages->add(sprintf(_("The parameter "%s" has been updated successfully."), $parameter['name']), 'success');
redirect('admin/programs/edit/' . $parameter['program_id'], 303);
} }
redirect('admin/programs/edit/' . $parameter['program_id'], 303);
} }
$data = array(); // empty the data array $data = array(); // empty the data array
$data['types'] = $this->parameter->getTypes(); $data['types'] = $this->parameter->getTypes();
$data['program'] = $this->program->getByID($parameter['program_id']);
$data['parameter'] = $parameter; $data['parameter'] = $parameter;
$this->load->view('admin/parameters/edit', $data); $this->load->view('admin/parameters/edit', $data);
@@ -172,7 +173,7 @@ class Parameters extends Admin_Controller {
show_404(); show_404();
} else { } else {
if ($this->parameter->delete($parameter['id'])) { if ($this->parameter->delete($parameter['id'])) {
$this->messages->add(_('The selected parameter has been successfully deleted.'), 'success'); $this->messages->add(_("The selected parameter has been deleted successfully."), 'success');
} }
redirect('admin/programs/edit/' . $parameter['program_id'], 303); redirect('admin/programs/edit/' . $parameter['program_id'], 303);
} }

View File

@@ -52,10 +52,10 @@ class Programs extends Admin_Controller {
* *
* @param string $id * @param string $id
*/ */
public function edit($id = '') { public function edit($programId = '') {
$program = $this->program->getByID($id); $program = $this->program->getByID($programId);
if (empty($id) || !isset($program['id'])){ if (empty($programId) || !isset($program['id'])){
show_404(); show_404();
} }
@@ -64,12 +64,13 @@ class Programs extends Admin_Controller {
'name' => $this->input->post('name'), 'name' => $this->input->post('name'),
'config_template' => $_POST['config_template'], 'config_template' => $_POST['config_template'],
); );
if ($this->program->update($data, $id)) { if ($this->program->update($data, $programId)) {
$this->messages->add(sprintf(_("The program '%s' has been updated successfully"), $this->input->post('name')), 'success'); $this->messages->add(sprintf(_("The program "%s" has been updated successfully"), $this->input->post('name')), 'success');
redirect('admin/programs', 303); redirect('admin/programs/edit/' . $program['id'], 303);
} }
} }
$data = array(); // empty data array
$data['program'] = $program; $data['program'] = $program;
$data['parameters'] = $this->parameter->getAll($program['id']); $data['parameters'] = $this->parameter->getAll($program['id']);

View File

@@ -3,28 +3,45 @@
<div id="content"> <div id="content">
<div class="title"> <div class="title">
<h2><?=_('Add a new parameter');?></h2> <h2><?=anchor('admin/programs', _('Programs'));?> &raquo; <?=anchor('admin/programs/edit/' . $program['id'], $program['name']);?> &raquo; <?=_('Add a new parameter');?></h2>
</div> </div>
<div class="box"> <div class="box">
<form name="addParameter" method="post" action="<?=site_url('admin/parameters/create/' . $program['id']);?>"> <form name="addParameter" method="post" action="<?=site_url('admin/parameters/create/' . $program['id']);?>">
<h3><?=_('Required information');?></h3>
<ul> <ul>
<li> <li>
<?=form_label(_('Name'), 'name');?> <?=form_label(_('Name'), 'name');?> <span class="req">*</span>
<span class="req">*</span>
<div> <div>
<input type="text" name="name" id="name" class="short text" value="<?=set_value('name');?>" /> <input type="text" name="name" id="name" class="short text" value="<?=set_value('name');?>" />
<?=form_error('name');?> <?=form_error('name');?>
</div> </div>
</li> </li>
<li> <li>
<?=form_label(_('Human-readable name'), 'readable');?> <?=form_label(_('Human-readable name'), 'readable');?> <span class="req">*</span>
<span class="req">*</span>
<div> <div>
<input type="text" name="readable" id="readable" class="medium text" value="<?=set_value('readable');?>" /> <input type="text" name="readable" id="readable" class="medium text" value="<?=set_value('readable');?>" />
<?=form_error('readable');?> <?=form_error('readable');?>
</div> </div>
</li> </li>
<li>
<?=form_label(_('Type'), 'type');?> <span class="req">*</span>
<div>
<select name="type" id="type" class="drop">
<?php
foreach ($types as $type):
?>
<option value="<?=$type;?>" <?=set_select('type', $type);?>><?=$type;?></option>
<?php
endforeach;
?>
</select>
<?=form_error('type');?>
</div>
</li>
</ul>
<h3><?=_('Optional information');?></h3>
<ul>
<li> <li>
<?=form_label(_('Unit'), 'unit');?> <?=form_label(_('Unit'), 'unit');?>
<div> <div>
@@ -39,22 +56,6 @@
<?=form_error('description');?> <?=form_error('description');?>
</div> </div>
</li> </li>
<li>
<?=form_label(_('Type'), 'type');?>
<span class="req">*</span>
<div>
<select name="type" id="type" class="drop">
<?php
foreach ($types as $type):
?>
<option value="<?=$type;?>" <?=set_select('type', $type);?>><?=$type;?></option>
<?php
endforeach;
?>
</select>
<?=form_error('type');?>
</div>
</li>
<li> <li>
<?=form_label(_('Default value'), 'default_value');?> <?=form_label(_('Default value'), 'default_value');?>
<div> <div>
@@ -64,7 +65,8 @@
</li> </li>
</ul> </ul>
<p> <p>
<a class="button save" href="javascript:void(0);" onclick="$('form[name=addParameter]').submit();"><?=_('Save');?></a> <a href="javascript:void(0);" onclick="$('form[name=addParameter]').submit();" class="button save"><?=_('Save');?></a>
<a href="<?=site_url('admin/programs/edit/' . $program['id']);?>" class="button cancel"><?=_('Cancel');?></a>
</p> </p>
</form> </form>
</div> </div>

View File

@@ -3,28 +3,45 @@
<div id="content"> <div id="content">
<div class="title"> <div class="title">
<h2><?php printf(_("Edit parameter '%s'"), $parameter['name']);?></h2> <h2><?=anchor('admin/programs', _('Programs'));?> &raquo; <?=anchor('admin/programs/edit/' . $program['id'], $program['name']);?> &raquo; <?=sprintf(_('Edit parameter &quot;%s&quot;'), $parameter['name']);?></h2>
</div> </div>
<div class="box"> <div class="box">
<form name="editParameter" method="post" action="<?=site_url('admin/parameters/edit/' . $parameter['id']);?>"> <form name="editParameter" method="post" action="<?=site_url('admin/parameters/edit/' . $parameter['id']);?>">
<h3><?=_('Required information');?></h3>
<ul> <ul>
<li> <li>
<?=form_label(_('Name'), 'name');?> <?=form_label(_('Name'), 'name');?> <span class="req">*</span>
<span class="req">*</span>
<div> <div>
<input type="text" name="name" id="name" class="short text" value="<?=set_value('name', $parameter['name']);?>" /> <input type="text" name="name" id="name" class="short text" value="<?=set_value('name', $parameter['name']);?>" />
<?=form_error('name');?> <?=form_error('name');?>
</div> </div>
</li> </li>
<li> <li>
<?=form_label(_('Human-readable name'), 'readable');?> <?=form_label(_('Human-readable name'), 'readable');?> <span class="req">*</span>
<span class="req">*</span>
<div> <div>
<input type="text" name="readable" id="readable" class="medium text" value="<?=set_value('readable', $parameter['readable']);?>" /> <input type="text" name="readable" id="readable" class="medium text" value="<?=set_value('readable', $parameter['readable']);?>" />
<?=form_error('readable');?> <?=form_error('readable');?>
</div> </div>
</li> </li>
<li>
<?=form_label(_('Type'), 'type');?> <span class="req">*</span>
<div>
<select name="type" id="type" class="drop">
<?php
foreach ($types as $type):
?>
<option value="<?=$type;?>" <?=set_select('type', $type, $parameter['type'] == $type);?>><?=$type;?></option>
<?php
endforeach;
?>
</select>
<?=form_error('type');?>
</div>
</li>
</ul>
<h3><?=_('Optional information');?></h3>
<ul>
<li> <li>
<?=form_label(_('Unit'), 'unit');?> <?=form_label(_('Unit'), 'unit');?>
<div> <div>
@@ -39,22 +56,6 @@
<?=form_error('description');?> <?=form_error('description');?>
</div> </div>
</li> </li>
<li>
<?=form_label(_('Type'), 'type');?>
<span class="req">*</span>
<div>
<select name="type" id="type" class="drop">
<?php
foreach ($types as $type):
?>
<option value="<?=$type;?>" <?=set_select('type', $type, $parameter['type'] == $type);?>><?=$type;?></option>
<?php
endforeach;
?>
</select>
<?=form_error('type');?>
</div>
</li>
<li> <li>
<?=form_label(_('Default value'), 'default_value');?> <?=form_label(_('Default value'), 'default_value');?>
<div> <div>
@@ -64,8 +65,8 @@
</li> </li>
</ul> </ul>
<p> <p>
<a class="button save" href="javascript:void(0);" onclick="$('form[name=editParameter]').submit();"><?=_('Save');?></a> <a href="javascript:void(0);" onclick="$('form[name=editParameter]').submit();" class="button save"><?=_('Save');?></a>
<a class="button cancel" href="<?=site_url('admin/programs/edit/' . $parameter['program_id']);?>"><?=_('Cancel');?></a> <a href="<?=site_url('admin/programs/edit/' . $parameter['program_id']);?>" class="button cancel"><?=_('Cancel');?></a>
</p> </p>
</form> </form>
</div> </div>

View File

@@ -16,7 +16,7 @@ $(document).ready(function() {
<div id="debug"></div> <div id="debug"></div>
<div class="title"> <div class="title">
<h2><?php printf(_("Edit program '%s'"), $program['name']);?></h2> <h2><?=anchor('admin/programs', _('Programs'));?> &raquo; <?=sprintf(_("Edit program &quot;%s&quot;"), $program['name']);?></h2>
</div> </div>
<div class="box"> <div class="box">
@@ -24,16 +24,14 @@ $(document).ready(function() {
<h3><?=_('Required information');?></h3> <h3><?=_('Required information');?></h3>
<ul> <ul>
<li> <li>
<?=form_label(_('Name of the program'), 'name');?> <?=form_label(_('Name of the program'), 'name');?> <span class="req">*</span>
<span class="req">*</span>
<div> <div>
<input type="text" name="name" id="name" class="medium text" value="<?=set_value('name', $program['name']);?>" /> <input type="text" name="name" id="name" class="medium text" value="<?=set_value('name', $program['name']);?>" />
<?=form_error('name')?> <?=form_error('name')?>
</div> </div>
</li> </li>
<li> <li>
<?=form_label(_('Config template'), 'config_template');?> <?=form_label(_('Config template'), 'config_template');?> <span class="req">*</span>
<span class="req">*</span>
<div> <div>
<textarea name="config_template" id="config_template" rows="6" cols="60" class="textarea"><?=set_value('config_template', $program['config_template']);?></textarea> <textarea name="config_template" id="config_template" rows="6" cols="60" class="textarea"><?=set_value('config_template', $program['config_template']);?></textarea>
<?=form_error('config_template')?> <?=form_error('config_template')?>
@@ -47,11 +45,13 @@ $(document).ready(function() {
</li> </li>
</ul> </ul>
<p> <p>
<a class="button save" href="javascript:void(0);" onclick="$('form[name=editProgram]').submit();"><?=_('Save');?></a> <a href="javascript:void(0);" onclick="$('form[name=editProgram]').submit();" class="button save"><?=_('Save');?></a>
<a class="button cancel" href="<?=site_url('admin/programs');?>"><?=_('Cancel');?></a> <a href="<?=site_url('admin/programs');?>" class="button cancel"><?=_('Cancel');?></a>
</p> </p>
</form> </form>
</div>
<div class="box">
<h3><?=_('Parameters');?></h3> <h3><?=_('Parameters');?></h3>
<table class="tableList sortable" id="parameters"> <table class="tableList sortable" id="parameters">
<thead> <thead>
@@ -80,7 +80,12 @@ $(document).ready(function() {
</tbody> </tbody>
</table> </table>
<p> <p>
<a class="button add" href="<?=site_url('admin/parameters/create/' . $program['id']);?>"><?=_('Add new parameter');?></a> <label class="note"><?=_('Entries of this table are draggable.');?></label>
</p>
<h3><?=_('Actions');?></h3>
<p>
<a class="button parameter_add" href="<?=site_url('admin/parameters/create/' . $program['id']);?>"><?=_('Add parameter');?></a>
</p> </p>
<form name="uploadCSV" method="post" action="<?=site_url('admin/parameters/upload_csv/' . $program['id'])?>" enctype="multipart/form-data"> <form name="uploadCSV" method="post" action="<?=site_url('admin/parameters/upload_csv/' . $program['id'])?>" enctype="multipart/form-data">
@@ -89,13 +94,14 @@ $(document).ready(function() {
<?=form_label(_('CSV file'), 'csv_file');?> <?=form_label(_('CSV file'), 'csv_file');?>
<div> <div>
<input type="file" name="csv_file" id="csv_file" class="file" /> <input type="file" name="csv_file" id="csv_file" class="file" />
<?=form_error('csv_file')?> <?=form_error('csv_file');?>
</div> </div>
<label class="note">You can upload a CSV file, containing a bunch of parameters. The rows of the file must be in the following format: <em>parameter name, human-readable name, unit, type, default value, description</em>. The first row is reserved for headlines.</label> <label class="note"><?=_('You can upload a CSV file, containing a bunch of parameters.');?> <?=anchor('uploads/csv_template.csv', _('Here you can download a template.'));?></label>
</li> </li>
</ul> </ul>
</form>
<p> <p>
<a class="button upload" href="javascript:void(0);" onclick="$('form[name=uploadCSV]').submit();"><?=_('Upload');?></a> <a href="javascript:void(0);" onclick="$('form[name=uploadCSV]').submit();" class="button upload"><?=_('Upload');?></a>
</p> </p>
</div> </div>
</div> </div>

View File

@@ -8,7 +8,7 @@
<div class="box"> <div class="box">
<h3><?=_('Available programs');?></h3> <h3><?=_('Available programs');?></h3>
<table class="tableList paginated"> <table class="tableList">
<thead> <thead>
<tr> <tr>
<th scope="col"><?=_('Name');?></th> <th scope="col"><?=_('Name');?></th>
@@ -21,15 +21,20 @@
?> ?>
<tr> <tr>
<td><?=$program['name'];?></td> <td><?=$program['name'];?></td>
<td><?=anchor('admin/programs/edit/' . $program['id'], _('Edit'));?> | <a href="javascript:deleteConfirm('<?=site_url('admin/programs/delete/' . $program['id']);?>');"><?=_('Delete');?></a></td> <td>
<?=anchor('admin/programs/edit/' . $program['id'], _('Edit'));?> |
<a href="javascript:deleteConfirm('<?=site_url('admin/programs/delete/' . $program['id']);?>');"><?=_('Delete');?></a>
</td>
</tr> </tr>
<?php <?php
endforeach; endforeach;
?> ?>
</tbody> </tbody>
</table> </table>
<h3><?=_('Actions');?></h3>
<p><a class="button add" href="<?=site_url('admin/programs/create')?>"><?=_('Add program')?></a> <p>
<a class="button disabled program_add"><?=_('Add program');?></a>
</p>
</div> </div>
</div> </div>

View File

@@ -590,6 +590,16 @@ a.user_add {
padding-left: 30px; padding-left: 30px;
} }
a.program_add {
background: url(../images/icons/application--plus.png) 10px center no-repeat #f3f3f3;
padding-left: 30px;
}
a.parameter_add {
background: url(../images/icons/ui-text-field--plus.png) 10px center no-repeat #f3f3f3;
padding-left: 30px;
}
a.results { a.results {
background: url(../images/icons/blue-folder-open-document-text.png) 10px center no-repeat #f3f3f3; background: url(../images/icons/blue-folder-open-document-text.png) 10px center no-repeat #f3f3f3;
padding-left: 30px; padding-left: 30px;

Binary file not shown.

After

Width:  |  Height:  |  Size: 482 B