diff options
author | Nicolas BERNSTEIN <alexis211@gmail.com> | 2011-09-17 19:36:41 +0200 |
---|---|---|
committer | Nicolas BERNSTEIN <alexis211@gmail.com> | 2011-09-17 19:36:41 +0200 |
commit | 8d9321225140a3db0b72796d4d0236d6cacfeb8a (patch) | |
tree | 766e25ed98b86ed4cbf6d0517d9daaecc5ce3c18 /lib/deck/mvent.php | |
parent | b6b341d949437c913fcce3d1a7c302945f67b22b (diff) | |
download | Bits-8d9321225140a3db0b72796d4d0236d6cacfeb8a.tar.gz Bits-8d9321225140a3db0b72796d4d0236d6cacfeb8a.zip |
Started working on a study program.
Diffstat (limited to 'lib/deck/mvent.php')
-rw-r--r-- | lib/deck/mvent.php | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/lib/deck/mvent.php b/lib/deck/mvent.php new file mode 100644 index 0000000..d4571e9 --- /dev/null +++ b/lib/deck/mvent.php @@ -0,0 +1,32 @@ +<?php + +require("lib/markdown.php"); + +assert_redir(count($args) == 4, 'deck'); +$cardid = intval($args[2]); +$pos = intval($args[3]); + +$card = mysql_fetch_assoc(sql( + "SELECT decks.id AS deckid, decks.owner AS deckowner, decks.name AS deckname, cards.name AS name, cards.text_md AS text, cards.number AS number ". + "FROM cards LEFT JOIN decks ON decks.id = cards.deck ". + "WHERE cards.id = $cardid")); +assert_error($card && $card["deckowner"] == $user['id'], + "This card does not exist, or you are not allowed to edit it."); +$deck = array("id" => $card['deckid'], 'name' => $card['deckname']); +$deckid = $card['deckid']; + +$mn = mysql_fetch_assoc(sql("SELECT COUNT(*) AS c FROM cards WHERE deck = $deckid")); +$mn = $mn['c']; +if ($pos > $mn) { + $error = "That number is too big. You don't even have that much cards in your deck."; +} else if ($pos < 1) { + $error = "A position is at least one..."; +} else { + sql("UPDATE cards SET number = 0 WHERE id = $cardid"); + sql("UPDATE cards SET number = number - 1 WHERE number > " . $card['number']); + sql("UPDATE cards SET number = number + 1 WHERE number >= $pos"); + sql("UPDATE cards SET number = $pos WHERE id = $cardid"); + header("Location: view-deck-$deckid"); +} + +require("tpl/deck/ef.php"); |