pidgin/pidgin
Clone
Summary
Browse
Changes
Graph
More error logging, please.
release-2.x.y
2014-01-18, Mark Doliner
956f247148db
More error logging, please.
use
Purple
;
%PLUGIN_INFO
=
(
perl_api_version
=>
2
,
name
=>
"Countdown Info Timer"
,
version
=>
"0.1"
,
summary
=>
"Makes a countdown in days from today."
,
description
=>
"Long description coming...."
,
author
=>
"John H. Kelm <johnhkelm\@gmail.com>"
,
url
=>
"http://pidgin.im"
,
load
=>
"plugin_load"
,
unload
=>
"plugin_unload"
);
$GLOBAL_TEST_VAR
=
"STUFF!"
;
sub
plugin_unload
{
my
$plugin
=
shift
;
}
sub
plugin_init
{
return
%PLUGIN_INFO
;
}
sub
plugin_load
{
my
$plugin
=
shift
;
# Retrieve all the accounts
@accounts
=
Purple::Accounts::
get_all
();
print
"NUM OF ACCS: "
.
$accounts
.
"\n"
;
# Search each account's user info for our tag
foreach
$acc
(
@accounts
)
{
print
"IN ACCOUNTS\n"
;
$user_info
=
$acc
->
get_user_info
();
print
"USER INFO 1: "
.
$user_info
.
"\n"
;
# Find <countdown> and replace
$user_info
=~
/countdown([0-9]+).([0-9]+).([0-9]+)/
;
print
"Found: "
.
$1
.
" "
.
$2
.
" "
.
$3
.
"\n"
;
$days
=
count_days
(
$1
,
$2
,
$3
);
$user_info
=~
s/countdown(\d\d\d\d).(\d\d).(\d\d)/$days/
;
print
"USER INFO 2: "
.
$user_info
.
"\n"
;
# $acc->set_user_info($user_info);
}
eval
'
use Gtk2 \'-init\';
use Glib;
$window = Gtk2::Window->new(\'toplevel\');
$window->set_border_width(10);
$button = Gtk2::Button->new("Hello World");
$button->signal_connect(clicked => \&hello, $window);
$window->add($button);
$button->show;
$window->show;
# Gtk2->main;
0;
'
;
warn
$@
if
$@
;
}
sub
hello
{
my
(
$widget
,
$window
)
=
@_
;
print
"Called from sub hello!\n "
;
print
"Test var: "
.
$GLOBAL_TEST_VAR
.
" \n"
;
@accounts
=
Purple::Accounts::
get_all
();
$acc
=
$accounts
[
0
];
$user_info
=
$acc
->
get_user_info
();
print
"USER INFO from sub hello: "
.
$user_info
.
"\n"
;
$window
->
destroy
;
}
sub
count_days
{
(
$year
,
$month
,
$day
)
=
@_
;
eval
'
use Time::Local;
$future = timelocal(0,0,0,$day,$month-1,$year);
'
;
warn
$@
if
$@
;
$today
=
time
();
$days
=
int
((
$future
-
$today
)
/
(
60
*
60
*
24
));
return
$days
;
}