source: Dev/trunk/classes/pipelineSequencer.php @ 185

Last change on this file since 185 was 185, checked in by fpvanagthoven, 13 years ago
File size: 4.3 KB
RevLine 
[144]1<?php
2/*
3 * To change this template, choose Tools | Templates
4 * and open the template in the editor.
5 */
6
7/**
[151]8 * A visual interface object for editing and viewing a session's pipeline.
[144]9 *
[151]10 * @author Tschipper
[144]11 */
[146]12class PipelineSequencer {
[144]13
14    // properties
[152]15    private $loadedSession;
[144]16    private $selectedStep;
[163]17    private $dbi;
[144]18
[152]19    public function __construct() {
[163]20        $this->dbi = new DatabaseInterface();
[146]21    }
[144]22
[150]23    public function init() {
[153]24        $stringPipeline = "";
[164]25        $stringPipelineType = "";
26        $stringPipelineUpdated = "";
27        $numberOfSteps = 0;
[166]28
[163]29        if (is_array($this->loadedSession->pipeline)) {
30            foreach ($this->loadedSession->pipeline as $object) {
31                $stringPipeline .= "$object->uid,";
[166]32                $stringPipelineType .= get_class($object) . ",";
[167]33                $stringPipelineUpdated .= "0,";
[164]34                $numberOfSteps++;
[163]35            }
36        } else {
[156]37            $stringPipeline = $this->loadedSession->pipeline;
[164]38            $stringPipelineType = $_POST['pipelineTypes'];
39            $stringPipelineUpdated = $_POST['pipelineUpdatedField'];
[156]40        }
[144]41        ?>
[178]42        <br />
43
44        <div id="sequencer" class="largeFrame">
45            <div class="largeTitle">Name <?php echo $this->loadedSession->title; ?></div>
46           
47            <div id="seqContent" class="innerLargeFrame">
48                <div id="seqContentWrapper"></div>
49            </div>
50
51            <div class="controls">
52                <input type="button" id="moveSelectedL" value="< Move" class="smallButton"  onClick="moveStep(-1);" />
53                <input type="button" id="moveSelectedR" value="Move >" class="smallButton"  onClick="moveStep(1);" />
54                <input type="button" id="editSelected" value="Edit step" class="smallButton" onClick="editStep();" />
55                <input type="button" id="deleteSelected" value="Delete step" class="smallButton" onClick="deleteStep();" />
56                <input type="submit" id ="clearPipeline" name="clearPipeline" value="Clear pipeline" class="smallButton dis" disabled="true"/>
57                <input type="checkbox" id="confirmClear" name="confirmClear" onChange="IsCheckEnabled(this, document.getElementById('clearPipeline'));" />Really clear?
58                <input type="button" value="debug_save" onClick="savePipeline(true);" />
59            </div>
60           
61            <div id="hiddenInputs">
[181]62                <input type="hidden" id="selectedStepField" value="" />
63                <input type="hidden" id="pipelineStringField" value="<?php echo $stringPipeline; ?>" />
64                <input type="hidden" id="pipelineTypeField" value="<?php echo $stringPipelineType; ?>" />
65                <input type="hidden" id="pipelineUpdatedField" value="<?php echo $stringPipelineUpdated; ?>" />
66                <input type="hidden" id="numSteps" value="<?php echo $numberOfSteps; ?>" />
67                <input type="hidden" id="sessionField" value="<?php echo $this->loadedSession->uid; ?>" />
68                <input type="hidden" id="sessionTitleField" value="<?php echo $this->loadedSession->title; ?>" />
[178]69            </div>
70        </div>
71
[181]72       
[144]73        <?php
74    }
75
[153]76    public function Javascript() {
[150]77        ?>
[181]78        <script type="text/javascript" src="js/generalScripts.js"></script>
[152]79        <script type="text/javascript" src="js/sequencerScripts.js"></script>
[153]80        <script type="text/javascript" src="js/jquery.js"></script>
81        <script type="text/javascript">
82            $(document).ready(function() {
[185]83                loadSequencer();
[153]84            });
85        </script>
[150]86        <?php
87    }
88
[185]89    public function LoadSession() {   // Initialize variables on page load.
90        // Redirect if no session is set
91        if (!isset($_SESSION['currentSession'])) {
[152]92            redirect("selectSession.php");
[151]93        }
[185]94        // Store the current session in internal variable
95        $results = $this->dbi->get("Session", array("uid"=> $_SESSION['currentSession']));
96        if (!empty($results)) {
97            (is_array($results)) ? $this->loadedSession = $results[0] : $this->loadedSession = $results;
[152]98        }
[185]99        else {
100            // Throw error and quit if no results found
101            die("No session with that UID found!");
[163]102        }
[151]103    }
104
[154]105    public function HandlePostData() {
[185]106               
[154]107    }
108
[144]109}
110?>
Note: See TracBrowser for help on using the repository browser.