added pdfs

This commit is contained in:
Adrian Hinz 2022-03-29 17:38:54 +02:00
parent ccd8a358ed
commit 50362ddcb8
12 changed files with 288 additions and 11 deletions

View File

@ -25,6 +25,12 @@ class HomeController < ApplicationController
def show
@dotation = Dotation.friendly.find(params[:id])
@company_sizes = CompanySize.all
respond_to do |format|
format.html
format.pdf do
render pdf: @dotation.safe_id # Excluding ".pdf" extension.
end
end
end
def emailfilter
@ -38,7 +44,15 @@ class HomeController < ApplicationController
end
def prepare_pdf
filters = JSON.parse(cookies[:filter]).transform_keys(&:to_sym)
@company_sizes = CompanySize.all
@dotations = Dotation.search_with_filters(filters).public_dot
.point_desc.end_date_asc
respond_to do |format|
format.pdf do
render pdf: "zestawienie_dotacji_#{Time.now.strftime('%d%m%Y')}"
end
end
end
private

View File

@ -0,0 +1,15 @@
<div class="row">
<div class="col-md-12">
<%= image_tag expert.avatar, height: 150 %>
</div>
</div>
<div class="row">
<div class="col-md-12">
<strong><%= expert.name %></strong>
</div>
</div>
<div class="row">
<div class="col-md-12">
<%= expert.description %>
</div>
</div>

View File

@ -36,7 +36,7 @@
</div>
</div>
<% end %>
<% unless dotation.max_amount.blank? %>
<% unless dotation.max_percent.blank? %>
<div class="row">
<div class="col-sm-6">
<h5><strong>Poziom dofinansowania</strong></h5>

View File

@ -0,0 +1,51 @@
<table style="width: 100% ">
<thead>
<tr><th colspan="2"><strong><%= dotation.name %></strong></th></tr>
<tr>
<th colspan="2"><%= dotation.formal_name %></th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>Składanie wniosków</strong></td>
<td>od <%= dotation.start_date.strftime("%d-%m-%Y") %> do <%= dotation.end_date.strftime("%d-%m-%Y") %></td>
</tr>
<tr>
<td>Lokalizacja: </td>
<td><strong><%= dotation.localization %></strong></td>
</tr>
<% unless dotation.max_amount.blank? %>
<tr>
<td>
<strong>Wartość projektu </strong>
</td>
<td>
do <%= change_ammount(dotation.max_amount) %> <%= dotation.max_amount_curr.name %>
</td>
</tr>
<% end %>
<% unless dotation.max_percent.blank? %>,
<tr>
<td><strong>Poziom dofinansowania</strong></td>
<td>do <%= dotation.max_percent %>% dotacji</td>
</tr>
<% end %>
<% unless dotation.expenses.blank? %>
<tr>
<td><strong>Co można dofinansować? </strong></td>
<td>
<% max_expense = dotation.expenses.count %>
<% dotation.expenses.limit(5).each_with_index do |expense, index| %>
<%= expense.name %>
<% if index < max_expense - 1 && index < 4 %>
<%= ', ' -%>
<% elsif max_expense > 5 %>
<%= '...' -%>
<% end %>
<% end %>
</td>
</tr>
<% end %>
</tbody>
</table>

View File

@ -2,11 +2,16 @@
<div class="card card-success card-outline">
<div class="card-header">
<h3 class="card-title" style="font-size: 1.5rem;"><strong>Aktywne filtry</strong></h3>
<div class="card-tools">
<!-- <h3><span class="badge badge-info"><%= @dotations.count %></span></h3> -->
</div>
</div>
<div class="card-body">
<% unless params[:search].blank? %>
<div class="row">
<div class="col-md-12">
<%= link_to raw('<i class="fa fa-file-pdf"></i> Zapisz jako PDF'), "/zestawienie_dotacji/plik.pdf", class: 'btn btn-success btn-block' %>
</div>
</div>
<br />
<% end %>
<div class="row">
<div class="col-md-12">
<p><strong>Wyszukiwana fraza:</strong><br />

View File

