aboutsummaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
Diffstat (limited to 'app')
-rw-r--r--app/Http/Controllers/RandomVerbController.php34
-rw-r--r--app/RandomLog.php35
2 files changed, 55 insertions, 14 deletions
diff --git a/app/Http/Controllers/RandomVerbController.php b/app/Http/Controllers/RandomVerbController.php
index ee2a01c..3055761 100644
--- a/app/Http/Controllers/RandomVerbController.php
+++ b/app/Http/Controllers/RandomVerbController.php
@@ -19,25 +19,31 @@
namespace App\Http\Controllers;
use HebrewParseTrainer\Verb;
+use HebrewParseTrainer\RandomLog;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Input;
use Laravel\Lumen\Routing\Controller as BaseController;
class RandomVerbController extends BaseController {
- public function show()
- {
- $verbs = Verb::all();
- foreach (Input::get() as $col => $val) {
- $val = explode(',', $val);
- $verbs = $verbs->filter(function(Verb $item) use ($col, $val) {
- return in_array($item->getAttribute($col), $val);
- });
- }
- $verb = $verbs->random();
+ public function show()
+ {
+ $verbs = Verb::all();
+ foreach (Input::get() as $col => $val) {
+ $val = explode(',', $val);
+ $verbs = $verbs->filter(function(Verb $item) use ($col, $val) {
+ return in_array($item->getAttribute($col), $val);
+ });
+ }
+ $verb = $verbs->random();
- $obj = ['verb' => $verb, 'answers' => $verb->otherParsings()];
- return response()->json($obj);
- }
+ $log = new RandomLog();
+ $log->request = json_encode(Input::get());
+ $log->response = $verb;
+ $log->save();
-} \ No newline at end of file
+ $obj = ['verb' => $verb, 'answers' => $verb->otherParsings()];
+ return response()->json($obj);
+ }
+
+}
diff --git a/app/RandomLog.php b/app/RandomLog.php
new file mode 100644
index 0000000..a90018c
--- /dev/null
+++ b/app/RandomLog.php
@@ -0,0 +1,35 @@
+<?php
+/**
+ * HebrewParseTrainer - practice Hebrew verbs
+ * Copyright (C) 2015 Camil Staps <info@camilstaps.nl>
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+namespace HebrewParseTrainer;
+
+use Illuminate\Database\Eloquent\Model;
+
+class RandomLog extends Model {
+
+ protected $table = 'random_logs';
+ public $timestamps = false;
+ protected $fillable = ['request', 'response'];
+
+ public static function boot() {
+ static::creating(function ($model) {
+ $model->created_at = $model->freshTimestamp();
+ });
+ }
+
+}