crm-summit/app/Models/GitRepositoriesModel.php
mahdahar ec5f2fc385 feat(gitea): add database-backed sync, API, and dashboard views
Add Gitea sync service with full and incremental modes, paged API fetch, upsert logic for users/repos/commits/PRs, and error aggregation.

Add migration for git_users, git_repositories, git_commits, git_pull_requests with indexes and unique constraints; add models and sync scripts for full/incremental jobs.

Update Gitea UI and dashboard filters (user/repo/date), aggregate commit loading across repositories, and wire routes/controllers/sidebar for dashboard and sync endpoints.
2026-04-22 16:39:30 +07:00

39 lines
810 B
PHP

<?php namespace App\Models;
use CodeIgniter\Model;
class GitRepositoriesModel extends Model
{
protected $table = 'git_repositories';
protected $primaryKey = 'id';
protected $useAutoIncrement = true;
protected $returnType = 'array';
protected $useSoftDeletes = false;
protected $protectFields = true;
protected $allowedFields = [
'gitea_repo_id',
'owner_user_id',
'owner_username',
'name',
'full_name',
'description',
'html_url',
'clone_url',
'default_branch',
'is_private',
'is_archived',
'is_fork',
'open_issues_count',
'stars_count',
'forks_count',
'watchers_count',
'last_pushed_at',
'last_synced_at',
];
protected $useTimestamps = true;
protected $dateFormat = 'datetime';
protected $createdField = 'created_at';
protected $updatedField = 'updated_at';
}