@ -0,0 +1,129 @@
<div class="row">
<div class="col-md-12">
<h3><%= dotation.formal_name %></h3>
</div>
</div>
<div class="row">
<div class="col-md-12">
<br />
</div>
</div>
<% if !dotation.expert_id.blank? && !dotation.expert_info.blank? %>
<div class="row">
<div class="col-md-12">
<table class="table table-bordered">
<thead>
<tr><th colspan="2">Subiektywna opinia eksperta</th></tr>
</thead>
<tbody>
<tr>
<td>
<%= render '/experts/expert_show', expert: dotation.expert %>
</td>
<td><%= raw dotation.expert_info %></td>
</tr>
</tbody>
</table>
</div>
</div>
<% end %>
<br />
<div class="row">
<div class="col-md-12">
<h3>Wielkość przedsiębiorstwa</h3>
</div>
</div>
<div class="row">
<div class="col-md-12">
<% @company_sizes.each do |company_size| %>
<% if dotation.company_sizes.include?(company_size) %>
<%= company_size.name %>&nbsp;&nbsp;
<% end %>
<% end %>
</div>
</div>
<hr />
<div class="row">
<div class="col-md-12">
<table class="table table-bordered">
<tbody>
<tr>
<td width="30%">
<b>Ogłoszenie aktualnego/najbliższego naboru</b>
</td>
<td><%= dotation.announcement_date.strftime("%Y-%m-%d") unless dotation.announcement_date.blank? %></td>
</tr>
<tr>
<td>
<b>Rozpoczęcie aktualnego/najbliższego naboru</b>
</td>
<td><%= dotation.start_date.strftime("%Y-%m-%d") unless dotation.start_date.blank? %></td>
</tr>
<tr>
<td>
<b>Zakończenie aktualnego/najbliższego naboru</b>
</td>
<td><%= dotation.end_date.strftime("%Y-%m-%d") unless dotation.end_date.blank? %></td>
</tr>
<tr>
<td>
<b>Co można dofinansować?</b>
</td>
<td>
<ul>
<% dotation.expenses.each do |expense| %>
<li><%= expense.name %></li>
<% end %>
</ul>
</td>
</tr>
<tr>
<td>
<b>Miejsce realizacji projektu</b>
</td>
<td><%= dotation.localization %></td>
</tr>
<tr>
<td>
<b>Minimalna wartość projektu (wydatków)</b>
</td>
<td><%= change_ammount(dotation.min_amount) %> <%= dotation.min_amount_curr.name %></td>
</tr>
<tr>
<td>
<b>Maksymalna wartość projektu (wydatków)</b>
</td>
<td><%= change_ammount(dotation.max_amount) %> <%= dotation.max_amount_curr.name %></td>
</tr>
</tbody>
</table>
</div>
</div>
<hr />
<div class="row">
<div class="col-md-12">
<h3>Szczegółowy opis dotacji</h3>
</div>
</div>
<div class="row">
<div class="col-md-12">
<%= raw dotation.full_descr %>
</div>
</div>
<hr />
<div class="row">
<div class="col-md-12">
<%= raw dotation.positioning_text %>
</div>
</div>
<hr />
<div class="row">
<div class="col-md-12">
<h3>Pomoc w opracowaniu wniosku komu można zlecić opracowanie dokumentów do tego konkursu</h3>
</div>
</div>
<div class="row">
<div class="col-md-12">
<%= render '/partners/partner_show', partner: dotation.partner %>
</div>
</div>

View File

@ -0,0 +1,23 @@
<!doctype html>
<html>
<head>
<meta charset='utf-8' />
</head>
<body onload='number_pages'>
<div id="content">
<h2>Zestawienie dotacji</h2>
<% @dotations.each do |dotation| %>
<div>
<%= render 'dotation_card', dotation: dotation %>
<hr />
</div>
<% end %>
<% @dotations.each do |dotation| %>
<p style='page-break-after:always;'>
<h3 class="card-title" style="font-size: 1.9rem;"><strong><%= dotation.name %></strong></h3>
<%= render 'show', dotation: dotation %>
</p>
<% end %>
</div>
</body>
</html>

View File

@ -2,11 +2,15 @@
<div class="content-header">
<div class="container-fluid">
<div class="row mb-2">
<div class="col-sm-6">
<%= link_to 'Powrót do strony wyszukiwania', :back, class: 'btn btn-info' %>
<div class="col-sm-2"></div>
<div class="col-sm-4">
<%= link_to 'Powrót do strony wyszukiwania', '/', class: 'btn btn-info' %>
</div>
<div class="col-sm-4 ">
<%= link_to raw('<i class="fa fa-file-pdf"></i> Zapisz jako PDF'), "/dotacja/#{@dotation.safe_id}.pdf", class: 'btn btn-success float-right' %>
</div>
<!-- /.col -->
<div class="col-sm-6"></div>
<div class="col-sm-2"></div>
<!-- /.col -->
</div>
<!-- /.row -->
@ -17,7 +21,8 @@
<div class="content">
<div class="container-fluid">
<div class="row">
<div class="col-md-12">
<div class="col-md-2"></div>
<div class="col-md-8">
<div class="card card-primary card-outline">
<div class="card-header">
<h3 class="card-title" style="font-size: 1.9rem;"><strong><%= @dotation.name %></strong></h3>
@ -28,6 +33,7 @@
</div>
</div>
</div>
<div class="col-md-2"></div>
</div>
</div>
</div>

View File

@ -0,0 +1,14 @@
<!doctype html>
<html>
<head>
<meta charset='utf-8' />
<%= wicked_pdf_javascript_include_tag "number_pages" %>
</head>
<body onload='number_pages'>
<div id="content">
<h3 class="card-title" style="font-size: 1.9rem;"><strong><%= @dotation.name %></strong></h3>
<%= render 'show', dotation: @dotation %>
</div>
</body>
</html>

View File

@ -0,0 +1,19 @@
<table class="table table-bordered">
<tbody>
<tr>
<td>
<div class="row">
<div class="col-md-12">
<%= image_tag partner.logo, height: 40 %>
</div>
</div>
<div class="row">
<div class="col-md-12">
<strong><%= partner.name %></strong>
</div>
</div>
</td>
<td><%= raw partner.description %></td>
</tr>
</tbody>
</table>

View File

@ -14,8 +14,8 @@ WickedPdf.config = {
# exe_path: '/usr/local/bin/wkhtmltopdf',
# or
# exe_path: Gem.bin_path('wkhtmltopdf-binary', 'wkhtmltopdf')
exe_path: 'c:\Program Files\wkhtmltopdf\bin\wkhtmltopdf.exe'
# exe_path: '/usr/bin/wkhtmltopdf'
# exe_path: 'c:\Program Files\wkhtmltopdf\bin\wkhtmltopdf.exe'
exe_path: '/usr/bin/wkhtmltopdf'
# Layout file to be used for all PDFs
# (but can be overridden in `render :pdf` calls)
# layout: 'pdf.html',

View File

@ -3,6 +3,7 @@ Rails.application.routes.draw do
get 'email_filter/unsubscribe'
get 'kontakt' => 'home#contact'
get 'dotacja/:id' => 'home#show'
get 'zestawienie_dotacji/plik' => 'home#prepare_pdf'
get 'home/search'
post 'home/search'
post 'home/emailfilter'