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/views/admin/projects/project_overview.php
<?php defined('BASEPATH') or exit('No direct script access allowed'); ?>
<div class="row">
    <div class="col-md-6 project-overview-left">
        <div class="panel_s">
            <div class="panel-body">
                <div class="row">
                    <div class="col-md-12">
                        <p class="project-info tw-mb-0 tw-font-medium tw-text-base tw-tracking-tight">
                            <?php echo _l('project_progress_text'); ?> <span
                                class="tw-text-neutral-500"><?php echo e($percent); ?>%</span>
                        </p>
                        <div class="progress progress-bar-mini">
                            <div class="progress-bar progress-bar-success no-percent-text not-dynamic"
                                role="progressbar" aria-valuenow="<?php echo e($percent); ?>" aria-valuemin="0"
                                aria-valuemax="100" style="width: 0%" data-percent="<?php echo e($percent); ?>">
                            </div>
                        </div>
                        <?php hooks()->do_action('admin_area_after_project_progress') ?>
                        <hr class="hr-panel-separator" />
                    </div>

                    <?php if (count($project->shared_vault_entries) > 0) { ?>
                    <?php $this->load->view('admin/clients/vault_confirm_password'); ?>
                    <div class="col-md-12">
                        <p class="tw-font-medium">
                            <a href="#" onclick="slideToggle('#project_vault_entries'); return false;"
                                class="tw-inline-flex tw-items-center tw-space-x-1">
                                <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24"
                                    stroke-width="1.5" stroke="currentColor" class="tw-w-5 tw-h-5">
                                    <path stroke-linecap="round" stroke-linejoin="round"
                                        d="M15.75 5.25a3 3 0 013 3m3 0a6 6 0 01-7.029 5.912c-.563-.097-1.159.026-1.563.43L10.5 17.25H8.25v2.25H6v2.25H2.25v-2.818c0-.597.237-1.17.659-1.591l6.499-6.499c.404-.404.527-1 .43-1.563A6 6 0 1121.75 8.25z" />
                                </svg>
                                <span>
                                    <?php echo _l('project_shared_vault_entry_login_details'); ?>
                                </span>
                            </a>
                        </p>
                        <div id="project_vault_entries"
                            class="hide tw-mb-4 tw-bg-neutral-50 tw-px-4 tw-py-2 tw-rounded-md">
                            <?php foreach ($project->shared_vault_entries as $vault_entry) { ?>
                            <div class="tw-my-3">
                                <div class="row" id="<?php echo 'vaultEntry-' . $vault_entry['id']; ?>">
                                    <div class="col-md-6">
                                        <p class="mtop5">
                                            <b><?php echo _l('server_address'); ?>:
                                            </b><?php echo e($vault_entry['server_address']); ?>
                                        </p>
                                        <p class="tw-mb-0">
                                            <b><?php echo _l('port'); ?>:
                                            </b><?php echo e(!empty($vault_entry['port']) ? $vault_entry['port'] : _l('no_port_provided')); ?>
                                        </p>
                                        <p class="tw-mb-0">
                                            <b><?php echo _l('vault_username'); ?>:
                                            </b><?php echo e($vault_entry['username']); ?>
                                        </p>
                                        <p class="no-margin">
                                            <b><?php echo _l('vault_password'); ?>: </b><span
                                                class="vault-password-fake">
                                                <?php echo str_repeat('&bull;', 10); ?> </span><span
                                                class="vault-password-encrypted"></span> <a href="#"
                                                class="vault-view-password mleft10" data-toggle="tooltip"
                                                data-title="<?php echo _l('view_password'); ?>"
                                                onclick="vault_re_enter_password(<?php echo e($vault_entry['id']); ?>,this); return false;"><i
                                                    class="fa fa-lock" aria-hidden="true"></i></a>
                                        </p>
                                    </div>
                                    <div class="col-md-6">
                                        <?php if (!empty($vault_entry['description'])) { ?>
                                        <p class="tw-mb-0">
                                            <b><?php echo _l('vault_description'); ?>:
                                            </b><br /><?php echo process_text_content_for_display($vault_entry['description']); ?>
                                        </p>
                                        <?php } ?>
                                    </div>
                                </div>
                            </div>
                            <?php } ?>
                        </div>
                    </div>
                    <?php } ?>

                    <div class="col-md-12">
                        <h4 class="tw-font-semibold tw-text-base tw-mb-4">
                            <?php echo _l('project_overview'); ?>
                        </h4>
                        <dl class="tw-grid tw-grid-cols-1 tw-gap-x-4 tw-gap-y-5 sm:tw-grid-cols-2">
                            <div class="sm:tw-col-span-1 project-overview-id">
                                <dt class="tw-text-sm tw-font-medium tw-text-neutral-500">
                                    <?php echo _l('project'); ?> <?php echo _l('the_number_sign'); ?>
                                </dt>
                                <dd class="tw-mt-1 tw-text-sm tw-text-neutral-900"><?php echo e($project->id); ?></dd>
                            </div>

                            <div class="sm:tw-col-span-1 project-overview-customer">
                                <dt class="tw-text-sm tw-font-medium tw-text-neutral-500">
                                    <?php echo _l('project_customer'); ?>
                                </dt>
                                <dd class="tw-mt-1 tw-text-sm tw-text-neutral-900">
                                    <a
                                        href="<?php echo admin_url(); ?>clients/client/<?php echo e($project->clientid); ?>">
                                        <?php echo e($project->client_data->company); ?>
                                    </a>
                                </dd>
                            </div>

                            <?php if (staff_can('edit',  'projects')) { ?>
                            <div class="sm:tw-col-span-1 project-overview-billing">
                                <dt class="tw-text-sm tw-font-medium tw-text-neutral-500">
                                    <?php echo _l('project_billing_type'); ?>
                                </dt>
                                <dd class="tw-mt-1 tw-text-sm tw-text-neutral-900">
                                    <?php
                                        if ($project->billing_type == 1) {
                                            $type_name = 'project_billing_type_fixed_cost';
                                        } elseif ($project->billing_type == 2) {
                                            $type_name = 'project_billing_type_project_hours';
                                        } else {
                                            $type_name = 'project_billing_type_project_task_hours';
                                        }
                                        echo _l($type_name);
                                    ?>
                                </dd>
                            </div>
                            <?php if ($project->billing_type == 1 || $project->billing_type == 2) { ?>
                            <div class="sm:tw-col-span-1 project-overview-amount">
                                <?php if ($project->billing_type == 1) { ?>
                                <dt class="tw-text-sm tw-font-medium tw-text-neutral-500">
                                    <?php echo _l('project_total_cost'); ?>
                                </dt>
                                <dd class="tw-mt-1 tw-text-sm tw-text-neutral-900">
                                    <?php echo e(app_format_money($project->project_cost, $currency)); ?>
                                </dd>
                                <?php  } else { ?>
                                <dt class="tw-text-sm tw-font-medium tw-text-neutral-500">
                                    <?php echo _l('project_rate_per_hour'); ?>
                                </dt>
                                <dd class="tw-mt-1 tw-text-sm tw-text-neutral-900">
                                    <?php echo e(app_format_money($project->project_rate_per_hour, $currency)); ?>
                                </dd>
                                <?php } ?>
                            </div>
                            <?php } } ?>

                            <div class="sm:tw-col-span-1 project-overview-status">
                                <dt class="tw-text-sm tw-font-medium tw-text-neutral-500">
                                    <?php echo _l('project_status'); ?>
                                </dt>
                                <dd class="tw-mt-1 tw-text-sm tw-text-neutral-900">
                                    <?php echo e($project_status['name']); ?>
                                </dd>
                            </div>

                            <div class="sm:tw-col-span-1 project-overview-date-created">
                                <dt class="tw-text-sm tw-font-medium tw-text-neutral-500">
                                    <?php echo _l('project_datecreated'); ?>
                                </dt>
                                <dd class="tw-mt-1 tw-text-sm tw-text-neutral-900">
                                    <?php echo e(_d($project->project_created)); ?>
                                </dd>
                            </div>
                            <div class="sm:tw-col-span-1 project-overview-start-date">
                                <dt class="tw-text-sm tw-font-medium tw-text-neutral-500">
                                    <?php echo _l('project_start_date'); ?>
                                </dt>
                                <dd class="tw-mt-1 tw-text-sm tw-text-neutral-900">
                                    <?php echo e(_d($project->start_date)); ?>
                                </dd>
                            </div>
                            <?php if ($project->deadline) { ?>
                            <div class="sm:tw-col-span-1 project-overview-deadline">
                                <dt class="tw-text-sm tw-font-medium tw-text-neutral-500">
                                    <?php echo _l('project_deadline'); ?>
                                </dt>
                                <dd class="tw-mt-1 tw-text-sm tw-text-neutral-900">
                                    <?php echo e(_d($project->deadline)); ?>
                                </dd>
                            </div>
                            <?php } ?>

                            <?php if ($project->date_finished) { ?>
                            <div class="sm:tw-col-span-1 project-overview-date-finished">
                                <dt class="tw-text-sm tw-font-medium tw-text-neutral-500">
                                    <?php echo _l('project_completed_date'); ?>
                                </dt>
                                <dd class="tw-mt-1 tw-text-sm text-success">
                                    <?php echo e(_dt($project->date_finished)); ?>
                                </dd>
                            </div>
                            <?php } ?>

                            <?php if ($project->estimated_hours && $project->estimated_hours != '0') { ?>
                            <div class="sm:tw-col-span-1 project-overview-estimated-hours">
                                <dt class="tw-text-sm tw-font-medium tw-text-neutral-500">
                                    <?php echo _l('estimated_hours'); ?>
                                </dt>
                                <dd
                                    class="tw-mt-1 tw-text-sm <?php echo hours_to_seconds_format($project->estimated_hours) < (int)$project_total_logged_time ? 'text-warning' : 'text-neutral-900'; ?>">
                                    <?php echo e(str_replace('.', ':', $project->estimated_hours)); ?>
                                </dd>
                            </div>
                            <?php } ?>

                            <div class="sm:tw-col-span-1 project-overview-total-logged-hours">
                                <dt class="tw-text-sm tw-font-medium tw-text-neutral-500">
                                    <?php echo _l('project_overview_total_logged_hours'); ?>
                                </dt>
                                <dd class="tw-mt-1 tw-text-sm tw-text-neutral-900">
                                    <?php echo e(seconds_to_time_format($project_total_logged_time)); ?>
                                </dd>
                            </div>


                            <?php $custom_fields = get_custom_fields('projects');
                            if (count($custom_fields) > 0) { ?>
                            <?php foreach ($custom_fields as $field) { ?>
                            <?php $value = get_custom_field_value($project->id, $field['id'], 'projects');
                            if ($value == '') {
                                continue;
                            } ?>
                            <div class="sm:tw-col-span-1">
                                <dt class="tw-text-sm tw-font-medium tw-text-neutral-500">
                                    <?php echo e(ucfirst($field['name'])); ?>
                                </dt>
                                <dd class="tw-mt-1 tw-text-sm tw-text-neutral-900">
                                    <?php echo $value; ?>
                                </dd>
                            </div>
                            <?php } ?>
                            <?php } ?>

                            <?php $tags = get_tags_in($project->id, 'project'); ?>
                            <?php if (count($tags) > 0) { ?>
                            <div class="sm:tw-col-span-1 project-overview-tags">
                                <dt class="tw-text-sm tw-font-medium tw-text-neutral-500">
                                    <?php echo _l('tags'); ?>
                                </dt>
                                <dd class="tags-read-only-custom tw-mt-1 tw-text-sm tw-text-neutral-900">
                                    <input type="text" class="tagsinput read-only" id="tags" name="tags"
                                        value="<?php echo prep_tags_input($tags); ?>" data-role="tagsinput">
                                </dd>
                            </div>
                            <?php } ?>
                            <div class="clearfix"></div>
                            <div class="sm:tw-col-span-2 project-overview-description tc-content">
                                <dt class="tw-text-sm tw-font-medium tw-text-neutral-500">
                                    <?php echo _l('project_description'); ?>
                                </dt>
                                <dd class="tw-mt-1 tw-space-y-5 tw-text-sm tw-text-neutral-900">
                                    <?php if (empty($project->description)) { ?>
                                    <p class="text-muted tw-mb-0">
                                        <?php echo _l('no_description_project'); ?>
                                    </p>
                                    <?php } ?>
                                    <?php echo check_for_links($project->description); ?>
                                </dd>
                            </div>
                        </dl>
                    </div>
                </div>
            </div>
        </div>
        <?php hooks()->do_action('admin_project_overview_end_of_project_overview_left', $project) ?>
    </div>
    <div class="col-md-6 project-overview-right">
        <div class="row">
            <div class="col-md-<?php echo($project->deadline ? 6 : 12); ?> project-progress-bars">
                <div class="project-overview-open-tasks">
                    <div class="panel_s">
                        <div class="panel-body !tw-px-5 !tw-py-4">
                            <div class="row">
                                <div class="col-md-9">
                                    <p class="bold text-dark tw-mb-2">
                                        <span dir="ltr"><?php echo e($tasks_not_completed); ?> /
                                            <?php echo e($total_tasks); ?></span>
                                        <?php echo _l('project_open_tasks'); ?>
                                    </p>
                                    <p class="text-muted bold tw-mb-0"><?php echo e($tasks_not_completed_progress); ?>%</p>
                                </div>
                                <div class="col-md-3 text-right">
                                    <i class="fa-regular fa-check-circle<?php echo $tasks_not_completed_progress >= 100 ? ' text-success' : ' text-muted'; ?>"
                                        aria-hidden="true"></i>
                                </div>
                                <div class="col-md-12 mtop5">
                                    <div class="progress no-margin progress-bar-mini">
                                        <div class="progress-bar progress-bar-success no-percent-text not-dynamic"
                                            role="progressbar"
                                            aria-valuenow="<?php echo e($tasks_not_completed_progress); ?>"
                                            aria-valuemin="0" aria-valuemax="100" style="width: 0%"
                                            data-percent="<?php echo e($tasks_not_completed_progress); ?>">
                                        </div>
                                    </div>
                                </div>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
            <?php if ($project->deadline) { ?>
            <div class="col-md-6 project-progress-bars project-overview-days-left">
                <div class="panel_s">
                    <div class="panel-body !tw-px-5 !tw-py-4">
                        <div class="row">
                            <div class="col-md-9">
                                <p class="bold text-dark tw-mb-2">
                                    <span dir="ltr"><?php echo e($project_days_left); ?> /
                                        <?php echo e($project_total_days); ?></span>
                                    <?php echo _l('project_days_left'); ?>
                                </p>
                                <p class="text-muted bold tw-mb-0"><?php echo e($project_time_left_percent); ?>%</p>
                            </div>
                            <div class="col-md-3 text-right">
                                <i class="fa-regular fa-calendar-check<?php echo $project_time_left_percent >= 100 ? ' text-success' : ' text-muted'; ?>"
                                    aria-hidden="true"></i>
                            </div>
                            <div class="col-md-12 mtop5">
                                <div class="progress no-margin progress-bar-mini">
                                    <div class="progress-bar no-percent-text not-dynamic <?php echo ($project_time_left_percent == 0) ? 'progress-bar-warning' : 'progress-bar-success'; ?>" role="progressbar" aria-valuenow="<?php echo e($project_time_left_percent); ?>"
                                        aria-valuemin="0" aria-valuemax="100" style="width: 0%"
                                        data-percent="<?php echo e($project_time_left_percent); ?>">
                                    </div>
                                </div>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
            <?php } ?>
        </div>

        <?php if (staff_can('create',  'projects')) { ?>
        <div class="row">
            <?php if ($project->billing_type == 3 || $project->billing_type == 2) { ?>
            <div class="col-md-12 project-overview-logged-hours-finance">
                <div class="panel_s !tw-mb-3">
                    <div class="panel-body !tw-px-5 !tw-py-4">
                        <div class="row">
                            <div class="col-md-3">
                                <?php
                                    $data = $this->projects_model->total_logged_time_by_billing_type($project->id);
                                ?>
                                <p class="tw-mb-0 text-muted"><?php echo _l('project_overview_logged_hours'); ?> <span
                                        class="bold"><?php echo e($data['logged_time']); ?></span></p>
                                <p class="bold font-medium tw-mb-0">
                                    <?php echo e(app_format_money($data['total_money'], $currency)); ?></p>
                            </div>
                            <div class="col-md-3">
                                <?php
                                    $data = $this->projects_model->data_billable_time($project->id);
                                ?>
                                <p class="tw-mb-0 text-info"><?php echo _l('project_overview_billable_hours'); ?> <span
                                        class="bold"><?php echo e($data['logged_time']); ?></span></p>
                                <p class="bold font-medium tw-mb-0">
                                    <?php echo e(app_format_money($data['total_money'], $currency)); ?></p>
                            </div>
                            <div class="col-md-3">
                                <?php
                                    $data = $this->projects_model->data_billed_time($project->id);
                                ?>
                                <p class="tw-mb-0 text-success"><?php echo _l('project_overview_billed_hours'); ?> <span
                                        class="bold"><?php echo e($data['logged_time']); ?></span></p>
                                <p class="bold font-medium tw-mb-0">
                                    <?php echo e(app_format_money($data['total_money'], $currency)); ?></p>
                            </div>
                            <div class="col-md-3">
                                <?php
                                    $data = $this->projects_model->data_unbilled_time($project->id);
                                ?>
                                <p class="tw-mb-0 text-danger"><?php echo _l('project_overview_unbilled_hours'); ?>
                                    <span class="bold"><?php echo e($data['logged_time']); ?></span>
                                </p>
                                <p class="bold font-medium tw-mb-0">
                                    <?php echo e(app_format_money($data['total_money'], $currency)); ?></p>
                            </div>
                        </div>
                    </div>
                </div>

            </div>
            <?php } ?>
        </div>
        <div class="row">
            <div class="col-md-12 project-overview-expenses-finance">
                <div class="panel_s">
                    <div class="panel-body !tw-px-5 !tw-py-4">
                        <div class="row">
                            <div class="col-md-3">
                                <p class="tw-mb-0 text-muted"><?php echo _l('project_overview_expenses'); ?></p>
                                <p class="bold font-medium tw-mb-0">
                                    <?php echo e(app_format_money(sum_from_table(db_prefix() . 'expenses', ['where' => ['project_id' => $project->id], 'field' => 'amount']), $currency)); ?>
                                </p>
                            </div>
                            <div class="col-md-3">
                                <p class="tw-mb-0 text-info"><?php echo _l('project_overview_expenses_billable'); ?></p>
                                <p class="bold font-medium tw-mb-0">
                                    <?php echo e(app_format_money(sum_from_table(db_prefix() . 'expenses', ['where' => ['project_id' => $project->id, 'billable' => 1], 'field' => 'amount']), $currency)); ?>
                                </p>
                            </div>
                            <div class="col-md-3">
                                <p class="tw-mb-0 text-success"><?php echo _l('project_overview_expenses_billed'); ?>
                                </p>
                                <p class="bold font-medium tw-mb-0">
                                    <?php echo e(app_format_money(sum_from_table(db_prefix() . 'expenses', ['where' => ['project_id' => $project->id, 'invoiceid !=' => 'NULL', 'billable' => 1], 'field' => 'amount']), $currency)); ?>
                                </p>
                            </div>
                            <div class="col-md-3">
                                <p class="tw-mb-0 text-danger"><?php echo _l('project_overview_expenses_unbilled'); ?>
                                </p>
                                <p class="bold font-medium tw-mb-0">
                                    <?php echo e(app_format_money(sum_from_table(db_prefix() . 'expenses', ['where' => ['project_id' => $project->id, 'invoiceid IS NULL', 'billable' => 1], 'field' => 'amount']), $currency)); ?>
                                </p>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
        <?php } ?>
        <div class="project-overview-timesheets-chart">
            <div class="dropdown pull-right">
                <a href="#" class="dropdown-toggle" type="button" id="dropdownMenuProjectLoggedTime"
                    data-toggle="dropdown" aria-haspopup="true" aria-expanded="true">
                    <?php if (!$this->input->get('overview_chart')) {
                            echo _l('this_week');
                        } else {
                            echo _l($this->input->get('overview_chart'));
                        }
                    ?>
                    <span class="caret"></span>
                </a>
                <ul class="dropdown-menu" aria-labelledby="dropdownMenuProjectLoggedTime">
                    <li><a
                            href="<?php echo admin_url('projects/view/' . $project->id . '?group=project_overview&overview_chart=this_week'); ?>"><?php echo _l('this_week'); ?></a>
                    </li>
                    <li><a
                            href="<?php echo admin_url('projects/view/' . $project->id . '?group=project_overview&overview_chart=last_week'); ?>"><?php echo _l('last_week'); ?></a>
                    </li>
                    <li><a
                            href="<?php echo admin_url('projects/view/' . $project->id . '?group=project_overview&overview_chart=this_month'); ?>"><?php echo _l('this_month'); ?></a>
                    </li>
                    <li><a
                            href="<?php echo admin_url('projects/view/' . $project->id . '?group=project_overview&overview_chart=last_month'); ?>"><?php echo _l('last_month'); ?></a>
                    </li>
                </ul>
            </div>
            <div class="clearfix"></div>
            <div class="panel_s">
                <div class="panel-body !tw-px-5 !tw-py-4">
                    <canvas id="timesheetsChart" style="max-height:300px;" width="300" height="300"></canvas>
                </div>
            </div>
        </div>
        <?php hooks()->do_action('admin_project_overview_end_of_project_overview_right', $project) ?>
    </div>
</div>
<?php if (isset($project_overview_chart)) { ?>
<script>
var project_overview_chart = <?php echo json_encode($project_overview_chart); ?>;
</script>
<?php } ?>