X-Git-Url: https://git.llucax.com/z.facultad/75.43/tp1.git/blobdiff_plain/75573420ee5b9fc36505b058a19ea4642e8138d4..3cfdc427066ffa563f292c8267ecb8db8e1fd9d0:/src/lib/file.creditos.php diff --git a/src/lib/file.creditos.php b/src/lib/file.creditos.php index e4a9f6e..d4d4cc1 100644 --- a/src/lib/file.creditos.php +++ b/src/lib/file.creditos.php @@ -19,7 +19,7 @@ require_once 'lib/file.php'; * último chequeo para diferenciar entragas por login de entradas por * evaluar o preguntas (me parece que con 'dias' no alcanza). * - * @return false si hay error + * @return array con los campos escritos. */ function file_creditos_login($user) { @@ -30,7 +30,9 @@ function file_creditos_login($user) $dias2 %= 30; if ($dias2 != $dias or $creditos2 != $creditos) { - return (bool)file_creditos_write($user, $creditos2, $bonus, $dias2); + $ret = file_creditos_write($user, $creditos2, $bonus, $dias2); + if ($ret === false) return false; + else return array_slice($ret, 1); } return true; } @@ -55,12 +57,12 @@ function file_creditos_preguntar($user) * * @return Array con los nuevos valores de créditos. */ -function file_creditos_evaluar($user, $es_bonus = false, $bonus_cant = 5) +function file_creditos_evaluar($user, $rank, $es_bonus = false, $bonus_cant = 5) { if (!($row = file_creditos_get($user))) return false; list($fecha, $creditos, $bonus, $dias) = $row; $bonus2 = $bonus; - $creditos2 = $creditos; + $creditos2 = $creditos + $rank; if ($es_bonus) $bonus2++; if ($bonus2 >= $bonus_cant) { @@ -87,10 +89,21 @@ function file_creditos_get($user) return $row; } +/** + * Agrega $n créditos al usuario $user (false si hay error). + */ +function file_creditos_add($user, $n) +{ + if (!($row = file_creditos_get($user))) return false; + list($fecha, $creditos, $bonus, $dias) = $row; + $creditos += $n; + return (bool)file_creditos_write($user, $creditos, $bonus, $dias); +} + /** * Escribe una nueva entrada en el archivo de créditos (actualiza el 'índice'). * - * @returns array con los campos escritos. + * @return array con los campos escritos. */ function file_creditos_write($user, $creditos, $bonus, $dias) {