Add debug controller for some crazy debugging action

This controller will only be available if we set
ENVIRONMENT to 'development' or 'testing'.
This commit is contained in:
Karsten Heiken
2011-11-18 15:37:33 +01:00
parent 4edafd0ed5
commit 06ab8168ab
3 changed files with 64 additions and 0 deletions

View File

@@ -0,0 +1,50 @@
<?php defined('BASEPATH') || exit('No direct script access allowed');
/*
* Copyright (c) 2011 Karsten Heiken, Eike Foken
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
/**
* @author Karsten Heiken <karsten@disposed.de>
*/
class Debug extends MY_Controller {
/**
* Constructor.
*/
public function __construct() {
parent::__construct();
if(ENVIRONMENT == "production") {
show_error("Debugging functions are not available in a production environment.", 400);
}
}
public function cancel_job($experiment, $jobId) {
$this->load->model('job');
$this->job->delete($jobId);
redirect("experiments/detail/".$experiment);
}
}
/* End of file debug.php */
/* Location: ./application/controllers/debug.php */

View File

@@ -61,6 +61,16 @@
endif;
?>
</p>
<?php
if(ENVIRONMENT != "production" && !empty($job)):
?>
<h3>Debugging actions</h3>
<p>
<a href="<?=site_url('debug/cancel_job/'.$experiment['id'].'/'.$job['id']);?>" onclick="javascript:return confirm('This will NOT have any effect on the calculation that may or may not be running in a simulator!\nThis simply resets the job to >not started< in the database')" class="button danger">Reset this job</a>
</p>
<?php
endif;
?>
</div>
<?php
if (isset($job['id'])):