Skip to content

Commit 1c94906

Browse files
committed
Moved queries to DAO
1 parent d7f69c4 commit 1c94906

30 files changed

+472
-200
lines changed

AddCard.php

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,18 @@
11
<?php
22
require_once "../config.php";
3+
require_once "dao/FlashcardsDAO.php";
4+
require_once "util/FlashcardUtils.php";
35

46
use \Tsugi\Core\LTIX;
7+
use \Flashcards\DAO\FlashcardsDAO;
58

69
// Retrieve the launch data if present
710
$LAUNCH = LTIX::requireData();
811

912
$p = $CFG->dbprefix;
1013

14+
$flashcardsDAO = new FlashcardsDAO($PDOX, $p);
15+
1116
$OUTPUT->header();
1217

1318
include("tool-header.html");
@@ -18,8 +23,11 @@
1823

1924
$setId = $_GET["SetID"];
2025

21-
$cardsInSet = $PDOX->allRowsDie("SELECT * FROM {$p}flashcards where SetID=".$setId." order by CardNum;");
22-
$set = $PDOX->rowDie("select * from {$p}flashcards_set where SetID=".$setId.";");
26+
$cardsInSet = $flashcardsDAO->getCardsInSet($setId);
27+
28+
usort($cardsInSet, array('FlashcardUtils', 'compareCardNum'));
29+
30+
$set = $flashcardsDAO->getFlashcardSetById($setId);
2331

2432
$Total = count($cardsInSet);
2533
$Next = $Total + 1;

AllCards.php

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,18 @@
11
<?php
22
require_once "../config.php";
3+
require_once('dao/FlashcardsDAO.php');
4+
require_once('util/FlashcardUtils.php');
35

46
use \Tsugi\Core\LTIX;
7+
use \Flashcards\DAO\FlashcardsDAO;
58

69
// Retrieve the launch data if present
710
$LAUNCH = LTIX::requireData();
811

912
$p = $CFG->dbprefix;
1013

14+
$flashcardsDAO = new FlashcardsDAO($PDOX, $p);
15+
1116
$OUTPUT->header();
1217

1318
include("tool-header.html");
@@ -18,8 +23,9 @@
1823

1924
$setId = $_GET["SetID"];
2025

21-
$cardsInSet = $PDOX->allRowsDie("SELECT * FROM {$p}flashcards where SetID=".$setId." order by CardNum;");
22-
$set = $PDOX->rowDie("select * from {$p}flashcards_set where SetID=".$setId.";");
26+
$cardsInSet = $flashcardsDAO->getCardsInSet($setId);
27+
28+
$set = $flashcardsDAO->getFlashcardSetById($setId);
2329

2430
$Total = count($cardsInSet);
2531

