]> git.zerfleddert.de Git - snom-frontend/blobdiff - snom.pl
better purging
[snom-frontend] / snom.pl
diff --git a/snom.pl b/snom.pl
index 673dffa3cdcd9d83744a10c4b9d3c1c86935f4d2..9205a57f868bfdbcf4fc381f5120fff849d7f1ef 100755 (executable)
--- a/snom.pl
+++ b/snom.pl
@@ -1,5 +1,5 @@
 #!/bin/sh
-#$Id: snom.pl,v 1.29 2006-05-22 11:47:37 michael Exp $
+#$Id: snom.pl,v 1.37 2006-05-22 12:22:00 michael Exp $
 
 # http://developer.gnome.org/doc/API/2.2/gtk/gtk-migrating-GtkComboBox.html
 
@@ -57,6 +57,7 @@ $g_host->set_active(0);
 UpdatePhoneInfo();
 $g_host->signal_connect(changed => \&UpdatePhoneInfo);
 $g_host->show();
+$g_host->signal_connect(changed => \&SwitchIdentity);
 $g_identity->show();
 
 set_locale Gtk2;
@@ -351,9 +352,30 @@ sub KBDInput
 
 sub UpdatePhoneInfo
 {
-       print "TODO: Update PhoneInfo from <".${$Config{$sections[$g_host->get_active]}}{host}."> here!\n";
-       $g_identity->append_text("\@line1");
+       my $req = HTTP::Request->new(GET => "http://".${$Config{$sections[$g_host->get_active]}}{host}."/");
+       my $response = $ua->request($req);
+       
        $g_identity->set_active(0);
+       while($g_identity->get_active() == 0) {
+               $g_identity->remove_text(0);
+               $g_identity->set_active(0);
+       }
+       my @lines=split("\n", $response->content());
+       foreach (@lines) {
+               chomp;
+               #<option value="1" selected>51@stargate.gernoth.loc</option>
+               #<option value="2">89@asterix.ear-projekt.de</option>
+               #<option value="3">41@grumpy.gernoth.loc</option>
+               if (m/^\<option value=\"(.+)\"( selected)?\>([^<]*)\<\/option\>$/) {
+                       $g_identity->append_text("${3}");
+                       $g_identity->set_active(${1}-1) if(defined($2));
+               }
+       }
+}
+
+sub SwitchIdentity
+{
+       print "TODO: Switch Identity on <".${$Config{$sections[$g_host->get_active]}}{host}."> to ".$g_identity->get_active."!\n";
 }
 
 sub CloseAppWindow
Impressum, Datenschutz