HEX
Server: LiteSpeed
System: Linux s3604.bom1.stableserver.net 4.18.0-513.11.1.lve.el8.x86_64 #1 SMP Thu Jan 18 16:21:02 UTC 2024 x86_64
User: dmstechonline (1480)
PHP: 7.4.33
Disabled: NONE
Upload Files
File: /home/dmstechonline/crm.dmstech.online/application/helpers/table_helper.php
<?php

defined('BASEPATH') or exit('No direct script access allowed');

hooks()->add_action('admin_init', function () {
    App_table::register(
        App_table::new('clients')->customfieldable('customers')->setPrimaryKeyName('userid')
    );

    App_table::register(
        App_table::new('expenses')->customfieldable('expenses')
    );

    App_table::register(
        App_table::new('project_expenses')
    );

    App_table::register(
        App_table::new('expenses_detailed_report')->customfieldable('expenses')
    );

    App_table::register(
        $contractsTable = App_table::new('contracts')->customfieldable('contracts')
    );

    App_table::register(
        App_table::new('project_contracts', 'contracts')
            ->relatedTo($contractsTable->id())
            ->setRules($contractsTable->rules())
    );

    App_table::register(
        App_table::new('credit_notes')->setDbTableName('creditnotes')->customfieldable('credit_note')
    );

    App_table::register(
        App_table::new('projects')->customfieldable('projects')
    );

    App_table::register(
        App_table::new('leads')->customfieldable('leads')
    );

    App_table::register(
        App_table::new('subscriptions')
    );

    App_table::register(
        App_table::new('tickets')->setPrimaryKeyName('ticketid')->customfieldable('tickets')
    );

    App_table::register(
        $estimatesTable = App_table::new('estimates')->customfieldable('estimate')
    );

    App_table::register(
        App_table::new('project_estimates', 'estimates')
            ->relatedTo($estimatesTable->id())
            ->setRules($estimatesTable->rules())
    );

    App_table::register($tasksTable = App_table::new('tasks')->customfieldable('tasks'));

    App_table::register(
        App_table::new('related_tasks', 'tasks_relations')
            ->relatedTo($tasksTable->id())
            ->setRules($tasksTable->rules())
    );

    App_table::register(
        $invoicesTable = App_table::new('invoices')->customfieldable('invoice')
    );

    App_table::register(
        App_table::new('project_invoices', 'invoices')
            ->relatedTo($invoicesTable->id())
            ->setRules($invoicesTable->rules())
    );

    App_table::register(
        $proposalsTable = App_table::new('proposals')->customfieldable('proposal')
    );

    App_table::register(
        App_table::new('project_proposals', 'proposals')
            ->relatedTo($proposalsTable->id())
            ->setRules($proposalsTable->rules())
    );
});