{% extends "::base.html.twig" %} {% form_theme form inline_form_theme %} {% block title "List Of Projects" %} {# {% block styles %} #} {% block newStyles %} {# {% endblock %} #} {% endblock %} {% block content %} {# {{ form(form) }} #} {#
List Of Projects
{% for project in pagination %} {% set pid = project.getId() %} {% if pjt is not null %} {% set selId = pjt.getId() %} {% else %} {% set selId = 0 %} {% endif %} {{ project.getName() }}
{{ project.getModeLabel() }}
{% else %} There are no projects under this organization.
Create {% endfor %}
{{ knp_pagination_render(pagination) }}
#}

List of Projects

Add Project {{ form(form) }}
{% if organtype == constant('\\Alsuite\\AssetsBundle\\Interfaces\\Constants::ORGAN_TYPE_FRONTLINE') %} {% else %} {% endif %} {{ knp_pagination_render(pagination) }} {% for project in pagination %} {% set id = project.id %} {% if organtype == constant('\\Alsuite\\AssetsBundle\\Interfaces\\Constants::ORGAN_TYPE_FRONTLINE') %} {% else %} {% endif %} {% else %} {% endfor %}
Project TitleModeClientProject TitleCountry BudgetReferenceDeadline Internal DeadlineStatus
{{ project.name }}{{ project.getClientDetails() }} {{ project.name }} {{ project.getCountryName() }} {{ project.currency ~ ' ' ~ project.getBudget()|number_format }} {{ project.notes }} {% if project.extDeadline is not null %} {{ project.extDeadline|date(date_format) }} {% endif %} {% if project.intDeadline is not null %} {{ project.intDeadline|date(date_format) }} {% endif %} {{ project.getModeLabel() }} View Delete
There are no projects under this organization.
{% endblock %} {#
Project Details
{% if pjt is not null %} {% set id = pjt.getId() %} {% set projectCurrency = pjt.currency %} {{ pjt.getName() }}
Period {{ pjt.getStartsOn|date(date_format) ~ ' to ' ~ pjt.getEndsOn|date(date_format) }}
Currency{{ projectCurrency }}
Exchange Rate{{ pjt.exchangeRate|number_format(2) }}
Mode of Operation{{ pjt.getModeLabel() }}
{% for id, detail in data %} {% endfor %}
Expected vs Received
ClientExpected ({{ projectCurrency }}) Received ({{ projectCurrency }}) Balance ({{ projectCurrency }})
{{ detail.name }} {{ detail.exp|number_format(2) }} {{ detail.rec|number_format(2) }} {{ detail.bal|number_format(2) }}
{{ include('AlsuiteFinanceBundle:Project:del.html.twig', {'id': id, 'action': 'Delete', 'object': 'Project', 'route': path('project_del', {'id': id})}) }}
{% if organtype == constant('\\Alsuite\\AssetsBundle\\Interfaces\\Constants::ORGAN_TYPE_FRONTLINE') %}
Add
{% for fundsExpected in pjt.getFundsExpected() %} {% set fid = fundsExpected.id %} {% else %} {% endfor %}
ClientTotal Expected ({{ projectCurrency }})NotesDue DateActions
{{ fundsExpected.client.getName() }} {{ fundsExpected.amount|number_format(2) }} {{ fundsExpected.notes }}{{ fundsExpected.dueDate|date(date_format) }} Edit Delete {{ include('AlsuiteFinanceBundle:Project:delFundsExpected.html.twig', {'id': fid, 'action': 'Delete', 'object': 'Funds Expected', 'route': path('funds_expected_del', {'id': fid}), 'modal': 'fundsExp'}) }}
No funds expected records have been added yet.
Add
{% for invoice in pjt.getInvoices() %} {% set invId = invoice.id %} {% else %} {% endfor %}
ClientDue Date Amount ({{ projectCurrency }}) Paid ({{ projectCurrency }})Status Terms & NotesActions
{{ invoice.client.getName() }} {{ invoice.dueDate|date(date_format) }} {{ invoice.getTotalAmountWithTaxes()|number_format(2) }} {{ invoice.getTotalAmountPaid()|number_format(2) }} {{ invoice.getStatusLabel() }} {% if invoice.terms is not null %} {{ invoice.terms }}

{% endif %} {{ invoice.notes }}
View {#Edit Delete {{ include('AlsuiteFinanceBundle:Invoice:delete.html.twig', {'id': invId, 'action': 'Delete', 'object': 'Invoice', 'route': path('invoice_delete', {'id': invId}), 'modal': 'invoice'}) }}#} {#
No invoices have been created yet.
{% for contributor in pjt.getContributors() %} {% set cid = contributor.getId() %} {% else %} {% endfor %}
ClientReceived OnAmount ({{ currency }})Actions
{{ contributor.getDonor().getName() }} {{ contributor.getReceivedOn()|date(date_format) }} {{ contributor.getAmount()|number_format(2) }} Edit Delete {{ include('AlsuiteFinanceBundle:Project:delContributor.html.twig', {'id': cid, 'action': 'Delete', 'object': 'contributor', 'route': path('contributor_del', {'id': cid}), 'modal': 'client'}) }}
No funds receipt records have been added yet.
Add
{% for budget in pjt.getBudgets() %} {% set bid = budget.getId() %} {% else %} {% endfor %}
Start DateEnd DateStatusAmountActions
{{ budget.getStartsOn()|date(date_format) }} {{ budget.getEndsOn()|date(date_format) }} {{ budget.getStatus() }} {{ currency }} {{ budget.getAmount()|number_format(2) }} Edit Delete {{ include('AlsuiteFinanceBundle:Budget:del.html.twig', {'id': bid, 'action': 'Delete', 'object': 'budget', 'route': path('budget_del', {'id': bid}),'modal': 'budget'}) }}
No budgets have been created under this project yet.
{% else %}
Add
{% for position in pjt.positions %}
Edit Delete Search & Add Experts {{ include(prompt_template, {'id': position.id, 'action': 'Delete', 'object': 'Project Position', 'route': path('project_position_delete', {'id': position.id}),'modal': 'position'}) }}
{{ position.title }}

{{ position.details }}

{% for linked in position.experts %} {% set expert = linked.expert %}
Change Status Delete Add Note Send an Email {{ include(prompt_template, {'id': linked.id, 'action': 'Delete', 'object': 'Project Position Expert', 'route': path('project_position_expert_delete', {'id': linked.id}),'modal': 'expert'}) }}

{{ expert.fullname ~ ' (' ~ linked.getStatusLabel() ~ ')' }}

{% for com in linked.coms %} {% else %} {% endfor %}
{% if com.isANote() %} {{ com.details }}
{% else %} {{ com.details|raw }} {% endif %} By {{ com.addedBy.fullname }} on {{ com.addedOn|date(date_format) }}
There are no updates.
{% else %} There are no experts linked to this position yet. {% endfor %}
{% else %} There are no positions highlighted under this project yet. {% endfor %}
{% endif %}
{% else %} Please click on a project in the left panel to view its details here. {% endif %}
#} {# {% endblock %} #} {% block javascripts %} {{ form_javascript(form) }} {% endblock %}