Make config/model upload optional + some form fixes

This commit is contained in:
Eike Foken
2011-08-09 03:40:29 +02:00
parent ef14e46c9a
commit 360408e2eb
2 changed files with 25 additions and 19 deletions

View File

@@ -77,26 +77,28 @@ class Projects extends MY_Controller {
$this->form_validation->set_rules($config); $this->form_validation->set_rules($config);
$config = array(); if (count($_POST) > 0) {
$config['upload_path'] = '/tmp'; $config = array();
$config['allowed_types'] = 'zip'; $config['upload_path'] = '/tmp';
$config['max_size'] = '1024'; $config['allowed_types'] = 'txt';
$config['file_name'] = 'defaultmodel'; $config['max_size'] = '1024';
$config['file_name'] = 'defaultmodel';
$this->upload->initialize($config); $this->upload->initialize($config);
$modelUploaded = $this->upload->do_upload('defaultmodel'); $modelUploaded = $this->upload->do_upload('defaultmodel');
$modelData = $this->upload->data(); $modelData = $this->upload->data();
$config['file_name'] = 'defaultconfig'; $config['file_name'] = 'defaultconfig';
$this->upload->initialize($config); $this->upload->initialize($config);
$configUploaded = $this->upload->do_upload('defaultconfig'); $configUploaded = $this->upload->do_upload('defaultconfig');
$configData = $this->upload->data(); $configData = $this->upload->data();
}
// run form validation // run form validation
if ($this->form_validation->run() == false || $modelUploaded == false || $configUploaded == false) { if ($this->form_validation->run() == false) {
$data['model']['success'] = $modelUploaded; $data['model']['success'] = isset($modelUploaded) && $modelUploaded ? true : false;
$data['config']['success'] = $configUploaded; $data['config']['success'] = isset($configUploaded) && $configUploaded ? true: false;
$this->load->view('project/new', $data); $this->load->view('project/new', $data);
} else { } else {
@@ -122,8 +124,12 @@ class Projects extends MY_Controller {
chmod($projectpath, 0777); chmod($projectpath, 0777);
} }
copy($modelData['full_path'], $projectpath . $modelData['file_name']); if ($modelUploaded) {
copy($configData['full_path'], $projectpath . $configData['file_name']); copy($modelData['full_path'], $projectpath . $modelData['file_name']);
}
if ($configUploaded) {
copy($configData['full_path'], $projectpath . $configData['file_name']);
}
$this->messages->add($projectpath, 'notice'); $this->messages->add($projectpath, 'notice');
redirect('/projects/detail/' . $data['project_id'], 301); redirect('/projects/detail/' . $data['project_id'], 301);

View File

@@ -15,7 +15,7 @@
<li> <li>
<h4>Projektname <span class="req">*</span></h4> <h4>Projektname <span class="req">*</span></h4>
<div> <div>
<input type="text" name="name" class="short text" tabindex="1" value="<?=set_value('name') == null ? $this->input->post('name') : set_value('name');?>"> <input type="text" name="name" class="short text" tabindex="1" value="<?=set_value('name') == '' ? $this->input->post('name') : set_value('name');?>">
<?=form_error('name')?> <?=form_error('name')?>
</div> </div>
</li> </li>
@@ -23,7 +23,7 @@
<h4>Beschreibung</h4> <h4>Beschreibung</h4>
<label class="note">Eine Beschreibung ist hilfreich, wenn Sie dieses Projekt später für andere Mitarbeiter freigeben möchten.</label> <label class="note">Eine Beschreibung ist hilfreich, wenn Sie dieses Projekt später für andere Mitarbeiter freigeben möchten.</label>
<div> <div>
<textarea name="description" rows="6" cols="60" tabindex="2" class="textarea"><?=set_value('description') == null ? $this->input->post('description') : set_value('description');?></textarea> <textarea name="description" rows="6" cols="60" tabindex="2" class="textarea"><?=set_value('description') == '' ? $this->input->post('description') : set_value('description');?></textarea>
<?=form_error('description')?> <?=form_error('description')?>
</div> </div>
</li> </li>