#!/usr/bin/perl -w
# Petit script permettant de convertir les données issues du CSA en
# fichier ini, compatible avec PTVM
#
# Copyright 2008 lolo_32

# On ouvre les données
open FICHIER,"< can.dat" or die "Fichier non présent";
open ECRIRE,"> can.ini" or die "Fichier non présent";

# Parcourt du fichier (lecture ligne à ligne)
my $ville = "";
my %tab;
while ($ligne = <FICHIER>) {
	chomp $ligne;
	if ($ligne =~ /\d[a-z]? ([A-Z 'ةباہآشتث-]+\d*) ([A-Z][a-zA-Zéèçàâôêë '-]+) \d+ .+ (\d+ )[A-Z] .*(R\d)/) {
		$ville = ucfirst lc $1;
		$tab{"$ville - $2  --  $4"} = $3;
	} else { if ($ligne =~ /\d[a-z]? ([A-Z 'ةباہآشتث-]+\d*) ([A-Z][a-zA-Zéèçàâôêë '-]+) (\d+ )[A-Z] .*(R\d)/) {
		$ville = ucfirst lc $1;
		$tab{"$ville - $2  --  $4"} = $3;
	} else {
		print "$ligne\n";
	}}
}

# Fermeture du fichier
close FICHIER

my $last = 0;
$ville = "";
foreach $key(sort keys %tab) {
	$key =~ /(.+)  --  (R\d)/;
	if ($ville ne $1) {
		print ECRIRE "Offset=167\r\n\r\n";
		print ECRIRE "[$1]\r\n";
	}
	if (($last eq "R4") && ($2 eq "R6")) {
		print ECRIRE "R5=0\r\n";
	}
	my $val = $tab{$key} + 0;
	print ECRIRE "$2=". $val ."\r\n";

	$ville = $1;
	$last = $2;
}

