Akce
Úkol #43769
otevřenýNsazení pirátské kalkulačky
Začátek:
19.01.2024
Uzavřít do:
% Hotovo:
80%
Odhadovaná doba:
Smlouva:
Popis
Ahoj,
prosím o zahájení kroků k implementaci a nasazení pirátské kalkulačky
aplikace : https://github.com/michalskop/kalkulacka.one
Je to velice jednoduchá aplikace, neukládá data.
Data se tam dostávají v JSONu , který se tvoří exportem z csv
Akce
#2
Aktualizováno uživatelem Josef Bouše před 11 měsíc(ů)
Hodil bych to na doménu: kalkulacka.pirati.cz ,
poté to zařadíme do tools.pirati.cz
V budoucnu je možný vývoj směrem k lepší administraci dat, kalkulaček nebo anonymní sběr dat, ale to není aktuálně předmětem.
Akce
#3
Aktualizováno uživatelem Andrej Ramašeuski před 11 měsíc(ů)
- Stav změněn z Nový na V řešení (diskutuje se)
Akce
#5
Aktualizováno uživatelem Andrej Ramašeuski před 11 měsíc(ů)
- % Hotovo změněn z 10 na 80
V gitlabu je to tady https://gitlab.pirati.cz/to/kalkulacka
Je nastaveny standartni pipeline pro nuxt2 projekty
a je to tady https://kalkulacka.pirati.cz/
Akce
#6
Aktualizováno uživatelem Andrej Ramašeuski před 7 měsíc(ů)
#!/usr/bin/perl
use strict;
use warnings;
use Text::CSV qw( csv );
use JSON;
my $data = csv (in => $ARGV[0],
sep_char => ';',
decode_utf8 => 0,
);
my $map;
my $col = 0;
HEADER:
foreach my $header (@{ $data->[0] }) {
if ($header =~ /(\d+)$/) {
my $id = $1 - 1;
$map->{$id} = $col - 1;
}
$col++;
}
my @answers;
ANSWER:
foreach my $row (@{ $data }) {
next ANSWER if $row->[0] !~ /\d+/;
my $answer = {
id => $row->[0],
slug => $row->[0],
name => $row->[2],
familyName => $row->[2],
votes => {},
comments => {},
};
$answer->{familyName} =~ s/^\w+\s+//;
QUESTION:
foreach my $id (keys %{ $map } ) {
my $vote = 0;
$vote = 1 if $row->[ $map->{$id} ] eq 'ANO';
$vote = -1 if $row->[ $map->{$id} ] eq 'NE';
$answer->{votes}{$id} = $vote;
$answer->{comments}{$id} = $row->[ $map->{$id} + 1 ];
}
push @answers, $answer;
}
print to_json(\@answers, {pretty => 1, canonical => 1});
Akce