Skip to content
Snippets Groups Projects
Commit 93dabf73 authored by Frank Duncan's avatar Frank Duncan
Browse files

Add GFCLFCAnalysis and GFCExploreTable templates

parent b8248060
No related branches found
No related tags found
No related merge requests found
<div id="torque-explore--table-view">
{%- set top_proposals = [] %}
{%- set wildcard_proposals = [] %}
{%- set other_proposals = [] %}
{%- for proposal in proposal_data %}
{%- if "Achievement Level" in proposal %}
{%- if "Wildcard" in proposal["Achievement Level"] %}
{{- '' if wildcard_proposals.append(proposal) }}
{%- elif "Top Proposal" in proposal["Achievement Level"] %}
{{- '' if top_proposals.append(proposal) }}
{%- else %}
{{- '' if other_proposals.append(proposal) }}
{%- endif %}
{%- endif %}
{%- endfor %}
{%- macro proposal_table(proposals, table_name) %}
{% if proposals %}
<h2>{{table_name}}</h2>
<table class="ots--table" cellpadding="0" cellspacing="0">
<colgroup>
<col style="width:auto">
<col style="width:auto">
<col style="width:auto">
<col style="width:auto">
<col style="width:auto;max-width:30%">
<col style="width:auto">
</colgroup>
<thead>
<tr>
<th>Rank</th>
<th>Organization Name</th>
<th>Organization Location</th>
<th>Project Category</th>
<th>Tags</th>
</tr>
</thead>
<tbody>
{%- for proposal in proposals %}
<tr>
<td>{{proposal["Rank"]}}</td>
<td><a href="/GFC2024/index.php/{{proposal["MediaWiki Title"]}}">{{proposal["Organization Name"]}}</a></td>
<td>{{proposal["Organization Location"]["City"]}}, {{proposal["Organization Location"]["State/Province"]}}</td>
<td>
{%- set categories = [] %}
{%- for category in proposal['Project Category']['Selection'] -%}
{%- if category == 'My project addresses the Future of Environmental Change along the Gulf Coast.' %}
{{- '' if categories.append("Environmental Change") }}
{%- elif category == 'My project addresses the Future of Healthy and Resilient Communities in the Gulf.' -%}
{{- '' if categories.append("Healthy and Resilitent Communities") }}
{%- elif category == 'My project addresses the Future of the Energy Transition.' -%}
{{- '' if categories.append("Energy Transition") }}
{%- else -%}
{{- '' if categories.append(category)}}
{% endif -%}
{% endfor -%}
{{ categories | join(", ") }}
</td>
<td>{{proposal["Tags"] | join(", ")}}</td>
</tr>
{%- endfor %}
</tbody>
</table>
{%- endif %}
{%- endmacro %}
{{ proposal_table(top_proposals, "Top Proposals") }}
{{ proposal_table(wildcard_proposals, "Wildcards") }}
{{ proposal_table(other_proposals, "Other") }}
<div class="proposal-body">
<div class="proposal-content proposal-analysis">
<div class="proposal-analysis--logos">
<img src="/GFC2024/images/d/d4/LeverForChange_Logo.svg" class="proposal-analysis--logo--lfc" height="70" alt="Lever For Change logo">
<img src="/GFC2024/images/3/31/GFC2024_Logo.png" class="proposal-analysis--logo--competition" height="70" alt="GFC logo">
</div>
<div class="proposal-analysis--preflight">
<div class="proposal-analysis--preflight--organization">Organization: {{proposal["Organization Name"]}}</div>
<div class="proposal-analysis--preflight--spread-row">
<div>Evaluation Panel Score: <b>{{proposal["Panel Score"]["LFC Normalized"]}}</b></div>
<div>Evaluation Panel Rank: <b>{{proposal["Panel Rank"]["LFC Normalized"]}}</b></div>
</div>
<div class="proposal-analysis--preflight--spread-row">
<div>Participatory Review Score: <b>{{proposal["Peer Score"]["LFC Normalized"]}}</b></div>
<div>Participatory Review Rank: <b>{{proposal["Peer Rank"]["LFC Normalized"]}}</b></div>
</div>
</div>
<div class="proposal-analysis--project-details">
<div class="proposal-analysis--section">
<div class="proposal-analysis--section-header">
<div class="proposal-analysis--section-header-title">Project Title</div>
</div>
<div class="proposal-analysis--section-body">{{ proposal['Project Title'] }} ({{ proposal['Application #'] }})</div>
</div>
<div class="proposal-analysis--section">
<div class="proposal-analysis--section-header">
<div class="proposal-analysis--section-header-title">One-Sentence Description</div>
<div class="proposal-analysis--section-header-actions">
<button class="lfc--button small torque-edit-button" data-type="line" data-field="LFC Analysis||One Sentence Description">Edit</button>
</div>
</div>
<div class="proposal-analysis--section-body">
{{ proposal['LFC Analysis']['One Sentence Description'] }}
</div>
</div>
<div class="proposal-analysis--section">
<div class="proposal-analysis--section-header">
<div class="proposal-analysis--section-header-title">Project Location</div>
<div class="proposal-analysis--section-header-actions">
<button class="lfc--button small torque-edit-button" data-type="line" data-field="LFC Analysis||Project Location">Edit</button>
</div>
</div>
<div class="proposal-analysis--section-body">
{{ proposal['LFC Analysis']['Project Location'] }}
</div>
</div>
<div class="proposal-analysis--section">
<div class="proposal-analysis--section-header">
<div class="proposal-analysis--section-header-title">Lead Organization Type</div>
</div>
<div class="proposal-analysis--section-body">
{% if proposal['Organization Legal Status'] == 'An entity under section 501(c)(3) and 509(a)(1) or (2) of the IRC' %}
Nonprofit Organization, 501(c)(3)
{% elif proposal['Organization Legal Status'] == 'An entity under section 501(c)(4) of the IRC ' %}
Advocacy Organization, 501(c)(4)
{% elif proposal['Organization Legal Status'] == 'A private foundation under section 501(c)(3) of the IRC' %}
Private Foundation, 501(c)(3)
{% else %}
{{ proposal['Organization Legal Status'] }}
{% endif %}
</div>
</div>
</div>
<div class="proposal-analysis--main">
<h2 class="proposal-analysis--main-header">Lever for Change Insights</h2>
<div class="proposal-analysis--section">
<div class="proposal-analysis--section-header">
<div class="proposal-analysis--section-header-title">The Challenge</div>
<div class="proposal-analysis--section-header-actions">
<button class="lfc--button small torque-edit-button" data-type="callback" data-callback="LFCTheme.inlineMarkdown" data-field="LFC Analysis||The Challenge">Edit</button>
</div>
</div>
<div class="proposal-analysis--section-body">
<div class="lfc-theme--torque-markdown-section" data-field="LFC Analysis||The Challenge">
<div class="lfc-theme--torque-markdown-section--display">
{%- set default_value = "" -%}
{%- if proposal['LFC Analysis']['The Challenge'] -%}
{{ convert_md_to_html(proposal['LFC Analysis']['The Challenge']) }}
{%- else -%}
{{ convert_md_to_html(default_value) }}
{%- endif -%}
</div>
<pre class="lfc-theme--torque-markdown-section--default-value">
{{default_value | replace("\n", "_CR_")}}
</pre>
<div class="lfc-theme--torque-markdown-section--edit">
</div>
</div>
</div>
</div>
<div class="proposal-analysis--section">
<div class="proposal-analysis--section-header">
<div class="proposal-analysis--section-header-title">The Solutions</div>
<div class="proposal-analysis--section-header-actions">
<button class="lfc--button small torque-edit-button" data-type="callback" data-callback="LFCTheme.inlineMarkdown" data-field="LFC Analysis||The Solutions">Edit</button>
</div>
</div>
<div class="proposal-analysis--section-body">
<div class="lfc-theme--torque-markdown-section" data-field="LFC Analysis||The Solutions">
<div class="lfc-theme--torque-markdown-section--display">
{%- set default_value = "" -%}
{%- if proposal['LFC Analysis']['The Solutions'] -%}
{{ convert_md_to_html(proposal['LFC Analysis']['The Solutions']) }}
{%- else -%}
{{ convert_md_to_html(default_value) }}
{%- endif -%}
</div>
<pre class="lfc-theme--torque-markdown-section--default-value">
{{default_value | replace("\n", "_CR_")}}
</pre>
<div class="lfc-theme--torque-markdown-section--edit">
</div>
</div>
</div>
</div>
<div class="proposal-analysis--section">
<div class="proposal-analysis--section-header">
<div class="proposal-analysis--section-header-title">Implementation Plan</div>
<div class="proposal-analysis--section-header-actions">
<button class="lfc--button small torque-edit-button" data-type="callback" data-callback="LFCTheme.inlineMarkdown" data-field="LFC Analysis||Implementation Plan">Edit</button>
</div>
</div>
<div class="proposal-analysis--section-body">
<div class="lfc-theme--torque-markdown-section" data-field="LFC Analysis||Implementation Plan">
<div class="lfc-theme--torque-markdown-section--display">
{%- set default_value = "" -%}
{%- if proposal['LFC Analysis']['Implementation Plan'] -%}
{{ convert_md_to_html(proposal['LFC Analysis']['Implementation Plan']) }}
{%- else -%}
{{ convert_md_to_html(default_value) }}
{%- endif -%}
</div>
<pre class="lfc-theme--torque-markdown-section--default-value">
{{default_value | replace("\n", "_CR_")}}
</pre>
<div class="lfc-theme--torque-markdown-section--edit">
</div>
</div>
</div>
</div>
<div class="proposal-analysis--section">
<div class="proposal-analysis--section-header">
<div class="proposal-analysis--section-header-title">Partnerships (if applicable)</div>
<div class="proposal-analysis--section-header-actions">
<button class="lfc--button small torque-edit-button" data-type="callback" data-callback="LFCTheme.inlineMarkdown" data-field="LFC Analysis||Partnerships">Edit</button>
</div>
</div>
<div class="proposal-analysis--section-body">
<div class="lfc-theme--torque-markdown-section" data-field="LFC Analysis||Partnerships">
<div class="lfc-theme--torque-markdown-section--display">
{%- set default_value = "" -%}
{%- if proposal['LFC Analysis']['Partnerships'] -%}
{{ convert_md_to_html(proposal['LFC Analysis']['Partnerships']) }}
{%- else -%}
{{ convert_md_to_html(default_value) }}
{%- endif -%}
</div>
<pre class="lfc-theme--torque-markdown-section--default-value">
{{default_value | replace("\n", "_CR_")}}
</pre>
<div class="lfc-theme--torque-markdown-section--edit">
</div>
</div>
</div>
</div>
<div class="proposal-analysis--section">
<div class="proposal-analysis--section-header">
<div class="proposal-analysis--section-header-title">Strength of Approach</div>
<div class="proposal-analysis--section-header-actions">
<button class="lfc--button small torque-edit-button" data-type="callback" data-callback="LFCTheme.inlineMarkdown" data-field="LFC Analysis||Strength of Approach">Edit</button>
</div>
</div>
<div class="proposal-analysis--section-body">
<div class="lfc-theme--torque-markdown-section" data-field="LFC Analysis||Strength of Approach">
<div class="lfc-theme--torque-markdown-section--display">
{%- set default_value = "" -%}
{%- if proposal['LFC Analysis']['Strength of Approach'] -%}
{{ convert_md_to_html(proposal['LFC Analysis']['Strength of Approach']) }}
{%- else -%}
{{ convert_md_to_html(default_value) }}
{%- endif -%}
</div>
<pre class="lfc-theme--torque-markdown-section--default-value">
{{default_value | replace("\n", "_CR_")}}
</pre>
<div class="lfc-theme--torque-markdown-section--edit">
</div>
</div>
</div>
</div>
<div class="proposal-analysis--section">
<div class="proposal-analysis--section-header">
<div class="proposal-analysis--section-header-title">Potential Challenges</div>
<div class="proposal-analysis--section-header-actions">
<button class="lfc--button small torque-edit-button" data-type="callback" data-callback="LFCTheme.inlineMarkdown" data-field="LFC Analysis||Potential Challenges">Edit</button>
</div>
</div>
<div class="proposal-analysis--section-body">
<div class="lfc-theme--torque-markdown-section" data-field="LFC Analysis||Potential Challenges">
<div class="lfc-theme--torque-markdown-section--display">
{%- set default_value = "" -%}
{%- if proposal['LFC Analysis']['Potential Challenges'] -%}
{{ convert_md_to_html(proposal['LFC Analysis']['Potential Challenges']) }}
{%- else -%}
{{ convert_md_to_html(default_value) }}
{%- endif -%}
</div>
<pre class="lfc-theme--torque-markdown-section--default-value">
{{default_value | replace("\n", "_CR_")}}
</pre>
<div class="lfc-theme--torque-markdown-section--edit">
</div>
</div>
</div>
</div>
<div class="proposal-analysis--section">
<div class="proposal-analysis--section-header">
<div class="proposal-analysis--section-header-title">Reputational Risks</div>
<div class="proposal-analysis--section-header-actions">
<button class="lfc--button small torque-edit-button" data-type="callback" data-callback="LFCTheme.inlineMarkdown" data-field="LFC Analysis||Reputational Risks">Edit</button>
</div>
</div>
<div class="proposal-analysis--section-body">
<div class="lfc-theme--torque-markdown-section" data-field="LFC Analysis||Reputational Risks">
<div class="lfc-theme--torque-markdown-section--display">
{%- set default_value = "" -%}
{%- if proposal['LFC Analysis']['Reputational Risks'] -%}
{{ convert_md_to_html(proposal['LFC Analysis']['Reputational Risks']) }}
{%- else -%}
{{ convert_md_to_html(default_value) }}
{%- endif -%}
</div>
<pre class="lfc-theme--torque-markdown-section--default-value">
{{default_value | replace("\n", "_CR_")}}
</pre>
<div class="lfc-theme--torque-markdown-section--edit">
</div>
</div>
</div>
</div>
</div>
<div class="proposal-analysis--main">
<h2 class="proposal-analysis--main-header">Gulf Research Program Insights</h2>
<div class="proposal-analysis--section">
<div class="proposal-analysis--section-header">
<div class="proposal-analysis--section-header-title">Science-Specific Feedback</div>
<div class="proposal-analysis--section-header-actions">
<button class="lfc--button small torque-edit-button" data-type="callback" data-callback="LFCTheme.inlineMarkdown" data-field="LFC Analysis||Science-Specific Feedback">Edit</button>
</div>
</div>
<div class="proposal-analysis--section-body">
<div class="lfc-theme--torque-markdown-section" data-field="LFC Analysis||Science-Specific Feedback">
<div class="lfc-theme--torque-markdown-section--display">
{%- set default_value = "" -%}
{%- if proposal['LFC Analysis']['Science-Specific Feedback'] -%}
{{ convert_md_to_html(proposal['LFC Analysis']['Science-Specific Feedback']) }}
{%- else -%}
{{ convert_md_to_html(default_value) }}
{%- endif -%}
</div>
<pre class="lfc-theme--torque-markdown-section--default-value">
{{default_value | replace("\n", "_CR_")}}
</pre>
<div class="lfc-theme--torque-markdown-section--edit">
</div>
</div>
</div>
</div>
<div class="proposal-analysis--section">
<div class="proposal-analysis--section-header">
<div class="proposal-analysis--section-header-title">Grantee Status</div>
<div class="proposal-analysis--section-header-actions">
<button class="lfc--button small torque-edit-button" data-type="callback" data-callback="LFCTheme.inlineMarkdown" data-field="LFC Analysis||Grantee Status">Edit</button>
</div>
</div>
<div class="proposal-analysis--section-body">
<div class="lfc-theme--torque-markdown-section" data-field="LFC Analysis||Grantee Status">
<div class="lfc-theme--torque-markdown-section--display">
{%- set default_value = "" -%}
{%- if proposal['LFC Analysis']['Grantee Status'] -%}
{{ convert_md_to_html(proposal['LFC Analysis']['Grantee Status']) }}
{%- else -%}
{{ convert_md_to_html(default_value) }}
{%- endif -%}
</div>
<pre class="lfc-theme--torque-markdown-section--default-value">
{{default_value | replace("\n", "_CR_")}}
</pre>
<div class="lfc-theme--torque-markdown-section--edit">
</div>
</div>
</div>
</div>
<div class="proposal-analysis--section">
<div class="proposal-analysis--section-header">
<div class="proposal-analysis--section-header-title">Alignment with GRP Grantmaking Approach</div>
<div class="proposal-analysis--section-header-actions">
<button class="lfc--button small torque-edit-button" data-type="callback" data-callback="LFCTheme.inlineMarkdown" data-field="LFC Analysis||Alignment with GRP Grantmaking Approach">Edit</button>
</div>
</div>
<div class="proposal-analysis--section-body">
<div class="lfc-theme--torque-markdown-section" data-field="LFC Analysis||Alignment with GRP Grantmaking Approach">
<div class="lfc-theme--torque-markdown-section--display">
{%- set default_value = "" -%}
{%- if proposal['LFC Analysis']['Alignment with GRP Grantmaking Approach'] -%}
{{ convert_md_to_html(proposal['LFC Analysis']['Alignment with GRP Grantmaking Approach']) }}
{%- else -%}
{{ convert_md_to_html(default_value) }}
{%- endif -%}
</div>
<pre class="lfc-theme--torque-markdown-section--default-value">
{{default_value | replace("\n", "_CR_")}}
</pre>
<div class="lfc-theme--torque-markdown-section--edit">
</div>
</div>
</div>
</div>
</div>
</div>
</div>
......@@ -11,15 +11,73 @@
regexp: ^\$wgLogos = [ '1x' => .* ];
line: $wgLogos = [ '1x' => "$wgResourceBasePath/resources/assets/GFC2024_Logo.png" ];
- name: Transfer GFC Proposal
- name: Transfer GFC Templates
copy:
src: GFCProposal
dest: "{{ mediawiki_install_directory }}/GFCProposal"
src: "{{ item }}"
dest: "{{ mediawiki_install_directory }}/{{ item }}"
loop:
- GFCProposal
- GFCLFCAnalysis
- GFCExploreTable
- name: Install GFC Proposal
raw: "php {{ mediawiki_install_directory }}/mediawiki-{{ mediawiki_version }}/maintenance/edit.php -b TorqueConfig:GFCProposal < {{ mediawiki_install_directory }}/GFCProposal"
- name: Install GFC Templates
raw: "php {{ mediawiki_install_directory }}/mediawiki-{{ mediawiki_version }}/maintenance/edit.php -b TorqueConfig:{{ item }} < {{ mediawiki_install_directory }}/{{ item }}"
loop:
- GFCProposal
- GFCLFCAnalysis
- GFCExploreTable
- name: Remove GFC Proposal
- name: Remove GFC Templates
file:
path: "{{ mediawiki_install_directory }}/GFCProposal"
path: "{{ mediawiki_install_directory }}/{{ item }}"
state: absent
loop:
- GFCProposal
- GFCLFCAnalysis
- GFCExploreTable
- name: Explore Setup
blockinfile:
path: "{{ mediawiki_install_directory }}/mediawiki-{{ mediawiki_version }}/LocalSettings.php"
marker: "## {mark} ANSIBLE EXPLORE CONFIG"
block: |
$wgTorquePrimaryFilters = [
"achievement_level",
"tags",
];
$wgTorqueFilterDefaults = [
"achievement_level" => ["Top Proposal", "Wildcard"],
];
$wgTorqueFilterGroups = [
[
"name" => "primary",
"filters" => [
"tags",
"achievement_level",
"organization_location",
]
],
];
$tdcOverrideMessage["torque-explore-filter-organization_location"] = "Filter by State";
- name: Install additional tab configurations
blockinfile:
path: "{{ mediawiki_install_directory }}/mediawiki-{{ mediawiki_version }}/LocalSettings.php"
marker: "## {mark} ANSIBLE ADDITIONAL TAB CONFIG"
block: |
$wgLFCExtraTabOverrides["FINALIST_CANDIDATE"] = function() {
global $wgUser;
if($wgUser->isSafeToLoad() && $wgUser->isAllowed("lfcanalysis")) {
return [
["", "Original Proposal"],
["Evaluations of ", "Evaluations"],
["LFC Analysis of ", "Analysis"],
];
} else {
return [
["", "Original Proposal"],
["Evaluations of ", "Evaluations"],
];
}
};
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment