Changeset 188


Ignore:
Timestamp:
12/16/11 16:22:19 (13 years ago)
Author:
fpvanagthoven
Message:
 
Location:
Dev/trunk
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • Dev/trunk/classes/pipelineSequencer.php

    r185 r188  
    9595        $results = $this->dbi->get("Session", array("uid"=> $_SESSION['currentSession']));
    9696        if (!empty($results)) {
    97             (is_array($results)) ? $this->loadedSession = $results[0] : $this->loadedSession = $results;
     97            if ($results[0]->evaluate()) {
     98                $this->loadedSession = $results[0];
     99            }
    98100        }
    99101        else {
  • Dev/trunk/createObject.php

    r185 r188  
    1515$dbi = new DatabaseInterface();
    1616$creator_results = $dbi->get("User", array("name" => $_SESSION['username']));
     17
    1718if (count($creator_results) > 0) {
    1819    $creator = $creator_results[0];
  • Dev/trunk/css/visualeditors.css

    r185 r188  
    141141}
    142142
    143 .smallFrame.selected .smallTitle {
    144     background-color: #FF0000;
     143.smallFrame.selected {
     144    background-color: #777777;
     145    border-color:#000;
    145146}
    146147
  • Dev/trunk/js/sequencerScripts.js

    r185 r188  
    145145        case "survey":
    146146            sequencer.settings.content.orientation = "vertical";
    147             sequencer.settings.content.width = 800;
    148             sequencer.settings.content.height = "auto";
     147            sequencer.settings.content.width = 650;     //guesstimated
     148            var roomH = screen.availHeight;
     149            sequencer.settings.content.height = roomH - 200;
    149150            content.style.width = sequencer.settings.content.width+"px";
    150151            content.style.height = sequencer.settings.content.height+"px";
     
    179180            break;
    180181    }
    181    
    182    
    183    
    184    
    185     //console.log(sequencer);
    186     sequencer.state.updating = false;   // Re-enable new actions
    187182}
    188183
     
    258253// THIS NEEDS SOME WORK! A LOT OF IT ACTUALLY!
    259254function updateSequencer_Survey() {
    260     //debugger;
     255   
    261256    var content = ge("seqContentWrapper");
    262257    var requestString, needsUpdating, args;
     
    283278        requestString = "args="+JSON.stringify(args);
    284279        newAjaxRequest(requestString, "returnObjectDisplay.php", function(result){
    285             //debugger;
    286280            content.removeChild(loadingGif);
    287281            insertNewObjects(result.responseText, needsUpdating);
     282            sequencer.state.loaded = true;
    288283        }, true);
    289284        sequencer.state.loaded = false;
     
    293288    }
    294289    else {
     290
    295291        // This means that one or more steps are being added, not an entire pipeline's worth of them
     292        debugger;
    296293        needsUpdating = new Array();
    297294        args = [];
    298295        // Add steps that need updating to the needsUpdating array (index, uid, type).
    299         for (var i = 0; i < sequencer.session.pipeline.uids.length; i++) {
    300             if (sequencer.session.pipeline.upToDate[i] == true) continue;
    301             needsUpdating.push(new Array(i, sequencer.session.pipeline.uids[i], sequencer.session.pipeline.types[i]));
     296        for (var i = 0; i < sequencer.survey.questions.uids.length; i++) {
     297            if (sequencer.survey.questions.upToDate[i] == true) continue;
     298            needsUpdating.push(new Array(i, sequencer.survey.questions.uids[i], "Question"));
    302299            args.push({
    303                 uid: sequencer.session.pipeline.uids[i],
    304                 type: sequencer.session.pipeline.types[i]
     300                uid: sequencer.survey.questions.uids[i],
     301                type: "Question"
    305302            });       
    306303        }
     
    326323        updateDividers();
    327324    // End optional
    328     }
     325       
     326    }
     327       
    329328}
    330329
     
    363362        }
    364363    }
     364   
     365    // Because updateDividers is always called last, we set updating to false here, so the user can again issue commands to the pipeline
     366    sequencer.state.updating = false;   // Re-enable new actions
    365367}
    366368
     
    387389function insertNewObjects(responseText, needsUpdating) {
    388390    // Container function that calls different insertNewX() functions depending on content type. Called from updateSequencer().
    389     debugger;
    390391    var response = JSON.parse(responseText);
    391392    // For now I assume that only one type of element can be displayed in the editor at one time. Therefore, the type of response[0] is the type of all elements of response.
     
    394395            insertNewSteps(response, needsUpdating);
    395396            break;
    396         case "question":
     397        case "survey":
    397398            insertNewQuestions(response, needsUpdating);
    398399            break;
     
    411412       
    412413    newAjaxRequest(c, u, function(result) {
    413         debugger;
    414414        sequencer.survey.questions.uids.push(removeNL(result.responseText));
    415415        sequencer.survey.questions.upToDate.push(false);
     
    517517function insertNewQuestions(response, needsUpdating) {
    518518    //Code that inserts or replaces new object displays in the sequencer. Question version.
    519    
    520519    var content = ge("seqContentWrapper");
    521520    // Loop through returned question objects
     
    566565        controlsDiv.appendChild(editButton);
    567566        controlsDiv.appendChild(removeButton);
     567        frameDiv.addEventListener("click", function(){
     568            clickStep(this.id);
     569        }, false);
    568570        frameDiv.appendChild(controlsDiv);
    569571       
    570572        // We now have a full question display DIV contained in the frameDiv variable. We should now add this to the sequencer content.
     573        debugger;
    571574        for (var j = needsUpdating.length - 1; j >= 0; j--) {
    572575            if (needsUpdating[j][1] != response[i].uid) continue;
    573576            if (needsUpdating[j][0] > sequencer.state.numSteps-1) {
    574577                content.appendChild(frameDiv);
     578                sequencer.state.numSteps++;
    575579            }
    576580            else {
    577581                content.replaceChild(frameDiv, content.childNodes[needsUpdating[j][0]*2]);
    578582            }
    579             sequencer.state.numSteps++;
    580         }
    581     }
     583            sequencer.survey.questions.upToDate[needsUpdating[j][0]] = true;
     584           
     585        }
     586    }
     587   
     588    sequencer.state.updating = false;   //re-enable user commands
    582589}
    583590
     
    609616    if (element) {
    610617        addClass(element, "selected");
    611         var type = sequencer.session.pipeline.types[sequencer.session.pipeline.uids.indexOf(uid)];
    612         ajaxInfoRequest(uid, ge("infoPanelContent"), type);
     618        var type;
     619        switch (sequencer.settings.content.contentType.toLowerCase()) {
     620            case "session":
     621                type = sequencer.session.pipeline.types[sequencer.session.pipeline.uids.indexOf(uid)];
     622                break;
     623            case "survey":
     624                type = "Question";
     625                break;
     626            default:
     627                //Dunno
     628                break;
     629        }
     630        (type != "survey") ? ajaxInfoRequest(uid, ge("infoPanelContent"), type) : type=type /*This does nothing*/;
    613631        sequencer.state.selectedObject.uid = uid;
    614632        sequencer.state.selectedObject.index = null;  //Don't know how to do this yet.
  • Dev/trunk/returnObjectDisplay.php

    r185 r188  
    2020$outputArray = array();
    2121foreach ($requestArray as $request) {
    22     var_dump($request);
    23     $results = $dbi->get(strtolower($request->type), array("uid" => $request->uid));
    2422   
    25     /*
    26      * Reden voor deze var dumps is dat de questions niet gevonden kunnen worden. De bovenstaande regel returnet geen question object, ook als deze zeker weten wel bestaat.
    27      * Even aan Jos vragen wat hier fout gaat?
    28      */
     23    $results = $dbi->get($request->type, array("code" => $request->uid));
     24    // Bottom line, werkt prima. Questions werken nu op ns1:question_code, accessible als question->code
    2925   
    30    
    31    
    32    
    33     var_dump($results);
    3426    if (isset($results) && !empty($results)) {
    3527        is_array($results) ? $object = $results[0] : $object = $results;
Note: See TracChangeset for help on using the changeset viewer.