Files
c-cms-legacy/app/OCOM.php
George Frederick "Buzz" Beurling ae3be2b977 Permission update
2020-03-22 20:00:23 -04:00

84 lines
2.0 KiB
PHP

<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class OCOM extends Model
{
public function courses()
{
$courses_id = explode(',',$this->course_id);
$courses = collect();
foreach ($courses_id as $course_id)
{
$courses->push(\App\Course::find($course_id));
}
return $courses;
}
public function saveCourses($courses)
{
$courses_id = explode(',',$this->course_id);
foreach ($courses as $cours)
{
if ($cours != null){
array_push($courses_id,$cours->id);
}
}
$courses_id = array_unique($courses_id);
$courses_id = array_filter($courses_id);
$this->course_id = implode(',',$courses_id);
$this->save();
}
public function saveCourse($course)
{
$courses_id = explode(',',$this->course_id);
array_push($courses_id,$course->id);
$courses_id = array_unique($courses_id);
$courses_id = array_filter($courses_id);
$this->course_id = implode(',',$courses_id);
$this->save();
}
public function wasGiven()
{
$courses = $this->courses();
$result = collect();
$from = strtotime(\App\Config::getData('instruction_year_begin'));
$to = strtotime(\App\Config::getData('instruction_year_end'));
foreach ($courses as $course)
{
$event = null;
try {
$event = $course->event;
}
catch (\Exception $e)
{
// Nettoyer ?
break;
}
if (strtotime($event->date_begin) >= $from)
{
if (strtotime($event->date_begin) <= $to)
{
$result->push($event);
}
}
}
if ($result->isEmpty())
{
return false;
}
return $result;
}
public static function findByOCOM($ocom)
{
return OCOM::where('ocom','=',$ocom)->first();
}
}