# HG changeset patch # User Matti Hamalainen # Date 1519323320 -7200 # Node ID ba7ed8f6d2abad50aa84ed101d101a51a93c5f69 # Parent 506977ea9d0c5b838c21ee54ab9e997cc25d6514 quotedb: Add get latest quote feature. diff -r 506977ea9d0c -r ba7ed8f6d2ab quotedb.tcl --- a/quotedb.tcl Wed Feb 07 19:01:36 2018 +0200 +++ b/quotedb.tcl Thu Feb 22 20:15:20 2018 +0200 @@ -295,9 +295,15 @@ if {$uindex >= 0} { append usql " WHERE ${utable}.id=$uindex GROUP BY ${utable}.id" qdb_log "$unick searched $utable #$uindex" - } else { + } elseif {$uindex == -1} { append usql " GROUP BY ${utable}.id ORDER BY RANDOM() LIMIT 1" qdb_log "$unick get random $utable" + } elseif {$uindex == -2} { + append usql " GROUP BY ${utable}.id ORDER BY ${utable}.id DESC LIMIT 1" + qdb_log "$unick get latest $utable" + } else { + qdb_log "$unick invalid qdb_get $utable index value." + return 0 } qdb_handle eval $usql { @@ -376,6 +382,9 @@ if {$utext == "" || $utext == {}} { # No arguments, assume random query qdb_get $ucmd $utable $unick $uchan -1 $upublic + } elseif {[regexp {^(last|latest|uusin|viimeisin)$} $utext umatch]} { + # Latest added + qdb_get $ucmd $utable $unick $uchan -2 $upublic } elseif {[regexp {^([0-9]+)$} $utext umatch unum]} { # Numeric argument, assume index query qdb_get $ucmd $utable $unick $uchan $unum $upublic @@ -398,6 +407,7 @@ # Vote qdb_vote $ucmd $utable $unick $uhand $uchan $unum $upublic } else { + # Help/usage qdb_msg $upublic $unick $uchan $qdb_msg_help [list $ucmd] } }