use XML::Simple;
use Data::Dumper;
use File::Spec;
+use File::Temp qw(tempfile);
use BettIrssi 101 qw(_bcb _bcs);
use LWP::UserAgent;
my $s = shift;
my $os = '';
my @urlshortener = (
+ 'is\.gd/[[:alnum:]]+',
+ 'otf\.me/[[:alnum:]]+',
'hel\.me/[[:alnum:]]+',
'7ax\.de/[[:alnum:]]+',
'ow\.ly/[[:alnum:]]+',
'j\.mp/[[:alnum:]]+',
'bit\.ly/[[:alnum:]]+',
'tinyurl\.com/[[:alnum:]]+',
+ 'pop\.is/[[:alnum:]]+',
+ 'post\.ly/[[:alnum:]]+',
+ '1\.ly/[[:alnum:]]+',
+ '2\.ly/[[:alnum:]]+',
+ 't\.co/[[:alnum:]]+',
+ 'shar\.es/[[:alnum:]]+',
+ 'goo\.gl/[[:alnum:]]+',
);
my $ua = LWP::UserAgent->new(agent => 'Mozilla', max_redirect => 0);
- my $i = 100;
+ my $i = 10;
OUTER: while (($os ne $s) and ($i > 0)) {
+ study($s);
$os = $s;
$i--;
sub cmd_save {
+
eval {
- open(CONF, '>'.$conffile) or die 'Could not open config file';
- print CONF XML::Simple::XMLout($conf, KeepRoot => 1, KeyAttr => {'config' => 'module', 'option' => 'key'});
- close(CONF);
+ my ($tempfile, $tempfn) = tempfile("videosite.xml.XXXXXX", dir => Irssi::get_irssi_dir());
+ print $tempfile XML::Simple::XMLout($conf, KeepRoot => 1, KeyAttr => {'config' => 'module', 'option' => 'key'});
+ close($tempfile);
+ rename($tempfn, $conffile);
};
if ($@) {
write_irssi('Could not save config to %s: %s', ($conffile, $@));