Skip to content

Commit

Permalink
wip
Browse files Browse the repository at this point in the history
  • Loading branch information
vicholp committed Jan 22, 2023
1 parent 5e1726a commit 93555fc
Show file tree
Hide file tree
Showing 52 changed files with 1,150 additions and 26 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
<?php

namespace App\Http\Controllers\Teacher\QuestionBank;

use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use Illuminate\View\View;

class QuestionBankController extends Controller
{
public function index(): View
{
return view('teacher.question-bank.index');
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
<?php

namespace App\Http\Controllers\Teacher\QuestionBank;

use App\Http\Controllers\Controller;
use App\Models\QuestionPrototype;
use App\Models\Subject;
use Illuminate\Http\Request;

class QuestionPrototypeController extends Controller
{
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
return view('teacher.question-bank.question.index', [
'questions' => QuestionPrototype::all()
]);
}

/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function create()
{
return view('teacher.question-bank.question.create', [
'subjects' => Subject::all(),
]);
}

/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function store(Request $request)
{
//
}

/**
* Display the specified resource.
*
* @param \App\Models\QuestionPrototype $questionPrototype
* @return \Illuminate\Http\Response
*/
public function show(QuestionPrototype $questionPrototype)
{
//
}

/**
* Show the form for editing the specified resource.
*
* @param \App\Models\QuestionPrototype $questionPrototype
* @return \Illuminate\Http\Response
*/
public function edit(QuestionPrototype $questionPrototype)
{
//
}

/**
* Update the specified resource in storage.
*
* @param \Illuminate\Http\Request $request
* @param \App\Models\QuestionPrototype $questionPrototype
* @return \Illuminate\Http\Response
*/
public function update(Request $request, QuestionPrototype $questionPrototype)
{
//
}

/**
* Remove the specified resource from storage.
*
* @param \App\Models\QuestionPrototype $questionPrototype
* @return \Illuminate\Http\Response
*/
public function destroy(QuestionPrototype $questionPrototype)
{
//
}
}
2 changes: 1 addition & 1 deletion app/Http/Controllers/Teacher/TeacherController.php
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ class TeacherController extends Controller
{
public function index(): View
{
$questionnaireGroup = QuestionnaireGroup::orderBy('created_at')->firstOrFail();
$questionnaireGroup = QuestionnaireGroup::orderBy('created_at')->first();

return view('teacher.index', [
'questionnaireGroup' => $questionnaireGroup,
Expand Down
2 changes: 2 additions & 0 deletions app/Models/Admin.php
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@
* @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at
* @property int $user_id
* @property-read string $name
* @property-read \App\Models\User $user
* @method static \Illuminate\Database\Eloquent\Builder|Admin newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|Admin newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|Admin query()
Expand Down
46 changes: 46 additions & 0 deletions app/Models/QuestionPrototype.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;

/**
* App\Models\QuestionPrototype
*
* @property int $id
* @property int $subject_id
* @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at
* @property-read \App\Models\QuestionPrototypeVersion|null $latest
* @property-read \Illuminate\Database\Eloquent\Collection|\App\Models\QuestionPrototypeVersion[] $versions
* @property-read int|null $versions_count
* @method static \Database\Factories\QuestionPrototypeFactory factory(...$parameters)
* @method static \Illuminate\Database\Eloquent\Builder|QuestionPrototype newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|QuestionPrototype newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|QuestionPrototype query()
* @method static \Illuminate\Database\Eloquent\Builder|QuestionPrototype whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|QuestionPrototype whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|QuestionPrototype whereSubjectId($value)
* @method static \Illuminate\Database\Eloquent\Builder|QuestionPrototype whereUpdatedAt($value)
* @mixin \Eloquent
*/
class QuestionPrototype extends Model
{
use HasFactory;

public function versions()
{
return $this->hasMany(QuestionPrototypeVersion::class);
}

public function latest()
{
return $this->hasOne(QuestionPrototypeVersion::class)->latestOfMany();
}

public function subject()
{
return $this->belongsTo(Subject::class);
}
}
40 changes: 40 additions & 0 deletions app/Models/QuestionPrototypeVersion.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;

/**
* App\Models\QuestionPrototypeVersion
*
* @property int $id
* @property string $name
* @property string|null $description
* @property string $body
* @property int $question_prototype_id
* @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at
* @method static \Database\Factories\QuestionPrototypeVersionFactory factory(...$parameters)
* @method static \Illuminate\Database\Eloquent\Builder|QuestionPrototypeVersion newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|QuestionPrototypeVersion newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|QuestionPrototypeVersion query()
* @method static \Illuminate\Database\Eloquent\Builder|QuestionPrototypeVersion whereBody($value)
* @method static \Illuminate\Database\Eloquent\Builder|QuestionPrototypeVersion whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|QuestionPrototypeVersion whereDescription($value)
* @method static \Illuminate\Database\Eloquent\Builder|QuestionPrototypeVersion whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|QuestionPrototypeVersion whereName($value)
* @method static \Illuminate\Database\Eloquent\Builder|QuestionPrototypeVersion whereQuestionPrototypeId($value)
* @method static \Illuminate\Database\Eloquent\Builder|QuestionPrototypeVersion whereUpdatedAt($value)
* @mixin \Eloquent
*/
class QuestionPrototypeVersion extends Model
{
use HasFactory;

protected $fillable = [
'name',
'description',
'body',
];
}
2 changes: 1 addition & 1 deletion app/Models/QuestionnaireGroup.php
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
* @property int $id
* @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at
* @property string $name
* @property string|null $name
* @property int $period_id
* @property int $questionnaire_class_id
* @property int $position
Expand Down
1 change: 1 addition & 0 deletions app/Models/QuestionnaireImportAnswersResult.php
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@
* @property string|null $result
* @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at
* @property-read \App\Models\Admin|null $admin
* @property-read \App\Models\Alternative|null $alternative
* @property-read \Illuminate\Database\Eloquent\Collection|QuestionnaireImportAnswersResult[] $childs
* @property-read int|null $childs_count
Expand Down
28 changes: 28 additions & 0 deletions app/Models/QuestionnairePrototype.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;

/**
* App\Models\QuestionnairePrototype
*
* @property int $id
* @property int $subject_id
* @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at
* @method static \Database\Factories\QuestionnairePrototypeFactory factory(...$parameters)
* @method static \Illuminate\Database\Eloquent\Builder|QuestionnairePrototype newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|QuestionnairePrototype newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|QuestionnairePrototype query()
* @method static \Illuminate\Database\Eloquent\Builder|QuestionnairePrototype whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|QuestionnairePrototype whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|QuestionnairePrototype whereSubjectId($value)
* @method static \Illuminate\Database\Eloquent\Builder|QuestionnairePrototype whereUpdatedAt($value)
* @mixin \Eloquent
*/
class QuestionnairePrototype extends Model
{
use HasFactory;
}
32 changes: 32 additions & 0 deletions app/Models/QuestionnairePrototypeVersion.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;

/**
* App\Models\QuestionnairePrototypeVersion
*
* @property int $id
* @property string $name
* @property string|null $description
* @property int $questionnaire_prototype_id
* @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at
* @method static \Database\Factories\QuestionnairePrototypeVersionFactory factory(...$parameters)
* @method static \Illuminate\Database\Eloquent\Builder|QuestionnairePrototypeVersion newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|QuestionnairePrototypeVersion newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|QuestionnairePrototypeVersion query()
* @method static \Illuminate\Database\Eloquent\Builder|QuestionnairePrototypeVersion whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|QuestionnairePrototypeVersion whereDescription($value)
* @method static \Illuminate\Database\Eloquent\Builder|QuestionnairePrototypeVersion whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|QuestionnairePrototypeVersion whereName($value)
* @method static \Illuminate\Database\Eloquent\Builder|QuestionnairePrototypeVersion whereQuestionnairePrototypeId($value)
* @method static \Illuminate\Database\Eloquent\Builder|QuestionnairePrototypeVersion whereUpdatedAt($value)
* @mixin \Eloquent
*/
class QuestionnairePrototypeVersion extends Model
{
use HasFactory;
}
29 changes: 29 additions & 0 deletions app/Models/QuestionnaireQuestionPrototype.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;

/**
* App\Models\QuestionnaireQuestionPrototype
*
* @property int $id
* @property int $questionnaire_prototype_version_id
* @property int $question_prototype_version_id
* @property \Illuminate\Support\Carbon|null $created_at
* @property \Illuminate\Support\Carbon|null $updated_at
* @method static \Illuminate\Database\Eloquent\Builder|QuestionnaireQuestionPrototype newModelQuery()
* @method static \Illuminate\Database\Eloquent\Builder|QuestionnaireQuestionPrototype newQuery()
* @method static \Illuminate\Database\Eloquent\Builder|QuestionnaireQuestionPrototype query()
* @method static \Illuminate\Database\Eloquent\Builder|QuestionnaireQuestionPrototype whereCreatedAt($value)
* @method static \Illuminate\Database\Eloquent\Builder|QuestionnaireQuestionPrototype whereId($value)
* @method static \Illuminate\Database\Eloquent\Builder|QuestionnaireQuestionPrototype whereQuestionPrototypeVersionId($value)
* @method static \Illuminate\Database\Eloquent\Builder|QuestionnaireQuestionPrototype whereQuestionnairePrototypeVersionId($value)
* @method static \Illuminate\Database\Eloquent\Builder|QuestionnaireQuestionPrototype whereUpdatedAt($value)
* @mixin \Eloquent
*/
class QuestionnaireQuestionPrototype extends Model
{
use HasFactory;
}
5 changes: 5 additions & 0 deletions bin/setup
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,9 @@ set -e
php_env="$(cat .php-version)"
phpenv install -s $php_env

node_env="$(cat .node-version)"
nodenv install -s $node_env

cp .env.example .env
cp public/.htaccess.example public/.htaccess

Expand All @@ -16,6 +19,8 @@ npm install
sudo chmod a+w -R ./bootstrap/
sudo chmod a+w -R ./storage/

docker compose up -d

php artisan key:generate
php artisan db:testing
php artisan migrate:fresh
Expand Down
2 changes: 1 addition & 1 deletion bin/up
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#! /bin/bash

# Run this command just after cloning the repo
# Run this command before start development

set -e

Expand Down
1 change: 1 addition & 0 deletions config/app.php
Original file line number Diff line number Diff line change
Expand Up @@ -186,6 +186,7 @@
// App\Providers\BroadcastServiceProvider::class,
App\Providers\EventServiceProvider::class,
App\Providers\RouteServiceProvider::class,
App\Providers\TelescopeServiceProvider::class,

],

Expand Down
24 changes: 24 additions & 0 deletions database/factories/QuestionPrototypeFactory.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
<?php

namespace Database\Factories;

use App\Models\Subject;
use Illuminate\Database\Eloquent\Factories\Factory;

/**
* @extends \Illuminate\Database\Eloquent\Factories\Factory<\App\Models\QuestionPrototype>
*/
class QuestionPrototypeFactory extends Factory
{
/**
* Define the model's default state.
*
* @return array<string, mixed>
*/
public function definition()
{
return [
'subject_id' => Subject::factory(),
];
}
}
Loading

0 comments on commit 93555fc

Please sign in to comment.