Changeset 191
- Timestamp:
- 12/21/11 17:52:00 (13 years ago)
- Location:
- Dev/trunk
- Files:
-
- 3 added
- 9 deleted
- 10 edited
Legend:
- Unmodified
- Added
- Removed
-
Dev/trunk/classes/surveyEditorWidget.php
r185 r191 27 27 $surveyResults = $dbi->get("Survey", array("uid" => $_POST['objectUid'])); 28 28 if (!empty($surveyResults)) { 29 (is_array($surveyResults)) ? $this->loadedSurvey = $surveyResults[0] : $this->loadedSurvey = $surveyResults;29 $this->loadedSurvey = $surveyResults[0]; 30 30 } else { 31 31 die("No surveys found!"); … … 39 39 $questionString = ""; 40 40 foreach ($this->loadedSurvey->questions as $question) { 41 $questionString .= $question-> uid. ",";41 $questionString .= $question->code . ","; 42 42 } 43 43 // echo the HTML markup to display the editor on the screen … … 72 72 73 73 <input type="button" value="Discard survey" onClick="javascript:alert('discard not yet supported');" class="smallButton" /> 74 <input type="button" value="Save survey" onClick=" javascript:alert('save not yet supported');" class="smallButton" />74 <input type="button" value="Save survey" onClick="saveSurvey(true);" class="smallButton" /> 75 75 </div> 76 76 -
Dev/trunk/createObject.php
r188 r191 14 14 15 15 $dbi = new DatabaseInterface(); 16 $creator_results = $dbi->get("User", array("name" => $_SESSION['username'])); 16 $creator_results = $dbi->get("User", array("uid" => $_SESSION['userUid'])); 17 $creator = $creator_results[0]; 17 18 18 if (count($creator_results) > 0) { 19 $creator = $creator_results[0]; 20 } else{21 //die ("Invalid creator, make sure you are logged in!");19 //var_dump($creator); 20 21 if (!$creator) { 22 die("Stuff is broke, yo!"); 22 23 } 23 24 -
Dev/trunk/css/visualeditors.css
r188 r191 117 117 box-shadow: 2px 2px 1px #888; 118 118 border: 1px solid #FFF; 119 margin: 0; 119 120 } 120 121 … … 357 358 358 359 #seqContentWrapper .divider.vertical { 359 height: 1px; 360 width: 200px; 361 background-color: #FF00FF; /* VIES MAGENTA! */ 362 margin: 1em auto; 360 float: left; 361 clear: both; 362 height: 2px; 363 width: 400px; 364 background-color: #555; /* VIES MAGENTA! */ 365 margin: 0.75em 100px; 363 366 } 364 367 … … 415 418 } 416 419 420 .smallFrame .smallButton { 421 width:55px; 422 } 423 -
Dev/trunk/getInfo.php
r186 r191 37 37 case "Session": 38 38 $returnString .= "<span class='property'>Title: </span><span class='value'>$result->title</span>"; 39 $result->evaluate(); 39 40 $returnString .= "<span class='property'>Created: </span><span class='value'>" . $result->datetime->format("H:i:s, d-m-Y") . " by " . $result->creator->name . "</span>"; 40 41 $cS = 0; $cD = 0; $cA = 0; -
Dev/trunk/index.php
r152 r191 8 8 9 9 //Even voor tijdelijk, aangezien er nog pagina's missen en redirects daarom niet goed werken: 10 if (isset($_SESSION['user name'])) {10 if (isset($_SESSION['userUid'])) { 11 11 redirect("logout.php"); 12 12 } … … 15 15 16 16 if (isset($_POST['register'])) { 17 if ( $_POST['username'] != null && $_POST['password'] != null) {17 if (isset($_POST['username']) && isset($_POST['password'])) { 18 18 $dbi = new DatabaseInterface(); 19 19 $user_results = $dbi->get("user", array("name" => $_POST['username'])); 20 $user_exists = (count($user_results) > 0); 21 if (!$user_exists) { 20 if (count($user_results) == 0 || !$user_results) { 22 21 if (strlen($_POST['password']) > 6) { 23 22 $user = new User(null, $_POST['username'], $_POST['password']); 24 23 $dbi->set($user); 25 $_SESSION['user name'] = $_POST['username'];24 $_SESSION['userUid'] = $user->uid; 26 25 } else { 27 $errorMessage[] = "Password is too short!"; 28 //echo "Password is too short!"; 26 $errorMessage[] = "Password is too short"; 29 27 } 30 28 } 31 29 else 32 30 $errorMessage[] = "Username already exists, try something else!"; 33 //echo "Username already exists, try something else";34 31 } 35 32 else 36 33 $errorMessage[] = "Please fill in a username and password"; 37 //echo "please fill in a username and password";38 34 } 39 35 40 if (isset($_POST['login'])) { 36 if (isset($_POST['login'])) { // User clicked the login button 41 37 $dbi = new DatabaseInterface(); 42 38 $user_results = $dbi->get("user", array("name" => $_POST['username'])); 43 39 if (isset($user_results[0])) { 44 40 if ($user_results[0]->password == $_POST['password']) { 45 $_SESSION['username'] = $user_results[0]->name; 46 // USER HAS LOGGED IN 41 $_SESSION['userUid'] = $user_results[0]->uid; 47 42 } else { 48 43 $errorMessage[] = "Incorrect password!"; 49 //echo "Incorrect password!";50 44 } 51 45 } else { 52 46 $errorMessage[] = "Username doesn't exist!"; 53 //echo "Username doesn't exist!";54 47 } 55 48 } 56 49 57 if (isset($_SESSION['user name'])) {50 if (isset($_SESSION['userUid'])) { // User just registered a new account 58 51 redirect('selectSession.php'); 59 52 } -
Dev/trunk/js/generalScripts.js
r183 r191 76 76 } 77 77 78 // Function that handles updating of info panel via AJAX getInfo.php. Currently operates on HTML to paste into #infoPanelContent, should eventually involve JSON arrays, to have more control over formatting. 79 function ajaxInfoRequest(uid, el, type) { 80 // Info panel update. 81 82 var c = "uid="+uid; 83 c += "&type="+type; 84 var u = "getInfo.php"; 85 newAjaxRequest(c, u, function(result) { 86 el.innerHTML = result.responseText; 87 }, true); 88 } 89 78 90 // Function to save the object currently being edited. 79 91 // !! Still needs to be generalized !! -
Dev/trunk/js/sequencerScripts.js
r188 r191 73 73 // settings fields first 74 74 initSequencer(); 75 75 debugger; 76 76 switch (sequencer.settings.content.contentType.toLowerCase()) { 77 77 case "session": … … 230 230 requestString = "args="+JSON.stringify(args); 231 231 newAjaxRequest(requestString, "returnObjectDisplay.php", function(result){ 232 console.log(result.responseText); 232 233 insertNewObjects(result.responseText, needsUpdating); 233 234 }, true); … … 290 291 291 292 // This means that one or more steps are being added, not an entire pipeline's worth of them 292 debugger;293 293 needsUpdating = new Array(); 294 294 args = []; … … 305 305 requestString = "args="+JSON.stringify(args); 306 306 newAjaxRequest(requestString, "returnObjectDisplay.php", function(result){ 307 //console.log(result.responseText); 307 308 insertNewObjects(result.responseText, needsUpdating); 308 309 }, true); … … 388 389 389 390 function insertNewObjects(responseText, needsUpdating) { 391 //console.log(responseText); 390 392 // Container function that calls different insertNewX() functions depending on content type. Called from updateSequencer(). 391 393 var response = JSON.parse(responseText); … … 520 522 // Loop through returned question objects 521 523 for (var i = 0; i < response.length; i++) { 524 525 /* 526 * The following block of code defines the layout and composition of the question display 527 */ 528 522 529 // Define the outer frame 523 530 var frameDiv = ce("div"); … … 570 577 frameDiv.appendChild(controlsDiv); 571 578 579 /* 580 * This is where the layout code ends 581 * We proceed to insertion of the created DIV into the document 582 */ 583 572 584 // We now have a full question display DIV contained in the frameDiv variable. We should now add this to the sequencer content. 573 debugger;574 585 for (var j = needsUpdating.length - 1; j >= 0; j--) { 575 586 if (needsUpdating[j][1] != response[i].uid) continue; … … 587 598 588 599 sequencer.state.updating = false; //re-enable user commands 600 } 601 602 function saveSurvey(confirmSave) { 603 // Sends an AJAX request to the PHP server that saves the current object. 604 var answer = (confirmSave == true) ? confirm("Save changes?") : true; 605 if (answer == false) return; 606 607 // Check for object type being edited, adjust requestString and target URL to this information. 608 var request = new Object(), url, requestString; 609 switch (sequencer.settings.content.contentType.toLowerCase()) { 610 case "survey": 611 url = "saveSurvey.php"; 612 request.title = sequencer.survey.title; 613 request.uid = sequencer.survey.uid; 614 request.description = sequencer.survey.description; 615 request.questions = new Object(); 616 request.questions.uids = sequencer.survey.questions.uids; 617 requestString = "args="+JSON.stringify(request); 618 console.log(request); 619 newAjaxRequest(requestString, url, function(result){ 620 console.log(result.responseText); 621 }, true); 622 break; 623 case "blaaaat": 624 url = "savesession.php"; 625 request.pipeline.uids = sequencer.session.pipeline.uids; 626 request.pipeline.types = sequencer.session.pipeline.types; 627 break; 628 } 589 629 } 590 630 … … 648 688 } 649 689 650 function ajaxInfoRequest(uid, el, type) { 651 // Info panel update. 652 653 var c = "uid="+uid; 654 c += "&type="+type; 655 var u = "getInfo.php"; 656 newAjaxRequest(c, u, function(result) { 657 el.innerHTML = result.responseText; 658 }, true); 659 } 690 660 691 661 692 function savePipeline (confirmSave) { … … 784 815 785 816 // Temp function that creates a dummy question to test the insertNewQuestions function. 817 // NOTE: CAN BE REMOVED! 786 818 function debug_addQuestion() { 787 819 // Derp, natuurlijk werkt de addQuestion call niet twee keer. Hij creeert twee keer exact hetzelfde object. Bottom line: het werkt. Nu de editing code voor deze questions gaan schrijven! … … 803 835 804 836 // Temp function that articially switches content type when the page is already loaded, to easily test layout changes and content flow. 837 // NOTE: CAN BE REMOVED! 805 838 function debug_switchType() { 806 839 var content = ge("seqContent"); -
Dev/trunk/returnObjectDisplay.php
r188 r191 21 21 foreach ($requestArray as $request) { 22 22 23 //!!! DEZE SHIT MOET WEER TERUGGEDRAAID WORDEN ZODRA QUESTIONS WEER GEWOON UIDS HEBBEN IPV CODES! 24 if ($request->type == "Question"){ 23 25 $results = $dbi->get($request->type, array("code" => $request->uid)); 24 26 // Bottom line, werkt prima. Questions werken nu op ns1:question_code, accessible als question->code 25 27 } 28 else { 29 $results = $dbi->get($request->type, array("uid"=>$request->uid)); 30 } 26 31 if (isset($results) && !empty($results)) { 27 32 is_array($results) ? $object = $results[0] : $object = $results; -
Dev/trunk/savesession.php
r183 r191 2 2 3 3 require 'classes/master.php'; //should be at top of every page 4 5 /* 6 * Dit kan een STUK sneller. Vervang gewoon de hele pipeline string met de lokale versie. 7 * Daarna: $session->eval 8 */ 4 9 5 10 if (isset($_POST['uids']) && isset($_POST['types']) && isset($_POST['sessionUid'])) { -
Dev/trunk/selectSession.php
r185 r191 2 2 require 'classes/master.php'; //should be at top of every page 3 3 4 if (!isset($_SESSION['user name'])) {4 if (!isset($_SESSION['userUid'])) { 5 5 redirect("index.php"); 6 6 } … … 18 18 // check if name is available 19 19 if (!empty($_POST['newSessionName'])) { 20 $ matching= $dbi->get("Session", array("title" => $_POST['newSessionName']));21 if (count($ matching) == 0) {20 $session_results = $dbi->get("Session", array("title" => $_POST['newSessionName'])); 21 if (count($session_results) == 0) { 22 22 // make new session! 23 unset($ matching);24 $creators = $dbi->get("User", array("u sername"=>$_SESSION['username']));23 unset($session_results); 24 $creators = $dbi->get("User", array("uid" => $_SESSION['userUid'])); 25 25 $creator = $creators[0]; 26 26 $session = new Session(null, $_POST['newSessionName'], $creator, new DateTime(), null, null); … … 43 43 if (isset($_POST['editSession'])) { 44 44 if (isset($_POST['sessionUID'])) { 45 $ matching= $dbi->get("SESSION", array("uid" => $_POST['sessionUID']));46 if (count($ matching) == 1 && $matching[0] != null) {45 $session_results = $dbi->get("SESSION", array("uid" => $_POST['sessionUID'])); 46 if (count($session_results) == 1 && $session_results[0] != null) { 47 47 // DEZE SESSION MOET UITEINDELIJK EEN POST WORDEN, WANNEER DEZE HELE PAGINA IS OVERGEZET IN JAVASCRIPT! 48 48 $_SESSION['currentSession'] = $_POST['sessionUID']; 49 49 $_SESSION['updateNeeded'] = "true"; 50 redirect(" pipelineEditor.php");50 redirect("sessionEditor.php"); 51 51 } 52 52 } … … 66 66 <?php new StyleSheet("awesome"); ?> 67 67 <script type="text/javascript" src="js/sequencerScripts.js"></script> 68 <script type="text/javascript" src="js/generalScripts.js"></script> 68 69 </head> 69 70 <body> … … 74 75 <div id="wrapper"> 75 76 <div id="content"> 76 <form action="selectSession.php" method="POST"> 77 <fieldset name="selectionMenu"> 78 <!-- onchange van volgende select linkt deze aan de ajax-based info panel, script staat in sequencerScripts.js --> 79 <select name="sessionUID" style="float: left;" onChange="ajaxInfoRequest(this.value, document.getElementById('infoPanelContent'), 'Session');"> 80 <option value="" disabled="true" selected>Please select a session</option> 81 <?php 82 foreach ($sessions as $session) { 83 $selected = ""; 84 if ($session->title == $_POST['newSessionName']) { 85 $selected = ' selected="true"'; 77 <form action="selectSession.php" method="POST"> 78 <fieldset name="selectionMenu"> 79 <!-- onchange van volgende select linkt deze aan de ajax-based info panel, script staat in sequencerScripts.js --> 80 <select name="sessionUid" style="float: left;" onChange="ajaxInfoRequest(this.value, document.getElementById('infoPanelContent'), 'Session');"> 81 <option value="" disabled="true" selected>Please select a session</option> 82 <?php 83 foreach ($sessions as $session) { 84 $selected = ""; 85 if ($session->title == $_POST['newSessionName']) { 86 $selected = ' selected="true"'; 87 } 88 89 echo '<option value="' . $session->uid . '"' . $selected . '>' . $session->title . '</option>' . "\n"; 86 90 } 87 88 echo '<option value="' . $session->uid . '"' . $selected . '>' . $session->title . '</option>' . "\n"; 89 } 90 ?> 91 </select> 92 <br /><br /> 93 <input type="hidden" name="updateNeeded" value="true" /> 94 <input type="text" name="newSessionName" value="Name..." style="float: left;" /><br /> 95 <input type="submit" name="createSession" value="Create new session" class="surveybutton" style="float: left;" /> 96 <input type="submit" name="editSession" value="Edit session" class="surveybutton" style="float: left;" /> 97 <input type="submit" name="deleteSession" value="Delete session" class="surveybutton" style="float: left;" /> 98 <br /><br /><br /> 99 <div id="errorDisplay"><?php 100 if (isset($errorMessage)) { 101 foreach ($errorMessage as $message) { 102 echo $message; 91 ?> 92 </select> 93 <br /><br /> 94 <input type="hidden" name="updateNeeded" value="true" /> 95 <input type="text" name="newSessionName" value="Name..." style="float: left;" /><br /> 96 <input type="submit" name="createSession" value="Create new session" class="surveybutton" style="float: left;" /> 97 <input type="submit" name="editSession" value="Edit session" class="surveybutton" style="float: left;" /> 98 <input type="submit" name="deleteSession" value="Delete session" class="surveybutton" style="float: left;" /> 99 <br /><br /><br /> 100 <div id="errorDisplay"><?php 101 if (isset($errorMessage)) { 102 foreach ($errorMessage as $message) { 103 echo $message; 104 } 103 105 } 104 } 105 ?></div> 106 </fieldset> 107 <fieldset id="sessionDescription"> 108 <div class="fieldsetTitle"> 109 Info 110 </div> 111 <div id="infoPanelContent"> 112 </div> 113 </fieldset> 114 </form> 115 </div> 106 ?></div> 107 </fieldset> 108 <fieldset id="sessionDescription"> 109 <div class="fieldsetTitle"> 110 Info 111 </div> 112 <div id="infoPanelContent"> 113 </div> 114 </fieldset> 115 </form> 116 </div> 116 117 </div> 117 118 </body>
Note: See TracChangeset
for help on using the changeset viewer.