X-Git-Url: http://git.claws-mail.org/?p=claws.git;a=blobdiff_plain;f=tools%2Ffilter_conv_new.pl;h=93c9536079d92e2d17b07059b1b50aa053623a47;hp=b63ef35c17d71f048a2fcb3a259b26f27083000c;hb=6cfbbaace2470a77df89206515d9dba9e6686f4e;hpb=884c7f20f0c4843d842e5b83e98dbbd3ccec722c diff --git a/tools/filter_conv_new.pl b/tools/filter_conv_new.pl index b63ef35c1..93c953607 100644 --- a/tools/filter_conv_new.pl +++ b/tools/filter_conv_new.pl @@ -1,6 +1,7 @@ #!/usr/bin/perl -w use strict; +use XML::SimpleObject; # * This file is free software; you can redistribute it and/or modify it # * under the terms of the GNU General Public License as published by @@ -75,8 +76,6 @@ use strict; # stop-eval : stop # -use XML::SimpleObject; - my $old_config = "$ENV{HOME}/.sylpheed-2.0/filter.xml"; my $older_config = "$ENV{HOME}/.sylpheed/filter.xml"; my $old_filters; @@ -98,6 +97,16 @@ if (-e $old_config) { exit; } +my $claws_version = `sylpheed-claws --version`; +$claws_version =~ s/^Sylpheed-Claws version //; + +my ($major, $minor) = split(/\./, $claws_version); + +my $version_test = 0; +if ($major > 2 || ($major == 2 && $minor >= 3)) { + $version_test = 1; +} + my $parser = XML::Parser->new(ErrorContext => 2, Style => "Tree"); my $xmlobj = XML::SimpleObject->new($parser->parsefile($old_filters)); @@ -119,17 +128,23 @@ my $bool; ## rules list foreach my $element ($xmlobj->child("filter")->children("rule")) { - my $new_filter; + my $new_filter = "\n"; + if ($element->attribute("enabled")) { + if ($element->attribute("enabled") eq "false") { + if ($version_test) { + $new_filter .= "disabled "; + } else { + $disabled++; + next; # skip disabled rules + } + } elsif ($version_test) { + $new_filter .= "enabled "; + } + } if ($element->attribute("name")) { my $name = $element->attribute("name"); $name = clean_me($name); - $new_filter = "\nrulename \"$name\" "; - } - if ($element->attribute("enabled")) { - if ($element->attribute("enabled") eq "false") { - $disabled++; - next; # skip disabled rules - } + $new_filter .= "rulename \"$name\" "; } ## condition list foreach my $parent ($element->children("condition-list")) {