<?php

namespace App\Models\Environments;

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

class Data extends Model
{
    use HasFactory, SoftDeletes;

    protected $table = 'data';

    protected $fillable = [
        'environment_id',
        'policyagreed',
        'language',
        'countrycode',
        'privacy',
        'contactemail',
        'contactable',
        'emailalert',
        'emailalertemail',
        'commnews',
        'commnewsemail',
        'contactname',
        'description',
        'imageurl',
        'contactphone',
        'regioncode',
        'geolocation',
        'street',
        'courses',
        'users',
        'activeusers',
        'enrolments',
        'posts',
        'questions',
        'resources',
        'badges',
        'issuedbadges',
        'participantnumberaverage',
        'activeparticipantnumberaverage',
        'modulenumberaverage',
        'moodlerelease',
        'url',
        'mobileservicesenabled',
        'mobilenotificationsenabled',
        'registereduserdevices',
        'registeredactiveuserdevices',
        'analyticsenabledmodels',
        'analyticspredictions',
        'analyticsactions',
        'analyticsactionsnotuseful',
        'availableupdatesfetch',
    ];

    protected $casts = [
        'policyagreed' => 'boolean',
        'emailalert' => 'boolean',
        'commnews' => 'boolean',
        'mobileservicesenabled' => 'boolean',
        'mobilenotificationsenabled' => 'boolean',
        'participantnumberaverage' => 'float',
        'activeparticipantnumberaverage' => 'float',
        'modulenumberaverage' => 'float',
        'courses' => 'integer',
        'users' => 'integer',
        'activeusers' => 'integer',
        'enrolments' => 'integer',
    ];

    // Relación opcional (pero recomendada)
    public function environment()
    {
        return $this->belongsTo(Environment::class);
    }
}