@@ -34,7 +40,7 @@
3440
<div class="row cardRow">
3541
3642
<p>
37-
<a class="btn btn-success" href="AddCard.php?SetID='.$_GET["SetID"].'"><span class="fa fa-plus"></span> Add New Card</a>
43+
<a class="btn btn-success" href="AddCard.php?SetID='.$setId.'"><span class="fa fa-plus"></span> Add New Card</a>
3844
</p>
3945
4046
<h2>Cards in "'.$set["CardSetName"].'" <span class="badge">'.$Total.' Cards</span></h2>
@@ -43,6 +49,7 @@
4349
if ($Total == 0) {
4450
echo('<p><em>There are currently no cards in this set.</em></p>');
4551
} else {
52+
usort($cardsInSet, array('FlashcardUtils', 'compareCardNum'));
4653
$cardNum = 1;
4754
foreach ( $cardsInSet as $row ) {
4855

EditCard.php

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,17 @@
11
<?php
22
require_once "../config.php";
3+
require_once "dao/FlashcardsDAO.php";
34

45
use \Tsugi\Core\LTIX;
6+
use \Flashcards\DAO\FlashcardsDAO;
57

68
// Retrieve the launch data if present
79
$LAUNCH = LTIX::requireData();
810

911
$p = $CFG->dbprefix;
1012

13+
$flashcardsDAO = new FlashcardsDAO($PDOX, $p);
14+
1115
$OUTPUT->header();
1216

1317
include("tool-header.html");
@@ -18,8 +22,9 @@
1822

1923
$setId = $_GET["SetID"];
2024

21-
$set = $PDOX->rowDie("select * from {$p}flashcards_set where SetID=".$setId.";");
22-
$card = $PDOX->rowDie("SELECT * FROM {$p}flashcards where CardID=".$_GET["CardID"].";");
25+
$set = $flashcardsDAO->getFlashcardSetById($setId);
26+
27+
$card = $flashcardsDAO->getCardById($_GET["CardID"]);
2328

2429
include("menu.php");
2530

FinishedReview.php

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,17 @@
11
<?php
22
require_once "../config.php";
3+
require_once "dao/FlashcardsDAO.php";
34

45
use \Tsugi\Core\LTIX;
6+
use \Flashcards\DAO\FlashcardsDAO;
57

68
// Retrieve the launch data if present
79
$LAUNCH = LTIX::requireData();
810

911
$p = $CFG->dbprefix;
1012

13+
$flashcardsDAO = new FlashcardsDAO($PDOX, $p);
14+
1115
$OUTPUT->header();
1216

1317
include("tool-header.html");
@@ -40,7 +44,7 @@
4044
$setId = $_GET["SetID"];
4145
$_SESSION["SetID"] = $setId;
4246

43-
$set = $PDOX->rowDie("select * from {$p}flashcards_set where SetID=".$setId.";");
47+
$set = $flashcardsDAO->getFlashcardSetById($setId);
4448

4549
if ($shortCut == 0) {
4650
echo('

LinkToSet.php

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,17 @@
11
<?php
22
require_once "../config.php";
3+
require_once "dao/FlashcardsDAO.php";
34

45
use \Tsugi\Core\LTIX;
6+
use \Flashcards\DAO\FlashcardsDAO;
57

68
// Retrieve the launch data if present
79
$LAUNCH = LTIX::requireData();
810

911
$p = $CFG->dbprefix;
1012

13+
$flashcardsDAO = new FlashcardsDAO($PDOX, $p);
14+
1115
$OUTPUT->header();
1216

1317
include("tool-header.html");
@@ -20,9 +24,9 @@
2024

2125
include("menu.php");
2226

23-
$allSets = $PDOX->allRowsDie("select * from {$p}flashcards_set where CourseName='".$_SESSION["CourseName"]."' order by CardSetName;");
27+
$allSets = $flashcardsDAO->getAllSetsForSiteSorted($CONTEXT->id);
2428

25-
$previousLink = $PDOX->rowDie("SELECT * FROM {$p}flashcards_link WHERE link_id ='".$linkId."';");
29+
$previousLink = $flashcardsDAO->getLinkedSet($linkId);
2630

2731
echo('<form action="actions/LinkToSet_Submit.php" method="post">
2832

PlayCard.php

Lines changed: 12 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,17 @@
11
<?php
22
require_once "../config.php";
3+
require_once "dao/FlashcardsDAO.php";
4+
require_once "util/FlashcardUtils.php";
35

46
use \Tsugi\Core\LTIX;
7+
use \Flashcards\DAO\FlashcardsDAO;
58

69
// Retrieve the launch data if present
710
$LAUNCH = LTIX::requireData();
811

912
$p = $CFG->dbprefix;
1013

11-
// Comparator for card number
12-
function compareCardNum2($a, $b) {
13-
14-
if ($a["CardNum2"] == $b["CardNum2"]) {
15-
return 0;
16-
}
17-
return ($a["CardNum2"] < $b["CardNum2"]) ? -1 : 1;
18-
}
19-
function compareCardNum($a, $b) {
20-
21-
if ($a["CardNum"] == $b["CardNum"]) {
22-
return 0;
23-
}
24-
return ($a["CardNum"] < $b["CardNum"]) ? -1 : 1;
25-
}
14+
$flashcardsDAO = new FlashcardsDAO($PDOX, $p);
2615

2716
$OUTPUT->header();
2817

@@ -73,15 +62,15 @@ function compareCardNum($a, $b) {
7362
$setId = $_GET["SetID"];
7463
$_SESSION["SetID"] = $setId;
7564

76-
$cardsInSet = $PDOX->allRowsDie("SELECT * FROM {$p}flashcards where SetID=".$setId.";");
65+
$cardsInSet = $flashcardsDAO->getCardsInSet($setId);
7766

7867
if($CardNum == 0){
79-
$theCard = $PDOX->rowDie("SELECT * FROM {$p}flashcards where SetID=".$setId." AND CardNum2=".$CardNum2.";");
68+
$theCard = $flashcardsDAO->getCardBySetAndNumber2($setId, $CardNum2);
8069
} else {
81-
$theCard = $PDOX->rowDie("SELECT * FROM {$p}flashcards where SetID=".$setId." AND CardNum=".$CardNum.";");
70+
$theCard = $flashcardsDAO->getCardBySetAndNumber($setId, $CardNum);
8271
}
8372

84-
$cardKnown = $PDOX->rowDie("SELECT * FROM {$p}flashcards_review WHERE UserId = '".$USER->id."' AND SetId ='".$setId."' AND CardId = '".$theCard["CardID"]."';");
73+
$cardKnown = $flashcardsDAO->cardKnown($USER->id, $setId, $theCard["CardID"]);
8574

8675
if($isReviewMode == 1) {
8776

@@ -91,7 +80,7 @@ function compareCardNum($a, $b) {
9180
header( 'Location: '.addSession('PlayCard.php?CardNum='.++$CardNum.'&CardNum2=0&Flag=A&SetID='.$setId.'&Shortcut='.$shortCut.'&ReviewMode='.$isReviewMode) ) ;
9281
}
9382

94-
$knownCards = $PDOX->allRowsDie("SELECT CardID FROM {$p}flashcards_review WHERE UserId = '".$USER->id."' AND SetId = '".$setId."';");
83+
$knownCards = $flashcardsDAO->getKnownCards($USER->id, $setId);
9584

9685
$knownCardIds = array();
9786

@@ -114,12 +103,12 @@ function compareCardNum($a, $b) {
114103
header( 'Location: '.addSession('FinishedReview.php?SetID='.$setId.'&Shortcut='.$shortCut) ) ;
115104
}
116105

117-
$set = $PDOX->rowDie("select * from {$p}flashcards_set where SetID=".$setId.";");
106+
$set = $flashcardsDAO->getFlashcardSetById($setId);
118107

119108
if ($CardNum == 0) {
120109
// We are in "shuffle" mode
121110

122-
usort($cardsInSet, "compareCardNum2");
111+
usort($cardsInSet, array('FlashcardUtils', 'compareCardNum2'));
123112

124113
$Next = 0;
125114
$Prev = 0;
@@ -151,7 +140,7 @@ function compareCardNum($a, $b) {
151140
$percentComplete = $position / $Total * 100;
152141
} else {
153142

154-
usort($cardsInSet, "compareCardNum");
143+
usort($cardsInSet, array('FlashcardUtils', 'compareCardNum'));
155144

156145
reset($cardsInSet);
157146
$position = 1;

Settings.php

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,17 @@
11
<?php
22
require_once "../config.php";
3+
require_once "dao/FlashcardsDAO.php";
34

45
use \Tsugi\Core\LTIX;
6+
use \Flashcards\DAO\FlashcardsDAO;
57

68
// Retrieve the launch data if present
79
$LAUNCH = LTIX::requireData();
810

911
$p = $CFG->dbprefix;
1012

13+
$flashcardsDAO = new FlashcardsDAO($PDOX, $p);
14+
1115
$OUTPUT->header();
1216

1317
include("tool-header.html");
@@ -18,8 +22,11 @@
1822

1923
$setId = $_GET["SetID"];
2024

21-
$cardsInSet = $PDOX->allRowsDie("SELECT * FROM {$p}flashcards where SetID=".$setId." order by CardNum;");
22-
$set = $PDOX->rowDie("select * from {$p}flashcards_set where SetID=".$setId.";");
25+
$cardsInSet = $flashcardsDAO->getCardsInSet($setId);
26+
27+
usort($cardsInSet, array('FlashcardUtils', 'compareCardNum'));
28+
29+
$set = $flashcardsDAO->getFlashcardSetById($setId);
2330

2431
$Total = count($cardsInSet);
2532

Usage.php

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
<?php
22
require_once "../config.php";
3+
require_once "dao/FlashcardsDAO.php";
4+
require_once "util/FlashcardUtils.php";
35

46
use \Tsugi\Core\LTIX;
7+
use \Flashcards\DAO\FlashcardsDAO;
58

69
// Retrieve the launch data if present
710
$LAUNCH = LTIX::requireData();
811

912
$p = $CFG->dbprefix;
1013

11-
// Comparator for student last name used for sorting roster
12-
function compareStudentsLastName($a, $b) {
13-
return strcmp($a["person_name_family"], $b["person_name_family"]);
14-
}
14+
$flashcardsDAO = new FlashcardsDAO($PDOX, $p);
1515

1616
$OUTPUT->header();
1717

@@ -25,7 +25,7 @@ function compareStudentsLastName($a, $b) {
2525

2626
$setId = $_GET["SetID"];
2727

28-
$set = $PDOX->rowDie("select * from {$p}flashcards_set where SetID=".$setId.";");
28+
$set = $flashcardsDAO->getFlashcardSetById($setId);
2929

3030
echo('
3131
<ul class="breadcrumb">
@@ -34,7 +34,7 @@ function compareStudentsLastName($a, $b) {
3434
</ul>
3535
');
3636

37-
$cardsInSet = $PDOX->allRowsDie("SELECT * FROM {$p}flashcards where SetID=".$setId.";");
37+
$cardsInSet = $flashcardsDAO->getCardsInSet($setId);
3838
$totalCards = count($cardsInSet);
3939

4040
$hasRosters = LTIX::populateRoster(false);
@@ -59,7 +59,7 @@ function compareStudentsLastName($a, $b) {
5959
echo('<div class="row">
6060
<div class="col-sm-4">'.$student["person_name_family"].', '.$student["person_name_given"].'</div>');
6161

62-
$numberCompleted = $PDOX->rowDie("SELECT count(distinct(CardNum)) as Count FROM {$p}flashcards_activity WHERE FullName = '".$student["person_name_full"]."' AND SetID = '".$setId."';");
62+
$numberCompleted = $flashcardsDAO->getNumberOfSeenCards($student["user_id"], $setId);
6363

6464
$percentComplete = $numberCompleted["Count"] / $totalCards * 100;
6565

actions/AddActivity.php

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,20 @@
11
<?php
22
require_once "../../config.php";
3+
require_once("../dao/FlashcardsDAO.php");
34

45
use \Tsugi\Core\LTIX;
6+
use \Flashcards\DAO\FlashcardsDAO;
57

68
// Retrieve the launch data if present
79
$LAUNCH = LTIX::requireData();
810

911
$p = $CFG->dbprefix;
1012

1113
$setId = $_SESSION["SetID"];
12-
$CardNum = $_SESSION["CardNum"];
13-
$UserName = $_SESSION["UserName"];
14-
$FullName = $_SESSION["FullName"];
14+
$cardId = $_SESSION["CardID"];
1515

16-
$activity = $PDOX->rowDie("SELECT * FROM {$p}flashcards_activity where SetID='".$setId."' AND CardNum='".$CardNum."' AND UserName='".$UserName."';");
16+
$flashcardsDAO = new FlashcardsDAO($PDOX, $p);
1717

18-
if (!$activity) {
19-
$PDOX->queryDie("INSERT INTO {$p}flashcards_activity (SetID, CardNum, UserName, FullName) VALUES ( $setId, $CardNum, '$UserName', '$FullName' );",
20-
array(':SetID' => $setId, ':CardNum' => $CardNum, ':UserName' => $UserName,':FullName' => $FullName) );
21-
}
18+
$flashcardsDAO->updateActivityForUserCard($setId, $cardId, $USER->id);
19+
20+
exit;

actions/AddCardSet_Submit.php

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,25 @@
11
<?php
22
require_once "../../config.php";
3+
require_once('../dao/FlashcardsDAO.php');
34

45
use \Tsugi\Core\LTIX;
6+
use \Flashcards\DAO\FlashcardsDAO;
57

68
// Retrieve the launch data if present
79
$LAUNCH = LTIX::requireData();
810

911
$p = $CFG->dbprefix;
1012

11-
$UserName=$_SESSION["UserName"];
12-
$CourseName = $_POST["CourseName"];
13-
$CardSetName = $_POST["CardSetName"];
13+
$flashcardsDAO = new FlashcardsDAO($PDOX, $p);
1414

15-
$CardSetName = str_replace("'", "&#39;", $CardSetName);
15+
$CardSetName = str_replace("'", "&#39;", $_POST["CardSetName"]);
1616

1717
if ( $USER->instructor ) {
1818

19-
$PDOX->queryDie("INSERT INTO {$p}flashcards_set (UserName, CourseName, CardSetName) VALUES ( '$UserName', '$CourseName', '$CardSetName')",
20-
array(':UserName' => $UserName, ':CourseName' => $CourseName, ':CardSetName' => $CardSetName) );
19+
$newSetId = $flashcardsDAO->createCardSet($USER->id, $CONTEXT->id, $CardSetName);
2120

22-
header( 'Location: '.addSession('../AllCards.php?SetID='.$PDOX->lastInsertId()) ) ;
21+
header( 'Location: '.addSession('../AllCards.php?SetID='.$newSetId) ) ;
22+
} else {
23+
// student so send back to index
24+
header( 'Location: '.addSession('../index.php') ) ;
2325
}

0 commit comments

Comments
 (0)