diff --git a/sflphone-client-gnome/debian/changelog b/sflphone-client-gnome/debian/changelog
index 3dfa5853eda5b9919adbeed1e93ab338eef8b25f..d7f2215ec7af7ef67046cea14d591acdeff1f9a0 100644
--- a/sflphone-client-gnome/debian/changelog
+++ b/sflphone-client-gnome/debian/changelog
@@ -1,83 +1,114 @@
-sflphone-client-gnome (0.9.5-0ubuntu1~3.gbp20b188) SYSTEM; urgency=low
+sflphone-client-gnome (0.9.5-SYSVER) SYSTEM; urgency=low
+
+    ** 0.9.5 release **
+
+  * [#1060] FIx bug in chinese translation
+  * [#1313] git add rtpTest.cpp rtpTest.h
+  * [#1313] Add init/close rtp tests
+  * [#1313] Basic instanciation of the rtp layer
+  * [#1449] Gtk-Critical concerning history filters and new calls
+  * [#1400] Make the match with the hostname instead of username
+  * [#1324] Change status bar label for "Using %s (%s)"
+  * [#1403] Icon size: 60x60 px
+  * [#1403] Do not remove notification, improve icon quality
+  * [#1403] Add smaller icon for gnome notifications
+  * [#1403] Prevent crash when hangup && no notification
+  * [#1403] Remove all actions on notifications; code refactoring
+  * [#1451] Use stun.sflphone.org as default STUN server
+  * [#1060] New po files - need to be translated
+  * [#1060] Update french translation - Rebuild template file
+  * [#1456] Add a flag to be replaced in the control files
+  * [#1454] Make cppunit optional; remove from build deps in control
+    files
+  * [#1401] Add libexpat1-dev dependency in control files
+  * [#1448] Take off these ugly debug messages
+  * [#1448] fixed getTelephoneTone and getTelephoneFile() called
+    repeatedly
+  * [#1406] add liblog4c-dev in build-depends
+  * [#1409] Restore .desktop icon
+
+ -- SFLphone Automatic Build System <team@sflphone.org>  Mon, 25 May 2009 11:34:48 -0400
+
+sflphone-client-gnome (0.9.5-SYSVER~rc2) SYSTEM; urgency=low
+
+    ** 0.9.5 rc2 **
+
+  * [#1422] Improved error message
+  * [#1402] Fix pjsip build
+  * [#1404] Clear GTK-Critical Bug at client startup
+  * [#1422] Added automatic VM shutdown when building on more than one
+    VM
+  * [#1422] Fixed some issues with new changelog generation script
+  * [#1422] Moved distribution update to specific file
+  * [#1422] Dropped git-dch, replace by home made implementation
+  * Changes for name based dbus connection
+  * Clean changelogs
+  * [#1343] Gnome: Implement a callback system to handle focus on
+    different widgets
+  * Debus Session
+  * Refactoring Python code, PEP8
+  * [#1430] Get back dbus_g_proxy_new_for_name
+  * [#1430] Get back DBUS_BUS_SESSION type
+  * [#1430] Dbus fixed owner message binding
+  * Second test with DBUS owner
+  * [#1404] Gnome -> Preferences -> Hooks
+  * [#1404] Gnome -> Preferences -> Recordings
+  * [#1404] Call History
+  * [#1404] Gnome -> Preferences -> Address Book
+  * [#1404] IF the first notification option disable the second
+    notification
+  * Dbus with fixed owner does not automatically start the deamon
+  * Add codec debug tests in pysflphone
+  * [#1407] Some print info
+  * [#1407] Add a scenario to pick_up action
+  * Test client dbus connection to a fixed owner
+  * Add python dbus test suite
+  * [#1161] Modified version handling in build system
+  * [#1314] Test pulse audio and audio streams connect and disconnect
+  * [#1402] Add info message after configure
+  * [#1402] Build the daemon with the local pjsip library (vs the
+    installed one)
+  * [#1009] Fix Codec Sampling Rate set to zeros
+  * [#1314] Add mutex to pulse layer audio streams
+  * [#1314] Refactoring pulseaudio stream to test connect disconnect
+  * [#1314] Refactoring of pulselayer to test conect/disconnect
+  * Add debug messages in debus calls concerning account
+  * [#1314] Add some return values to audio init functions
+  * [#1406] add liblog4c-dev in build-depends
+  * [#1409] Restore .desktop icon
+  * Bug #1405: Fix strings as requested.
+  * Bug #1404: Fix strings in preferences panel.
+
+ -- SFLphone Automatic Build System <team@sflphone.org>  Tue, 19 May 2009 12:08:18 -0400
+
+sflphone-client-gnome (0.9.5-0ubuntu1~rc1) SYSTEM; urgency=low
 
-  ** SNAPSHOT build @20b188472f4e66c75b3f1dffe1f110b7070397ec **
-
-  [ Emmanuel Milou ]
-  * [#1220] Add Conflicts: sflphone in debian control files
-  * [#1179] Add liblog4c3 runtime dependency
-  * [#1212] FIx typo error in dependency list for itnrepid
-  * [#1212] FIx .desktop file to point on the right exec
-  * [#1212] Modify changelog replacing tag
-
-  [ Sflphone Project ]
-  * "[#1262] Updated changelogs for version 0.9.5-0ubuntu1~beta"
-
-  [ Emmanuel Milou ]
-  * [#1212] restore changelogs
-
-  [ Sflphone Project ]
-  * [#1262] Updated changelogs for version 0.9.5-0ubuntu1 Snapshot 2009-
-    04-27
-
-  [ Emmanuel Milou ]
-  * [#1212] restore changelogs
-
-  [ Sflphone Project ]
-  * [#1262] Updated changelogs for version 0.9.5-0ubuntu1~beta
-
-  [ Emmanuel Milou ]
-  * [#1212] restore changelogs
-
-  [ Sflphone Project ]
-  * [#1262] Updated changelogs for version 0.9.5-0ubuntu1~beta
+  [ SFLphone Project ]
   * [#1262] Updated changelogs for version 0.9.5-0ubuntu1 Snapshot 2009-
-    04-28
+    05-05
 
   [ Emmanuel Milou ]
-  * [#1212] Restore changelogs
-
-  [ Sflphone Project ]
-  * [#1262] Updated changelogs for version 0.9.5-0ubuntu1 Snapshot 2009-
-    04-28
-
-  [ Julien Bonjean ]
-  * [#1262]Introduced dynamic version setting
-
-  [ Sflphone Project ]
+  * Add some python CLI client code; not really functional
+  * [#1108] Fix peerHungup method for IP to IP call
 
   [ Alexandre Savard ]
-  * [#1143] Add celtcodec.cpp
-  * [#1143] add configure and make stuffs
-  * [#1143] add frame size into each codecs
-  * [#1143] Take timestamp's step size from codec
-  * [#1143] RTP thread at 11 ms
-  * [#1143] Dynamic RTP thread sleep parameter
-  * [#1143] Fix dynamic thread sleep time calculation
+  * [#1108] Correct setting of SIP contact for direct IP call
+  * [#1108] SIP user agent handles incoming REFER
 
   [ Emmanuel Milou ]
-  * [#1262] sflphone-client-gnome uses changelog version number
+  * Remove website from repository
+  * Update translation
 
   [ Alexandre Savard ]
-  * [#1143] Some cleanup
-
-  [ SFLphone Project ]
-  * [#1262] Updated changelogs for version 0.9.5-0ubuntu1 Snapshot 2009-
-    04-29
+  * Sflphone icon's tooltip changed for "configured" instead of
+    "registered"
 
   [ Emmanuel Milou ]
-  * [#1262] Update changelogs
-  * [#1262] Update rules
-  * [#1143] Build celt codec only if version >= 0.5.1 is detected
-  * [1143] Restore rules files - do not need to specify --without-celt
-  * [#1336] Change SFLphone logo
-  * [#1331] Fix searchbar problems
-  * [#1332] Fix unexplicit labels
-  * [#1334] Fix unexplicit label
-  * [#1329] Fix recordings config panel
+  * Update translation
 
   [ Sflphone Project ]
 
- -- Sflphone Project <sflphone@mtl.savoirfairelinux.net>  Thu, 30 Apr 2009 10:01:42 -0400
+ -- Sflphone Project <sflphone@mtl.savoirfairelinux.net>  Tue, 05 May 2009 19:16:13 -0400
 
 sflphone-client-gnome (0.9.5-0ubuntu1~beta) SYSTEM; urgency=low
 
diff --git a/sflphone-client-gnome/debian/control.hardy b/sflphone-client-gnome/debian/control.hardy
index 83f0f4e995874fc3ae5b701075ef62d1747baae9..95d2f2538cd8be56f006cbd7786f5cfa5827d151 100644
--- a/sflphone-client-gnome/debian/control.hardy
+++ b/sflphone-client-gnome/debian/control.hardy
@@ -2,13 +2,13 @@ Source: sflphone-client-gnome
 Maintainer: SavoirFaireLinux Inc <emmanuel.milou@savoirfairelinux.com>
 Section: gnome
 Priority: optional
-Build-Depends: debhelper (>= 5), libgcc1, autoconf, automake, libtool, libgtk2.0-dev, libsexy-dev, libdbus-glib-1-dev, libnotify-dev, libebook1.2-dev, check
+Build-Depends: debhelper (>= 5), libgcc1, autoconf, automake, libtool, libgtk2.0-dev, libsexy-dev, libdbus-glib-1-dev, libnotify-dev, libebook1.2-dev, check, liblog4c-dev
 Standards-Version: 3.7.3
 
 Package: sflphone-client-gnome
 Priority: optional
 Architecture: any
-Depends: sflphone-common (>= 0.9.5), libdbus-glib-1-2 (>= 0.73), libgtk2.0-0 , libc6 (>= 2.3.6-6) , libglib2.0-0 (>= 2.12.0), libdbus-glib-1-2, libnotify1 (>= 0.4), libsexy2 (>= 0.1), librsvg2-common (>=2.22.2), liblog4c3
+Depends: sflphone-common (=VERSION), libdbus-glib-1-2 (>= 0.73), libgtk2.0-0 , libc6 (>= 2.3.6-6) , libglib2.0-0 (>= 2.12.0), libdbus-glib-1-2, libnotify1 (>= 0.4), libsexy2 (>= 0.1), librsvg2-common (>=2.22.2), liblog4c3
 Replaces: sflphone
 Conflicts: sflphone
 Homepage: http://www.sflphone.org
diff --git a/sflphone-client-gnome/debian/control.intrepid b/sflphone-client-gnome/debian/control.intrepid
index 214c29304ebd213dc937cf627dde9851f0305181..17532c599e32e945949bab117cfae731a9ee1fe5 100644
--- a/sflphone-client-gnome/debian/control.intrepid
+++ b/sflphone-client-gnome/debian/control.intrepid
@@ -2,13 +2,13 @@ Source: sflphone-client-gnome
 Maintainer: SavoirFaireLinux Inc <emmanuel.milou@savoirfairelinux.com>
 Section: gnome
 Priority: optional
-Build-Depends: debhelper (>= 5), libgcc1, autoconf, libtool, libgtk2.0-dev, libsexy-dev, libdbus-glib-1-dev, libnotify-dev, libebook1.2-dev, check
+Build-Depends: debhelper (>= 5), libgcc1, autoconf, libtool, libgtk2.0-dev, libsexy-dev, libdbus-glib-1-dev, libnotify-dev, libebook1.2-dev, check, liblog4c-dev
 Standards-Version: 3.8.0
 
 Package: sflphone-client-gnome
 Priority: optional
 Architecture: any
-Depends: sflphone-common (>=0.9.5), libdbus-glib-1-2 (>= 0.73), libgtk2.0-0 , libc6 (>= 2.3.6-6) , libglib2.0-0 (>= 2.12.0), libdbus-glib-1-2, libnotify1 (>= 0.4), libsexy2 (>= 0.1), librsvg2-common (>= 2.22.2), liblog4c3
+Depends: sflphone-common (=VERSION), libdbus-glib-1-2 (>= 0.73), libgtk2.0-0 , libc6 (>= 2.3.6-6) , libglib2.0-0 (>= 2.12.0), libdbus-glib-1-2, libnotify1 (>= 0.4), libsexy2 (>= 0.1), librsvg2-common (>= 2.22.2), liblog4c3
 Replaces: sflphone
 Conflicts: sflphone
 Homepage: http://www.sflphone.org
diff --git a/sflphone-client-gnome/debian/control.jaunty b/sflphone-client-gnome/debian/control.jaunty
index f36c19b8107b61ff95010cf4db3f415783d715b9..4846a69bfb3618290fbb30e61967011fb4aa4cdd 100644
--- a/sflphone-client-gnome/debian/control.jaunty
+++ b/sflphone-client-gnome/debian/control.jaunty
@@ -2,13 +2,13 @@ Source: sflphone-client-gnome
 Maintainer: SavoirFaireLinux Inc <emmanuel.milou@savoirfairelinux.com>
 Section: gnome
 Priority: optional
-Build-Depends: debhelper (>= 5), libgcc1, autoconf, automake, libtool, libgtk2.0-dev (>=2.16), libdbus-glib-1-dev, libnotify-dev, libebook1.2-dev, check
+Build-Depends: debhelper (>= 5), libgcc1, autoconf, automake, libtool, libgtk2.0-dev (>=2.16), libdbus-glib-1-dev, libnotify-dev, libebook1.2-dev, check, liblog4c-dev
 Standards-Version: 3.7.3
 
 Package: sflphone-client-gnome
 Priority: optional
 Architecture: any
-Depends: sflphone-common (>=0.9.5), libdbus-glib-1-2 (>= 0.73), libgtk2.0-0 (>=2.16) , libc6 (>= 2.3.6-6) , libglib2.0-0 (>= 2.12.0) ,libdbus-glib-1-2, libnotify1 (>= 0.4), librsvg2-common (>=2.22.2), liblog4c3
+Depends: sflphone-common (=VERSION), libdbus-glib-1-2 (>= 0.73), libgtk2.0-0 (>=2.16) , libc6 (>= 2.3.6-6) , libglib2.0-0 (>= 2.12.0) ,libdbus-glib-1-2, libnotify1 (>= 0.4), librsvg2-common (>=2.22.2), liblog4c3
 Replaces: sflphone
 Conflicts: sflphone
 Homepage: http://www.sflphone.org
diff --git a/sflphone-client-gnome/pixmaps/Makefile.am b/sflphone-client-gnome/pixmaps/Makefile.am
index f2c997ad10e5a08f9ebb1938b7e002390c014b7c..15fc5055572ecdb0ed65c9c7feeb871384650fd8 100644
--- a/sflphone-client-gnome/pixmaps/Makefile.am
+++ b/sflphone-client-gnome/pixmaps/Makefile.am
@@ -1,7 +1,7 @@
 icondir   = $(datadir)/pixmaps
 
-icon_DATA = sflphone1.svg
+icon_DATA = sflphone.svg
 
-buttons_DATA = accept.svg current.svg transfert.svg hang_up.svg hold.svg unhold.svg refuse.svg call.svg ring.svg dial.svg mic.svg mic_25.svg mic_50.svg mic_75.svg speaker.svg speaker_25.svg speaker_50.svg speaker_75.svg fail.svg incoming.svg outgoing.svg missed.svg mailbox.svg busy.svg icon_accept.svg icon_hold.svg icon_unhold.svg icon_hangup.svg icon_call.svg icon_dialpad.svg icon_volume.svg icon_dialpad_off.svg icon_volume_off.svg history.svg history2.svg sflphone.png sflphone1.svg stock_person.svg icon_rec.svg rec_call.svg addressbook.svg contact_default.svg face-monkey.svg users.svg home.svg wait-on.gif
+buttons_DATA = accept.svg current.svg transfert.svg hang_up.svg hold.svg unhold.svg refuse.svg call.svg ring.svg dial.svg mic.svg mic_25.svg mic_50.svg mic_75.svg speaker.svg speaker_25.svg speaker_50.svg speaker_75.svg fail.svg incoming.svg outgoing.svg missed.svg mailbox.svg busy.svg icon_accept.svg icon_hold.svg icon_unhold.svg icon_hangup.svg icon_call.svg icon_dialpad.svg icon_volume.svg icon_dialpad_off.svg icon_volume_off.svg history2.svg sflphone.svg sflphone_small.svg stock_person.svg icon_rec.svg rec_call.svg addressbook.svg contact_default.svg face-monkey.svg users.svg home.svg wait-on.gif
 buttonsdir   = $(datadir)/sflphone
 EXTRA_DIST   = $(buttons_DATA) $(icon_DATA)
diff --git a/sflphone-client-gnome/pixmaps/history.svg b/sflphone-client-gnome/pixmaps/history.svg
deleted file mode 100644
index 78b36d728e0fb14b088dc83d2f10927a13a91961..0000000000000000000000000000000000000000
--- a/sflphone-client-gnome/pixmaps/history.svg
+++ /dev/null
@@ -1,117 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-<svg
-   xmlns:dc="http://purl.org/dc/elements/1.1/"
-   xmlns:cc="http://creativecommons.org/ns#"
-   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-   xmlns:svg="http://www.w3.org/2000/svg"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:xlink="http://www.w3.org/1999/xlink"
-   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   width="24"
-   height="24"
-   id="svg2"
-   sodipodi:version="0.32"
-   inkscape:version="0.46"
-   version="1.0"
-   sodipodi:docname="history.svg"
-   inkscape:output_extension="org.inkscape.output.svg.inkscape">
-  <sodipodi:namedview
-     id="base"
-     pagecolor="#ffffff"
-     bordercolor="#666666"
-     borderopacity="1.0"
-     inkscape:pageopacity="0.0"
-     inkscape:pageshadow="2"
-     inkscape:zoom="21.480197"
-     inkscape:cx="1.474761"
-     inkscape:cy="11.975709"
-     inkscape:document-units="px"
-     inkscape:current-layer="layer1"
-     showgrid="false"
-     inkscape:window-width="1600"
-     inkscape:window-height="926"
-     inkscape:window-x="0"
-     inkscape:window-y="24" />
-  <defs
-     id="defs4">
-    <linearGradient
-       inkscape:collect="always"
-       id="linearGradient3527">
-      <stop
-         style="stop-color:#150b0b;stop-opacity:1;"
-         offset="0"
-         id="stop3529" />
-      <stop
-         style="stop-color:#150b0b;stop-opacity:0;"
-         offset="1"
-         id="stop3531" />
-    </linearGradient>
-    <inkscape:perspective
-       sodipodi:type="inkscape:persp3d"
-       inkscape:vp_x="0 : 526.18109 : 1"
-       inkscape:vp_y="0 : 1000 : 0"
-       inkscape:vp_z="744.09448 : 526.18109 : 1"
-       inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
-       id="perspective10" />
-    <radialGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient3527"
-       id="radialGradient3535"
-       cx="11.964509"
-       cy="22.347315"
-       fx="11.964509"
-       fy="22.347315"
-       r="0.29855451"
-       gradientTransform="matrix(1,0,0,2.9491628,0,-43.558553)"
-       gradientUnits="userSpaceOnUse" />
-  </defs>
-  <metadata
-     id="metadata7">
-    <rdf:RDF>
-      <cc:Work
-         rdf:about="">
-        <dc:format>image/svg+xml</dc:format>
-        <dc:type
-           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
-      </cc:Work>
-    </rdf:RDF>
-  </metadata>
-  <g
-     inkscape:label="Calque 1"
-     inkscape:groupmode="layer"
-     id="layer1">
-    <path
-       sodipodi:type="arc"
-       style="fill:#efebe7;fill-opacity:1;stroke:#000000;stroke-width:0.75590805999999999;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;stroke-linejoin:miter;stroke-linecap:square"
-       id="path2383"
-       sodipodi:cx="13.384615"
-       sodipodi:cy="12.461538"
-       sodipodi:rx="9.7408905"
-       sodipodi:ry="8.963563"
-       d="M 23.125505,12.461538 A 9.7408905,8.963563 0 1 1 3.6437244,12.461538 A 9.7408905,8.963563 0 1 1 23.125505,12.461538 z"
-       transform="matrix(1.137179,0,0,1.2493462,-3.1235374,-3.5444849)" />
-    <rect
-       style="fill:#090800;fill-opacity:0.94509803999999997;stroke:#00000c;stroke-width:0.70011531999999999;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
-       id="rect2395"
-       width="0.54875678"
-       height="10.837302"
-       x="11.783239"
-       y="1.8915578"
-       rx="0.46546814"
-       ry="0.23272024" />
-    <rect
-       style="fill:#2f7600;fill-opacity:0.94509803999999997;stroke:#091e00;stroke-width:0.70353359000000004;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
-       id="rect2397"
-       width="0.69879586"
-       height="8.5937195"
-       x="17.122484"
-       y="-6.6727667"
-       rx="0.59273487"
-       ry="0.18454158"
-       transform="matrix(0.7666254,0.6420946,-0.6830233,0.7303966,0,0)"
-       inkscape:transform-center-x="0.34290126"
-       inkscape:transform-center-y="4.8387013" />
-  </g>
-</svg>
diff --git a/sflphone-client-gnome/pixmaps/sflphone.png b/sflphone-client-gnome/pixmaps/sflphone.png
deleted file mode 100644
index 50c1483ac152972fa6d993b6823b5d247dd258bc..0000000000000000000000000000000000000000
Binary files a/sflphone-client-gnome/pixmaps/sflphone.png and /dev/null differ
diff --git a/sflphone-client-gnome/pixmaps/sflphone.svg b/sflphone-client-gnome/pixmaps/sflphone.svg
new file mode 100644
index 0000000000000000000000000000000000000000..13af3cc7eb9e0ff3d5ae1af289c29d97427b19f7
--- /dev/null
+++ b/sflphone-client-gnome/pixmaps/sflphone.svg
@@ -0,0 +1,373 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="120"
+   height="120"
+   id="svg5875"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   version="1.0"
+   sodipodi:docname="sflphone4.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape">
+  <defs
+     id="defs5877">
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient3803">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop3805" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop3807" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient4684">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop4686" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop4688" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient4669">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop4671" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop4673" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient3859">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop3861" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop3863" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient5850">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop5852" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop5854" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5850"
+       id="linearGradient5856"
+       x1="476.3125"
+       y1="439.0293"
+       x2="477.3125"
+       y2="514.42188"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient4999">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop5001" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop5003" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4999"
+       id="linearGradient5862"
+       gradientUnits="userSpaceOnUse"
+       x1="698.38525"
+       y1="245.5472"
+       x2="702.81964"
+       y2="977.78302" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient4991">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop4993" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop4995" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4991"
+       id="radialGradient4997"
+       cx="736.5"
+       cy="640.93073"
+       fx="736.5"
+       fy="640.93073"
+       r="91.964203"
+       gradientTransform="matrix(1,0,0,0.8097086,0,99.14184)"
+       gradientUnits="userSpaceOnUse" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 526.18109 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="744.09448 : 526.18109 : 1"
+       inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
+       id="perspective5883" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3859"
+       id="linearGradient3873"
+       x1="352.19498"
+       y1="451.55289"
+       x2="106.34038"
+       y2="658.39594"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(-3.8268196,-1.7394634)" />
+    <inkscape:perspective
+       id="perspective2422"
+       inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
+       inkscape:vp_z="744.09448 : 526.18109 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 526.18109 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <inkscape:perspective
+       id="perspective2437"
+       inkscape:persp3d-origin="168.5 : 109.33333 : 1"
+       inkscape:vp_z="337 : 164 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 164 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4669"
+       id="linearGradient4675"
+       x1="-20.657925"
+       y1="-244.41351"
+       x2="184.57913"
+       y2="789.61469"
+       gradientUnits="userSpaceOnUse"
+       spreadMethod="pad" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4684"
+       id="linearGradient4690"
+       x1="52.987782"
+       y1="-84.148399"
+       x2="127.02813"
+       y2="99.500687"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4669"
+       id="linearGradient5149"
+       gradientUnits="userSpaceOnUse"
+       spreadMethod="pad"
+       x1="-20.657925"
+       y1="-244.41351"
+       x2="184.57913"
+       y2="789.61469" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4991"
+       id="radialGradient5297"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,0.8097086,0,99.14184)"
+       cx="736.5"
+       cy="640.93073"
+       fx="736.5"
+       fy="640.93073"
+       r="91.964203" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4999"
+       id="linearGradient5299"
+       gradientUnits="userSpaceOnUse"
+       x1="698.38525"
+       y1="245.5472"
+       x2="702.81964"
+       y2="977.78302" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4684"
+       id="linearGradient5301"
+       gradientUnits="userSpaceOnUse"
+       x1="52.987782"
+       y1="-84.148399"
+       x2="127.02813"
+       y2="99.500687" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4684"
+       id="linearGradient5308"
+       gradientUnits="userSpaceOnUse"
+       x1="52.987782"
+       y1="-84.148399"
+       x2="127.02813"
+       y2="99.500687"
+       gradientTransform="matrix(0.6453907,0,0,0.6453907,0.8651337,0.4352828)" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3803"
+       id="linearGradient3809"
+       x1="12.663443"
+       y1="8.5301828"
+       x2="41.858654"
+       y2="57.533279"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.0054518,0,0,1.0054518,-4.7165106e-3,-0.4345682)" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     gridtolerance="10000"
+     guidetolerance="10"
+     objecttolerance="10"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="4.6527672"
+     inkscape:cx="71.125906"
+     inkscape:cy="59.641316"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer2"
+     showgrid="false"
+     inkscape:window-width="1918"
+     inkscape:window-height="1068"
+     inkscape:window-x="0"
+     inkscape:window-y="36"
+     showguides="true"
+     inkscape:guide-bbox="true" />
+  <metadata
+     id="metadata5880">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title>Icône SFL</dc:title>
+        <dc:date>2009-04-29</dc:date>
+        <dc:creator>
+          <cc:Agent>
+            <dc:title>Jérôme Oufella</dc:title>
+          </cc:Agent>
+        </dc:creator>
+        <dc:rights>
+          <cc:Agent>
+            <dc:title>(c) 2009 Savoir-faire Linux inc.</dc:title>
+          </cc:Agent>
+        </dc:rights>
+        <dc:subject>
+          <rdf:Bag>
+            <rdf:li>sfl icon</rdf:li>
+          </rdf:Bag>
+        </dc:subject>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Circle"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(-182.15973,-428.80763)"
+     style="display:inline">
+    <g
+       style="display:inline"
+       id="g5868"
+       transform="matrix(0.6453907,0,0,0.6453907,-86.103074,148.01517)">
+      <path
+         transform="matrix(0.9959566,0,0,1.2202117,1.6861043,-136.53125)"
+         d="M 602,544.5 A 92.5,75.5 0 1 1 417,544.5 A 92.5,75.5 0 1 1 602,544.5 z"
+         sodipodi:ry="75.5"
+         sodipodi:rx="92.5"
+         sodipodi:cy="544.5"
+         sodipodi:cx="509.5"
+         id="path4987"
+         style="fill:#00252b;fill-opacity:1;fill-rule:evenodd"
+         sodipodi:type="arc" />
+      <path
+         transform="matrix(0.9200853,0,0,1.1406537,-168.51683,-66.406557)"
+         d="M 827,521 A 90.5,73 0 1 1 646,521 A 90.5,73 0 1 1 827,521 z"
+         sodipodi:ry="73"
+         sodipodi:rx="90.5"
+         sodipodi:cy="521"
+         sodipodi:cx="736.5"
+         id="path4989"
+         style="opacity:0.83064515;fill:url(#radialGradient5297);fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient5299);stroke-width:2.92839932;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+         sodipodi:type="arc" />
+    </g>
+  </g>
+  <g
+     inkscape:groupmode="layer"
+     id="layer3"
+     inkscape:label="Bg logo"
+     style="display:inline">
+    <path
+       style="opacity:1;fill:#006f82;fill-opacity:0;fill-rule:evenodd;stroke:#006f82;stroke-width:1.04566979;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline"
+       d="M 10.55114,62.033695 L 10.545872,59.631821 L 11.329656,63.53366 L 11.321088,59.630621 L 12.621458,63.431585 L 12.611584,58.928074 L 13.657722,64.630914 L 13.897019,55.923735 L 14.696183,66.831029 L 15.959008,53.518653 L 16.252311,69.430662 L 17.258279,56.819227 L 18.052818,65.624884 L 18.551844,57.51777 L 19.347918,67.023975 L 19.833546,52.812112 L 21.424823,71.42421 L 20.85641,47.906685 L 23.760575,76.024188 L 22.924102,48.103639 L 25.312097,76.522171 L 24.213925,47.100857 L 25.814204,69.816155 L 26.299177,55.304046 L 27.10579,69.613998 L 28.100546,51.898595 L 28.133486,66.910282 L 29.383802,47.893475 L 29.17479,70.411424 L 30.42269,50.293743 L 30.995926,76.012977 L 32.479618,45.586876 L 32.810259,78.51213 L 34.022583,42.181821 L 34.623699,80.610954 L 35.567529,39.677469 L 36.17744,82.1097 L 36.856708,38.374457 L 38.250165,84.608465 L 38.159277,43.176196 L 39.275226,80.703832 L 39.72003,47.877458 L 40.557601,76.298395 L 41.022589,52.6792 L 42.361163,73.89372 L 42.575221,53.677574 L 43.394126,73.59189 L 44.128072,54.776031 L 45.197477,71.087148 L 44.64642,55.475777 L 46.746157,70.284115 L 46.201462,57.575013 L 47.766387,64.177753 L 48.157374,33.559644 L 49.574786,63.974798 L 49.737044,29.057192 L 50.608848,64.173352 L 52.072146,33.362224 L 52.237957,82.20545 L 53.618404,31.455993 L 54.269604,83.80121 L 54.704307,28.546169 L 56.569731,89.992521 L 56.233651,27.84325 L 58.106058,92.475088 L 58.237615,25.734393 L 59.462018,94.871346 L 59.308802,25.029251 L 60.997751,97.080654 L 60.859237,25.026847 L 63.348005,99.381156 L 63.493128,47.740542 L 64.432585,95.86912 L 64.276032,51.242071 L 66.685102,98.180342 L 65.570911,52.541084 L 66.563781,98.275324 L 64.993727,25.020443 L 69.064999,96.16276 L 66.029984,26.219775 L 70.373503,94.756118 L 68.436272,27.318084 L 72.677618,93.850086 L 72.234352,27.4111 C 72.234352,27.4111 73.940422,98.363981 74.456142,97.862784 C 74.971847,97.361592 75.595153,28.106441 75.595153,28.106441 L 75.739811,94.046666 L 76.890923,29.805765 L 77.049624,93.24225 L 78.18426,30.404231 L 78.338812,91.945712 L 80.000344,33.704002 L 80.38199,89.886658 L 82.071758,35.602278 L 82.1985,84.464362 L 83.409266,38.505999 L 84.494194,70.81025 L 85.482229,41.108345 L 86.300623,69.703651 L 88.312822,44.609637 L 89.401506,78.617548 L 89.890557,48.126952 L 91.245045,76.60551 L 91.663323,49.515327 L 93.046215,73.100561 L 93.514555,51.012458 L 95.564594,69.900023 L 95.350428,54.413452 L 97.176303,71.094351 L 97.42119,56.012671 L 100.17281,68.095581 L 100.26537,56.803022 L 102.33474,68.598489 L 102.41415,58.300276 L 104.15368,64.27997 L 104.55185,54.777789 L 105.28904,66.085499 L 105.9731,60.189794 C 105.9731,60.189794 107.07326,63.772713 107.07216,63.272322 C 107.07105,62.771937 108.5787,61.082943 108.31828,60.182636 C 108.05791,59.282342 109.41561,62.475103 109.41561,62.475103"
+       id="path4922"
+       sodipodi:nodetypes="ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccscccccccccccccccccccccccccccccccccccc" />
+  </g>
+  <g
+     inkscape:groupmode="layer"
+     id="layer2"
+     inkscape:label="Handset"
+     style="display:inline">
+    <path
+       style="opacity:0.07000002;fill:url(#linearGradient5308);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:12.29699993;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline"
+       d="M 59.151985,7.5345809 C 30.967536,8.249433 8.3274641,31.354675 8.3274641,59.710388 C 8.3274641,68.222065 10.375495,76.246983 13.994802,83.347823 C 13.107834,79.536662 12.643515,75.568677 12.643515,71.488769 C 12.643515,42.682964 36.013519,19.292793 64.819322,19.292793 C 85.110516,19.292792 102.69706,30.904841 111.32779,47.831165 C 105.9454,24.743656 85.222311,7.5345809 60.503272,7.5345809 C 60.05318,7.5345809 59.599356,7.5232342 59.151985,7.5345809 z"
+       id="path4679" />
+    <path
+       id="path3760"
+       d="M 88.906874,94.063359 C 88.559935,94.977556 84.966023,98.376 83.289215,99.375481 L 81.43556,100.48037 L 73.808785,90.541207 L 66.182003,80.602053 L 67.494791,79.241241 C 68.779544,77.909476 72.634516,75.322497 73.887671,74.951128 C 74.431745,74.789888 75.528139,76.078361 81.782999,84.229651 C 85.777928,89.435809 88.983679,93.860981 88.906874,94.063359 z M 50.73329,44.477271 C 50.446627,45.232636 45.91138,49.09897 44.433331,49.848034 L 43.090474,50.528569 L 35.573545,40.555914 L 28.056608,30.583254 L 30.64475,28.448397 C 32.068233,27.274223 33.934924,26.023758 34.792949,25.669578 L 36.352996,25.025619 L 43.633459,34.513458 C 48.514886,40.874896 50.854403,44.158138 50.73329,44.477271 z M 80.086522,101.40574 C 80.038294,101.53261 79.197946,102.04305 78.219084,102.54005 C 70.526609,106.44583 58.163118,101.84815 46.523718,90.753346 C 42.403963,86.826338 33.905571,76.306559 30.548319,70.978095 C 24.069511,60.695264 21.022718,52.062253 21.112522,44.242002 C 21.168568,39.361513 22.770354,35.243539 25.642678,32.595536 L 26.627564,31.687563 L 34.18264,41.386253 L 41.737722,51.084944 L 41.126672,52.143343 C 40.282652,53.605243 40.435321,55.522605 41.628037,58.4399 C 43.124949,62.101227 55.001116,77.570343 58.187294,80.008903 C 60.691108,81.925211 62.231437,82.484651 64.082727,82.150099 L 65.393673,81.913192 L 72.783941,91.544137 C 76.848589,96.841159 80.134755,101.27887 80.086522,101.40574 z"
+       style="opacity:0.32000002;fill:#000000;fill-opacity:1" />
+    <path
+       style="fill:#dfdfdf;fill-opacity:1"
+       d="M 92.518066,90.452167 C 92.171127,91.366364 88.577215,94.764808 86.900407,95.764289 L 85.046752,96.869181 L 77.419976,86.930015 L 69.793194,76.990861 L 71.105983,75.63005 C 72.390736,74.298285 76.245707,71.711305 77.498862,71.339937 C 78.042936,71.178697 79.13933,72.46717 85.394191,80.61846 C 89.389119,85.824618 92.59487,90.24979 92.518066,90.452167 z M 54.344481,40.86608 C 54.057819,41.621444 49.522571,45.487778 48.044523,46.236842 L 46.701666,46.917377 L 39.184735,36.944723 L 31.6678,26.972063 L 34.255941,24.837205 C 35.679425,23.663032 37.546115,22.412566 38.404141,22.058387 L 39.964188,21.414427 L 47.24465,30.902267 C 52.126078,37.263706 54.465594,40.546946 54.344481,40.86608 z M 83.697713,97.79455 C 83.649486,97.921417 82.809137,98.431852 81.830276,98.928861 C 74.137801,102.83464 61.774308,98.236957 50.134909,87.142154 C 46.015154,83.215146 37.516762,72.695367 34.159511,67.366904 C 27.680702,57.084073 24.63391,48.451062 24.723714,40.63081 C 24.77976,35.750321 26.381546,31.632348 29.253869,28.984346 L 30.238755,28.076371 L 37.793832,37.775063 L 45.348913,47.473754 L 44.737863,48.532152 C 43.893844,49.994052 44.046513,51.911414 45.239229,54.828709 C 46.73614,58.490035 58.612307,73.959152 61.798485,76.397711 C 64.3023,78.31402 65.842629,78.87346 67.693918,78.538907 L 69.004865,78.302 L 76.395132,87.932945 C 80.459781,93.229968 83.745947,97.667682 83.697713,97.79455 z"
+       id="path3218" />
+    <g
+       transform="matrix(0.6018652,0,0,0.6018652,-106.46243,-252.67476)"
+       id="g3787"
+       style="fill:#ffffff;fill-opacity:0">
+      <path
+         id="path3789"
+         d="M 324.6064,576.10592 C 324.02996,577.62486 318.05867,583.27138 315.27265,584.93202 L 312.1928,586.7678 L 299.5209,570.25386 L 286.84899,553.73994 L 289.03019,551.47895 C 291.16481,549.26622 297.56985,544.96795 299.65197,544.35092 C 300.55595,544.08302 302.37761,546.22382 312.77007,559.7672 C 319.40765,568.41724 324.73401,575.76967 324.6064,576.10592 z M 261.18093,493.71856 C 260.70464,494.9736 253.16932,501.39752 250.71354,502.64209 L 248.48238,503.7728 L 235.99299,487.20322 L 223.50359,470.63363 L 227.80379,467.08656 C 230.16891,465.13567 233.27042,463.05802 234.69603,462.46955 L 237.28805,461.39961 L 249.38455,477.16367 C 257.49505,487.73321 261.38216,493.18832 261.18093,493.71856 z M 309.95137,588.3053 C 309.87124,588.51609 308.475,589.36418 306.84862,590.18996 C 294.06756,596.67941 273.5256,589.04036 254.18672,570.60633 C 247.34174,564.0816 233.22165,546.60297 227.64357,537.74972 C 216.87902,520.66478 211.81677,506.32102 211.96598,493.32766 C 212.0591,485.21872 214.72047,478.3767 219.49284,473.97704 L 221.12923,472.46844 L 233.682,488.58283 L 246.23478,504.69722 L 245.21952,506.45575 C 243.81718,508.8847 244.07084,512.0704 246.05254,516.91749 C 248.53966,523.00079 268.27193,548.70275 273.56577,552.75442 C 277.72586,555.93837 280.28512,556.86788 283.36104,556.31202 L 285.53918,555.9184 L 297.81812,571.92023 C 304.57154,580.72124 310.03151,588.09451 309.95137,588.3053 z"
+         style="opacity:0.32000002;fill:#ffffff;fill-opacity:0" />
+      <path
+         style="fill:#ffffff;fill-opacity:0"
+         d="M 330.6064,570.10592 C 330.02996,571.62486 324.05867,577.27138 321.27265,578.93202 L 318.1928,580.7678 L 305.5209,564.25386 L 292.84899,547.73994 L 295.03019,545.47895 C 297.16481,543.26622 303.56985,538.96795 305.65197,538.35092 C 306.55595,538.08302 308.37761,540.22382 318.77007,553.7672 C 325.40765,562.41724 330.73401,569.76967 330.6064,570.10592 z M 267.18093,487.71856 C 266.70464,488.9736 259.16932,495.39752 256.71354,496.64209 L 254.48238,497.7728 L 241.99299,481.20322 L 229.50359,464.63363 L 233.80379,461.08656 C 236.16891,459.13567 239.27042,457.05802 240.69603,456.46955 L 243.28805,455.39961 L 255.38455,471.16367 C 263.49505,481.73321 267.38216,487.18832 267.18093,487.71856 z M 315.95137,582.3053 C 315.87124,582.51609 314.475,583.36418 312.84862,584.18996 C 300.06756,590.67941 279.5256,583.04036 260.18672,564.60633 C 253.34174,558.0816 239.22165,540.60297 233.64357,531.74972 C 222.87902,514.66478 217.81677,500.32102 217.96598,487.32766 C 218.0591,479.21872 220.72047,472.3767 225.49284,467.97704 L 227.12923,466.46844 L 239.682,482.58283 L 252.23478,498.69722 L 251.21952,500.45575 C 249.81718,502.8847 250.07084,506.0704 252.05254,510.91749 C 254.53966,517.00079 274.27193,542.70275 279.56577,546.75442 C 283.72586,549.93837 286.28512,550.86788 289.36104,550.31202 L 291.53918,549.9184 L 303.81812,565.92023 C 310.57154,574.72124 316.03151,582.09451 315.95137,582.3053 z"
+         id="path3791" />
+    </g>
+    <path
+       style="fill:url(#linearGradient3809);fill-opacity:1;stroke:none"
+       d="M 39.961991,21.402587 L 38.390972,22.062415 C 37.532947,22.416594 35.666967,23.653234 34.243484,24.827407 L 31.667014,26.963992 L 39.176482,36.955669 L 43.166868,42.23429 C 44.833493,39.007648 46.844812,36.037923 49.105318,33.342326 C 48.501731,32.545758 47.962788,31.818462 47.251516,30.891538 L 39.961991,21.402587 z M 30.253097,28.063705 L 29.247645,28.974895 C 26.375322,31.622897 24.779157,35.751365 24.723113,40.631852 C 24.633309,48.452104 27.670415,57.087755 34.149223,67.370584 C 35.036506,68.778836 36.301396,70.544757 37.731145,72.460684 C 37.518951,70.51226 37.385521,68.535071 37.385521,66.522234 C 37.385521,58.29228 39.192461,50.526372 42.412779,43.742468 L 37.793985,37.772598 L 30.253097,28.063705 z"
+       id="path3798" />
+  </g>
+</svg>
diff --git a/sflphone-client-gnome/pixmaps/sflphone1.svg b/sflphone-client-gnome/pixmaps/sflphone1.svg
deleted file mode 100644
index 077f7ff40f6b342b3cc81a1eb1f89c9c002a4573..0000000000000000000000000000000000000000
--- a/sflphone-client-gnome/pixmaps/sflphone1.svg
+++ /dev/null
@@ -1,210 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-<svg
-   xmlns:dc="http://purl.org/dc/elements/1.1/"
-   xmlns:cc="http://creativecommons.org/ns#"
-   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-   xmlns:svg="http://www.w3.org/2000/svg"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:xlink="http://www.w3.org/1999/xlink"
-   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   width="184.25197"
-   height="184.25197"
-   id="svg5875"
-   sodipodi:version="0.32"
-   inkscape:version="0.46"
-   version="1.0"
-   sodipodi:docname="sflphone1.svg"
-   inkscape:output_extension="org.inkscape.output.svg.inkscape">
-  <defs
-     id="defs5877">
-    <linearGradient
-       inkscape:collect="always"
-       id="linearGradient3859">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop3861" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop3863" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       id="linearGradient5850">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop5852" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop5854" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient5850"
-       id="linearGradient5856"
-       x1="476.3125"
-       y1="439.0293"
-       x2="477.3125"
-       y2="514.42188"
-       gradientUnits="userSpaceOnUse" />
-    <linearGradient
-       inkscape:collect="always"
-       id="linearGradient4999">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop5001" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop5003" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient4999"
-       id="linearGradient5862"
-       gradientUnits="userSpaceOnUse"
-       x1="627.14612"
-       y1="621.8194"
-       x2="919.63519"
-       y2="331.63492" />
-    <linearGradient
-       inkscape:collect="always"
-       id="linearGradient4991">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop4993" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop4995" />
-    </linearGradient>
-    <radialGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient4991"
-       id="radialGradient4997"
-       cx="736.5"
-       cy="640.93073"
-       fx="736.5"
-       fy="640.93073"
-       r="91.964203"
-       gradientTransform="matrix(1,0,0,0.8097086,0,99.14184)"
-       gradientUnits="userSpaceOnUse" />
-    <inkscape:perspective
-       sodipodi:type="inkscape:persp3d"
-       inkscape:vp_x="0 : 526.18109 : 1"
-       inkscape:vp_y="0 : 1000 : 0"
-       inkscape:vp_z="744.09448 : 526.18109 : 1"
-       inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
-       id="perspective5883" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient3859"
-       id="linearGradient3873"
-       x1="352.19498"
-       y1="451.55289"
-       x2="106.34038"
-       y2="658.39594"
-       gradientUnits="userSpaceOnUse" />
-  </defs>
-  <sodipodi:namedview
-     id="base"
-     pagecolor="#ffffff"
-     bordercolor="#666666"
-     borderopacity="1.0"
-     gridtolerance="10000"
-     guidetolerance="10"
-     objecttolerance="10"
-     inkscape:pageopacity="0.0"
-     inkscape:pageshadow="2"
-     inkscape:zoom="2.8744496"
-     inkscape:cx="77.145989"
-     inkscape:cy="46.157701"
-     inkscape:document-units="px"
-     inkscape:current-layer="layer1"
-     showgrid="false"
-     inkscape:window-width="1920"
-     inkscape:window-height="1087"
-     inkscape:window-x="0"
-     inkscape:window-y="61" />
-  <metadata
-     id="metadata5880">
-    <rdf:RDF>
-      <cc:Work
-         rdf:about="">
-        <dc:format>image/svg+xml</dc:format>
-        <dc:type
-           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
-        <dc:title>Icône SFL</dc:title>
-        <dc:date>2009-04-29</dc:date>
-        <dc:creator>
-          <cc:Agent>
-            <dc:title>Jérôme Oufella</dc:title>
-          </cc:Agent>
-        </dc:creator>
-        <dc:rights>
-          <cc:Agent>
-            <dc:title>(c) 2009 Savoir-faire Linux inc.</dc:title>
-          </cc:Agent>
-        </dc:rights>
-        <dc:subject>
-          <rdf:Bag>
-            <rdf:li>sfl icon</rdf:li>
-          </rdf:Bag>
-        </dc:subject>
-      </cc:Work>
-    </rdf:RDF>
-  </metadata>
-  <g
-     inkscape:label="Layer 1"
-     inkscape:groupmode="layer"
-     id="layer1"
-     transform="translate(-182.15973,-428.80763)">
-    <g
-       id="g5868"
-       transform="translate(-234.84028,-6.9404095)">
-      <path
-         transform="matrix(0.9959566,0,0,1.2202117,1.6861043,-136.53125)"
-         d="M 602,544.5 A 92.5,75.5 0 1 1 417,544.5 A 92.5,75.5 0 1 1 602,544.5 z"
-         sodipodi:ry="75.5"
-         sodipodi:rx="92.5"
-         sodipodi:cy="544.5"
-         sodipodi:cx="509.5"
-         id="path4987"
-         style="fill:#006f82;fill-opacity:1;fill-rule:evenodd"
-         sodipodi:type="arc" />
-      <path
-         transform="matrix(0.9200853,0,0,1.1406537,-168.51683,-66.406557)"
-         d="M 827,521 A 90.5,73 0 1 1 646,521 A 90.5,73 0 1 1 827,521 z"
-         sodipodi:ry="73"
-         sodipodi:rx="90.5"
-         sodipodi:cy="521"
-         sodipodi:cx="736.5"
-         id="path4989"
-         style="fill:url(#radialGradient4997);fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient5862);stroke-width:2.92839932000000003;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;opacity:0.83064516"
-         sodipodi:type="arc" />
-    </g>
-    <path
-       d="M 270.22391,444.59502 L 258.69788,468.03809 C 257.38814,470.58705 254.96106,470.39374 252.51404,469.02377 L 243.80625,464.49786 L 250.84056,500.08834 C 252.30314,506.58761 247.96387,506.66091 245.77493,503.877 L 230.41805,486.50568 L 228.12461,495.49762 C 227.86256,496.67785 226.64373,497.93335 224.77908,497.67092 L 205.66619,493.80646 L 210.98893,512.73361 C 212.13112,516.9458 212.99584,518.68317 210.02787,519.8494 L 203.29692,523.29927 L 236.54717,550.584 C 237.86251,551.61457 238.55002,553.49774 238.11702,555.22057 L 235.41442,565.11265 C 246.67796,563.56182 256.77634,562.1734 268.03972,560.62412 C 269.04245,560.59408 270.72036,561.45708 270.7339,562.66502 L 269.8477,598.75328 L 275.3353,598.66059 L 273.8636,562.68953 C 273.83635,561.48182 275.32797,560.48791 276.33122,560.48402 C 287.64046,561.65196 297.77986,562.69848 309.08956,563.86812 L 306.05442,554.07301 C 305.5635,552.36568 306.18695,550.46033 307.46656,549.38586 L 339.77636,520.99383 L 332.93273,517.77324 C 329.92708,516.70804 330.73274,514.94239 331.73188,510.69395 L 336.41241,491.59785 L 317.44075,496.10559 C 315.58624,496.43093 314.32569,495.21739 314.02396,494.04672 L 311.42792,485.13719 L 296.6668,503.01734 C 294.57288,505.87347 290.23369,505.94673 291.47593,499.40191 L 297.30411,463.59431 L 288.75423,468.41151 C 286.35484,469.86336 283.93569,470.13869 282.54066,467.63552"
-       id="maple_leaf"
-       style="opacity:0.25000000000000000;fill:url(#linearGradient3873);fill-opacity:1" />
-    <g
-       id="g3867"
-       transform="matrix(0.9325595,0,0,0.9325595,15.86115,36.626535)">
-      <path
-         style="opacity:0.32000002;fill:#000000;fill-opacity:1"
-         d="M 324.6064,576.10592 C 324.02996,577.62486 318.05867,583.27138 315.27265,584.93202 L 312.1928,586.7678 L 299.5209,570.25386 L 286.84899,553.73994 L 289.03019,551.47895 C 291.16481,549.26622 297.56985,544.96795 299.65197,544.35092 C 300.55595,544.08302 302.37761,546.22382 312.77007,559.7672 C 319.40765,568.41724 324.73401,575.76967 324.6064,576.10592 z M 261.18093,493.71856 C 260.70464,494.9736 253.16932,501.39752 250.71354,502.64209 L 248.48238,503.7728 L 235.99299,487.20322 L 223.50359,470.63363 L 227.80379,467.08656 C 230.16891,465.13567 233.27042,463.05802 234.69603,462.46955 L 237.28805,461.39961 L 249.38455,477.16367 C 257.49505,487.73321 261.38216,493.18832 261.18093,493.71856 z M 309.95137,588.3053 C 309.87124,588.51609 308.475,589.36418 306.84862,590.18996 C 294.06756,596.67941 273.5256,589.04036 254.18672,570.60633 C 247.34174,564.0816 233.22165,546.60297 227.64357,537.74972 C 216.87902,520.66478 211.81677,506.32102 211.96598,493.32766 C 212.0591,485.21872 214.72047,478.3767 219.49284,473.97704 L 221.12923,472.46844 L 233.682,488.58283 L 246.23478,504.69722 L 245.21952,506.45575 C 243.81718,508.8847 244.07084,512.0704 246.05254,516.91749 C 248.53966,523.00079 268.27193,548.70275 273.56577,552.75442 C 277.72586,555.93837 280.28512,556.86788 283.36104,556.31202 L 285.53918,555.9184 L 297.81812,571.92023 C 304.57154,580.72124 310.03151,588.09451 309.95137,588.3053 z"
-         id="path3760" />
-      <path
-         id="path3218"
-         d="M 330.6064,570.10592 C 330.02996,571.62486 324.05867,577.27138 321.27265,578.93202 L 318.1928,580.7678 L 305.5209,564.25386 L 292.84899,547.73994 L 295.03019,545.47895 C 297.16481,543.26622 303.56985,538.96795 305.65197,538.35092 C 306.55595,538.08302 308.37761,540.22382 318.77007,553.7672 C 325.40765,562.41724 330.73401,569.76967 330.6064,570.10592 z M 267.18093,487.71856 C 266.70464,488.9736 259.16932,495.39752 256.71354,496.64209 L 254.48238,497.7728 L 241.99299,481.20322 L 229.50359,464.63363 L 233.80379,461.08656 C 236.16891,459.13567 239.27042,457.05802 240.69603,456.46955 L 243.28805,455.39961 L 255.38455,471.16367 C 263.49505,481.73321 267.38216,487.18832 267.18093,487.71856 z M 315.95137,582.3053 C 315.87124,582.51609 314.475,583.36418 312.84862,584.18996 C 300.06756,590.67941 279.5256,583.04036 260.18672,564.60633 C 253.34174,558.0816 239.22165,540.60297 233.64357,531.74972 C 222.87902,514.66478 217.81677,500.32102 217.96598,487.32766 C 218.0591,479.21872 220.72047,472.3767 225.49284,467.97704 L 227.12923,466.46844 L 239.682,482.58283 L 252.23478,498.69722 L 251.21952,500.45575 C 249.81718,502.8847 250.07084,506.0704 252.05254,510.91749 C 254.53966,517.00079 274.27193,542.70275 279.56577,546.75442 C 283.72586,549.93837 286.28512,550.86788 289.36104,550.31202 L 291.53918,549.9184 L 303.81812,565.92023 C 310.57154,574.72124 316.03151,582.09451 315.95137,582.3053 z"
-         style="fill:#ffffff;fill-opacity:1" />
-    </g>
-  </g>
-</svg>
diff --git a/sflphone-client-gnome/pixmaps/sflphone2.svg b/sflphone-client-gnome/pixmaps/sflphone2.svg
deleted file mode 100644
index 3e06bcdaf85aeba01f32cb5557b75b0a869da133..0000000000000000000000000000000000000000
--- a/sflphone-client-gnome/pixmaps/sflphone2.svg
+++ /dev/null
@@ -1,232 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
-<svg
-   xmlns:dc="http://purl.org/dc/elements/1.1/"
-   xmlns:cc="http://creativecommons.org/ns#"
-   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
-   xmlns:svg="http://www.w3.org/2000/svg"
-   xmlns="http://www.w3.org/2000/svg"
-   xmlns:xlink="http://www.w3.org/1999/xlink"
-   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
-   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
-   width="184.25197"
-   height="184.25197"
-   id="svg5875"
-   sodipodi:version="0.32"
-   inkscape:version="0.46"
-   version="1.0"
-   sodipodi:docname="sflphone2.svg"
-   inkscape:output_extension="org.inkscape.output.svg.inkscape">
-  <defs
-     id="defs5877">
-    <linearGradient
-       inkscape:collect="always"
-       id="linearGradient3289">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop3291" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop3293" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       id="linearGradient3859">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop3861" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop3863" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       id="linearGradient5850">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop5852" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop5854" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient5850"
-       id="linearGradient5856"
-       x1="476.3125"
-       y1="439.0293"
-       x2="477.3125"
-       y2="514.42188"
-       gradientUnits="userSpaceOnUse" />
-    <linearGradient
-       inkscape:collect="always"
-       id="linearGradient4999">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop5001" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop5003" />
-    </linearGradient>
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient4999"
-       id="linearGradient5862"
-       gradientUnits="userSpaceOnUse"
-       x1="627.14612"
-       y1="621.8194"
-       x2="919.63519"
-       y2="331.63492" />
-    <linearGradient
-       inkscape:collect="always"
-       id="linearGradient4991">
-      <stop
-         style="stop-color:#ffffff;stop-opacity:1;"
-         offset="0"
-         id="stop4993" />
-      <stop
-         style="stop-color:#ffffff;stop-opacity:0;"
-         offset="1"
-         id="stop4995" />
-    </linearGradient>
-    <radialGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient4991"
-       id="radialGradient4997"
-       cx="736.5"
-       cy="640.93073"
-       fx="736.5"
-       fy="640.93073"
-       r="91.964203"
-       gradientTransform="matrix(1,0,0,0.8097086,0,99.14184)"
-       gradientUnits="userSpaceOnUse" />
-    <inkscape:perspective
-       sodipodi:type="inkscape:persp3d"
-       inkscape:vp_x="0 : 526.18109 : 1"
-       inkscape:vp_y="0 : 1000 : 0"
-       inkscape:vp_z="744.09448 : 526.18109 : 1"
-       inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
-       id="perspective5883" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient3859"
-       id="linearGradient3873"
-       x1="352.19498"
-       y1="451.55289"
-       x2="106.34038"
-       y2="658.39594"
-       gradientUnits="userSpaceOnUse" />
-    <linearGradient
-       inkscape:collect="always"
-       xlink:href="#linearGradient3289"
-       id="linearGradient3295"
-       x1="360.56229"
-       y1="442.35855"
-       x2="127.47931"
-       y2="627.84052"
-       gradientUnits="userSpaceOnUse"
-       gradientTransform="matrix(1.1006682,0,0,1.1006682,-32.206826,-52.058551)" />
-  </defs>
-  <sodipodi:namedview
-     id="base"
-     pagecolor="#ffffff"
-     bordercolor="#666666"
-     borderopacity="1.0"
-     gridtolerance="10000"
-     guidetolerance="10"
-     objecttolerance="10"
-     inkscape:pageopacity="0.0"
-     inkscape:pageshadow="2"
-     inkscape:zoom="1.0162714"
-     inkscape:cx="-150.04476"
-     inkscape:cy="-40.803184"
-     inkscape:document-units="px"
-     inkscape:current-layer="layer1"
-     showgrid="false"
-     inkscape:window-width="1920"
-     inkscape:window-height="1087"
-     inkscape:window-x="0"
-     inkscape:window-y="61" />
-  <metadata
-     id="metadata5880">
-    <rdf:RDF>
-      <cc:Work
-         rdf:about="">
-        <dc:format>image/svg+xml</dc:format>
-        <dc:type
-           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
-        <dc:title>Icône SFL</dc:title>
-        <dc:date>2009-04-29</dc:date>
-        <dc:creator>
-          <cc:Agent>
-            <dc:title>Jérôme Oufella</dc:title>
-          </cc:Agent>
-        </dc:creator>
-        <dc:rights>
-          <cc:Agent>
-            <dc:title>(c) 2009 Savoir-faire Linux inc.</dc:title>
-          </cc:Agent>
-        </dc:rights>
-        <dc:subject>
-          <rdf:Bag>
-            <rdf:li>sfl icon</rdf:li>
-          </rdf:Bag>
-        </dc:subject>
-      </cc:Work>
-    </rdf:RDF>
-  </metadata>
-  <g
-     inkscape:label="Layer 1"
-     inkscape:groupmode="layer"
-     id="layer1"
-     transform="translate(-182.15973,-428.80763)">
-    <g
-       id="g5868"
-       transform="translate(-234.84028,-6.9404095)">
-      <path
-         transform="matrix(0.9959566,0,0,1.2202117,1.6861043,-136.53125)"
-         d="M 602,544.5 A 92.5,75.5 0 1 1 417,544.5 A 92.5,75.5 0 1 1 602,544.5 z"
-         sodipodi:ry="75.5"
-         sodipodi:rx="92.5"
-         sodipodi:cy="544.5"
-         sodipodi:cx="509.5"
-         id="path4987"
-         style="fill:#006f82;fill-opacity:1;fill-rule:evenodd"
-         sodipodi:type="arc" />
-      <path
-         transform="matrix(0.9200853,0,0,1.1406537,-168.51683,-66.406557)"
-         d="M 827,521 A 90.5,73 0 1 1 646,521 A 90.5,73 0 1 1 827,521 z"
-         sodipodi:ry="73"
-         sodipodi:rx="90.5"
-         sodipodi:cy="521"
-         sodipodi:cx="736.5"
-         id="path4989"
-         style="fill:url(#radialGradient4997);fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient5862);stroke-width:2.92839932000000003;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;opacity:0.83064516"
-         sodipodi:type="arc" />
-    </g>
-    <g
-       id="g3867"
-       transform="matrix(0.9325595,0,0,0.9325595,15.86115,36.626535)">
-      <path
-         style="opacity:0.32000002;fill:#000000;fill-opacity:1"
-         d="M 324.6064,576.10592 C 324.02996,577.62486 318.05867,583.27138 315.27265,584.93202 L 312.1928,586.7678 L 299.5209,570.25386 L 286.84899,553.73994 L 289.03019,551.47895 C 291.16481,549.26622 297.56985,544.96795 299.65197,544.35092 C 300.55595,544.08302 302.37761,546.22382 312.77007,559.7672 C 319.40765,568.41724 324.73401,575.76967 324.6064,576.10592 z M 261.18093,493.71856 C 260.70464,494.9736 253.16932,501.39752 250.71354,502.64209 L 248.48238,503.7728 L 235.99299,487.20322 L 223.50359,470.63363 L 227.80379,467.08656 C 230.16891,465.13567 233.27042,463.05802 234.69603,462.46955 L 237.28805,461.39961 L 249.38455,477.16367 C 257.49505,487.73321 261.38216,493.18832 261.18093,493.71856 z M 309.95137,588.3053 C 309.87124,588.51609 308.475,589.36418 306.84862,590.18996 C 294.06756,596.67941 273.5256,589.04036 254.18672,570.60633 C 247.34174,564.0816 233.22165,546.60297 227.64357,537.74972 C 216.87902,520.66478 211.81677,506.32102 211.96598,493.32766 C 212.0591,485.21872 214.72047,478.3767 219.49284,473.97704 L 221.12923,472.46844 L 233.682,488.58283 L 246.23478,504.69722 L 245.21952,506.45575 C 243.81718,508.8847 244.07084,512.0704 246.05254,516.91749 C 248.53966,523.00079 268.27193,548.70275 273.56577,552.75442 C 277.72586,555.93837 280.28512,556.86788 283.36104,556.31202 L 285.53918,555.9184 L 297.81812,571.92023 C 304.57154,580.72124 310.03151,588.09451 309.95137,588.3053 z"
-         id="path3760" />
-      <path
-         id="path3218"
-         d="M 330.6064,570.10592 C 330.02996,571.62486 324.05867,577.27138 321.27265,578.93202 L 318.1928,580.7678 L 305.5209,564.25386 L 292.84899,547.73994 L 295.03019,545.47895 C 297.16481,543.26622 303.56985,538.96795 305.65197,538.35092 C 306.55595,538.08302 308.37761,540.22382 318.77007,553.7672 C 325.40765,562.41724 330.73401,569.76967 330.6064,570.10592 z M 267.18093,487.71856 C 266.70464,488.9736 259.16932,495.39752 256.71354,496.64209 L 254.48238,497.7728 L 241.99299,481.20322 L 229.50359,464.63363 L 233.80379,461.08656 C 236.16891,459.13567 239.27042,457.05802 240.69603,456.46955 L 243.28805,455.39961 L 255.38455,471.16367 C 263.49505,481.73321 267.38216,487.18832 267.18093,487.71856 z M 315.95137,582.3053 C 315.87124,582.51609 314.475,583.36418 312.84862,584.18996 C 300.06756,590.67941 279.5256,583.04036 260.18672,564.60633 C 253.34174,558.0816 239.22165,540.60297 233.64357,531.74972 C 222.87902,514.66478 217.81677,500.32102 217.96598,487.32766 C 218.0591,479.21872 220.72047,472.3767 225.49284,467.97704 L 227.12923,466.46844 L 239.682,482.58283 L 252.23478,498.69722 L 251.21952,500.45575 C 249.81718,502.8847 250.07084,506.0704 252.05254,510.91749 C 254.53966,517.00079 274.27193,542.70275 279.56577,546.75442 C 283.72586,549.93837 286.28512,550.86788 289.36104,550.31202 L 291.53918,549.9184 L 303.81812,565.92023 C 310.57154,574.72124 316.03151,582.09451 315.95137,582.3053 z"
-         style="fill:#ffffff;fill-opacity:1" />
-    </g>
-    <path
-       id="Upper_right_fleur-de-lis_1_"
-       style="opacity:0.25;fill:url(#linearGradient3295);fill-opacity:1;fill-rule:evenodd"
-       d="M 313.82159,550.0952 C 316.41492,546.2383 316.19867,537.79506 311.01041,534.81444 C 307.04215,532.83112 302.56394,533.60734 300.47088,535.31471 C 297.10134,537.35289 293.85443,543.8709 293.85443,550.47122 L 305.49132,550.4567 L 305.49132,563.44914 L 281.34128,563.43623 C 281.65273,570.11885 285.29984,575.47172 292.08251,578.45235 C 291.20624,581.26838 287.11534,587.00855 281.50105,586.61962 C 280.39399,592.69385 279.33536,596.10375 274.28911,601.62284 C 269.23962,596.10536 268.18422,592.69385 267.07718,586.61962 C 261.45803,587.00855 257.36552,581.26838 256.49248,578.45235 C 263.27513,575.47172 266.92225,570.11885 267.23371,563.43623 L 243.0869,563.44914 L 243.08367,550.4567 L 254.72055,550.47122 C 254.72055,543.8709 251.47365,537.35289 248.10086,535.31471 C 246.00781,533.60895 241.5296,532.83274 237.56781,534.81444 C 232.37953,537.79506 232.15845,546.23992 234.75017,550.0952 C 210.24994,545.546 212.68026,521.88493 221.02667,513.29484 C 227.77223,506.35563 235.12457,505.27118 240.79535,507.45945 C 253.6829,512.07966 262.35045,527.47503 262.77326,550.47122 L 269.51235,550.47122 C 269.51235,529.56645 265.87492,522.9016 256.39725,496.64559 C 251.62211,484.23732 254.48979,468.89684 263.02178,454.77153 C 266.07987,449.70914 269.89643,445.13894 274.28588,440.24438 C 278.67048,445.13894 282.48705,449.70914 285.54836,454.77153 C 294.07714,468.89684 296.94803,484.23732 292.17612,496.64559 C 282.69522,522.9016 279.05456,529.56485 279.05456,550.47122 L 285.79366,550.47122 C 286.21969,527.47503 294.88724,512.07966 307.77157,507.45945 C 313.44236,505.2728 320.79792,506.35563 327.54347,513.29484 C 335.89148,521.88493 338.32183,545.546 313.82159,550.0952 z" />
-  </g>
-</svg>
diff --git a/sflphone-client-gnome/pixmaps/sflphone_notif.svg b/sflphone-client-gnome/pixmaps/sflphone_notif.svg
new file mode 100644
index 0000000000000000000000000000000000000000..a8cf1fa4a3db700d247d508ad2b32c5c483eaa63
--- /dev/null
+++ b/sflphone-client-gnome/pixmaps/sflphone_notif.svg
@@ -0,0 +1,373 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="120"
+   height="120"
+   id="svg5875"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   version="1.0"
+   sodipodi:docname="sflphone_tray4.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape">
+  <defs
+     id="defs5877">
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient3803">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop3805" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop3807" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient4684">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop4686" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop4688" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient4669">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop4671" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop4673" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient3859">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop3861" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop3863" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient5850">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop5852" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop5854" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5850"
+       id="linearGradient5856"
+       x1="476.3125"
+       y1="439.0293"
+       x2="477.3125"
+       y2="514.42188"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient4999">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop5001" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop5003" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4999"
+       id="linearGradient5862"
+       gradientUnits="userSpaceOnUse"
+       x1="698.38525"
+       y1="245.5472"
+       x2="702.81964"
+       y2="977.78302" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient4991">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop4993" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop4995" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4991"
+       id="radialGradient4997"
+       cx="736.5"
+       cy="640.93073"
+       fx="736.5"
+       fy="640.93073"
+       r="91.964203"
+       gradientTransform="matrix(1,0,0,0.8097086,0,99.14184)"
+       gradientUnits="userSpaceOnUse" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 526.18109 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="744.09448 : 526.18109 : 1"
+       inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
+       id="perspective5883" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3859"
+       id="linearGradient3873"
+       x1="352.19498"
+       y1="451.55289"
+       x2="106.34038"
+       y2="658.39594"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(-3.8268196,-1.7394634)" />
+    <inkscape:perspective
+       id="perspective2422"
+       inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
+       inkscape:vp_z="744.09448 : 526.18109 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 526.18109 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <inkscape:perspective
+       id="perspective2437"
+       inkscape:persp3d-origin="168.5 : 109.33333 : 1"
+       inkscape:vp_z="337 : 164 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 164 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4669"
+       id="linearGradient4675"
+       x1="-20.657925"
+       y1="-244.41351"
+       x2="184.57913"
+       y2="789.61469"
+       gradientUnits="userSpaceOnUse"
+       spreadMethod="pad" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4684"
+       id="linearGradient4690"
+       x1="52.987782"
+       y1="-84.148399"
+       x2="127.02813"
+       y2="99.500687"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4669"
+       id="linearGradient5149"
+       gradientUnits="userSpaceOnUse"
+       spreadMethod="pad"
+       x1="-20.657925"
+       y1="-244.41351"
+       x2="184.57913"
+       y2="789.61469" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4991"
+       id="radialGradient5297"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,0.8097086,0,99.14184)"
+       cx="736.5"
+       cy="640.93073"
+       fx="736.5"
+       fy="640.93073"
+       r="91.964203" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4999"
+       id="linearGradient5299"
+       gradientUnits="userSpaceOnUse"
+       x1="698.38525"
+       y1="245.5472"
+       x2="702.81964"
+       y2="977.78302" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4684"
+       id="linearGradient5301"
+       gradientUnits="userSpaceOnUse"
+       x1="52.987782"
+       y1="-84.148399"
+       x2="127.02813"
+       y2="99.500687" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4684"
+       id="linearGradient5308"
+       gradientUnits="userSpaceOnUse"
+       x1="52.987782"
+       y1="-84.148399"
+       x2="127.02813"
+       y2="99.500687"
+       gradientTransform="matrix(0.6453907,0,0,0.6453907,0.8651337,0.4352828)" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3803"
+       id="linearGradient3809"
+       x1="12.663443"
+       y1="8.5301828"
+       x2="41.858654"
+       y2="57.533279"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.0054518,0,0,1.0054518,-4.7165106e-3,-0.4345682)" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     gridtolerance="10000"
+     guidetolerance="10"
+     objecttolerance="10"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="4.6527672"
+     inkscape:cx="32.869103"
+     inkscape:cy="59.641316"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer2"
+     showgrid="false"
+     inkscape:window-width="1918"
+     inkscape:window-height="1068"
+     inkscape:window-x="0"
+     inkscape:window-y="75"
+     showguides="true"
+     inkscape:guide-bbox="true" />
+  <metadata
+     id="metadata5880">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title>Icône SFL</dc:title>
+        <dc:date>2009-04-29</dc:date>
+        <dc:creator>
+          <cc:Agent>
+            <dc:title>Jérôme Oufella</dc:title>
+          </cc:Agent>
+        </dc:creator>
+        <dc:rights>
+          <cc:Agent>
+            <dc:title>(c) 2009 Savoir-faire Linux inc.</dc:title>
+          </cc:Agent>
+        </dc:rights>
+        <dc:subject>
+          <rdf:Bag>
+            <rdf:li>sfl icon</rdf:li>
+          </rdf:Bag>
+        </dc:subject>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Circle"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(-182.15973,-428.80763)"
+     style="display:inline">
+    <g
+       style="display:inline"
+       id="g5868"
+       transform="matrix(0.6453907,0,0,0.6453907,-86.103074,148.01517)">
+      <path
+         transform="matrix(0.9959566,0,0,1.2202117,1.6861043,-136.53125)"
+         d="M 602,544.5 A 92.5,75.5 0 1 1 417,544.5 A 92.5,75.5 0 1 1 602,544.5 z"
+         sodipodi:ry="75.5"
+         sodipodi:rx="92.5"
+         sodipodi:cy="544.5"
+         sodipodi:cx="509.5"
+         id="path4987"
+         style="fill:#00252b;fill-opacity:1;fill-rule:evenodd"
+         sodipodi:type="arc" />
+      <path
+         transform="matrix(0.9200853,0,0,1.1406537,-168.51683,-66.406557)"
+         d="M 827,521 A 90.5,73 0 1 1 646,521 A 90.5,73 0 1 1 827,521 z"
+         sodipodi:ry="73"
+         sodipodi:rx="90.5"
+         sodipodi:cy="521"
+         sodipodi:cx="736.5"
+         id="path4989"
+         style="opacity:0.83064515;fill:url(#radialGradient5297);fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient5299);stroke-width:2.92839932;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+         sodipodi:type="arc" />
+    </g>
+  </g>
+  <g
+     inkscape:groupmode="layer"
+     id="layer3"
+     inkscape:label="Bg logo"
+     style="display:inline">
+    <path
+       style="opacity:1;fill:#006f82;fill-opacity:0;fill-rule:evenodd;stroke:#00b7df;stroke-width:1.04566979000000004;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:0.94117647;display:inline"
+       d="M 10.55114,62.033695 L 10.545872,59.631821 L 11.329656,63.53366 L 11.321088,59.630621 L 12.621458,63.431585 L 12.611584,58.928074 L 13.657722,64.630914 L 13.897019,55.923735 L 14.696183,66.831029 L 15.959008,53.518653 L 16.252311,69.430662 L 17.258279,56.819227 L 18.052818,65.624884 L 18.551844,57.51777 L 19.347918,67.023975 L 19.833546,52.812112 L 21.424823,71.42421 L 20.85641,47.906685 L 23.760575,76.024188 L 22.924102,48.103639 L 25.312097,76.522171 L 24.213925,47.100857 L 25.814204,69.816155 L 26.299177,55.304046 L 27.10579,69.613998 L 28.100546,51.898595 L 28.133486,66.910282 L 29.383802,47.893475 L 29.17479,70.411424 L 30.42269,50.293743 L 30.995926,76.012977 L 32.479618,45.586876 L 32.810259,78.51213 L 34.022583,42.181821 L 34.623699,80.610954 L 35.567529,39.677469 L 36.17744,82.1097 L 36.856708,38.374457 L 38.250165,84.608465 L 38.159277,43.176196 L 39.275226,80.703832 L 39.72003,47.877458 L 40.557601,76.298395 L 41.022589,52.6792 L 42.361163,73.89372 L 42.575221,53.677574 L 43.394126,73.59189 L 44.128072,54.776031 L 45.197477,71.087148 L 44.64642,55.475777 L 46.746157,70.284115 L 46.201462,57.575013 L 47.766387,64.177753 L 48.157374,33.559644 L 49.574786,63.974798 L 49.737044,29.057192 L 50.608848,64.173352 L 52.072146,33.362224 L 52.237957,82.20545 L 53.618404,31.455993 L 54.269604,83.80121 L 54.704307,28.546169 L 56.569731,89.992521 L 56.233651,27.84325 L 58.106058,92.475088 L 58.237615,25.734393 L 59.462018,94.871346 L 59.308802,25.029251 L 60.997751,97.080654 L 60.859237,25.026847 L 63.348005,99.381156 L 63.493128,47.740542 L 64.432585,95.86912 L 64.276032,51.242071 L 66.685102,98.180342 L 65.570911,52.541084 L 66.563781,98.275324 L 64.993727,25.020443 L 69.064999,96.16276 L 66.029984,26.219775 L 70.373503,94.756118 L 68.436272,27.318084 L 72.677618,93.850086 L 72.234352,27.4111 C 72.234352,27.4111 73.940422,98.363981 74.456142,97.862784 C 74.971847,97.361592 75.595153,28.106441 75.595153,28.106441 L 75.739811,94.046666 L 76.890923,29.805765 L 77.049624,93.24225 L 78.18426,30.404231 L 78.338812,91.945712 L 80.000344,33.704002 L 80.38199,89.886658 L 82.071758,35.602278 L 82.1985,84.464362 L 83.409266,38.505999 L 84.494194,70.81025 L 85.482229,41.108345 L 86.300623,69.703651 L 88.312822,44.609637 L 89.401506,78.617548 L 89.890557,48.126952 L 91.245045,76.60551 L 91.663323,49.515327 L 93.046215,73.100561 L 93.514555,51.012458 L 95.564594,69.900023 L 95.350428,54.413452 L 97.176303,71.094351 L 97.42119,56.012671 L 100.17281,68.095581 L 100.26537,56.803022 L 102.33474,68.598489 L 102.41415,58.300276 L 104.15368,64.27997 L 104.55185,54.777789 L 105.28904,66.085499 L 105.9731,60.189794 C 105.9731,60.189794 107.07326,63.772713 107.07216,63.272322 C 107.07105,62.771937 108.5787,61.082943 108.31828,60.182636 C 108.05791,59.282342 109.41561,62.475103 109.41561,62.475103"
+       id="path4922"
+       sodipodi:nodetypes="ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccscccccccccccccccccccccccccccccccccccc" />
+  </g>
+  <g
+     inkscape:groupmode="layer"
+     id="layer2"
+     inkscape:label="Handset"
+     style="display:inline">
+    <path
+       style="opacity:0.07000002;fill:url(#linearGradient5308);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:12.29699993;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline"
+       d="M 59.151985,7.5345809 C 30.967536,8.249433 8.3274641,31.354675 8.3274641,59.710388 C 8.3274641,68.222065 10.375495,76.246983 13.994802,83.347823 C 13.107834,79.536662 12.643515,75.568677 12.643515,71.488769 C 12.643515,42.682964 36.013519,19.292793 64.819322,19.292793 C 85.110516,19.292792 102.69706,30.904841 111.32779,47.831165 C 105.9454,24.743656 85.222311,7.5345809 60.503272,7.5345809 C 60.05318,7.5345809 59.599356,7.5232342 59.151985,7.5345809 z"
+       id="path4679" />
+    <path
+       id="path3760"
+       d="M 88.906874,94.063359 C 88.559935,94.977556 84.966023,98.376 83.289215,99.375481 L 81.43556,100.48037 L 73.808785,90.541207 L 66.182003,80.602053 L 67.494791,79.241241 C 68.779544,77.909476 72.634516,75.322497 73.887671,74.951128 C 74.431745,74.789888 75.528139,76.078361 81.782999,84.229651 C 85.777928,89.435809 88.983679,93.860981 88.906874,94.063359 z M 50.73329,44.477271 C 50.446627,45.232636 45.91138,49.09897 44.433331,49.848034 L 43.090474,50.528569 L 35.573545,40.555914 L 28.056608,30.583254 L 30.64475,28.448397 C 32.068233,27.274223 33.934924,26.023758 34.792949,25.669578 L 36.352996,25.025619 L 43.633459,34.513458 C 48.514886,40.874896 50.854403,44.158138 50.73329,44.477271 z M 80.086522,101.40574 C 80.038294,101.53261 79.197946,102.04305 78.219084,102.54005 C 70.526609,106.44583 58.163118,101.84815 46.523718,90.753346 C 42.403963,86.826338 33.905571,76.306559 30.548319,70.978095 C 24.069511,60.695264 21.022718,52.062253 21.112522,44.242002 C 21.168568,39.361513 22.770354,35.243539 25.642678,32.595536 L 26.627564,31.687563 L 34.18264,41.386253 L 41.737722,51.084944 L 41.126672,52.143343 C 40.282652,53.605243 40.435321,55.522605 41.628037,58.4399 C 43.124949,62.101227 55.001116,77.570343 58.187294,80.008903 C 60.691108,81.925211 62.231437,82.484651 64.082727,82.150099 L 65.393673,81.913192 L 72.783941,91.544137 C 76.848589,96.841159 80.134755,101.27887 80.086522,101.40574 z"
+       style="opacity:0.32000002;fill:#000000;fill-opacity:1" />
+    <path
+       style="fill:#c82709;fill-opacity:1"
+       d="M 92.518066,90.452167 C 92.171127,91.366364 88.577215,94.764808 86.900407,95.764289 L 85.046752,96.869181 L 77.419976,86.930015 L 69.793194,76.990861 L 71.105983,75.63005 C 72.390736,74.298285 76.245707,71.711305 77.498862,71.339937 C 78.042936,71.178697 79.13933,72.46717 85.394191,80.61846 C 89.389119,85.824618 92.59487,90.24979 92.518066,90.452167 z M 54.344481,40.86608 C 54.057819,41.621444 49.522571,45.487778 48.044523,46.236842 L 46.701666,46.917377 L 39.184735,36.944723 L 31.6678,26.972063 L 34.255941,24.837205 C 35.679425,23.663032 37.546115,22.412566 38.404141,22.058387 L 39.964188,21.414427 L 47.24465,30.902267 C 52.126078,37.263706 54.465594,40.546946 54.344481,40.86608 z M 83.697713,97.79455 C 83.649486,97.921417 82.809137,98.431852 81.830276,98.928861 C 74.137801,102.83464 61.774308,98.236957 50.134909,87.142154 C 46.015154,83.215146 37.516762,72.695367 34.159511,67.366904 C 27.680702,57.084073 24.63391,48.451062 24.723714,40.63081 C 24.77976,35.750321 26.381546,31.632348 29.253869,28.984346 L 30.238755,28.076371 L 37.793832,37.775063 L 45.348913,47.473754 L 44.737863,48.532152 C 43.893844,49.994052 44.046513,51.911414 45.239229,54.828709 C 46.73614,58.490035 58.612307,73.959152 61.798485,76.397711 C 64.3023,78.31402 65.842629,78.87346 67.693918,78.538907 L 69.004865,78.302 L 76.395132,87.932945 C 80.459781,93.229968 83.745947,97.667682 83.697713,97.79455 z"
+       id="path3218" />
+    <g
+       transform="matrix(0.6018652,0,0,0.6018652,-106.46243,-252.67476)"
+       id="g3787"
+       style="fill:#ffffff;fill-opacity:0">
+      <path
+         id="path3789"
+         d="M 324.6064,576.10592 C 324.02996,577.62486 318.05867,583.27138 315.27265,584.93202 L 312.1928,586.7678 L 299.5209,570.25386 L 286.84899,553.73994 L 289.03019,551.47895 C 291.16481,549.26622 297.56985,544.96795 299.65197,544.35092 C 300.55595,544.08302 302.37761,546.22382 312.77007,559.7672 C 319.40765,568.41724 324.73401,575.76967 324.6064,576.10592 z M 261.18093,493.71856 C 260.70464,494.9736 253.16932,501.39752 250.71354,502.64209 L 248.48238,503.7728 L 235.99299,487.20322 L 223.50359,470.63363 L 227.80379,467.08656 C 230.16891,465.13567 233.27042,463.05802 234.69603,462.46955 L 237.28805,461.39961 L 249.38455,477.16367 C 257.49505,487.73321 261.38216,493.18832 261.18093,493.71856 z M 309.95137,588.3053 C 309.87124,588.51609 308.475,589.36418 306.84862,590.18996 C 294.06756,596.67941 273.5256,589.04036 254.18672,570.60633 C 247.34174,564.0816 233.22165,546.60297 227.64357,537.74972 C 216.87902,520.66478 211.81677,506.32102 211.96598,493.32766 C 212.0591,485.21872 214.72047,478.3767 219.49284,473.97704 L 221.12923,472.46844 L 233.682,488.58283 L 246.23478,504.69722 L 245.21952,506.45575 C 243.81718,508.8847 244.07084,512.0704 246.05254,516.91749 C 248.53966,523.00079 268.27193,548.70275 273.56577,552.75442 C 277.72586,555.93837 280.28512,556.86788 283.36104,556.31202 L 285.53918,555.9184 L 297.81812,571.92023 C 304.57154,580.72124 310.03151,588.09451 309.95137,588.3053 z"
+         style="opacity:0.32000002;fill:#ffffff;fill-opacity:0" />
+      <path
+         style="fill:#ffffff;fill-opacity:0"
+         d="M 330.6064,570.10592 C 330.02996,571.62486 324.05867,577.27138 321.27265,578.93202 L 318.1928,580.7678 L 305.5209,564.25386 L 292.84899,547.73994 L 295.03019,545.47895 C 297.16481,543.26622 303.56985,538.96795 305.65197,538.35092 C 306.55595,538.08302 308.37761,540.22382 318.77007,553.7672 C 325.40765,562.41724 330.73401,569.76967 330.6064,570.10592 z M 267.18093,487.71856 C 266.70464,488.9736 259.16932,495.39752 256.71354,496.64209 L 254.48238,497.7728 L 241.99299,481.20322 L 229.50359,464.63363 L 233.80379,461.08656 C 236.16891,459.13567 239.27042,457.05802 240.69603,456.46955 L 243.28805,455.39961 L 255.38455,471.16367 C 263.49505,481.73321 267.38216,487.18832 267.18093,487.71856 z M 315.95137,582.3053 C 315.87124,582.51609 314.475,583.36418 312.84862,584.18996 C 300.06756,590.67941 279.5256,583.04036 260.18672,564.60633 C 253.34174,558.0816 239.22165,540.60297 233.64357,531.74972 C 222.87902,514.66478 217.81677,500.32102 217.96598,487.32766 C 218.0591,479.21872 220.72047,472.3767 225.49284,467.97704 L 227.12923,466.46844 L 239.682,482.58283 L 252.23478,498.69722 L 251.21952,500.45575 C 249.81718,502.8847 250.07084,506.0704 252.05254,510.91749 C 254.53966,517.00079 274.27193,542.70275 279.56577,546.75442 C 283.72586,549.93837 286.28512,550.86788 289.36104,550.31202 L 291.53918,549.9184 L 303.81812,565.92023 C 310.57154,574.72124 316.03151,582.09451 315.95137,582.3053 z"
+         id="path3791" />
+    </g>
+    <path
+       style="fill:url(#linearGradient3809);fill-opacity:1;stroke:none"
+       d="M 39.961991,21.402587 L 38.390972,22.062415 C 37.532947,22.416594 35.666967,23.653234 34.243484,24.827407 L 31.667014,26.963992 L 39.176482,36.955669 L 43.166868,42.23429 C 44.833493,39.007648 46.844812,36.037923 49.105318,33.342326 C 48.501731,32.545758 47.962788,31.818462 47.251516,30.891538 L 39.961991,21.402587 z M 30.253097,28.063705 L 29.247645,28.974895 C 26.375322,31.622897 24.779157,35.751365 24.723113,40.631852 C 24.633309,48.452104 27.670415,57.087755 34.149223,67.370584 C 35.036506,68.778836 36.301396,70.544757 37.731145,72.460684 C 37.518951,70.51226 37.385521,68.535071 37.385521,66.522234 C 37.385521,58.29228 39.192461,50.526372 42.412779,43.742468 L 37.793985,37.772598 L 30.253097,28.063705 z"
+       id="path3798" />
+  </g>
+</svg>
diff --git a/sflphone-client-gnome/pixmaps/sflphone_small.svg b/sflphone-client-gnome/pixmaps/sflphone_small.svg
new file mode 100644
index 0000000000000000000000000000000000000000..eb4154c3de093bd2da6f8b413370e085fb4c76bb
--- /dev/null
+++ b/sflphone-client-gnome/pixmaps/sflphone_small.svg
@@ -0,0 +1,373 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="60"
+   height="60"
+   id="svg5875"
+   sodipodi:version="0.32"
+   inkscape:version="0.46"
+   version="1.0"
+   sodipodi:docname="sflphone_small.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape">
+  <defs
+     id="defs5877">
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient3803">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop3805" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop3807" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient4684">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop4686" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop4688" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient4669">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop4671" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop4673" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient3859">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop3861" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop3863" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient5850">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop5852" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop5854" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5850"
+       id="linearGradient5856"
+       x1="476.3125"
+       y1="439.0293"
+       x2="477.3125"
+       y2="514.42188"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient4999">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop5001" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop5003" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4999"
+       id="linearGradient5862"
+       gradientUnits="userSpaceOnUse"
+       x1="698.38525"
+       y1="245.5472"
+       x2="702.81964"
+       y2="977.78302" />
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient4991">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="0"
+         id="stop4993" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0;"
+         offset="1"
+         id="stop4995" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4991"
+       id="radialGradient4997"
+       cx="736.5"
+       cy="640.93073"
+       fx="736.5"
+       fy="640.93073"
+       r="91.964203"
+       gradientTransform="matrix(1,0,0,0.8097086,0,99.14184)"
+       gradientUnits="userSpaceOnUse" />
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 526.18109 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="744.09448 : 526.18109 : 1"
+       inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
+       id="perspective5883" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3859"
+       id="linearGradient3873"
+       x1="352.19498"
+       y1="451.55289"
+       x2="106.34038"
+       y2="658.39594"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(-3.8268196,-1.7394634)" />
+    <inkscape:perspective
+       id="perspective2422"
+       inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
+       inkscape:vp_z="744.09448 : 526.18109 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 526.18109 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <inkscape:perspective
+       id="perspective2437"
+       inkscape:persp3d-origin="168.5 : 109.33333 : 1"
+       inkscape:vp_z="337 : 164 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_x="0 : 164 : 1"
+       sodipodi:type="inkscape:persp3d" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4669"
+       id="linearGradient4675"
+       x1="-20.657925"
+       y1="-244.41351"
+       x2="184.57913"
+       y2="789.61469"
+       gradientUnits="userSpaceOnUse"
+       spreadMethod="pad" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4684"
+       id="linearGradient4690"
+       x1="52.987782"
+       y1="-84.148399"
+       x2="127.02813"
+       y2="99.500687"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4669"
+       id="linearGradient5149"
+       gradientUnits="userSpaceOnUse"
+       spreadMethod="pad"
+       x1="-20.657925"
+       y1="-244.41351"
+       x2="184.57913"
+       y2="789.61469" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4991"
+       id="radialGradient5297"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,0.8097086,0,99.14184)"
+       cx="736.5"
+       cy="640.93073"
+       fx="736.5"
+       fy="640.93073"
+       r="91.964203" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4999"
+       id="linearGradient5299"
+       gradientUnits="userSpaceOnUse"
+       x1="698.38525"
+       y1="245.5472"
+       x2="702.81964"
+       y2="977.78302" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4684"
+       id="linearGradient5301"
+       gradientUnits="userSpaceOnUse"
+       x1="52.987782"
+       y1="-84.148399"
+       x2="127.02813"
+       y2="99.500687" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient4684"
+       id="linearGradient5308"
+       gradientUnits="userSpaceOnUse"
+       x1="52.987782"
+       y1="-84.148399"
+       x2="127.02813"
+       y2="99.500687"
+       gradientTransform="matrix(0.325641,0,0,0.325641,0.2327614,0.2327611)" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3803"
+       id="linearGradient3809"
+       x1="12.663443"
+       y1="8.5301828"
+       x2="41.858654"
+       y2="57.533279"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.507315,0,0,0.507315,-0.2061336,-0.2061349)" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     gridtolerance="10000"
+     guidetolerance="10"
+     objecttolerance="10"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="4.6527672"
+     inkscape:cx="28.248197"
+     inkscape:cy="59.641316"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer2"
+     showgrid="false"
+     inkscape:window-width="1680"
+     inkscape:window-height="1050"
+     inkscape:window-x="0"
+     inkscape:window-y="0"
+     showguides="true"
+     inkscape:guide-bbox="true" />
+  <metadata
+     id="metadata5880">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title>Icône SFL</dc:title>
+        <dc:date>2009-04-29</dc:date>
+        <dc:creator>
+          <cc:Agent>
+            <dc:title>Jérôme Oufella</dc:title>
+          </cc:Agent>
+        </dc:creator>
+        <dc:rights>
+          <cc:Agent>
+            <dc:title>(c) 2009 Savoir-faire Linux inc.</dc:title>
+          </cc:Agent>
+        </dc:rights>
+        <dc:subject>
+          <rdf:Bag>
+            <rdf:li>sfl icon</rdf:li>
+          </rdf:Bag>
+        </dc:subject>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Circle"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(-182.15973,-428.80763)"
+     style="display:inline">
+    <g
+       style="display:inline"
+       id="g5868"
+       transform="matrix(0.325641,0,0,0.325641,46.600177,287.14294)">
+      <path
+         transform="matrix(0.9959566,0,0,1.2202117,1.6861043,-136.53125)"
+         d="M 602,544.5 A 92.5,75.5 0 1 1 417,544.5 A 92.5,75.5 0 1 1 602,544.5 z"
+         sodipodi:ry="75.5"
+         sodipodi:rx="92.5"
+         sodipodi:cy="544.5"
+         sodipodi:cx="509.5"
+         id="path4987"
+         style="fill:#00252b;fill-opacity:1;fill-rule:evenodd"
+         sodipodi:type="arc" />
+      <path
+         transform="matrix(0.9200853,0,0,1.1406537,-168.51683,-66.406557)"
+         d="M 827,521 A 90.5,73 0 1 1 646,521 A 90.5,73 0 1 1 827,521 z"
+         sodipodi:ry="73"
+         sodipodi:rx="90.5"
+         sodipodi:cy="521"
+         sodipodi:cx="736.5"
+         id="path4989"
+         style="opacity:0.83064515;fill:url(#radialGradient5297);fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient5299);stroke-width:2.92839932;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+         sodipodi:type="arc" />
+    </g>
+  </g>
+  <g
+     inkscape:groupmode="layer"
+     id="layer3"
+     inkscape:label="Bg logo"
+     style="display:inline">
+    <path
+       style="opacity:1;fill:#006f82;fill-opacity:0;fill-rule:evenodd;stroke:#006f82;stroke-width:0.5276075;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline"
+       d="M 5.1199734,31.313113 L 5.1173154,30.101213 L 5.5127844,32.069942 L 5.5084614,30.100608 L 6.1645814,32.018438 L 6.1595994,29.746128 L 6.6874434,32.623577 L 6.8081844,28.230246 L 7.2114134,33.733676 L 7.8485894,27.016728 L 7.9965804,35.045358 L 8.5041554,28.682079 L 8.9050514,33.125098 L 9.1568414,29.034539 L 9.5585124,33.83103 L 9.8035424,26.660233 L 10.606444,36.051231 L 10.319643,24.18513 L 11.78498,38.372215 L 11.362926,24.284506 L 12.567823,38.623479 L 12.013725,23.778538 L 12.821168,35.239864 L 13.065868,27.917573 L 13.472856,35.137862 L 13.974774,26.199305 L 13.991395,33.773664 L 14.622259,24.178465 L 14.516799,35.540215 L 15.146445,25.389554 L 15.435679,38.366558 L 16.184297,23.014637 L 16.351127,39.627541 L 16.962822,21.296569 L 17.266124,40.686532 L 17.742346,20.032962 L 18.050086,41.442746 L 18.39282,19.375509 L 19.095908,42.703533 L 19.05005,21.798295 L 19.613117,40.733395 L 19.83755,24.170383 L 20.260158,38.51057 L 20.494774,26.59317 L 21.170171,37.297257 L 21.278177,27.096914 L 21.691367,37.144964 L 22.06169,27.651156 L 22.601273,35.881161 L 22.323229,28.004223 L 23.382682,35.475979 L 23.107848,29.063422 L 23.897453,32.394928 L 24.094731,16.946127 L 24.809906,32.292524 L 24.891776,14.674351 L 25.331657,32.392707 L 26.069985,16.846516 L 26.153647,41.491058 L 26.850171,15.8847 L 27.178743,42.296221 L 27.398079,14.416507 L 28.339305,45.420135 L 28.169731,14.061839 L 29.114481,46.67275 L 29.180859,12.997786 L 29.798649,47.881815 L 29.721342,12.641996 L 30.573525,48.996553 L 30.503636,12.640783 L 31.759379,50.157304 L 31.832603,24.1013 L 32.306619,48.385256 L 32.227628,25.868046 L 33.443159,49.551416 L 32.880978,26.523482 L 33.381944,49.599341 L 32.589752,12.637552 L 34.643969,48.533417 L 33.11261,13.242692 L 35.304194,47.823676 L 34.326736,13.796859 L 36.466768,47.366524 L 36.243111,13.843792 C 36.243111,13.843792 37.103933,49.644074 37.364147,49.391188 C 37.624353,49.138304 37.938851,14.194636 37.938851,14.194636 L 38.01184,47.465711 L 38.59265,15.052054 L 38.672725,47.059832 L 39.245222,15.354018 L 39.323203,46.405645 L 40.161553,17.018965 L 40.354118,45.36672 L 41.206714,17.976767 L 41.270663,42.630824 L 41.881573,19.44188 L 42.428988,35.741448 L 42.927515,20.754931 L 43.340448,35.183098 L 44.355731,22.521558 L 44.905042,39.680731 L 45.1518,24.296269 L 45.835226,38.665529 L 46.046274,24.996793 L 46.744032,36.897057 L 46.980339,25.752192 L 48.014716,35.28218 L 47.906655,27.468211 L 48.827926,35.884795 L 48.951487,28.27512 L 50.339856,34.371724 L 50.386559,28.673903 L 51.430689,34.625473 L 51.470756,29.429364 L 52.348461,32.446503 L 52.549363,27.652043 L 52.921323,33.357508 L 53.266475,30.382747 C 53.266475,30.382747 53.821576,32.190559 53.821021,31.93808 C 53.820461,31.685604 54.581167,30.833398 54.449769,30.379135 C 54.318395,29.924879 55.003442,31.535832 55.003442,31.535832"
+       id="path4922"
+       sodipodi:nodetypes="ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccscccccccccccccccccccccccccccccccccccc" />
+  </g>
+  <g
+     inkscape:groupmode="layer"
+     id="layer2"
+     inkscape:label="Handset"
+     style="display:inline">
+    <path
+       style="opacity:0.07000002;fill:url(#linearGradient5308);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:12.29699993;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;display:inline"
+       d="M 29.642218,3.8148121 C 15.421355,4.1755011 3.9979864,15.833578 3.9979864,30.140856 C 3.9979864,34.435543 5.0313494,38.484629 6.8575214,42.067459 C 6.4099894,40.144483 6.1757104,38.14238 6.1757104,36.083805 C 6.1757104,21.549427 17.967377,9.7475851 32.501753,9.7475851 C 42.739962,9.7475841 51.613502,15.606608 55.968259,24.147025 C 53.252498,12.497895 42.79637,3.8148121 30.324029,3.8148121 C 30.096929,3.8148121 29.867945,3.8090871 29.642218,3.8148121 z"
+       id="path4679" />
+    <path
+       id="path3760"
+       d="M 44.655469,47.474134 C 44.480416,47.935405 42.667056,49.650138 41.820999,50.154441 L 40.885711,50.711928 L 37.037514,45.696982 L 33.189313,40.682041 L 33.851699,39.995424 C 34.499939,39.323463 36.44502,38.018167 37.077317,37.830787 C 37.351837,37.749431 37.905038,38.399548 41.061017,42.512397 C 43.076715,45.139238 44.694222,47.372021 44.655469,47.474134 z M 25.394446,22.45477 C 25.249806,22.8359 22.961483,24.786714 22.215712,25.164665 L 21.538155,25.508039 L 17.745382,20.476194 L 13.952605,15.444347 L 15.258489,14.367175 C 15.976727,13.774729 16.918592,13.143789 17.351521,12.965082 L 18.138665,12.640164 L 21.812126,17.427387 C 24.275119,20.637141 25.455555,22.293747 25.394446,22.45477 z M 40.205035,51.178837 C 40.180701,51.242851 39.756691,51.5004 39.262793,51.751169 C 35.381446,53.721885 29.143271,51.402061 23.270447,45.80402 C 21.191766,43.822593 16.903782,38.514689 15.209833,35.826137 C 11.940859,30.637789 10.403556,26.281881 10.448868,22.336062 C 10.477147,19.873542 11.28535,17.79576 12.734622,16.459673 L 13.23156,16.001542 L 17.043581,20.895153 L 20.855605,25.788765 L 20.547291,26.322796 C 20.121429,27.060418 20.19846,28.02785 20.800262,29.499813 C 21.55555,31.347187 27.547838,39.152349 29.155469,40.382759 C 30.418804,41.349659 31.195999,41.631933 32.130094,41.46313 L 32.79155,41.343595 L 36.520414,46.203025 C 38.57129,48.875713 40.229372,51.114823 40.205035,51.178837 z"
+       style="opacity:0.32000002;fill:#000000;fill-opacity:1" />
+    <path
+       style="fill:#dfdfdf;fill-opacity:1"
+       d="M 46.477547,45.652056 C 46.302494,46.113327 44.489134,47.82806 43.643077,48.332363 L 42.707789,48.889851 L 38.859591,43.874904 L 35.011391,38.859963 L 35.673777,38.173347 C 36.322017,37.501386 38.267097,36.196088 38.899395,36.008709 C 39.173915,35.927353 39.727116,36.577471 42.883095,40.69032 C 44.898792,43.317161 46.516299,45.549944 46.477547,45.652056 z M 27.216524,20.632693 C 27.071884,21.013822 24.783561,22.964636 24.037791,23.342587 L 23.360233,23.68596 L 19.567459,18.654116 L 15.774683,13.622269 L 17.080566,12.545097 C 17.798805,11.952651 18.74067,11.321711 19.173599,11.143005 L 19.960743,10.818085 L 23.634203,15.60531 C 26.097197,18.815064 27.277633,20.471669 27.216524,20.632693 z M 42.027113,49.356759 C 42.002779,49.420772 41.578769,49.678319 41.084871,49.929092 C 37.203524,51.899808 30.965348,49.579982 25.092524,43.981942 C 23.013844,42.000514 18.72586,36.692611 17.031911,34.004059 C 13.762936,28.815711 12.225634,24.459803 12.270946,20.513984 C 12.299225,18.051464 13.107429,15.973682 14.5567,14.637595 L 15.053638,14.179464 L 18.865659,19.073076 L 22.677682,23.966688 L 22.369368,24.500718 C 21.943507,25.23834 22.020538,26.205773 22.62234,27.677735 C 23.377627,29.525109 29.369916,37.330271 30.977547,38.560681 C 32.240882,39.527582 33.018077,39.809855 33.952171,39.641052 L 34.613628,39.521517 L 38.342492,44.380947 C 40.393368,47.053635 42.05145,49.292746 42.027113,49.356759 z"
+       id="path3218" />
+    <g
+       transform="matrix(0.3036796,0,0,0.3036796,-53.920882,-127.4775)"
+       id="g3787"
+       style="fill:#ffffff;fill-opacity:0">
+      <path
+         id="path3789"
+         d="M 324.6064,576.10592 C 324.02996,577.62486 318.05867,583.27138 315.27265,584.93202 L 312.1928,586.7678 L 299.5209,570.25386 L 286.84899,553.73994 L 289.03019,551.47895 C 291.16481,549.26622 297.56985,544.96795 299.65197,544.35092 C 300.55595,544.08302 302.37761,546.22382 312.77007,559.7672 C 319.40765,568.41724 324.73401,575.76967 324.6064,576.10592 z M 261.18093,493.71856 C 260.70464,494.9736 253.16932,501.39752 250.71354,502.64209 L 248.48238,503.7728 L 235.99299,487.20322 L 223.50359,470.63363 L 227.80379,467.08656 C 230.16891,465.13567 233.27042,463.05802 234.69603,462.46955 L 237.28805,461.39961 L 249.38455,477.16367 C 257.49505,487.73321 261.38216,493.18832 261.18093,493.71856 z M 309.95137,588.3053 C 309.87124,588.51609 308.475,589.36418 306.84862,590.18996 C 294.06756,596.67941 273.5256,589.04036 254.18672,570.60633 C 247.34174,564.0816 233.22165,546.60297 227.64357,537.74972 C 216.87902,520.66478 211.81677,506.32102 211.96598,493.32766 C 212.0591,485.21872 214.72047,478.3767 219.49284,473.97704 L 221.12923,472.46844 L 233.682,488.58283 L 246.23478,504.69722 L 245.21952,506.45575 C 243.81718,508.8847 244.07084,512.0704 246.05254,516.91749 C 248.53966,523.00079 268.27193,548.70275 273.56577,552.75442 C 277.72586,555.93837 280.28512,556.86788 283.36104,556.31202 L 285.53918,555.9184 L 297.81812,571.92023 C 304.57154,580.72124 310.03151,588.09451 309.95137,588.3053 z"
+         style="opacity:0.32000002;fill:#ffffff;fill-opacity:0" />
+      <path
+         style="fill:#ffffff;fill-opacity:0"
+         d="M 330.6064,570.10592 C 330.02996,571.62486 324.05867,577.27138 321.27265,578.93202 L 318.1928,580.7678 L 305.5209,564.25386 L 292.84899,547.73994 L 295.03019,545.47895 C 297.16481,543.26622 303.56985,538.96795 305.65197,538.35092 C 306.55595,538.08302 308.37761,540.22382 318.77007,553.7672 C 325.40765,562.41724 330.73401,569.76967 330.6064,570.10592 z M 267.18093,487.71856 C 266.70464,488.9736 259.16932,495.39752 256.71354,496.64209 L 254.48238,497.7728 L 241.99299,481.20322 L 229.50359,464.63363 L 233.80379,461.08656 C 236.16891,459.13567 239.27042,457.05802 240.69603,456.46955 L 243.28805,455.39961 L 255.38455,471.16367 C 263.49505,481.73321 267.38216,487.18832 267.18093,487.71856 z M 315.95137,582.3053 C 315.87124,582.51609 314.475,583.36418 312.84862,584.18996 C 300.06756,590.67941 279.5256,583.04036 260.18672,564.60633 C 253.34174,558.0816 239.22165,540.60297 233.64357,531.74972 C 222.87902,514.66478 217.81677,500.32102 217.96598,487.32766 C 218.0591,479.21872 220.72047,472.3767 225.49284,467.97704 L 227.12923,466.46844 L 239.682,482.58283 L 252.23478,498.69722 L 251.21952,500.45575 C 249.81718,502.8847 250.07084,506.0704 252.05254,510.91749 C 254.53966,517.00079 274.27193,542.70275 279.56577,546.75442 C 283.72586,549.93837 286.28512,550.86788 289.36104,550.31202 L 291.53918,549.9184 L 303.81812,565.92023 C 310.57154,574.72124 316.03151,582.09451 315.95137,582.3053 z"
+         id="path3791" />
+    </g>
+    <path
+       style="fill:url(#linearGradient3809);fill-opacity:1;stroke:none"
+       d="M 19.959634,10.812111 L 19.166955,11.145037 C 18.734026,11.323743 17.792519,11.947707 17.074281,12.540153 L 15.774286,13.618197 L 19.563295,18.659639 L 21.576701,21.323043 C 22.41762,19.694995 23.432459,18.196578 24.57303,16.836476 C 24.268481,16.434556 23.99655,16.067589 23.637668,15.599896 L 19.959634,10.812111 z M 15.060874,14.173073 L 14.553559,14.632827 C 13.104288,15.968914 12.29892,18.051991 12.270643,20.51451 C 12.225331,24.460329 13.757746,28.817569 17.02672,34.005916 C 17.474411,34.71647 18.112629,35.60749 18.83403,36.574198 C 18.726964,35.591093 18.65964,34.593474 18.65964,33.577869 C 18.65964,29.425329 19.571357,25.50693 21.196214,22.084015 L 18.865736,19.071833 L 15.060874,14.173073 z"
+       id="path3798" />
+  </g>
+</svg>
diff --git a/sflphone-client-gnome/sflphone.desktop.in b/sflphone-client-gnome/sflphone.desktop.in
index 08ecbcb01ccc18ae7210b4e0da5bfb8c9a9c8267..2fde3130f21d8ac551f24c7e3f4ab1598fe6bb1c 100644
--- a/sflphone-client-gnome/sflphone.desktop.in
+++ b/sflphone-client-gnome/sflphone.desktop.in
@@ -4,7 +4,7 @@ Name=SFLphone GNOME VoIP client
 GenericName=Telephone
 Comment=Call and receive calls with SIP or IAX protocols
 Exec=sflphone-client-gnome
-Icon=sflphone1.svg
+Icon=sflphone.svg
 StartupNotify=true
 Terminal=false
 Type=Application
diff --git a/sflphone-client-gnome/src/accountlist.c b/sflphone-client-gnome/src/accountlist.c
index 3a0959c810e496c3ff9a199d67ee60a0e386322d..8a6cbe26b7f867bc681db5eb24689967afd1c585 100644
--- a/sflphone-client-gnome/src/accountlist.c
+++ b/sflphone-client-gnome/src/accountlist.c
@@ -23,7 +23,6 @@
 #include <string.h>
 
 GQueue * accountQueue;
-gchar* __CURRENT_ACCOUNT_ID = NULL;
 
 /* GCompareFunc to compare a accountID (gchar* and a account_t) */
 gint
@@ -129,23 +128,35 @@ account_list_get_nth ( guint n )
 account_t*
 account_list_get_current( )
 {
-  if( __CURRENT_ACCOUNT_ID != NULL  )
-    return account_list_get_by_id( __CURRENT_ACCOUNT_ID );
-  else
-    return NULL;
-}
-
-void
-account_list_set_current_id(const gchar * accountID)
-{
-  DEBUG("set current id = %s", accountID);
-  __CURRENT_ACCOUNT_ID = g_strdup(accountID);
+    account_t *current;
+    
+    // No account registered
+    if (account_list_get_registered_accounts () == 0)
+        return NULL;
+
+    // if we are here, it means that we have at least one registered account in the list
+    // So we get the first one
+    current = account_list_get_by_state (ACCOUNT_STATE_REGISTERED);
+    if (!current)
+        return NULL;
+
+    return current;
 }
 
-void
-account_list_set_current_pos( guint n)
+void account_list_set_current (account_t *current)
 {
-  __CURRENT_ACCOUNT_ID = account_list_get_nth(n)->accountID;
+    gpointer acc;
+    guint pos;
+
+    // 2 steps:
+    // 1 - retrieve the index of the current account in the Queue
+    // 2 - then set it as first
+    pos = account_list_get_position (current);
+    if (pos > 0)
+    {
+		acc = g_queue_pop_nth(accountQueue, pos);
+		g_queue_push_nth(accountQueue, acc, 0);
+    }
 }
 
 
@@ -198,12 +209,13 @@ account_list_clear ( )
 void
 account_list_move_up(guint index)
 {
+    DEBUG ("index  = %i\n", index);
+
 	if(index != 0)
 	{
 		gpointer acc = g_queue_pop_nth(accountQueue, index);
 		g_queue_push_nth(accountQueue, acc, index-1);
 	}
-	account_list_set_current_pos( 0 );
 }
 
 void
@@ -214,7 +226,6 @@ account_list_move_down(guint index)
 		gpointer acc = g_queue_pop_nth(accountQueue, index);
 		g_queue_push_nth(accountQueue, acc, index+1);
 	}
-	account_list_set_current_pos( 0 );
 }
 
 guint
@@ -232,10 +243,14 @@ account_list_get_registered_accounts( void )
 }
 
 gchar* account_list_get_current_id( void ){
-        if( __CURRENT_ACCOUNT_ID == NULL )
-            return "";
-        else
-            return __CURRENT_ACCOUNT_ID;
+
+    account_t *current;
+
+    current = account_list_get_current ();
+    if (current)
+        return current->accountID;
+    else
+        return "";
 }
 
 int account_list_get_sip_account_number( void ){
@@ -283,3 +298,40 @@ gchar * account_list_get_ordered_list (void) {
     }
     return order;
 }
+
+
+guint account_list_get_position (account_t *account) 
+{
+    guint size, i;
+    account_t *tmp;
+
+    size = account_list_get_size ();
+    for (i=0; i<size; i++)
+    {
+        tmp = account_list_get_nth (i);
+        if (g_strcasecmp (tmp->accountID, account->accountID) == 0)
+        {
+            return i;
+        }
+    }
+    // Not found
+    return -1;
+}
+
+gboolean account_list_current_account_has_mailbox (void)
+{
+
+    account_t *current;
+
+    // Check if the current account has a voicemail number configured
+
+    current = account_list_get_current ();
+    if (current)
+    {
+        if (g_strcasecmp (g_hash_table_lookup (current->properties, ACCOUNT_MAILBOX), "") != 0)
+            return TRUE;
+    }
+    
+    return FALSE;
+}
+
diff --git a/sflphone-client-gnome/src/accountlist.h b/sflphone-client-gnome/src/accountlist.h
index 6456e521d09fa99859a57fcd8e29cf7ba0eeecfb..f60fd702951b225535097bd1bcf917defd580337 100644
--- a/sflphone-client-gnome/src/accountlist.h
+++ b/sflphone-client-gnome/src/accountlist.h
@@ -125,15 +125,9 @@ account_t * account_list_get_current( );
 
 /** 
  * This function sets an account as the current one
- * @param accountID The ID of the current account
+ * @param current the account you want to set as current
  */
-void account_list_set_current_id(const gchar * accountID);
-
-/** 
- * This function sets an account as the current one
- * @param n the position of the account you want to use
- */
-void account_list_set_current_pos( guint n );
+void account_list_set_current (account_t *current);
 
 /** 
  * This function maps account_state_t enums to a description.
@@ -184,5 +178,8 @@ int account_list_get_iax_account_number( void );
 
 gchar * account_list_get_ordered_list (void);
 
+guint account_list_get_position (account_t *account);
+
+gboolean account_list_current_account_has_mailbox (void);
 
 #endif 
diff --git a/sflphone-client-gnome/src/actions.c b/sflphone-client-gnome/src/actions.c
index 02c8f215d334bc3a2a079b0ee2b3ca3af47c3fe5..120024a7c3d8eb8fc9e1463c25212bbcc1828a76 100644
--- a/sflphone-client-gnome/src/actions.c
+++ b/sflphone-client-gnome/src/actions.c
@@ -78,12 +78,16 @@ status_bar_display_account ()
 
     acc = account_list_get_current ();
     if(acc){
-        msg = g_markup_printf_escaped(_("%s account- %s") ,
-                (gchar*)g_hash_table_lookup( acc->properties , ACCOUNT_TYPE),
-                (gchar*)g_hash_table_lookup( acc->properties , ACCOUNT_ALIAS));
-        statusbar_push_message( msg , __MSG_ACCOUNT_DEFAULT);
-        g_free(msg);
+        msg = g_markup_printf_escaped(_("Using %s (%s)") ,
+                (gchar*)g_hash_table_lookup( acc->properties , ACCOUNT_ALIAS),
+                (gchar*)g_hash_table_lookup( acc->properties , ACCOUNT_TYPE));
     }
+    else
+    {
+        msg = g_markup_printf_escaped(_("No registered account"));
+    }
+    statusbar_push_message( msg , __MSG_ACCOUNT_DEFAULT);
+    g_free(msg);
 }
 
 
@@ -235,7 +239,6 @@ gboolean sflphone_init()
         codec_list_init();
         sflphone_fill_account_list(FALSE);
         sflphone_fill_codec_list();
-        sflphone_set_current_account();
         return TRUE;
     }
 }
@@ -291,7 +294,7 @@ sflphone_hang_up()
     void
 sflphone_pick_up()
 {
-
+    DEBUG("sflphone_pick_up\n");
     call_t * selectedCall = calltab_get_selected_call(active_calltree);
     if(selectedCall)
     {
@@ -325,6 +328,10 @@ sflphone_pick_up()
                 break;
         }
     }
+    else {
+        sflphone_new_call();
+    }
+    
 }
 
     void
@@ -533,6 +540,8 @@ sflphone_new_call()
     call_t *c;
     gchar *from, *to;
 
+
+    DEBUG("sflphone_new_call\n");
     sflphone_on_hold();
 
     // Play a tone when creating a new call
@@ -554,6 +563,7 @@ sflphone_new_call()
     void
 sflphone_keypad( guint keyval, gchar * key)
 {
+    DEBUG("sflphone_keypad \n");
     call_t * c = calltab_get_selected_call(current_calls);
 
     if((active_calltree != current_calls) || (active_calltree == current_calls && !c))
@@ -578,6 +588,7 @@ sflphone_keypad( guint keyval, gchar * key)
         switch(c->state)
         {
             case CALL_STATE_DIALING: // Currently dialing => edit number
+                DEBUG("Writing a number\n");
                 process_dialing(c, keyval, key);
                 break;
             case CALL_STATE_RECORD:
@@ -667,6 +678,10 @@ sflphone_keypad( guint keyval, gchar * key)
             default:
                 break;
         }
+        
+    }
+    else {
+      sflphone_new_call();
     }
 }
 
@@ -680,8 +695,7 @@ sflphone_keypad( guint keyval, gchar * key)
 sflphone_place_call ( call_t * c )
 {
 
-
-    if (c->state == CALL_STATE_DIALING && g_str_has_prefix (c->to, "ip:"))
+    if (c->state == CALL_STATE_DIALING && g_str_has_prefix (c->to, "sip:"))
     {
         dbus_place_call (c);
     }
@@ -736,7 +750,6 @@ sflphone_place_call ( call_t * c )
                         c -> accountID = current -> accountID;
                         dbus_place_call(c);
                         notify_current_account( current );
-                        account_list_set_current_id( c-> accountID );
                     }
                 }
                 else
@@ -749,7 +762,6 @@ sflphone_place_call ( call_t * c )
                     c -> accountID = current -> accountID;
                     dbus_place_call(c);
                     notify_current_account( current );
-                    account_list_set_current_id( c-> accountID );
                 }
             }
             // Update history
@@ -775,9 +787,9 @@ sflphone_display_selected_codec (const gchar* codecName)
                 msg = g_markup_printf_escaped (_("IP call - %s"), codecName);
             }
             else {
-                msg = g_markup_printf_escaped(_("%s account- %s             %s") ,
-                    (gchar*)g_hash_table_lookup( acc->properties , ACCOUNT_TYPE),
+                msg = g_markup_printf_escaped(_("Using %s (%s) - Codec: %s") ,
                     (gchar*)g_hash_table_lookup( acc->properties , ACCOUNT_ALIAS),
+                    (gchar*)g_hash_table_lookup( acc->properties , ACCOUNT_TYPE),
                     codecName);
             }
             statusbar_push_message( msg , __MSG_ACCOUNT_DEFAULT);
@@ -819,15 +831,6 @@ sflphone_rec_call()
     // DEBUG("sflphone_get_current_codec_name: %s",codname);
 }
 
-/* Internal to action - set the __CURRENT_ACCOUNT variable */
-    void
-sflphone_set_current_account()
-{
-    if( account_list_get_size() > 0 )
-        account_list_set_current_pos( 0 );
-}
-
-
 /* Internal to action - get the codec list */
     void
 sflphone_fill_codec_list()
diff --git a/sflphone-client-gnome/src/assistant.c b/sflphone-client-gnome/src/assistant.c
index 463ef4f441d14212bf247fa803ef7538d566ebae..374ea0539f25d960555f18f4ee8c30c826c6d21b 100644
--- a/sflphone-client-gnome/src/assistant.c
+++ b/sflphone-client-gnome/src/assistant.c
@@ -32,7 +32,7 @@
 
 #define SFLPHONE_ORG_SERVER "sip.sflphone.org"
 #define SFLPHONE_ORG_ALIAS "sflphone.org"
-#define MESSAGE_SUMMARY _("This assistant is now finished.\nYou can at any time check your registration state or modify your accounts parameters in the Options/Accounts window.\n\nAlias :    %s\nServer :   %s\nUsername : %s\nPassword : %s")
+#define MESSAGE_SUMMARY _("This assistant is now finished.\nYou can at any time check your registration state or modify your accounts parameters in the Options/Accounts window.\n\nAlias :    %s\nServer :   %s\nUsername : %s\n")
 
 
 struct _wizard *wiz;
@@ -72,6 +72,8 @@ void set_sflphone_org( GtkWidget* widget , gpointer data UNUSED ) {
 static void close_callback( void ) {
 	gtk_widget_destroy(wiz->assistant);
 	g_free(wiz); wiz = NULL;
+
+    status_bar_display_account ();
 }
 
 /**
@@ -81,6 +83,8 @@ static void close_callback( void ) {
 static void cancel_callback( void ) {
 	gtk_widget_destroy(wiz->assistant);
 	g_free(wiz); wiz = NULL;
+    
+    status_bar_display_account ();
 }
 
 /**
@@ -95,7 +99,7 @@ static void sip_apply_callback( void ) {
 	if( account_type == _SIP ) {
 		g_hash_table_insert(current->properties, g_strdup(ACCOUNT_ALIAS), g_strdup((gchar *)gtk_entry_get_text(GTK_ENTRY(wiz->sip_alias))));
 		g_hash_table_insert(current->properties, g_strdup(ACCOUNT_ENABLED), g_strdup("TRUE"));
-		g_hash_table_insert(current->properties, g_strdup(ACCOUNT_MAILBOX), g_strdup("888"));
+		g_hash_table_insert(current->properties, g_strdup(ACCOUNT_MAILBOX), g_strdup((gchar *)gtk_entry_get_text(GTK_ENTRY(wiz->sip_voicemail))));
 		g_hash_table_insert(current->properties, g_strdup(ACCOUNT_TYPE), g_strdup("SIP"));
 		g_hash_table_insert(current->properties, g_strdup(ACCOUNT_HOSTNAME), g_strdup((gchar *)gtk_entry_get_text(GTK_ENTRY(wiz->sip_server))));
 		g_hash_table_insert(current->properties, g_strdup(ACCOUNT_PASSWORD), g_strdup((gchar *)gtk_entry_get_text(GTK_ENTRY(wiz->sip_password))));
@@ -104,12 +108,11 @@ static void sip_apply_callback( void ) {
 		g_hash_table_insert(current->properties, g_strdup(ACCOUNT_SIP_STUN_SERVER), g_strdup((gchar *)gtk_entry_get_text(GTK_ENTRY(wiz->addr))));
 
 		dbus_add_account( current );
-		account_list_set_current_id( current->accountID );
         	sprintf(message, MESSAGE_SUMMARY,
 			gtk_entry_get_text (GTK_ENTRY(wiz->sip_alias)),
 			gtk_entry_get_text (GTK_ENTRY(wiz->sip_server)),
-			gtk_entry_get_text (GTK_ENTRY(wiz->sip_username)),
-			gtk_entry_get_text (GTK_ENTRY(wiz->sip_password))
+			gtk_entry_get_text (GTK_ENTRY(wiz->sip_username))
+                       	// gtk_entry_get_text (GTK_ENTRY(wiz->sip_password))
 				) ;
 	gtk_label_set_text (GTK_LABEL(wiz->label_summary), message);
 	}
@@ -123,18 +126,17 @@ static void iax_apply_callback( void ) {
 	if( account_type == _IAX) {
 		g_hash_table_insert(current->properties, g_strdup(ACCOUNT_ALIAS), g_strdup((gchar *)gtk_entry_get_text(GTK_ENTRY(wiz->iax_alias))));
 		g_hash_table_insert(current->properties, g_strdup(ACCOUNT_ENABLED), g_strdup("TRUE"));
-		g_hash_table_insert(current->properties, g_strdup(ACCOUNT_MAILBOX), g_strdup("888"));
+		g_hash_table_insert(current->properties, g_strdup(ACCOUNT_MAILBOX), g_strdup((gchar *)gtk_entry_get_text(GTK_ENTRY(wiz->iax_voicemail))));
 		g_hash_table_insert(current->properties, g_strdup(ACCOUNT_TYPE), g_strdup("IAX"));
 		g_hash_table_insert(current->properties, g_strdup(ACCOUNT_USERNAME), g_strdup((gchar *)gtk_entry_get_text(GTK_ENTRY(wiz->iax_username))));
 		g_hash_table_insert(current->properties, g_strdup(ACCOUNT_HOSTNAME), g_strdup((gchar *)gtk_entry_get_text(GTK_ENTRY(wiz->iax_server))));
 		g_hash_table_insert(current->properties, g_strdup(ACCOUNT_PASSWORD), g_strdup((gchar *)gtk_entry_get_text(GTK_ENTRY(wiz->iax_password))));
 		dbus_add_account( current );
-		account_list_set_current_id( current->accountID );
         	sprintf(message, MESSAGE_SUMMARY,
 			gtk_entry_get_text (GTK_ENTRY(wiz->iax_alias)),
 			gtk_entry_get_text (GTK_ENTRY(wiz->iax_server)),
 			gtk_entry_get_text (GTK_ENTRY(wiz->iax_username)),
-			gtk_entry_get_text (GTK_ENTRY(wiz->iax_password))
+		        gtk_entry_get_text (GTK_ENTRY(wiz->iax_password))
 			) ;
 		gtk_label_set_text (GTK_LABEL(wiz->label_summary), message);
 	}
@@ -233,7 +235,7 @@ GtkWidget* build_sip_account_configuration( void ) {
 
 	wiz->sip_account = create_vbox( GTK_ASSISTANT_PAGE_CONTENT , _("SIP account configuration") , _("Please fill the following information:"));
 	// table
-	table = gtk_table_new ( 4, 2  ,  FALSE/* homogeneous */);
+	table = gtk_table_new ( 5, 2  ,  FALSE/* homogeneous */);
 	gtk_table_set_row_spacings( GTK_TABLE(table), 10);
 	gtk_table_set_col_spacings( GTK_TABLE(table), 10);
 	gtk_box_pack_start( GTK_BOX(wiz->sip_account) , table , TRUE, TRUE, 0);
@@ -270,6 +272,7 @@ GtkWidget* build_sip_account_configuration( void ) {
 	gtk_table_attach ( GTK_TABLE( table ), wiz->sip_username, 1, 2, 2, 3, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
 
 	// password field
+        
 	label = gtk_label_new_with_mnemonic (_("_Password"));
 	gtk_table_attach ( GTK_TABLE( table ), label, 0, 1, 3, 4, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
 	gtk_misc_set_alignment(GTK_MISC (label), 0, 0.5);
@@ -277,6 +280,8 @@ GtkWidget* build_sip_account_configuration( void ) {
 	wiz->sip_password = gtk_entry_new();
     gtk_entry_set_icon_from_stock (GTK_ENTRY (wiz->sip_password), GTK_ENTRY_ICON_PRIMARY, GTK_STOCK_DIALOG_AUTHENTICATION);
 #else
+        
+
 	wiz->sip_password = sexy_icon_entry_new();
 	image = gtk_image_new_from_stock( GTK_STOCK_DIALOG_AUTHENTICATION , GTK_ICON_SIZE_SMALL_TOOLBAR );
 	sexy_icon_entry_set_icon( SEXY_ICON_ENTRY(wiz->sip_password), SEXY_ICON_ENTRY_PRIMARY , GTK_IMAGE(image) );
@@ -285,6 +290,14 @@ GtkWidget* build_sip_account_configuration( void ) {
 	gtk_entry_set_visibility(GTK_ENTRY(wiz->sip_password), FALSE);
 	gtk_table_attach ( GTK_TABLE( table ), wiz->sip_password, 1, 2, 3, 4, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
 
+    // voicemail number field
+	label = gtk_label_new_with_mnemonic (_("_Voicemail number"));
+	gtk_table_attach ( GTK_TABLE( table ), label, 0, 1, 4, 5, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
+	gtk_misc_set_alignment(GTK_MISC (label), 0, 0.5);
+	wiz->sip_voicemail = gtk_entry_new();
+	gtk_label_set_mnemonic_widget (GTK_LABEL (label), wiz->sip_voicemail);
+	gtk_table_attach ( GTK_TABLE( table ), wiz->sip_voicemail, 1, 2, 4, 5, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
+
 	//gtk_assistant_set_page_complete(GTK_ASSISTANT(wiz->assistant),  wiz->sip_account, TRUE);
 	return wiz->sip_account;
 }
@@ -318,7 +331,7 @@ GtkWidget* build_iax_account_configuration( void ) {
 
 	wiz->iax_account = create_vbox( GTK_ASSISTANT_PAGE_CONFIRM , _("IAX2 account configuration") , _("Please fill the following information:"));
 
-	table = gtk_table_new ( 4, 2  ,  FALSE/* homogeneous */);
+	table = gtk_table_new ( 5, 2  ,  FALSE/* homogeneous */);
 	gtk_table_set_row_spacings( GTK_TABLE(table), 10);
 	gtk_table_set_col_spacings( GTK_TABLE(table), 10);
 	gtk_box_pack_start( GTK_BOX(wiz->iax_account) , table , TRUE, TRUE, 0);
@@ -370,6 +383,13 @@ GtkWidget* build_iax_account_configuration( void ) {
 	gtk_entry_set_visibility(GTK_ENTRY(wiz->iax_password), FALSE);
 	gtk_table_attach ( GTK_TABLE( table ), wiz->iax_password, 1, 2, 3, 4, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
 
+    // voicemail number field
+	label = gtk_label_new_with_mnemonic (_("_Voicemail number"));
+	gtk_table_attach ( GTK_TABLE( table ), label, 0, 1, 4, 5, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
+	gtk_misc_set_alignment(GTK_MISC (label), 0, 0.5);
+	wiz->iax_voicemail = gtk_entry_new();
+	gtk_label_set_mnemonic_widget (GTK_LABEL (label), wiz->iax_voicemail);
+	gtk_table_attach ( GTK_TABLE( table ), wiz->iax_voicemail, 1, 2, 4, 5, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
 
 	current -> state = ACCOUNT_STATE_UNREGISTERED;
 
diff --git a/sflphone-client-gnome/src/assistant.h b/sflphone-client-gnome/src/assistant.h
index cbadb2592bf7a80ff840a997ee43a05bf7de1565..9b4f712c922a2ad77fdc72cd57a2a28bd081b841 100644
--- a/sflphone-client-gnome/src/assistant.h
+++ b/sflphone-client-gnome/src/assistant.h
@@ -49,6 +49,7 @@ struct _wizard
   GtkWidget *sip_server;
   GtkWidget *sip_username;
   GtkWidget *sip_password;
+  GtkWidget *sip_voicemail;
   GtkWidget *test;
   GtkWidget *state;
   GtkWidget *mailbox;
@@ -58,6 +59,7 @@ struct _wizard
   GtkWidget *iax_server;
   GtkWidget *iax_username;
   GtkWidget *iax_password;
+  GtkWidget *iax_voicemail;
   /** Page 4 - Nat detection */
   GtkWidget *nat;
   GtkWidget *enable;
diff --git a/sflphone-client-gnome/src/codeclist.c b/sflphone-client-gnome/src/codeclist.c
index ea9fa22ade1e8dc0f5177834974ecb3c831e23b5..cd90fb4efa217090663702eb1cd1075c2e7ab08b 100644
--- a/sflphone-client-gnome/src/codeclist.c
+++ b/sflphone-client-gnome/src/codeclist.c
@@ -62,7 +62,6 @@ codec_list_clear ()
 void
 codec_list_add(codec_t * c)
 {
-  g_print ("add %s codec\n", c->name);
   g_queue_push_tail (codecQueue, (gpointer *) c);
 }
 
diff --git a/sflphone-client-gnome/src/config/Makefile.am b/sflphone-client-gnome/src/config/Makefile.am
index 8f8bbbc8abf9b634627cbcb1fbef63cd90fb0016..d2a0801af9154651004b25c1b3cdfec0f21e0921 100644
--- a/sflphone-client-gnome/src/config/Makefile.am
+++ b/sflphone-client-gnome/src/config/Makefile.am
@@ -7,7 +7,8 @@ libconfig_la_SOURCES = \
   configwindow.c \
   accountwindow.c \
   hooks-config.c \
-  audioconf.c 
+  audioconf.c \
+  utils.c
 
 libconfig_la_LDFLAGS = @DEPS_LDFLAGS@
 					  
diff --git a/sflphone-client-gnome/src/config/accountwindow.c b/sflphone-client-gnome/src/config/accountwindow.c
index 9b807cad064a36effa709baa658b3f9b3c2daf17..1058d295b609e592fbcac13245afca95399cda38 100644
--- a/sflphone-client-gnome/src/config/accountwindow.c
+++ b/sflphone-client-gnome/src/config/accountwindow.c
@@ -84,7 +84,7 @@ show_account_window (account_t * a)
     gchar * curHostname = "";
     gchar * curPassword = "";
     /* TODO: add curProxy, and add boxes for Proxy support */
-    gchar * curMailbox = "888";
+    gchar * curMailbox = "";
 
     // Load from SIP/IAX/Unknown ?
     if(a)
@@ -117,7 +117,7 @@ show_account_window (account_t * a)
     gtk_dialog_set_has_separator(dialog, TRUE);
     gtk_container_set_border_width (GTK_CONTAINER(dialog), 0);
 
-    frame = gtk_frame_new(_("Account parameters"));
+    gnome_main_section_new (_("Account Parameters"), &frame);
     gtk_box_pack_start(GTK_BOX(dialog->vbox), frame, FALSE, FALSE, 0);
     gtk_widget_show(frame);
 
@@ -231,19 +231,6 @@ show_account_window (account_t * a)
     gtk_widget_show_all( table );
     gtk_container_set_border_width (GTK_CONTAINER(table), 10);
 
-    // Toggle enabled/disabled widgets
-    if (strcmp(curAccountType, "SIP") == 0) {
-        //gtk_widget_set_sesitive( GTK_WIDGET(entryUserPart), TRUE);<
-    }
-    else if (strcmp(curAccountType, "IAX") == 0) {
-        //gtk_widget_set_sensitive( GTK_WIDGET(stunEnable), FALSE);
-        //gtk_widget_set_sensitive( GTK_WIDGET(stunServer), FALSE);
-    }
-    else {
-        // Disable everything ! ouch!
-        // Shouldn't get there.
-    }
-
     response = gtk_dialog_run (GTK_DIALOG (dialog));
     if(response == GTK_RESPONSE_ACCEPT)
     {
@@ -309,11 +296,9 @@ show_account_window (account_t * a)
         /** @todo Verify if it's the best condition to check */
         if (currentAccount->accountID == NULL) {
             dbus_add_account(currentAccount);
-            account_list_set_current_id( currentAccount->accountID );
         }
         else {
             dbus_set_account_details(currentAccount);
-            account_list_set_current_id( currentAccount->accountID);
         }
     }
     gtk_widget_destroy (GTK_WIDGET(dialog));
diff --git a/sflphone-client-gnome/src/config/addressbook-config.c b/sflphone-client-gnome/src/config/addressbook-config.c
index 9851ce64338fb884ca94fbcc4610ea90508bf913..a9f0eae296cb912d9bbbf9779f282f201abe2333 100644
--- a/sflphone-client-gnome/src/config/addressbook-config.c
+++ b/sflphone-client-gnome/src/config/addressbook-config.c
@@ -27,108 +27,119 @@ GtkWidget *book_tree_view;
 
 enum
 {
-  COLUMN_BOOK_ACTIVE, COLUMN_BOOK_NAME, COLUMN_BOOK_UID
+    COLUMN_BOOK_ACTIVE, COLUMN_BOOK_NAME, COLUMN_BOOK_UID
 };
 
-void
+    void
 addressbook_config_load_parameters(AddressBook_Config **settings)
 {
 
-  GHashTable *_params = NULL;
-  AddressBook_Config *_settings;
+    GHashTable *_params = NULL;
+    AddressBook_Config *_settings;
 
-  // Allocate a struct
-  _settings = g_new0 (AddressBook_Config, 1);
+    // Allocate a struct
+    _settings = g_new0 (AddressBook_Config, 1);
 
-  // Fetch the settings from D-Bus
-  _params = (GHashTable*) dbus_get_addressbook_settings();
+    // Fetch the settings from D-Bus
+    _params = (GHashTable*) dbus_get_addressbook_settings();
 
-  if (_params == NULL)
+    if (_params == NULL)
     {
-      _settings->max_results = 30;
-      _settings->display_contact_photo = 0;
-      _settings->search_phone_business = 1;
-      _settings->search_phone_home = 1;
-      _settings->search_phone_mobile = 1;
+        _settings->enable = 1;
+        _settings->max_results = 30;
+        _settings->display_contact_photo = 0;
+        _settings->search_phone_business = 1;
+        _settings->search_phone_home = 1;
+        _settings->search_phone_mobile = 1;
     }
-  else
+    else
     {
-      _settings->max_results = (guint) (g_hash_table_lookup(_params,
-          ADDRESSBOOK_MAX_RESULTS));
-      _settings->display_contact_photo = (guint) (g_hash_table_lookup(_params,
-          ADDRESSBOOK_DISPLAY_CONTACT_PHOTO));
-      _settings->search_phone_business = (guint) (g_hash_table_lookup(_params,
-          ADDRESSBOOK_DISPLAY_PHONE_BUSINESS));
-      _settings->search_phone_home = (guint) (g_hash_table_lookup(_params,
-          ADDRESSBOOK_DISPLAY_PHONE_HOME));
-      _settings->search_phone_mobile = (guint) (g_hash_table_lookup(_params,
-          ADDRESSBOOK_DISPLAY_PHONE_MOBILE));
+        _settings->enable = (guint) (g_hash_table_lookup (_params, 
+                    ADDRESSBOOK_ENABLE));
+        _settings->max_results = (guint) (g_hash_table_lookup(_params,
+                    ADDRESSBOOK_MAX_RESULTS));
+        _settings->display_contact_photo = (guint) (g_hash_table_lookup(_params,
+                    ADDRESSBOOK_DISPLAY_CONTACT_PHOTO));
+        _settings->search_phone_business = (guint) (g_hash_table_lookup(_params,
+                    ADDRESSBOOK_DISPLAY_PHONE_BUSINESS));
+        _settings->search_phone_home = (guint) (g_hash_table_lookup(_params,
+                    ADDRESSBOOK_DISPLAY_PHONE_HOME));
+        _settings->search_phone_mobile = (guint) (g_hash_table_lookup(_params,
+                    ADDRESSBOOK_DISPLAY_PHONE_MOBILE));
     }
 
-  *settings = _settings;
+    *settings = _settings;
 }
 
-void
+    void
 addressbook_config_save_parameters(void)
 {
 
-  GHashTable *params = NULL;
-
-  params = g_hash_table_new(NULL, g_str_equal);
-  g_hash_table_replace(params, (gpointer) ADDRESSBOOK_MAX_RESULTS,
-      (gpointer) addressbook_config->max_results);
-  g_hash_table_replace(params, (gpointer) ADDRESSBOOK_DISPLAY_CONTACT_PHOTO,
-      (gpointer) addressbook_config->display_contact_photo);
-  g_hash_table_replace(params, (gpointer) ADDRESSBOOK_DISPLAY_PHONE_BUSINESS,
-      (gpointer) addressbook_config->search_phone_business);
-  g_hash_table_replace(params, (gpointer) ADDRESSBOOK_DISPLAY_PHONE_HOME,
-      (gpointer) addressbook_config->search_phone_home);
-  g_hash_table_replace(params, (gpointer) ADDRESSBOOK_DISPLAY_PHONE_MOBILE,
-      (gpointer) addressbook_config->search_phone_mobile);
-
-  dbus_set_addressbook_settings(params);
-
-  // Decrement the reference count
-  g_hash_table_unref(params);
+    GHashTable *params = NULL;
+
+    params = g_hash_table_new(NULL, g_str_equal);
+    g_hash_table_replace(params, (gpointer) ADDRESSBOOK_ENABLE,
+            (gpointer) addressbook_config->enable);
+    g_hash_table_replace(params, (gpointer) ADDRESSBOOK_MAX_RESULTS,
+            (gpointer) addressbook_config->max_results);
+    g_hash_table_replace(params, (gpointer) ADDRESSBOOK_DISPLAY_CONTACT_PHOTO,
+            (gpointer) addressbook_config->display_contact_photo);
+    g_hash_table_replace(params, (gpointer) ADDRESSBOOK_DISPLAY_PHONE_BUSINESS,
+            (gpointer) addressbook_config->search_phone_business);
+    g_hash_table_replace(params, (gpointer) ADDRESSBOOK_DISPLAY_PHONE_HOME,
+            (gpointer) addressbook_config->search_phone_home);
+    g_hash_table_replace(params, (gpointer) ADDRESSBOOK_DISPLAY_PHONE_MOBILE,
+            (gpointer) addressbook_config->search_phone_mobile);
+
+    dbus_set_addressbook_settings(params);
+
+    // Decrement the reference count
+    g_hash_table_unref(params);
 }
 
-static void
-max_results_cb(GtkRange* scale)
+    static void
+enable_cb (GtkWidget *widget)
 {
+    addressbook_config->enable
+        = (guint) gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widget));
+}
 
-  addressbook_config->max_results = (guint) gtk_range_get_value(GTK_RANGE (scale));
+    static void
+max_results_cb (GtkSpinButton *button)
+{
+    addressbook_config->max_results = gtk_spin_button_get_value_as_int(button);
 }
 
-static void
+    static void
 display_contact_photo_cb(GtkWidget *widget)
 {
 
-  addressbook_config->display_contact_photo
-      = (guint) gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widget));
+    addressbook_config->display_contact_photo
+        = (guint) gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widget));
 }
 
-static void
+    static void
 search_phone_business_cb(GtkWidget *widget)
 {
 
-  addressbook_config->search_phone_business
-      = (guint) gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widget));
+    addressbook_config->search_phone_business
+        = (guint) gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widget));
 }
 
-static void
+    static void
 search_phone_home_cb(GtkWidget *widget)
 {
 
-  addressbook_config->search_phone_home = (guint) gtk_toggle_button_get_active(
-      GTK_TOGGLE_BUTTON(widget));
+    addressbook_config->search_phone_home = (guint) gtk_toggle_button_get_active(
+            GTK_TOGGLE_BUTTON(widget));
 }
 
-static void
+    static void
 search_phone_mobile_cb(GtkWidget *widget)
 {
 
-  addressbook_config->search_phone_mobile
-      = (guint) gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widget));
+    addressbook_config->search_phone_mobile
+        = (guint) gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widget));
 }
 
 /**
@@ -137,240 +148,265 @@ search_phone_mobile_cb(GtkWidget *widget)
  */
 static void
 addressbook_config_book_active_toggled(
-    GtkCellRendererToggle *renderer UNUSED, gchar *path, gpointer data)
+        GtkCellRendererToggle *renderer UNUSED, gchar *path, gpointer data)
 {
-  GtkTreeIter iter;
-  GtkTreePath *treePath;
-  GtkTreeModel *model;
-  gboolean active;
-  gchar* name;
-  gchar* uid;
+    GtkTreeIter iter;
+    GtkTreePath *treePath;
+    GtkTreeModel *model;
+    gboolean active;
+    gchar* name;
+    gchar* uid;
 
-  // Get path of clicked book active toggle box
-  treePath = gtk_tree_path_new_from_string(path);
-  model = gtk_tree_view_get_model(GTK_TREE_VIEW(data));
-  gtk_tree_model_get_iter(model, &iter, treePath);
+    // Get path of clicked book active toggle box
+    treePath = gtk_tree_path_new_from_string(path);
+    model = gtk_tree_view_get_model(GTK_TREE_VIEW(data));
+    gtk_tree_model_get_iter(model, &iter, treePath);
 
-  // Get active value  at iteration
-  gtk_tree_model_get(model, &iter, COLUMN_BOOK_ACTIVE, &active,
-      COLUMN_BOOK_UID, &uid, COLUMN_BOOK_NAME, &name, -1);
+    // Get active value  at iteration
+    gtk_tree_model_get(model, &iter, COLUMN_BOOK_ACTIVE, &active,
+            COLUMN_BOOK_UID, &uid, COLUMN_BOOK_NAME, &name, -1);
 
-  // Toggle active value
-  active = !active;
+    // Toggle active value
+    active = !active;
 
-  // Store value
-  gtk_list_store_set(GTK_LIST_STORE(model), &iter, COLUMN_BOOK_ACTIVE, active, -1);
+    // Store value
+    gtk_list_store_set(GTK_LIST_STORE(model), &iter, COLUMN_BOOK_ACTIVE, active, -1);
 
-  gtk_tree_path_free(treePath);
+    gtk_tree_path_free(treePath);
 
-  // Update current memory stored books data
-  books_get_book_data_by_uid(uid)->active = active;
+    // Update current memory stored books data
+    books_get_book_data_by_uid(uid)->active = active;
 
-  // Save data
+    // Save data
 
-  gboolean valid;
+    gboolean valid;
 
-  // Initiate double array char list for one string
-  const gchar** list = (void*) malloc(sizeof(void*));
-  int c = 0;
+    // Initiate double array char list for one string
+    const gchar** list = (void*) malloc(sizeof(void*));
+    int c = 0;
 
-  /* Get the first iter in the list */
-  valid = gtk_tree_model_get_iter_first(model, &iter);
+    /* Get the first iter in the list */
+    valid = gtk_tree_model_get_iter_first(model, &iter);
 
-  while (valid)
+    while (valid)
     {
-      // Get active value at iteration
-      gtk_tree_model_get(model, &iter, COLUMN_BOOK_ACTIVE, &active,
-          COLUMN_BOOK_UID, &uid, COLUMN_BOOK_NAME, &name, -1);
+        // Get active value at iteration
+        gtk_tree_model_get(model, &iter, COLUMN_BOOK_ACTIVE, &active,
+                COLUMN_BOOK_UID, &uid, COLUMN_BOOK_NAME, &name, -1);
 
-      if (active)
+        if (active)
         {
-          // Reallocate memory each time
-          if (c != 0)
-            list = (void*) realloc(list, (c + 1) * sizeof(void*));
+            // Reallocate memory each time
+            if (c != 0)
+                list = (void*) realloc(list, (c + 1) * sizeof(void*));
 
-          *(list + c) = uid;
-          c++;
+            *(list + c) = uid;
+            c++;
         }
 
-      valid = gtk_tree_model_iter_next(model, &iter);
+        valid = gtk_tree_model_iter_next(model, &iter);
     }
 
-  // Allocate NULL array at the end for Dbus
-  list = (void*) realloc(list, (c + 1) * sizeof(void*));
-  *(list + c) = NULL;
+    // Allocate NULL array at the end for Dbus
+    list = (void*) realloc(list, (c + 1) * sizeof(void*));
+    *(list + c) = NULL;
 
-  // Call daemon to store in config file
-  dbus_set_addressbook_list(list);
+    // Call daemon to store in config file
+    dbus_set_addressbook_list(list);
 
-  free(list);
+    free(list);
 }
 
-static void
+    static void
 addressbook_config_fill_book_list()
 {
-  GtkTreeIter list_store_iterator;
-  GSList *book_list_iterator;
-  GtkListStore *store;
-  book_data_t *book_data;
-  GSList *books_data = addressbook_get_books_data();
-
-  // Get model of view and clear it
-  store = GTK_LIST_STORE(gtk_tree_view_get_model(GTK_TREE_VIEW(book_tree_view)));
-  gtk_list_store_clear(store);
-
-  // Populate window
-  for (book_list_iterator = books_data; book_list_iterator != NULL; book_list_iterator
-      = book_list_iterator->next)
+    GtkTreeIter list_store_iterator;
+    GSList *book_list_iterator;
+    GtkListStore *store;
+    book_data_t *book_data;
+    GSList *books_data = addressbook_get_books_data();
+
+    // Get model of view and clear it
+    store = GTK_LIST_STORE(gtk_tree_view_get_model(GTK_TREE_VIEW(book_tree_view)));
+    gtk_list_store_clear(store);
+
+    // Populate window
+    for (book_list_iterator = books_data; book_list_iterator != NULL; book_list_iterator
+            = book_list_iterator->next)
     {
-      book_data = (book_data_t *) book_list_iterator->data;
-      gtk_list_store_append(store, &list_store_iterator);
-      gtk_list_store_set(store, &list_store_iterator, COLUMN_BOOK_ACTIVE,
-          book_data->active, COLUMN_BOOK_UID, book_data->uid, COLUMN_BOOK_NAME,
-          book_data->name, -1);
+        book_data = (book_data_t *) book_list_iterator->data;
+        gtk_list_store_append(store, &list_store_iterator);
+        gtk_list_store_set(store, &list_store_iterator, COLUMN_BOOK_ACTIVE,
+                book_data->active, COLUMN_BOOK_UID, book_data->uid, COLUMN_BOOK_NAME,
+                book_data->name, -1);
     }
 
-  store = GTK_LIST_STORE(gtk_tree_view_get_model(GTK_TREE_VIEW(book_tree_view)));
+    store = GTK_LIST_STORE(gtk_tree_view_get_model(GTK_TREE_VIEW(book_tree_view)));
 }
 
-GtkWidget*
+    GtkWidget*
 create_addressbook_settings()
 {
 
-  GtkWidget *ret, *result_frame, *table, *value, *label, *photo, *item;
-
-  GtkListStore *store;
-  GtkCellRenderer *renderer;
-  GtkTreeSelection *tree_selection;
-  GtkTreeViewColumn *tree_view_column;
-  GtkWidget *scrolled_window, *hbox;
-
-  // Load the user value
-  addressbook_config_load_parameters(&addressbook_config);
-
-  ret = gtk_vbox_new(FALSE, 10);
-  gtk_container_set_border_width(GTK_CONTAINER(ret), 10);
-
-  result_frame = gtk_frame_new(_("General"));
-  gtk_box_pack_start(GTK_BOX(ret), result_frame, FALSE, FALSE, 0);
-  gtk_widget_show (result_frame);
-
-  table = gtk_table_new ( 5, 3, FALSE/* homogeneous */);
-  gtk_table_set_row_spacings( GTK_TABLE(table), 10);
-  gtk_table_set_col_spacings( GTK_TABLE(table), 10);
-  gtk_widget_show(table);
-  gtk_container_add( GTK_CONTAINER (result_frame) , table );
-
-  // SCALE BUTTON - NUMBER OF RESULTS
-      hbox = gtk_hbox_new(FALSE, 0);
-      label = gtk_label_new (_("Maximum results: "));
-      gtk_box_pack_start(GTK_BOX(hbox),label,FALSE,FALSE,0);
-      value = gtk_hscale_new_with_range (25.0 , 50.0 , 5.0);
-      gtk_label_set_mnemonic_widget (GTK_LABEL (label), value);
-      gtk_scale_set_digits (GTK_SCALE(value) , 0);
-      gtk_scale_set_value_pos (GTK_SCALE(value) , GTK_POS_RIGHT);
-      gtk_range_set_value (GTK_RANGE( value ) , addressbook_config->max_results);
-      g_signal_connect (G_OBJECT (value) , "value-changed" , G_CALLBACK(max_results_cb), NULL );
-      gtk_box_pack_start(GTK_BOX(hbox),value,TRUE,TRUE,10);
-      gtk_table_attach ( GTK_TABLE( table ), hbox, 1, 3, 1, 2, GTK_EXPAND | GTK_FILL, GTK_EXPAND |GTK_FILL, 0, 0);
-  gtk_widget_show_all(hbox);
-
-  // PHOTO DISPLAY
-  photo = gtk_check_button_new_with_mnemonic( _("_Display contact photo if available"));
-  gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(photo), addressbook_config->display_contact_photo);
-  g_signal_connect (G_OBJECT(photo) , "clicked" , G_CALLBACK (display_contact_photo_cb), NULL);
-  gtk_table_attach ( GTK_TABLE( table ), photo, 1, 3, 2, 3, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
-
-  result_frame = gtk_frame_new(_("Fields"));
-  gtk_box_pack_start(GTK_BOX(ret), result_frame, FALSE, FALSE, 0);
-  gtk_widget_show (result_frame);
-
-  table = gtk_table_new ( 5, 3, FALSE);
-  gtk_table_set_row_spacings( GTK_TABLE(table), 10);
-  gtk_table_set_col_spacings( GTK_TABLE(table), 10);
-  gtk_widget_show(table);
-  gtk_container_add( GTK_CONTAINER (result_frame) , table );
-
-  item = gtk_check_button_new_with_mnemonic( _("_Business phone"));
-  gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(item), addressbook_config->search_phone_business);
-  g_signal_connect (G_OBJECT(item) , "clicked" , G_CALLBACK (search_phone_business_cb) , NULL);
-  gtk_table_attach ( GTK_TABLE( table ), item, 1, 3, 1, 2, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
-
-  item = gtk_check_button_new_with_mnemonic( _("_Home phone"));
-  gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(item), addressbook_config->search_phone_home);
-  g_signal_connect (G_OBJECT(item) , "clicked" , G_CALLBACK (search_phone_home_cb) , NULL);
-  gtk_table_attach ( GTK_TABLE( table ), item, 1, 3, 2, 3, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
-
-  item = gtk_check_button_new_with_mnemonic( _("_Mobile phone"));
-  gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(item), addressbook_config->search_phone_mobile);
-  g_signal_connect (G_OBJECT(item) , "clicked" , G_CALLBACK (search_phone_mobile_cb) , NULL);
-  gtk_table_attach ( GTK_TABLE( table ), item, 1, 3, 3, 4, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
-
-  result_frame = gtk_frame_new(_("Books"));
-  gtk_box_pack_start(GTK_BOX(ret), result_frame, TRUE, TRUE, 0);
-  gtk_widget_show (result_frame);
-
-  scrolled_window = gtk_scrolled_window_new(NULL, NULL);
-  gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolled_window), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
-  gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolled_window), GTK_SHADOW_IN);
-
-  gtk_container_add( GTK_CONTAINER (result_frame) , scrolled_window );
-
-  store = gtk_list_store_new(3,
-          G_TYPE_BOOLEAN,             // Active
-          G_TYPE_STRING,             // uid
-          G_TYPE_STRING              // Name
-          );
-
-  // Create tree view with list store
-  book_tree_view = gtk_tree_view_new_with_model(GTK_TREE_MODEL(store));
-
-  // Get tree selection manager
-  tree_selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(book_tree_view));
-
-  // Active column
-  renderer = gtk_cell_renderer_toggle_new();
-  tree_view_column = gtk_tree_view_column_new_with_attributes("", renderer, "active", COLUMN_BOOK_ACTIVE, NULL);
-  gtk_tree_view_append_column(GTK_TREE_VIEW(book_tree_view), tree_view_column);
-
-  // Toggle active property on clicked
-  g_signal_connect(G_OBJECT(renderer), "toggled", G_CALLBACK(addressbook_config_book_active_toggled), (gpointer)book_tree_view);
-
-  // Name column
-  renderer = gtk_cell_renderer_text_new();
-  tree_view_column = gtk_tree_view_column_new_with_attributes(_("Name"), renderer, "markup", COLUMN_BOOK_NAME, NULL);
-  gtk_tree_view_append_column(GTK_TREE_VIEW(book_tree_view), tree_view_column);
-
-  g_object_unref(G_OBJECT(store));
-  gtk_container_add(GTK_CONTAINER(scrolled_window), book_tree_view);
-
-  addressbook_config_fill_book_list();
-
-  gtk_widget_show_all(ret);
-
-  return ret;
+    GtkWidget *ret, *result_frame, *table, *value, *label, *photo, *item;
+
+    GtkListStore *store;
+    GtkCellRenderer *renderer;
+    GtkTreeSelection *tree_selection;
+    GtkTreeViewColumn *tree_view_column;
+    GtkWidget *scrolled_window, *hbox;
+
+    // Load the user value
+    addressbook_config_load_parameters(&addressbook_config);
+
+    ret = gtk_vbox_new(FALSE, 10);
+    gtk_container_set_border_width(GTK_CONTAINER(ret), 10);
+
+    gnome_main_section_new (_("General"), &result_frame);
+    gtk_box_pack_start(GTK_BOX(ret), result_frame, FALSE, FALSE, 0);
+    gtk_widget_show (result_frame);
+
+    table = gtk_table_new ( 3, 3, FALSE/* homogeneous */);
+    gtk_table_set_row_spacings( GTK_TABLE(table), 8);
+    gtk_table_set_col_spacings( GTK_TABLE(table), 8);
+    gtk_widget_show(table);
+    gtk_container_add( GTK_CONTAINER (result_frame) , table );
+
+    // PHOTO DISPLAY
+    item = gtk_check_button_new_with_mnemonic( _("_Use Evolution address books"));
+    gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(item), addressbook_config->enable);
+    g_signal_connect (G_OBJECT(item) , "clicked" , G_CALLBACK (enable_cb), NULL);
+    gtk_table_attach ( GTK_TABLE( table ), item, 1, 3, 0, 1, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
+
+    // SCALE BUTTON - NUMBER OF RESULTS
+    hbox = gtk_hbox_new(FALSE, 0);
+    label = gtk_label_new (_("Download limit:"));
+    gtk_box_pack_start(GTK_BOX(hbox),label,FALSE,FALSE,0);
+    value = gtk_spin_button_new_with_range(1, 500, 1);
+    gtk_label_set_mnemonic_widget (GTK_LABEL (label), value);
+    gtk_spin_button_set_value (GTK_SPIN_BUTTON( value ) , addressbook_config->max_results);
+    g_signal_connect (G_OBJECT (value) , "value-changed" , G_CALLBACK(max_results_cb), NULL );
+    gtk_box_pack_start(GTK_BOX(hbox),value,TRUE,TRUE,10);
+    gtk_table_attach ( GTK_TABLE( table ), hbox, 1, 3, 1, 2, GTK_EXPAND | GTK_FILL, GTK_EXPAND |GTK_FILL, 0, 0);
+    gtk_widget_show_all(hbox);
+
+    // PHOTO DISPLAY
+    photo = gtk_check_button_new_with_mnemonic( _("_Display contact photo if available"));
+    gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(photo), addressbook_config->display_contact_photo);
+    g_signal_connect (G_OBJECT(photo) , "clicked" , G_CALLBACK (display_contact_photo_cb), NULL);
+    gtk_table_attach ( GTK_TABLE( table ), photo, 1, 3, 2, 3, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
+
+
+    // Fields
+    gnome_main_section_new (_("Fields"), &result_frame);
+    gtk_box_pack_start(GTK_BOX(ret), result_frame, FALSE, FALSE, 0);
+    gtk_widget_show (result_frame);
+
+    table = gtk_table_new ( 5, 3, FALSE);
+    gtk_table_set_row_spacings( GTK_TABLE(table), 8);
+    gtk_table_set_col_spacings( GTK_TABLE(table), 8);
+    gtk_widget_show(table);
+    gtk_container_add( GTK_CONTAINER (result_frame) , table );
+
+    label = gtk_label_new (_("Use the following fields from Evolution's address books:"));
+    gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5);
+    gtk_table_attach ( GTK_TABLE( table ), label, 1, 4, 1, 2, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
+     
+
+    item = gtk_check_button_new_with_mnemonic( _("_Business phone"));
+    gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(item), addressbook_config->search_phone_business);
+    g_signal_connect (G_OBJECT(item) , "clicked" , G_CALLBACK (search_phone_business_cb) , NULL);
+    gtk_table_attach ( GTK_TABLE( table ), item, 1, 4, 2, 3, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
+
+    item = gtk_check_button_new_with_mnemonic( _("_Home phone"));
+    gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(item), addressbook_config->search_phone_home);
+    g_signal_connect (G_OBJECT(item) , "clicked" , G_CALLBACK (search_phone_home_cb) , NULL);
+    gtk_table_attach ( GTK_TABLE( table ), item, 1, 4, 3, 4, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
+
+    item = gtk_check_button_new_with_mnemonic( _("_Mobile phone"));
+    gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(item), addressbook_config->search_phone_mobile);
+    g_signal_connect (G_OBJECT(item) , "clicked" , G_CALLBACK (search_phone_mobile_cb) , NULL);
+    gtk_table_attach ( GTK_TABLE( table ), item, 1, 4, 4, 5, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
+
+
+    // Address Book
+    gnome_main_section_new (_("Address Books"), &result_frame);
+    gtk_box_pack_start(GTK_BOX(ret), result_frame, TRUE, TRUE, 0);
+    gtk_widget_show (result_frame);
+
+    table = gtk_table_new ( 2, 3, FALSE/* homogeneous */);
+    gtk_table_set_row_spacings( GTK_TABLE(table), 8);
+    gtk_table_set_col_spacings( GTK_TABLE(table), 8);
+    gtk_widget_show(table);
+    gtk_container_add( GTK_CONTAINER (result_frame) , table );
+
+    label = gtk_label_new (_("Select which Evolution address books to use:"));
+    gtk_misc_set_alignment(GTK_MISC(label), 0.00, 0.1);
+    
+    gtk_table_attach ( GTK_TABLE( table ), label, 1, 4, 1, 2, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
+
+    scrolled_window = gtk_scrolled_window_new(NULL, NULL);
+    gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolled_window), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
+    gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolled_window), GTK_SHADOW_IN);
+
+    gtk_table_attach ( GTK_TABLE( table ), scrolled_window, 1, 4, 2, 3, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
+
+
+    store = gtk_list_store_new(3,
+            G_TYPE_BOOLEAN,             // Active
+            G_TYPE_STRING,             // uid
+            G_TYPE_STRING              // Name
+            );
+
+    // Create tree view with list store
+    book_tree_view = gtk_tree_view_new_with_model(GTK_TREE_MODEL(store));
+
+    // Get tree selection manager
+    tree_selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(book_tree_view));
+
+    // Active column
+    renderer = gtk_cell_renderer_toggle_new();
+    tree_view_column = gtk_tree_view_column_new_with_attributes("", renderer, "active", COLUMN_BOOK_ACTIVE, NULL);
+    gtk_tree_view_append_column(GTK_TREE_VIEW(book_tree_view), tree_view_column);
+
+    // Toggle active property on clicked
+    g_signal_connect(G_OBJECT(renderer), "toggled", G_CALLBACK(addressbook_config_book_active_toggled), (gpointer)book_tree_view);
+
+    // Name column
+    renderer = gtk_cell_renderer_text_new();
+    tree_view_column = gtk_tree_view_column_new_with_attributes(_("Name"), renderer, "markup", COLUMN_BOOK_NAME, NULL);
+    gtk_tree_view_append_column(GTK_TREE_VIEW(book_tree_view), tree_view_column);
+
+    g_object_unref(G_OBJECT(store));
+    gtk_container_add(GTK_CONTAINER(scrolled_window), book_tree_view);
+
+    addressbook_config_fill_book_list();
+
+    gtk_widget_show_all(ret);
+
+    return ret;
 }
 
-gboolean
+    gboolean
 addressbook_display(AddressBook_Config *settings, const gchar *field)
 {
 
-  gboolean display = FALSE;
+    gboolean display = FALSE;
 
-  if (g_strcasecmp(field, ADDRESSBOOK_DISPLAY_CONTACT_PHOTO) == 0)
-    display = (settings->display_contact_photo == 1) ? TRUE : FALSE;
+    if (g_strcasecmp(field, ADDRESSBOOK_DISPLAY_CONTACT_PHOTO) == 0)
+        display = (settings->display_contact_photo == 1) ? TRUE : FALSE;
 
-  else if (g_strcasecmp(field, ADDRESSBOOK_DISPLAY_PHONE_BUSINESS) == 0)
-    display = (settings->search_phone_business == 1) ? TRUE : FALSE;
+    else if (g_strcasecmp(field, ADDRESSBOOK_DISPLAY_PHONE_BUSINESS) == 0)
+        display = (settings->search_phone_business == 1) ? TRUE : FALSE;
 
-  else if (g_strcasecmp(field, ADDRESSBOOK_DISPLAY_PHONE_HOME) == 0)
-    display = (settings->search_phone_home == 1) ? TRUE : FALSE;
+    else if (g_strcasecmp(field, ADDRESSBOOK_DISPLAY_PHONE_HOME) == 0)
+        display = (settings->search_phone_home == 1) ? TRUE : FALSE;
 
-  else if (g_strcasecmp(field, ADDRESSBOOK_DISPLAY_PHONE_MOBILE) == 0)
-    display = (settings->search_phone_mobile == 1) ? TRUE : FALSE;
+    else if (g_strcasecmp(field, ADDRESSBOOK_DISPLAY_PHONE_MOBILE) == 0)
+        display = (settings->search_phone_mobile == 1) ? TRUE : FALSE;
 
-  else
-    display = FALSE;
+    else
+        display = FALSE;
 
-  return display;
+    return display;
 }
diff --git a/sflphone-client-gnome/src/config/addressbook-config.h b/sflphone-client-gnome/src/config/addressbook-config.h
index ec7a8d16360e56090421b60120bcd26cd63221b7..e2b5530d37cd044fa693c37575352d775f6d464f 100644
--- a/sflphone-client-gnome/src/config/addressbook-config.h
+++ b/sflphone-client-gnome/src/config/addressbook-config.h
@@ -24,9 +24,11 @@
 #include <glib/gtypes.h>
 
 #include "actions.h"
+#include <utils.h>
 
 G_BEGIN_DECLS
 
+#define ADDRESSBOOK_ENABLE                  "ADDRESSBOOK_ENABLE"
 #define ADDRESSBOOK_MAX_RESULTS             "ADDRESSBOOK_MAX_RESULTS"
 #define ADDRESSBOOK_DISPLAY_CONTACT_PHOTO   "ADDRESSBOOK_DISPLAY_CONTACT_PHOTO"
 #define ADDRESSBOOK_DISPLAY_PHONE_BUSINESS   "ADDRESSBOOK_DISPLAY_PHONE_BUSINESS"
@@ -35,11 +37,12 @@ G_BEGIN_DECLS
 
 typedef struct _AddressBook_Config
 {
-  guint max_results;
-  guint display_contact_photo;
-  guint search_phone_home;
-  guint search_phone_business;
-  guint search_phone_mobile;
+    guint enable;
+    guint max_results;
+    guint display_contact_photo;
+    guint search_phone_home;
+    guint search_phone_business;
+    guint search_phone_mobile;
 } AddressBook_Config;
 
 /**
diff --git a/sflphone-client-gnome/src/config/audioconf.c b/sflphone-client-gnome/src/config/audioconf.c
index 82a324f689d3f95b98f23167a863514b3c4d73c8..7d4e0ee0ac17c483cbc30b82fe3dfe4e1455c93d 100644
--- a/sflphone-client-gnome/src/config/audioconf.c
+++ b/sflphone-client-gnome/src/config/audioconf.c
@@ -18,6 +18,7 @@
  */
 
 #include <audioconf.h>
+#include <utils.h>
 
 GtkListStore *pluginlist;
 GtkListStore *outputlist;
@@ -389,7 +390,7 @@ codec_active_toggled(GtkCellRendererToggle *renderer UNUSED, gchar *path, gpoint
             COLUMN_CODEC_FREQUENCY, &srate,
             -1);
 
-    printf("%s, %s\n", name, srate);
+    // printf("%s, %s\n", name, srate);
 
     // codec_list_get_by_name(name);
     if ((strcmp(name,"speex")==0) && (strcmp(srate,"8 kHz")==0))
@@ -615,7 +616,7 @@ GtkWidget* codecs_box()
 select_audio_manager( void )
 {
 
-    DEBUG("audio manager selected");
+    DEBUG("audio manager selected\n");
 
     if( !SHOW_ALSA_CONF && !gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON(pulse) ) )
     {
@@ -624,12 +625,15 @@ select_audio_manager( void )
         alsabox = alsa_box();
         gtk_container_add( GTK_CONTAINER(alsa_conf ) , alsabox);
         gtk_widget_show( alsa_conf );
+        gtk_widget_set_sensitive(GTK_WIDGET(alsa_conf), TRUE);
     }
     else if( SHOW_ALSA_CONF && gtk_toggle_button_get_active( GTK_TOGGLE_BUTTON(pulse) ))
     {
         dbus_set_audio_manager( PULSEAUDIO );
         DEBUG(" remove alsa conf panel");
         gtk_container_remove( GTK_CONTAINER(alsa_conf) , alsabox );
+        gtk_widget_hide( alsa_conf );
+        // gtk_widget_set_sensitive(GTK_WIDGET(alsa_conf), FALSE);
     }
     else
         DEBUG("alsa conf panel...nothing");
@@ -652,7 +656,7 @@ GtkWidget* api_box()
     gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON(alsa), SHOW_ALSA_CONF );
     gtk_box_pack_end( GTK_BOX(ret) , alsa , TRUE , TRUE , 1);
     g_signal_connect(G_OBJECT(alsa), "clicked", G_CALLBACK(select_audio_manager), NULL);
-
+    // gtk_misc_set_alignment(GTK_MISC(alsa), 0.2, 0.4);
     gtk_widget_show_all(ret);
 
     return ret;
@@ -752,6 +756,7 @@ GtkWidget* ringtones_box()
     // check button to enable ringtones
     ret = gtk_hbox_new( TRUE , 1);
     enableTone = gtk_check_button_new_with_mnemonic( _("_Enable ringtones"));
+    // gtk_misc_set_alignment(GTK_MISC(enableTone), 0.2, 0.5);
     gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON(enableTone), dbus_is_ringtone_enabled() );
     gtk_box_pack_start( GTK_BOX(ret) , enableTone , TRUE , TRUE , 1);
     g_signal_connect(G_OBJECT( enableTone) , "clicked" , G_CALLBACK( ringtone_enabled ) , NULL);
@@ -774,16 +779,28 @@ GtkWidget* ringtones_box()
 GtkWidget* noise_box()
 {
     GtkWidget *ret;
+    GtkWidget *enableVoiceActivity;
     GtkWidget *enableNoiseReduction;
 
     // check button to enable ringtones
     ret = gtk_hbox_new( TRUE , 1);
-    enableNoiseReduction = gtk_check_button_new_with_mnemonic( _("_Activate silence detection"));
+
+    enableVoiceActivity = gtk_check_button_new_with_mnemonic( _("_Voice Activity Detection"));
+    //TODO Use the value from D-BUS
+    gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON(enableVoiceActivity), FALSE );
+    gtk_box_pack_start( GTK_BOX(ret) , enableVoiceActivity , TRUE , TRUE , 1);
+    //TODO Enable it
+    //gtk_widget_set_sensitive(GTK_WIDGET(noise_conf), FALSE);
+    //TODO Add a callback function
+    //g_signal_connect(G_OBJECT( enableNoiseReduction) , "clicked" , NULL , NULL);
+
+
+    enableNoiseReduction = gtk_check_button_new_with_mnemonic( _("_Noise Reduction (Narrow-Band Companding)"));
     //TODO Use the value from D-BUS
     gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON(enableNoiseReduction), FALSE );
     gtk_box_pack_start( GTK_BOX(ret) , enableNoiseReduction , TRUE , TRUE , 1);
     //TODO Enable it
-    gtk_widget_set_sensitive(GTK_WIDGET(noise_conf), FALSE);
+    // gtk_widget_set_sensitive(GTK_WIDGET(noise_conf), FALSE);
     //TODO Add a callback function
     //g_signal_connect(G_OBJECT( enableNoiseReduction) , "clicked" , NULL , NULL);
 
@@ -806,24 +823,31 @@ GtkWidget* create_audio_configuration()
     gtk_container_set_border_width(GTK_CONTAINER(ret), 10);
 
     // Box for the audio manager selection
-    sound_conf = gtk_frame_new(_("Sound Manager"));
+    gnome_main_section_new (_("Sound Manager"), &sound_conf);
     gtk_box_pack_start(GTK_BOX(ret), sound_conf, FALSE, FALSE, 0);
     gtk_widget_show( sound_conf );
     box = api_box();
     gtk_container_add( GTK_CONTAINER(sound_conf) , box );
 
     // Box for the ALSA configuration
-    alsa_conf = gtk_frame_new(_("ALSA configuration"));
+    gnome_main_section_new (_("ALSA configuration"), &alsa_conf);
     gtk_box_pack_start(GTK_BOX(ret), alsa_conf, FALSE, FALSE, 0);
+    // gtk_widget_hide( GTK_CONTAINER(alsa_conf) );
     gtk_widget_show( alsa_conf );
     if( SHOW_ALSA_CONF )
     {
+        // Box for the ALSA configuration
+        // alsa_conf = gtk_frame_new(_("ALSA configuration"));
+        // gtk_box_pack_start(GTK_BOX(ret), alsa_conf, FALSE, FALSE, 0);
+        printf("ALSA Created \n");
         alsabox = alsa_box();
         gtk_container_add( GTK_CONTAINER(alsa_conf) , alsabox );
+        gtk_widget_hide( alsa_conf );
     }
+    
 
     // Box for the codecs
-    codecs_conf = gtk_frame_new(_("Codecs"));
+    gnome_main_section_new (_("Codecs"), &codecs_conf);
     gtk_box_pack_start(GTK_BOX(ret), codecs_conf, FALSE, FALSE, 0);
     gtk_widget_set_size_request(GTK_WIDGET(codecs_conf), -1, 200);
     gtk_widget_show( codecs_conf );
@@ -831,14 +855,22 @@ GtkWidget* create_audio_configuration()
     gtk_container_add( GTK_CONTAINER(codecs_conf) , box );
 
     // Box for noise reduction
-    noise_conf = gtk_frame_new(_("Noise reduction"));
+    // removed until the functions are implemented
+    
+    /*
+    noise_conf = gtk_frame_new(_("Audio Processing"));
+=======
+    gnome_main_section_new (_("Noise reduction"), &noise_conf);
+>>>>>>> master:sflphone-client-gnome/src/config/audioconf.c
     gtk_box_pack_start(GTK_BOX(ret), noise_conf, FALSE, FALSE, 0);
     gtk_widget_show( noise_conf );
     box = noise_box();
     gtk_container_add( GTK_CONTAINER(noise_conf) , box );
+    gtk_widget_set_sensitive(GTK_WIDGET(noise_conf), FALSE);
+    */
 
     // Box for the ringtones
-    ringtones_conf = gtk_frame_new(_("Ringtones"));
+    gnome_main_section_new (_("Ringtones"), &ringtones_conf);
     gtk_box_pack_start(GTK_BOX(ret), ringtones_conf, FALSE, FALSE, 0);
     gtk_widget_show( ringtones_conf );
     box = ringtones_box();
@@ -846,5 +878,12 @@ GtkWidget* create_audio_configuration()
 
     gtk_widget_show_all(ret);
 
+    if( SHOW_ALSA_CONF ) {
+      gtk_widget_show( alsa_conf );
+    }
+    else{
+      gtk_widget_hide( alsa_conf );
+    }
+
     return ret;
 }
diff --git a/sflphone-client-gnome/src/config/configwindow.c b/sflphone-client-gnome/src/config/configwindow.c
index 7a73328371f20663c6ea49b21357ed4e58f65497..e120047410dc5172d7af4cd2606db6737aaf10b7 100644
--- a/sflphone-client-gnome/src/config/configwindow.c
+++ b/sflphone-client-gnome/src/config/configwindow.c
@@ -31,6 +31,7 @@
 #include <audioconf.h>
 #include <addressbook-config.h>
 #include <hooks-config.h>
+#include <utils.h>
 
 #include <stdlib.h>
 #include <stdio.h>
@@ -73,6 +74,10 @@ enum {
     COLUMN_ACCOUNT_COUNT
 };
 
+// Mail notification
+GtkWidget * widg;
+
+
 
 /**
  * Fills the treelist with accounts
@@ -160,6 +165,14 @@ set_popup_mode( void )
 set_notif_level(  )
 {
     dbus_set_notify();
+
+    if (dbus_get_notify())
+      gtk_widget_set_sensitive(widg, TRUE);
+    else {
+      gtk_widget_set_sensitive(widg, FALSE);
+      if (dbus_get_mail_notify())
+        gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON(widg), FALSE);
+    }
 }
 
     void
@@ -485,7 +498,7 @@ void update_registration( void )
 GtkWidget* create_stun_tab()
 {
     GtkWidget * tableNat;
-    gchar * stun_server= "stun.ekiga.net:3478";
+    gchar * stun_server= "stun.sflphone.org:3478";
     gchar * stun_enabled = "FALSE";
     GtkWidget * label;
 
@@ -531,6 +544,7 @@ GtkWidget* create_stun_tab()
 
 
 
+
     GtkWidget*
 create_general_settings ()
 {
@@ -540,12 +554,12 @@ create_general_settings ()
 
     GtkWidget *ret;
 
-    GtkWidget *notifFrame;
     GtkWidget *notifBox;
     GtkWidget *notifAll;
-    GtkWidget *widg;
+    // GtkWidget *widg;
+
+    GtkWidget *mutewidget;
 
-    GtkWidget *trayFrame;
     GtkWidget *trayBox;
     GtkWidget *trayItem;
 
@@ -562,32 +576,39 @@ create_general_settings ()
     gtk_container_set_border_width(GTK_CONTAINER(ret), 10);
 
     // Notifications Frame
-    notifFrame = gtk_frame_new(_("Desktop Notification"));
-    gtk_box_pack_start(GTK_BOX(ret), notifFrame, FALSE, FALSE, 0);
-    gtk_widget_show( notifFrame );
+    gnome_main_section_new (_("Desktop Notifications"), &frame);
+    gtk_box_pack_start(GTK_BOX(ret), frame, FALSE, FALSE, 0);
 
     notifBox = gtk_vbox_new(FALSE, 10);
     gtk_widget_show( notifBox );
-    gtk_container_add( GTK_CONTAINER(notifFrame) , notifBox);
+    gtk_container_add( GTK_CONTAINER(frame) , notifBox);
+    gtk_container_set_border_width(GTK_CONTAINER(notifBox), 2);
 
-    notifAll = gtk_check_button_new_with_mnemonic( _("_Enable"));
+    // Notification All
+    notifAll = gtk_check_button_new_with_mnemonic( _("_Enable notifications"));
     gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON(notifAll), dbus_get_notify() );
     gtk_box_pack_start( GTK_BOX(notifBox) , notifAll , TRUE , TRUE , 1);
     g_signal_connect(G_OBJECT( notifAll ) , "clicked" , G_CALLBACK( set_notif_level ) , NULL );
-
-    widg = gtk_check_button_new_with_mnemonic(  _("_Notify voice mails"));
+    
+    // Notification
+    widg = gtk_check_button_new_with_mnemonic(  _("Enable voicemail _notifications"));
     gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON(widg), dbus_get_mail_notify() );
     gtk_box_pack_start( GTK_BOX(notifBox) , widg , TRUE , TRUE , 1);
     g_signal_connect(G_OBJECT( widg ) , "clicked" , G_CALLBACK( set_mail_notif ) , NULL);
 
+    if (dbus_get_notify())
+       gtk_widget_set_sensitive(widg, TRUE);
+    else
+       gtk_widget_set_sensitive(widg, FALSE);
+
     // System Tray option frame
-    trayFrame = gtk_frame_new(_("System Tray Icon"));
-    gtk_box_pack_start(GTK_BOX(ret), trayFrame, FALSE, FALSE, 0);
-    gtk_widget_show( trayFrame );
+    gnome_main_section_new (_("System Tray Icon"), &frame);
+    gtk_box_pack_start(GTK_BOX(ret), frame, FALSE, FALSE, 0);
+    gtk_widget_show (frame);
 
     trayBox = gtk_vbox_new(FALSE, 10);
     gtk_widget_show( trayBox );
-    gtk_container_add( GTK_CONTAINER(trayFrame) , trayBox);
+    gtk_container_add( GTK_CONTAINER(frame) , trayBox);
 
     GtkWidget* trayItem1 = gtk_radio_button_new_with_mnemonic(NULL,  _("_Popup main window on incoming call"));
     gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON(trayItem1), dbus_popup_mode() );
@@ -598,37 +619,38 @@ create_general_settings ()
     gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON(trayItem), !dbus_popup_mode() );
     gtk_box_pack_start( GTK_BOX(trayBox) , trayItem , TRUE , TRUE , 1);
 
-    trayItem = gtk_check_button_new_with_mnemonic(_("_Start hidden"));
+    trayItem = gtk_check_button_new_with_mnemonic(_("Hide SFLphone window on _startup"));
     gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON(trayItem), dbus_is_start_hidden() );
     gtk_box_pack_start( GTK_BOX(trayBox) , trayItem , TRUE , TRUE , 1);
     g_signal_connect(G_OBJECT( trayItem ) , "clicked" , G_CALLBACK( start_hidden ) , NULL);
 
     /** HISTORY CONFIGURATION */
-    frame = gtk_frame_new(_("Calls History"));
+    gnome_main_section_new (_("Calls History"), &frame);
     gtk_box_pack_start(GTK_BOX(ret), frame, FALSE, FALSE, 0);
     gtk_widget_show( frame );
 
-    vbox = gtk_vbox_new(FALSE, 10);
-    gtk_widget_show( vbox );
-    gtk_container_add( GTK_CONTAINER(frame) , vbox);
+    hbox = gtk_hbox_new(FALSE, 10);
+    gtk_widget_show( hbox );
+    gtk_container_add( GTK_CONTAINER(frame) , hbox);
 
-    label = gtk_label_new_with_mnemonic(_("_Maximum number of calls"));
-    gtk_box_pack_start( GTK_BOX(vbox) , label , TRUE , TRUE , 0);
+    label = gtk_label_new_with_mnemonic(_("_History size limit"));
+    gtk_misc_set_alignment(GTK_MISC(label), 0.03, 0.4);
+    gtk_box_pack_start( GTK_BOX(hbox) , label , TRUE , TRUE , 0);
 
     value = gtk_hscale_new_with_range(0.0 , 50.0 , 5.0);
     gtk_label_set_mnemonic_widget (GTK_LABEL (label), value);
     gtk_scale_set_digits( GTK_SCALE(value) , 0);
     gtk_scale_set_value_pos( GTK_SCALE(value) , GTK_POS_RIGHT);
     gtk_range_set_value( GTK_RANGE( value ) , dbus_get_max_calls());
-    gtk_box_pack_start( GTK_BOX(vbox) , value , TRUE , TRUE , 0);
+    gtk_box_pack_start( GTK_BOX(hbox) , value , TRUE , TRUE , 0);
     g_signal_connect( G_OBJECT( value) , "value-changed" , G_CALLBACK( update_max_value ) , NULL);
 
     cleanButton = gtk_button_new_from_stock( GTK_STOCK_CLEAR );
-    gtk_box_pack_end( GTK_BOX(vbox) , cleanButton , FALSE , TRUE , 0);
+    gtk_box_pack_end( GTK_BOX(hbox) , cleanButton , FALSE , TRUE , 0);
     g_signal_connect( G_OBJECT( cleanButton ) , "clicked" , G_CALLBACK( clean_history ) , NULL);
 
     /** PULSEAUDIO CONFIGURATION */
-    frame = gtk_frame_new( _("PulseAudio sound server"));
+    gnome_main_section_new (_("PulseAudio sound server"), &frame);
     gtk_box_pack_start(GTK_BOX(ret), frame, FALSE, FALSE, 0);
     gtk_widget_show( frame );
 
@@ -636,10 +658,10 @@ create_general_settings ()
     gtk_widget_show( vbox );
     gtk_container_add( GTK_CONTAINER(frame) , vbox);
 
-    widg = gtk_check_button_new_with_mnemonic(  _("_Control running applications volume"));
-    gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON(widg), dbus_get_pulse_app_volume_control() );
-    gtk_box_pack_start( GTK_BOX(vbox) , widg , TRUE , TRUE , 1);
-    g_signal_connect(G_OBJECT( widg ) , "clicked" , G_CALLBACK( set_pulse_app_volume_control ) , NULL);
+    mutewidget = gtk_check_button_new_with_mnemonic(  _("Mute other applications during a _call"));
+    gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON(mutewidget), dbus_get_pulse_app_volume_control() );
+    gtk_box_pack_start( GTK_BOX(vbox) , mutewidget , TRUE , TRUE , 1);
+    g_signal_connect(G_OBJECT( mutewidget ) , "clicked" , G_CALLBACK( set_pulse_app_volume_control ) , NULL);
 
     n = account_list_get_sip_account_number();
     DEBUG("sip account number = %i", n);
@@ -649,7 +671,7 @@ create_general_settings ()
     if(curPort <= 0 || curPort > 65535)
         curPort = 5060;
 
-    frame = gtk_frame_new( _("SIP Port"));
+    gnome_main_section_new (_("SIP Port"), &frame);
     gtk_box_pack_start(GTK_BOX(ret), frame, FALSE, FALSE, 0);
     gtk_widget_show( frame );
     gtk_widget_set_sensitive( GTK_WIDGET(frame), (n==0)?FALSE:TRUE );
@@ -663,7 +685,7 @@ create_general_settings ()
     //gtk_widget_set_sensitive( GTK_WIDGET(applyButton), (n==0)?FALSE:TRUE );
 
     label = gtk_label_new(_("Port:"));
-
+    gtk_misc_set_alignment(GTK_MISC(label), 0.03, 0.4);
     entryPort = gtk_spin_button_new_with_range(1, 65535, 1);
     gtk_label_set_mnemonic_widget (GTK_LABEL (label), entryPort);
     gtk_spin_button_set_value(GTK_SPIN_BUTTON(entryPort), curPort);
@@ -707,9 +729,8 @@ create_recording_settings ()
     gtk_container_set_border_width(GTK_CONTAINER(ret), 10);
 
     // Recorded file saving path
-    savePathFrame = gtk_frame_new(_("General"));
+    gnome_main_section_new (_("General"), &savePathFrame);
     gtk_box_pack_start(GTK_BOX(ret), savePathFrame, FALSE, FALSE, 5);
-    gtk_widget_show(savePathFrame);
 
     table = gtk_table_new(1, 2, FALSE);
     gtk_table_set_row_spacings( GTK_TABLE(table), 10);
@@ -720,7 +741,7 @@ create_recording_settings ()
     // label
     label = gtk_label_new_with_mnemonic(_("_Recordings folder"));
     gtk_table_attach( GTK_TABLE(table), label, 0, 1, 0, 1, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 5);
-    gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5);
+    gtk_misc_set_alignment(GTK_MISC(label), 0.08, 0.5);
 
 
     // folder chooser button
@@ -758,7 +779,7 @@ show_config_window ()
 
     // Set window properties
     gtk_dialog_set_has_separator(dialog, FALSE);
-    gtk_window_set_default_size(GTK_WINDOW(dialog), 400, 400);
+    gtk_window_set_default_size(GTK_WINDOW(dialog), 600, 400);
     gtk_container_set_border_width(GTK_CONTAINER(dialog), 0);
 
     // Create tabs container
@@ -792,11 +813,12 @@ show_config_window ()
     gtk_notebook_append_page(GTK_NOTEBOOK(notebook), tab, gtk_label_new(_("Hooks")));
     gtk_notebook_page_num(GTK_NOTEBOOK(notebook), tab);
 
-    gtk_notebook_set_current_page( GTK_NOTEBOOK( notebook) ,  1);
+    gtk_notebook_set_current_page( GTK_NOTEBOOK( notebook) ,  0);
 
     result = gtk_dialog_run(dialog);
 
     save_configuration_parameters ();
+    toolbar_update_buttons();
 
     dialogOpen = FALSE;
 
@@ -824,10 +846,10 @@ show_accounts_window( void )
 
     // Set window properties
     gtk_dialog_set_has_separator(dialog, FALSE);
-    gtk_window_set_default_size(GTK_WINDOW(dialog), 500, 500);
+    gtk_window_set_default_size(GTK_WINDOW(dialog), 600, 500);
     gtk_container_set_border_width(GTK_CONTAINER(dialog), 0);
 
-    accountFrame = gtk_frame_new( _("Accounts previously setup"));
+    gnome_main_section_new (_("Configured Accounts"), &accountFrame);
     gtk_box_pack_start( GTK_BOX( dialog->vbox ), accountFrame , TRUE, TRUE, 0);
     gtk_container_set_border_width(GTK_CONTAINER(accountFrame), 10);
     gtk_widget_show(accountFrame);
@@ -838,7 +860,7 @@ show_accounts_window( void )
     gtk_container_add(GTK_CONTAINER(accountFrame) , tab);
 
     // Stun Frame, displayed only if at least 1 SIP account is configured
-    stunFrame = gtk_frame_new(_("Network Address Translation"));
+    gnome_main_section_new (_("Network Address Translation"), &stunFrame);
     gtk_box_pack_start( GTK_BOX( dialog->vbox ), stunFrame , TRUE, TRUE, 0);
     gtk_container_set_border_width(GTK_CONTAINER(stunFrame), 10);
     gtk_widget_show(stunFrame);
@@ -857,8 +879,6 @@ show_accounts_window( void )
     accDialogOpen=FALSE;
 
     gtk_widget_destroy(GTK_WIDGET(dialog));
-    if( account_list_get_size() >0 && account_list_get_current()==NULL )
-        account_list_set_current_pos(0);
     toolbar_update_buttons();
 }
 
diff --git a/sflphone-client-gnome/src/config/hooks-config.c b/sflphone-client-gnome/src/config/hooks-config.c
index e692bda503c3ca367d678e4090336fe061ec4edd..4d9ece57aee93ab4d5dc109dc0dfce7ecfd6b265 100644
--- a/sflphone-client-gnome/src/config/hooks-config.c
+++ b/sflphone-client-gnome/src/config/hooks-config.c
@@ -127,62 +127,66 @@ GtkWidget* create_hooks_settings (){
     ret = gtk_vbox_new(FALSE, 10);
     gtk_container_set_border_width(GTK_CONTAINER(ret), 10);
 
-    frame = gtk_frame_new(_("URL argument"));
+    gnome_main_section_new (_("URL Passing"), &frame);
     gtk_box_pack_start(GTK_BOX(ret), frame, FALSE, FALSE, 0);
     gtk_widget_show (frame);
 
-    table = gtk_table_new ( 5, 3,  FALSE/* homogeneous */);
+    table = gtk_table_new ( 6, 2,  FALSE/* homogeneous */);
     gtk_table_set_row_spacings( GTK_TABLE(table), 10);
     gtk_table_set_col_spacings( GTK_TABLE(table), 10);
     gtk_widget_show(table);
     gtk_container_add( GTK_CONTAINER (frame) , table );
 
-    widg = gtk_check_button_new_with_mnemonic( _("_SIP protocol"));
+    label = gtk_label_new(_("SFLphone can run custom commands if incoming calls come with an URL attached.\nIn this case, %s will be replaced with the passed URL."));
+    gtk_table_attach ( GTK_TABLE( table ), label, 0, 2, 0, 1, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
+
+    widg = gtk_check_button_new_with_mnemonic( _("Trigger on specific _SIP header"));
     gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(widg), (g_strcasecmp (_urlhook_config->sip_enabled, "1")==0)?TRUE:FALSE);
     g_signal_connect (G_OBJECT(widg) , "clicked" , G_CALLBACK (sip_enabled_cb), NULL);
     gtk_table_attach ( GTK_TABLE( table ), widg, 0, 1, 1, 2, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
  
-    label = gtk_label_new_with_mnemonic (_("_SIP Header: "));
-    gtk_table_attach ( GTK_TABLE( table ), label, 1, 2, 1, 2, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
+    // label = gtk_label_new_with_mnemonic (_("FIXME: "));
+    // gtk_table_attach ( GTK_TABLE( table ), label, 1, 2, 1, 3, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
     field = gtk_entry_new ();
     gtk_label_set_mnemonic_widget (GTK_LABEL (label), field);
     gtk_entry_set_text(GTK_ENTRY(field), _urlhook_config->sip_field);
-    gtk_table_attach ( GTK_TABLE( table ), field, 2, 3, 1, 2, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
+    gtk_table_attach ( GTK_TABLE( table ), field, 1, 2, 1, 2, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
 
-    widg = gtk_check_button_new_with_mnemonic( _("_IAX2 protocol"));
+    widg = gtk_check_button_new_with_mnemonic( _("Trigger on _IAX2 URL"));
     gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(widg), (g_strcasecmp (_urlhook_config->iax2_enabled, "1")==0)?TRUE:FALSE); 
     g_signal_connect (G_OBJECT(widg) , "clicked" , G_CALLBACK (iax2_enabled_cb), NULL);
-    gtk_table_attach ( GTK_TABLE( table ), widg, 0, 3, 2, 3, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
+    gtk_table_attach ( GTK_TABLE( table ), widg, 0, 2, 2, 3, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
 
-    label = gtk_label_new_with_mnemonic (_("_Command: "));
+    label = gtk_label_new_with_mnemonic (_("_Command to run: "));
+    gtk_misc_set_alignment(GTK_MISC(label), 0.05, 0.5);
     gtk_table_attach ( GTK_TABLE( table ), label, 0, 1, 3, 4, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
     command = gtk_entry_new ();
     gtk_label_set_mnemonic_widget (GTK_LABEL (label), command);
     gtk_entry_set_text(GTK_ENTRY(command), _urlhook_config->command);
     gtk_table_attach ( GTK_TABLE( table ), command, 1, 2, 3, 4, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 10);
 
-    frame = gtk_frame_new(_("Phone number formatting"));
+    gnome_main_section_new (_("Phone Number Rewriting"), &frame);
     gtk_box_pack_start(GTK_BOX(ret), frame, FALSE, FALSE, 0);
     gtk_widget_show (frame);
 
-    table = gtk_table_new ( 2, 2,  FALSE/* homogeneous */);
+    table = gtk_table_new ( 4, 2,  FALSE/* homogeneous */);
     gtk_table_set_row_spacings( GTK_TABLE(table), 10);
     gtk_table_set_col_spacings( GTK_TABLE(table), 10);
     gtk_widget_show(table);
     gtk_container_add( GTK_CONTAINER (frame) , table );
 
-    widg = gtk_check_button_new_with_mnemonic( _("_Add phone number prefix"));
+    widg = gtk_check_button_new_with_mnemonic( _("_Prefix dialed numbers with:"));
     gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(widg), (g_strcasecmp (_urlhook_config->phone_number_enabled, "1")==0)?TRUE:FALSE);
     g_signal_connect (G_OBJECT(widg) , "clicked" , G_CALLBACK (phone_number_enabled_cb), NULL);
-    gtk_table_attach ( GTK_TABLE( table ), widg, 0, 2, 0, 1, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
+    gtk_table_attach ( GTK_TABLE( table ), widg, 0, 1, 0, 1, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
  
-    label = gtk_label_new_with_mnemonic (_("_Prepend: "));
-    gtk_table_attach ( GTK_TABLE( table ), label, 0, 1, 1, 2, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
+    // label = gtk_label_new (_("Prepend: "));
+    // gtk_table_attach ( GTK_TABLE( table ), label, 0, 1, 1, 2, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 0);
     prefix = gtk_entry_new ();
     gtk_label_set_mnemonic_widget (GTK_LABEL (label), prefix);
     gtk_entry_set_text(GTK_ENTRY(prefix), _urlhook_config->phone_number_prefix);
     gtk_widget_set_sensitive (GTK_WIDGET (prefix), gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON (widg)));
-    gtk_table_attach ( GTK_TABLE( table ), prefix, 1, 2, 1, 2, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 10);
+    gtk_table_attach ( GTK_TABLE( table ), prefix, 1, 2, 0, 1, GTK_EXPAND | GTK_FILL, GTK_EXPAND | GTK_FILL, 0, 10);
 
     gtk_widget_show_all(ret);
 
diff --git a/sflphone-client-gnome/src/config/hooks-config.h b/sflphone-client-gnome/src/config/hooks-config.h
index fe9c92c62f0be2ea37ba16869303e481297d6ef6..d4651fbe3729deb99910b26ef0cd2bf2ab4bcb8c 100644
--- a/sflphone-client-gnome/src/config/hooks-config.h
+++ b/sflphone-client-gnome/src/config/hooks-config.h
@@ -28,7 +28,7 @@
 G_BEGIN_DECLS
 
 #define DEFAULT_SIP_URL_FIELD       "X-sflphone-url"
-#define DEFAULT_URL_COMMAND         "x-www-browser"
+#define DEFAULT_URL_COMMAND         "xdg-open \"%s\""
 #define URLHOOK_COMMAND         "URLHOOK_COMMAND"
 #define URLHOOK_SIP_FIELD         "URLHOOK_SIP_FIELD"
 #define URLHOOK_SIP_ENABLED         "URLHOOK_SIP_ENABLED"
diff --git a/sflphone-client-gnome/src/config/utils.c b/sflphone-client-gnome/src/config/utils.c
new file mode 100644
index 0000000000000000000000000000000000000000..0fdb4003c8a4849f6225c3014180aef9daf0c553
--- /dev/null
+++ b/sflphone-client-gnome/src/config/utils.c
@@ -0,0 +1,46 @@
+/*
+ *  Copyright (C) 2009 Savoir-Faire Linux inc.
+ *  Author: Emmanuel Milou <emmanuel.milou@savoirfairelinux.com>
+ *
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 3 of the License, or
+ *  (at your option) any later version.
+ *
+ *  This program is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *  GNU General Public License for more details.
+ *
+ *  You should have received a copy of the GNU General Public License
+ *  along with this program; if not, write to the Free Software
+ *   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+
+#include "utils.h"
+
+void gnome_main_section_new (gchar *title, GtkWidget **frame)
+{
+    GtkWidget *_frame, *label;
+    PangoAttrList *attrs = NULL;
+    PangoAttribute *attr = NULL;
+
+    attrs = pango_attr_list_new ();
+    attr = pango_attr_weight_new (PANGO_WEIGHT_BOLD);
+    attr->start_index = 0;
+    attr->end_index = -1;
+    pango_attr_list_insert (attrs, attr);
+
+    _frame = gtk_frame_new (title);
+    gtk_frame_set_shadow_type (GTK_FRAME (_frame), GTK_SHADOW_NONE);
+    gtk_container_set_border_width(GTK_CONTAINER(_frame), 2);
+    
+    label = gtk_frame_get_label_widget (GTK_FRAME (_frame));
+    gtk_label_set_attributes (GTK_LABEL (label), attrs);
+    pango_attr_list_unref (attrs);
+    
+    *frame = _frame;
+}
+
+
+
diff --git a/sflphone-client-gnome/src/config/utils.h b/sflphone-client-gnome/src/config/utils.h
new file mode 100644
index 0000000000000000000000000000000000000000..e52ed7acb14c08d0fa38779559066b63d0ca6f26
--- /dev/null
+++ b/sflphone-client-gnome/src/config/utils.h
@@ -0,0 +1,31 @@
+/*
+ *  Copyright (C) 2009 Savoir-Faire Linux inc.
+ *  Author: Emmanuel Milou <emmanuel.milou@savoirfairelinux.com>
+ *
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 3 of the License, or
+ *  (at your option) any later version.
+ *
+ *  This program is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *  GNU General Public License for more details.
+ *
+ *  You should have received a copy of the GNU General Public License
+ *  along with this program; if not, write to the Free Software
+ *   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+
+#ifndef _UTILS_
+#define _UTILS_
+
+#include <gtk/gtk.h>
+
+G_BEGIN_DECLS
+
+void gnome_main_section_new (gchar *title, GtkWidget**);
+
+G_END_DECLS
+
+#endif // _UTILS_
diff --git a/sflphone-client-gnome/src/contacts/addressbook.c b/sflphone-client-gnome/src/contacts/addressbook.c
index c9fa4dcbcf230668ed5e21958886d3dcaebcce00..5043c040fd30e0dda2971c0df1d2e107f357a8ec 100644
--- a/sflphone-client-gnome/src/contacts/addressbook.c
+++ b/sflphone-client-gnome/src/contacts/addressbook.c
@@ -46,6 +46,20 @@ addressbook_search(GtkEntry* entry)
       addressbook_config);
 }
 
+/**
+ * Return addressbook state
+ */
+gboolean
+addressbook_is_enabled()
+{
+  AddressBook_Config *addressbook_config;
+  
+  // Load the address book parameters
+  addressbook_config_load_parameters(&addressbook_config);
+
+  return (guint)addressbook_config->enable;
+}
+
 /**
  * Return addressbook state
  */
@@ -55,6 +69,15 @@ addressbook_is_ready()
   return books_ready();
 }
 
+/**
+ * Return TRUE if at least one addressbook is active
+ */
+gboolean
+addressbook_is_active()
+{
+  return books_active();
+}
+
 /**
  * Asynchronous open callback.
  * Used to handle activation of books.
diff --git a/sflphone-client-gnome/src/contacts/addressbook.h b/sflphone-client-gnome/src/contacts/addressbook.h
index f83aefaf5bf6a93f1ec61c8e51e6c1dce87c75ba..08b79188d04c7836161d7557114b26a50d598638 100644
--- a/sflphone-client-gnome/src/contacts/addressbook.h
+++ b/sflphone-client-gnome/src/contacts/addressbook.h
@@ -35,6 +35,19 @@
 gboolean
 addressbook_is_ready();
 
+/**
+ * Return addressbook state
+ */
+gboolean
+addressbook_is_enabled();
+
+/**
+ * Return if at least one addressbook is active
+ */
+gboolean
+addressbook_is_active();
+
+
 /**
  * Perform a search in addressbook
  */
diff --git a/sflphone-client-gnome/src/contacts/addressbook/eds.c b/sflphone-client-gnome/src/contacts/addressbook/eds.c
index 8d26070a47af2268db4a84020bccb0061c03ad9f..4303109b741c4c7c9ccff471f1570246aa983629 100644
--- a/sflphone-client-gnome/src/contacts/addressbook/eds.c
+++ b/sflphone-client-gnome/src/contacts/addressbook/eds.c
@@ -91,6 +91,27 @@ books_ready()
   return (g_slist_length(books_data) > 0);
 }
 
+/**
+ * Public way to know if we enable at least one address book
+ */
+gboolean
+books_active()
+{
+  GSList *book_list_iterator;
+  book_data_t *book_data;
+
+  // Iterate throw the list
+  for (book_list_iterator = books_data; book_list_iterator != NULL; book_list_iterator
+      = book_list_iterator->next)
+    {
+      book_data = (book_data_t *) book_list_iterator->data;
+      if (book_data->active)
+        return TRUE;
+    }
+
+  // If no result
+  return FALSE;
+}
 /**
  * Get a specific book data by UID
  */
diff --git a/sflphone-client-gnome/src/contacts/addressbook/eds.h b/sflphone-client-gnome/src/contacts/addressbook/eds.h
index 7248c2c3a0f481b21e053b0810910904d37843c3..574cd941df84fa80e98d64fa01c26c5f01e85d8b 100644
--- a/sflphone-client-gnome/src/contacts/addressbook/eds.h
+++ b/sflphone-client-gnome/src/contacts/addressbook/eds.h
@@ -118,6 +118,12 @@ books_get_book_data_by_uid(gchar *uid);
 gboolean
 books_ready();
 
+/**
+ * Public way to know if we enabled an address book
+ */
+gboolean
+books_active();
+
 /**
  * Good method to retrieve books_data (handle async)
  */
diff --git a/sflphone-client-gnome/src/contacts/calltree.c b/sflphone-client-gnome/src/contacts/calltree.c
index 0dd939b6e6ea9bd250b89852d56d397588a3e828..6c6e771dc308c92c1584a30e9b7c033c0b2b6220 100644
--- a/sflphone-client-gnome/src/contacts/calltree.c
+++ b/sflphone-client-gnome/src/contacts/calltree.c
@@ -23,6 +23,15 @@
 #include <glib/gprintf.h>
 #include <calllist.h>
 #include <toolbar.h>
+#include <mainwindow.h>
+
+
+GtkWidget *sw;
+GtkCellRenderer *rend;
+GtkTreeViewColumn *col;
+GtkTreeSelection *sel;
+
+
 
 /**
  * Show popup menu
@@ -53,6 +62,8 @@ selected(GtkTreeSelection *sel, void* data UNUSED )
     g_value_unset(&val);
 
     toolbar_update_buttons();
+
+    // set_focus_on_mainwindow();
 }
 
 /* A row is activated when it is double clicked */
@@ -115,28 +126,6 @@ void  row_activated(GtkTreeView       *tree_view UNUSED,
     }
 }
 
-    static gboolean
-on_key_released (GtkWidget   *widget UNUSED,
-        GdkEventKey *event,
-        gpointer     user_data UNUSED)
-{
-    // If a modifier key is pressed, it's a shortcut, pass along
-    if(event->state & GDK_CONTROL_MASK ||
-            event->state & GDK_MOD1_MASK    ||
-            event->keyval == 60             || // <
-            event->keyval == 62             || // >
-            event->keyval == 34             || // "
-            event->keyval == 65361          || // left arrow
-            event->keyval == 65363          || // right arrow
-            event->keyval >= 65470          || // F-keys
-            event->keyval == 32                // space
-      )
-        return FALSE;
-    else
-        sflphone_keypad(event->keyval, event->string);
-    return TRUE;
-}
-
     static gboolean
 button_pressed(GtkWidget* widget, GdkEventButton *event, gpointer user_data UNUSED)
 {
@@ -160,6 +149,32 @@ button_pressed(GtkWidget* widget, GdkEventButton *event, gpointer user_data UNUS
     return FALSE;
 }
 
+
+    static gboolean
+on_key_released (GtkWidget   *widget UNUSED,
+        GdkEventKey *event,
+        gpointer     user_data UNUSED)
+{
+        DEBUG("key-release-event signal cought by on_key_released callback \n");
+        // If a modifier key is pressed, it's a shortcut, pass along
+        if(event->state & GDK_CONTROL_MASK ||
+                event->state & GDK_MOD1_MASK    ||
+                event->keyval == 60             || // <
+                event->keyval == 62             || // >
+                event->keyval == 34             || // "
+                event->keyval == 65361          || // left arrow
+                event->keyval == 65363          || // right arrow
+                event->keyval >= 65470          || // F-keys
+                event->keyval == 32                // space
+                )
+            return FALSE;
+        else
+            sflphone_keypad(event->keyval, event->string);
+   
+   
+   return TRUE;
+}
+
 /**
  * Reset call tree
  */
@@ -169,13 +184,27 @@ calltree_reset (calltab_t* tab)
     gtk_list_store_clear (tab->store);
 }
 
+void
+focus_on_calltree_out(){
+  DEBUG("set_focus_on_calltree_out \n");
+  // gtk_widget_grab_focus(GTK_WIDGET(sw));
+  focus_is_on_calltree = FALSE;
+}
+
+void
+focus_on_calltree_in(){
+  DEBUG("set_focus_on_calltree_in \n");
+  // gtk_widget_grab_focus(GTK_WIDGET(sw));
+  focus_is_on_calltree = TRUE;
+}
+
     void
 calltree_create (calltab_t* tab, gchar* searchbar_type)
 {
-    GtkWidget *sw;
-    GtkCellRenderer *rend;
-    GtkTreeViewColumn *col;
-    GtkTreeSelection *sel;
+    // GtkWidget *sw;
+    // GtkCellRenderer *rend;
+    // GtkTreeViewColumn *col;
+    // GtkTreeSelection *sel;
 
     tab->tree = gtk_vbox_new(FALSE, 10);
 
@@ -187,7 +216,6 @@ calltree_create (calltab_t* tab, gchar* searchbar_type)
     sw = gtk_scrolled_window_new( NULL, NULL);
     gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(sw), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
     gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(sw), GTK_SHADOW_IN);
-    g_signal_connect (G_OBJECT ( sw ), "key-release-event",G_CALLBACK (on_key_released), NULL);
 
     tab->store = gtk_list_store_new (3,
             GDK_TYPE_PIXBUF,// Icon
@@ -202,6 +230,9 @@ calltree_create (calltab_t* tab, gchar* searchbar_type)
             G_CALLBACK (row_activated),
             NULL);
 
+    GTK_WIDGET_SET_FLAGS (GTK_WIDGET(sw),GTK_CAN_FOCUS);
+    gtk_widget_grab_focus (GTK_WIDGET(sw));
+
     // Connect the popup menu
     g_signal_connect (G_OBJECT (tab->view), "popup-menu",
             G_CALLBACK (popup_menu),
@@ -210,6 +241,15 @@ calltree_create (calltab_t* tab, gchar* searchbar_type)
             G_CALLBACK (button_pressed),
             NULL);
 
+    // g_signal_connect (G_OBJECT (sw), "key-release-event",
+    //                   G_CALLBACK (on_key_released), NULL);
+
+    g_signal_connect_after (G_OBJECT (tab->view), "focus-in-event",
+                      G_CALLBACK (focus_on_calltree_in), NULL);
+    g_signal_connect_after (G_OBJECT (tab->view), "focus-out-event",
+                      G_CALLBACK (focus_on_calltree_out), NULL);
+
+    gtk_widget_grab_focus(GTK_WIDGET(tab->view));
 
     rend = gtk_cell_renderer_pixbuf_new();
     col = gtk_tree_view_column_new_with_attributes ("Icon",
@@ -412,6 +452,9 @@ calltree_add_call (calltab_t* tab, call_t * c)
     GdkPixbuf *pixbuf=NULL;
     GtkTreeIter iter;
     GtkTreeSelection* sel;
+    GtkTreeModel *model;
+    GtkTreePath *path;
+    
 
     // New call in the list
     gchar * description;
@@ -422,6 +465,7 @@ calltree_add_call (calltab_t* tab, call_t * c)
 
     gtk_list_store_prepend (tab->store, &iter);
 
+    
     if( tab == current_calls )
     {
         switch(c->state)
@@ -468,7 +512,7 @@ calltree_add_call (calltab_t* tab, call_t * c)
         WARN ("This widget doesn't exist - This is a bug in the application.");
     }
 
-
+    
     //Resize it
     if(pixbuf)
     {
@@ -483,16 +527,22 @@ calltree_add_call (calltab_t* tab, call_t * c)
             2, c,      // Pointer
             -1);
 
+    
     if (pixbuf != NULL)
         g_object_unref(G_OBJECT(pixbuf));
 
-    sel = gtk_tree_view_get_selection(GTK_TREE_VIEW(tab->view));
-    gtk_tree_selection_select_iter(GTK_TREE_SELECTION(sel), &iter);
+
+    gtk_tree_view_set_model(GTK_TREE_VIEW(tab->view), GTK_TREE_MODEL(tab->store));
+    
+    gtk_tree_selection_select_iter(gtk_tree_view_get_selection(GTK_TREE_VIEW(tab->view)), &iter);
+
     toolbar_update_buttons();
+    
 }
 
 void calltree_display (calltab_t *tab) {
 
+
     GtkTreeSelection *sel;
 
     /* If we already are displaying the specified calltree */
diff --git a/sflphone-client-gnome/src/contacts/calltree.h b/sflphone-client-gnome/src/contacts/calltree.h
index 1dd57d2d282a4b5b48d0d7f6859ed55bf512cff4..09d5ad6887eed8e64af16c9c801ae1c26d9d5538 100644
--- a/sflphone-client-gnome/src/contacts/calltree.h
+++ b/sflphone-client-gnome/src/contacts/calltree.h
@@ -23,7 +23,7 @@
 #include <gtk/gtk.h>
 #include <calltab.h>
 #include <timestamp.h>
-
+#include <mainwindow.h>
 
 /** @file calltree.h
   * @brief The GtkTreeView that list calls in the main window.
diff --git a/sflphone-client-gnome/src/contacts/history.c b/sflphone-client-gnome/src/contacts/history.c
index c6fe172ef3f697c8bf3720c42894220db1af8549..7999bf3b25f7c9659a076e27a94915294dd293eb 100644
--- a/sflphone-client-gnome/src/contacts/history.c
+++ b/sflphone-client-gnome/src/contacts/history.c
@@ -32,14 +32,20 @@ static gboolean history_is_visible (GtkTreeModel*, GtkTreeIter*, gpointer);
 void
 history_search(GtkEntry* entry UNUSED){
 
-  gtk_tree_model_filter_refilter(GTK_TREE_MODEL_FILTER(history_filter));
+  
+  if(history_filter != NULL) {
+    
+    gtk_tree_model_filter_refilter(GTK_TREE_MODEL_FILTER(history_filter));
+  
+  }
 }
 
 void
 history_init(){
-
+  
   history_filter = history_create_filter(GTK_TREE_MODEL(history->store));
   gtk_tree_view_set_model(GTK_TREE_VIEW(history->view), GTK_TREE_MODEL(history_filter));
+  
 }
 
 void history_set_searchbar_widget(GtkWidget *searchbar){
@@ -51,7 +57,9 @@ static GtkTreeModel*
 history_create_filter (GtkTreeModel* child) {
 
   GtkTreeModel* ret;
+  GtkTreePath  *path; 
 
+  DEBUG("Create Filter\n");
   ret = gtk_tree_model_filter_new(child, NULL);
   gtk_tree_model_filter_set_visible_func(GTK_TREE_MODEL_FILTER(ret), history_is_visible, NULL, NULL);
   return GTK_TREE_MODEL(ret);
@@ -71,7 +79,8 @@ history_is_visible (GtkTreeModel* model, GtkTreeIter* iter, gpointer data UNUSED
         if(G_VALUE_HOLDS_STRING(&val)){
             text = (gchar *)g_value_get_string(&val);
         }
-        if(text != NULL && g_ascii_strncasecmp(search, _("Search"), 6) != 0){
+        if(text != NULL && 
+                ( g_ascii_strncasecmp(search, _("Search history"), 14) != 0 && g_ascii_strncasecmp(search, _("Search contact"), 14) != 0)){
             return g_regex_match_simple(search, text, G_REGEX_CASELESS, 0);
         }
         g_value_unset (&val);
diff --git a/sflphone-client-gnome/src/contacts/searchbar.c b/sflphone-client-gnome/src/contacts/searchbar.c
index 1744fbe08d1e077a12e4ba248dfff7f079da10e2..cad09e0670dff097bac9d077cce265f251418f91 100644
--- a/sflphone-client-gnome/src/contacts/searchbar.c
+++ b/sflphone-client-gnome/src/contacts/searchbar.c
@@ -26,7 +26,10 @@
 const GdkColor BLACK_COLOR = { 0, 0, 0, 0 };
 const GdkColor GRAY_COLOR = { 0, 30000, 30000, 30000 };
 
-void searchbar_entry_changed (GtkEntry* entry, gchar* arg1 UNUSED, gpointer data UNUSED) {
+GtkWidget * searchbox;
+
+void searchbar_entry_changed (GtkEntry* entry, gchar* arg1 UNUSED, gpointer data UNUSED){
+    // gtk_widget_grab_focus (GTK_WIDGET(searchbox));
 
     if (active_calltree == contacts) {
       addressbook_search(entry);
@@ -37,14 +40,40 @@ void searchbar_entry_changed (GtkEntry* entry, gchar* arg1 UNUSED, gpointer data
 
 }
 
+//   static void
+// focus_in_event(GtkWidget *widget, GdkEventFocus *event, gpointer data)
+// {
+    
+// }
+
+
 void searchbar_clear_entry_if_default (GtkWidget* widget, gpointer user_data UNUSED) {
 
+    DEBUG("searchbar_clear_entry_if_default\n");
     gtk_widget_modify_text(widget, GTK_STATE_NORMAL, &BLACK_COLOR); 
-    if(g_ascii_strncasecmp(gtk_entry_get_text(GTK_ENTRY(widget)), _("Search"), 6) == 0)
+    if(g_ascii_strncasecmp(gtk_entry_get_text(GTK_ENTRY(widget)), "Search history", 14) == 0
+            || g_ascii_strncasecmp(gtk_entry_get_text(GTK_ENTRY(widget)), "Search contact", 14) == 0 )
         gtk_entry_set_text(GTK_ENTRY(widget), "");
 
+    // gtk_widget_grab_focus (GTK_WIDGET(searchbox));1
+
+}
+
+void
+focus_on_searchbar_out(){
+  DEBUG("set_focus_on_searchbar_out \n");
+  // gtk_widget_grab_focus(GTK_WIDGET(sw));
+  focus_is_on_searchbar = FALSE;
 }
 
+void
+focus_on_searchbar_in(){
+  DEBUG("set_focus_on_searchbar_in \n");
+  // gtk_widget_grab_focus(GTK_WIDGET(sw));
+  focus_is_on_searchbar = TRUE;
+}
+
+
 void
 searchbar_init(calltab_t *tab)
 {
@@ -58,7 +87,7 @@ searchbar_init(calltab_t *tab)
 
 GtkWidget* searchbar_new(gchar* searchbar_type) {
 
-  GtkWidget * searchbox;
+  // GtkWidget * searchbox;
   GtkWidget* image;
   GtkWidget* ret = gtk_hbox_new(FALSE, 0);
 
@@ -73,11 +102,19 @@ GtkWidget* searchbar_new(gchar* searchbar_type) {
   sexy_icon_entry_add_clear_button( SEXY_ICON_ENTRY(searchbox) );
 #endif
 
-    gtk_widget_modify_text(searchbox, GTK_STATE_NORMAL, &GRAY_COLOR); 
+  // GTK_WIDGET_SET_FLAGS (GTK_WIDGET(searchbox),GTK_CAN_FOCUS);
+  // gtk_widget_set_name (searchbox, "searchbar");
+
+  gtk_widget_modify_text(searchbox, GTK_STATE_NORMAL, &GRAY_COLOR); 
 
   gtk_entry_set_text(GTK_ENTRY(searchbox), _("Search contact"));
-  g_signal_connect(GTK_ENTRY(searchbox), "changed", G_CALLBACK(searchbar_entry_changed), NULL);
-  g_signal_connect(GTK_ENTRY(searchbox), "grab-focus", G_CALLBACK(searchbar_clear_entry_if_default), NULL);
+  g_signal_connect_after(GTK_ENTRY(searchbox), "changed", G_CALLBACK(searchbar_entry_changed), NULL);
+  g_signal_connect_after(GTK_ENTRY(searchbox), "grab-focus", G_CALLBACK(searchbar_clear_entry_if_default), NULL);
+
+  g_signal_connect_after (G_OBJECT (searchbox), "focus-in-event",
+                      G_CALLBACK (focus_on_searchbar_in), NULL);
+  g_signal_connect_after (G_OBJECT (searchbox), "focus-out-event",
+                      G_CALLBACK (focus_on_searchbar_out), NULL);
 
   gtk_box_pack_start(GTK_BOX(ret), searchbox, TRUE, TRUE, 0);
 
diff --git a/sflphone-client-gnome/src/contacts/searchbar.h b/sflphone-client-gnome/src/contacts/searchbar.h
index aabe3ea4113a06c6ba2ce156af4d09fe5b234fa1..f7ed3035200642cb71612d6322e2ce8793ca436b 100644
--- a/sflphone-client-gnome/src/contacts/searchbar.h
+++ b/sflphone-client-gnome/src/contacts/searchbar.h
@@ -30,6 +30,7 @@
 
 #include <calllist.h>
 #include <gtk/gtk.h>
+#include <mainwindow.h>
 
 // From version 2.16, gtk provides the functionalities libsexy used to provide
 #if GTK_CHECK_VERSION(2,16,0)
diff --git a/sflphone-client-gnome/src/dbus/dbus.c b/sflphone-client-gnome/src/dbus/dbus.c
index 15aa09058ce88677cec13115b52f11c6d5dc147a..4caf79f99b23774a2be56cc7602b3757b3f378e4 100644
--- a/sflphone-client-gnome/src/dbus/dbus.c
+++ b/sflphone-client-gnome/src/dbus/dbus.c
@@ -215,25 +215,41 @@ dbus_connect ()
 
   /* Create a proxy object for the "bus driver" (name "org.freedesktop.DBus") */
 
+  
   instanceProxy = dbus_g_proxy_new_for_name (connection,
                                      "org.sflphone.SFLphone",
                                      "/org/sflphone/SFLphone/Instance",
                                      "org.sflphone.SFLphone.Instance");
-
+  /*
+  instanceProxy = dbus_g_proxy_new_for_name_owner (connection,
+                                     "org.sflphone.SFLphone",
+                                     "/org/sflphone/SFLphone/Instance",
+                                     "org.sflphone.SFLphone.Instance",
+                                     &error);
+  */
+ 
   if (instanceProxy==NULL)
   {
     ERROR ("Failed to get proxy to Instance");
     return FALSE;
   }
 
-  DEBUG ("DBus connected to Instance");
-
 
+  DEBUG ("DBus connected to Instance");
+  
+  
   callManagerProxy = dbus_g_proxy_new_for_name (connection,
                                      "org.sflphone.SFLphone",
                                      "/org/sflphone/SFLphone/CallManager",
                                      "org.sflphone.SFLphone.CallManager");
 
+  /*
+  callManagerProxy = dbus_g_proxy_new_for_name_owner (connection,
+                                     "org.sflphone.SFLphone",
+                                     "/org/sflphone/SFLphone/CallManager",
+                                     "org.sflphone.SFLphone.CallManager",
+                                     &error);
+  */
   if (callManagerProxy==NULL)
   {
     ERROR ("Failed to get proxy to CallManagers");
@@ -284,11 +300,20 @@ dbus_connect ()
   dbus_g_proxy_connect_signal (callManagerProxy,
     "volumeChanged", G_CALLBACK(volume_changed_cb), NULL, NULL);
 
-  configurationManagerProxy = dbus_g_proxy_new_for_name (connection,
+  
+  configurationManagerProxy = dbus_g_proxy_new_for_name (connection, 
                                   "org.sflphone.SFLphone",
                                   "/org/sflphone/SFLphone/ConfigurationManager",
                                   "org.sflphone.SFLphone.ConfigurationManager");
+  
 
+  /*
+  configurationManagerProxy = dbus_g_proxy_new_for_name_owner (connection,
+                                  "org.sflphone.SFLphone",
+                                  "/org/sflphone/SFLphone/ConfigurationManager",
+                                  "org.sflphone.SFLphone.ConfigurationManager",
+                                   &error);
+  */
   if (!configurationManagerProxy)
   {
     ERROR ("Failed to get proxy to ConfigurationManager");
diff --git a/sflphone-client-gnome/src/errors.c b/sflphone-client-gnome/src/errors.c
index a566ca72d8222c25ba7fd096d6d51f2b7548fc95..fb4b4ae9355f40800558fef790ccaab4a4a6a8d2 100644
--- a/sflphone-client-gnome/src/errors.c
+++ b/sflphone-client-gnome/src/errors.c
@@ -25,13 +25,13 @@ sflphone_throw_exception( int err )
   gchar* markup=""; 
   switch( err ){
     case ALSA_PLAYBACK_DEVICE:
-      markup = g_markup_printf_escaped(_("<b>ALSA notification</b>\n\nError while opening playback device"));
+      markup = g_markup_printf_escaped(_("ALSA notification\n\nError while opening playback device"));
       break;
     case ALSA_CAPTURE_DEVICE:
-      markup = g_markup_printf_escaped(_("<b>ALSA notification</b>\n\nError while opening capture device"));
+      markup = g_markup_printf_escaped(_("ALSA notification\n\nError while opening capture device"));
       break;
     case PULSEAUDIO_NOT_RUNNING:
-      markup = g_markup_printf_escaped(_("<b>Pulseaudio notification</b>\n\nPulseaudio is not running"));
+      markup = g_markup_printf_escaped(_("Pulseaudio notification\n\nPulseaudio is not running"));
       break;
   }
   main_window_error_message( markup );  
diff --git a/sflphone-client-gnome/src/mainwindow.c b/sflphone-client-gnome/src/mainwindow.c
index f383ccc15c88182127015aab7c4d99c5d44fa696..1db50d7282e3881c999dc9c0207c794428097cda 100644
--- a/sflphone-client-gnome/src/mainwindow.c
+++ b/sflphone-client-gnome/src/mainwindow.c
@@ -97,11 +97,57 @@ main_window_ask_quit(){
   return TRUE;
 }
 
+
+
+static gboolean
+on_key_released (GtkWidget *widget, GdkEventKey *event, gpointer user_data UNUSED)
+{
+  DEBUG("On key released from Main Window : %s\n", gtk_widget_get_name(widget));
+
+
+  if (focus_is_on_searchbar == FALSE) {
+        // If a modifier key is pressed, it's a shortcut, pass along
+        if(event->state & GDK_CONTROL_MASK ||
+                event->state & GDK_MOD1_MASK    ||
+                event->keyval == 60             || // <
+                event->keyval == 62             || // >
+                event->keyval == 34             || // "
+                event->keyval == 65361          || // left arrow
+                event->keyval == 65363          || // right arrow
+                event->keyval >= 65470          || // F-keys
+                event->keyval == 32                // space
+                )
+            return FALSE;
+        else
+            sflphone_keypad(event->keyval, event->string);
+        
+   }
+
+   return TRUE;
+}
+
+void
+focus_on_mainwindow_out(){
+  DEBUG("focus_on_mainwindow_out \n");
+  //  gtk_widget_grab_focus(GTK_WIDGET(window));
+  
+}
+
+void
+focus_on_mainwindow_in(){
+  DEBUG("focus_on_mainwindow_in \n");
+  //  gtk_widget_grab_focus(GTK_WIDGET(window));
+}
+
+
 void
 create_main_window ()
 {
   GtkWidget *widget;
 
+  focus_is_on_calltree = FALSE;
+  focus_is_on_searchbar = FALSE;
+
   window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
   gtk_container_set_border_width (GTK_CONTAINER (window), 0);
   gtk_window_set_title (GTK_WINDOW (window), PACKAGE);
@@ -110,13 +156,28 @@ create_main_window ()
                                           NULL);
   gtk_window_set_position( GTK_WINDOW( window ) , GTK_WIN_POS_MOUSE);
 
+  // GTK_WIDGET_SET_FLAGS (GTK_WIDGET(window),GTK_CAN_FOCUS);
+  // gtk_widget_grab_focus (GTK_WIDGET(window));
+
   /* Connect the destroy event of the window with our on_destroy function
-    * When the window is about to be destroyed we get a notificaiton and
-    * stop the main GTK loop
-    */
+   * When the window is about to be destroyed we get a notificaiton and
+   * stop the main GTK loop
+   */
   g_signal_connect (G_OBJECT (window), "delete-event",
                     G_CALLBACK (on_delete), NULL);
 
+  g_signal_connect (G_OBJECT (window), "key-release-event",
+                     G_CALLBACK (on_key_released), NULL);
+
+  g_signal_connect_after (G_OBJECT (window), "focus-in-event",
+                    G_CALLBACK (focus_on_mainwindow_in), NULL);
+
+  g_signal_connect_after (G_OBJECT (window), "focus-out-event",
+                    G_CALLBACK (focus_on_mainwindow_out), NULL);
+  
+
+  gtk_widget_set_name (window, "mainwindow");
+
   /* Create an accel group for window's shortcuts */
   accelGroup = gtk_accel_group_new ();
   gtk_window_add_accel_group(GTK_WINDOW(window), accelGroup);
@@ -223,14 +284,18 @@ get_main_window()
 
 void
 main_window_message(GtkMessageType type, gchar * markup){
+  
   GtkWidget * dialog = gtk_message_dialog_new_with_markup (GTK_WINDOW(get_main_window()),
                                       GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,
                                       type,
                                       GTK_BUTTONS_CLOSE,
                                       "%s\n",
                                       markup);
-  gtk_dialog_run (GTK_DIALOG(dialog));
 
+
+  gtk_window_set_title(GTK_WINDOW(dialog), _("SFLphone Error"));
+
+  gtk_dialog_run (GTK_DIALOG(dialog));
   gtk_widget_destroy (GTK_WIDGET(dialog));
 }
 
diff --git a/sflphone-client-gnome/src/mainwindow.h b/sflphone-client-gnome/src/mainwindow.h
index f126452ce1134a2463bd2cdcc454b961a977e508..bdf3c0af125353ceb8ffa9ba4f7894805b004746 100644
--- a/sflphone-client-gnome/src/mainwindow.h
+++ b/sflphone-client-gnome/src/mainwindow.h
@@ -21,6 +21,7 @@
 #define __MAINWINDOW_H__
 
 #include <calllist.h>
+#include <calltree.h>
 
 /** @file mainwindow.h
   * @brief The main window of the client.
@@ -90,4 +91,14 @@ void statusbar_push_message( const gchar* message , guint id );
 void statusbar_pop_message( guint id );
 
 void main_window_searchbar( gboolean *state );
+
+//static gboolean
+//on_key_released (GtkWidget *widget, GdkEventKey *event,
+//                 gpointer user_data);
+// void set_focus_on_mainwindow();
+
+gboolean focus_is_on_calltree;
+
+gboolean focus_is_on_searchbar;
+
 #endif
diff --git a/sflphone-client-gnome/src/menus.c b/sflphone-client-gnome/src/menus.c
index 03e97945dd8627869d5453581745a668e7495997..bb2797cb8452ca023e37d42e43f9eff208ba448f 100644
--- a/sflphone-client-gnome/src/menus.c
+++ b/sflphone-client-gnome/src/menus.c
@@ -48,67 +48,67 @@ GtkWidget * searchbarMenu;
 
 void update_menus()
 {
-  //Block signals for holdMenu
-  gtk_signal_handler_block(GTK_OBJECT(holdMenu), holdConnId);
-
-  gtk_widget_set_sensitive( GTK_WIDGET(pickUpMenu), FALSE);
-  gtk_widget_set_sensitive( GTK_WIDGET(hangUpMenu), FALSE);
-  gtk_widget_set_sensitive( GTK_WIDGET(newCallMenu),FALSE);
-  gtk_widget_set_sensitive( GTK_WIDGET(holdMenu),   FALSE);
-  gtk_widget_set_sensitive( GTK_WIDGET(recordMenu), FALSE);
-  gtk_widget_set_sensitive( GTK_WIDGET(copyMenu),   FALSE);
-
-  call_t * selectedCall = calltab_get_selected_call(active_calltree);
-  if (selectedCall)
-  {
-    gtk_widget_set_sensitive( GTK_WIDGET(copyMenu),   TRUE);
-    switch(selectedCall->state)
+    //Block signals for holdMenu
+    gtk_signal_handler_block(GTK_OBJECT(holdMenu), holdConnId);
+
+    gtk_widget_set_sensitive( GTK_WIDGET(pickUpMenu), FALSE);
+    gtk_widget_set_sensitive( GTK_WIDGET(hangUpMenu), FALSE);
+    gtk_widget_set_sensitive( GTK_WIDGET(newCallMenu),FALSE);
+    gtk_widget_set_sensitive( GTK_WIDGET(holdMenu),   FALSE);
+    gtk_widget_set_sensitive( GTK_WIDGET(recordMenu), FALSE);
+    gtk_widget_set_sensitive( GTK_WIDGET(copyMenu),   FALSE);
+
+    call_t * selectedCall = calltab_get_selected_call(active_calltree);
+    if (selectedCall)
     {
-      case CALL_STATE_INCOMING:
-	gtk_widget_set_sensitive( GTK_WIDGET(pickUpMenu), TRUE);
-	gtk_widget_set_sensitive( GTK_WIDGET(hangUpMenu), TRUE);
-	break;
-      case CALL_STATE_HOLD:
-	gtk_widget_set_sensitive( GTK_WIDGET(hangUpMenu), TRUE);
-	gtk_widget_set_sensitive( GTK_WIDGET(holdMenu),   TRUE);
-	gtk_widget_set_sensitive( GTK_WIDGET(newCallMenu),TRUE);
-        gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( holdMenu ), gtk_image_new_from_file( ICONS_DIR "/icon_unhold.svg"));
-	break;
-      case CALL_STATE_RINGING:
-	gtk_widget_set_sensitive( GTK_WIDGET(pickUpMenu), TRUE);
-	gtk_widget_set_sensitive( GTK_WIDGET(hangUpMenu), TRUE);
-	break;
-      case CALL_STATE_DIALING:
-	gtk_widget_set_sensitive( GTK_WIDGET(pickUpMenu), TRUE);
-	gtk_widget_set_sensitive( GTK_WIDGET(hangUpMenu), TRUE);
-	gtk_widget_set_sensitive( GTK_WIDGET(newCallMenu),TRUE);
-	break;
-      case CALL_STATE_CURRENT:
-      case CALL_STATE_RECORD:
-	gtk_widget_set_sensitive( GTK_WIDGET(hangUpMenu), TRUE);
-	gtk_widget_set_sensitive( GTK_WIDGET(holdMenu),   TRUE);
-	gtk_widget_set_sensitive( GTK_WIDGET(newCallMenu),TRUE);
-        gtk_widget_set_sensitive( GTK_WIDGET(recordMenu), TRUE);
-        gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( holdMenu ), gtk_image_new_from_file( ICONS_DIR "/icon_hold.svg"));
-	break;
-      case CALL_STATE_BUSY:
-      case CALL_STATE_FAILURE:
-	gtk_widget_set_sensitive( GTK_WIDGET(hangUpMenu), TRUE);
-	break;
-      default:
-        WARN("Should not happen in update_menus()!");
-	break;
+        gtk_widget_set_sensitive( GTK_WIDGET(copyMenu),   TRUE);
+        switch(selectedCall->state)
+        {
+            case CALL_STATE_INCOMING:
+                gtk_widget_set_sensitive( GTK_WIDGET(pickUpMenu), TRUE);
+                gtk_widget_set_sensitive( GTK_WIDGET(hangUpMenu), TRUE);
+                break;
+            case CALL_STATE_HOLD:
+                gtk_widget_set_sensitive( GTK_WIDGET(hangUpMenu), TRUE);
+                gtk_widget_set_sensitive( GTK_WIDGET(holdMenu),   TRUE);
+                gtk_widget_set_sensitive( GTK_WIDGET(newCallMenu),TRUE);
+                gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( holdMenu ), gtk_image_new_from_file( ICONS_DIR "/icon_unhold.svg"));
+                break;
+            case CALL_STATE_RINGING:
+                gtk_widget_set_sensitive( GTK_WIDGET(pickUpMenu), TRUE);
+                gtk_widget_set_sensitive( GTK_WIDGET(hangUpMenu), TRUE);
+                break;
+            case CALL_STATE_DIALING:
+                gtk_widget_set_sensitive( GTK_WIDGET(pickUpMenu), TRUE);
+                gtk_widget_set_sensitive( GTK_WIDGET(hangUpMenu), TRUE);
+                gtk_widget_set_sensitive( GTK_WIDGET(newCallMenu),TRUE);
+                break;
+            case CALL_STATE_CURRENT:
+            case CALL_STATE_RECORD:
+                gtk_widget_set_sensitive( GTK_WIDGET(hangUpMenu), TRUE);
+                gtk_widget_set_sensitive( GTK_WIDGET(holdMenu),   TRUE);
+                gtk_widget_set_sensitive( GTK_WIDGET(newCallMenu),TRUE);
+                gtk_widget_set_sensitive( GTK_WIDGET(recordMenu), TRUE);
+                gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( holdMenu ), gtk_image_new_from_file( ICONS_DIR "/icon_hold.svg"));
+                break;
+            case CALL_STATE_BUSY:
+            case CALL_STATE_FAILURE:
+                gtk_widget_set_sensitive( GTK_WIDGET(hangUpMenu), TRUE);
+                break;
+            default:
+                WARN("Should not happen in update_menus()!");
+                break;
+        }
     }
-  }
-  else
-  {
-    gtk_widget_set_sensitive( GTK_WIDGET(newCallMenu), TRUE);
-  }
-  gtk_signal_handler_unblock(holdMenu, holdConnId);
+    else
+    {
+        gtk_widget_set_sensitive( GTK_WIDGET(newCallMenu), TRUE);
+    }
+    gtk_signal_handler_unblock(holdMenu, holdConnId);
 
 }
 /* ----------------------------------------------------------------- */
-  static void
+    static void
 help_about ( void * foo UNUSED)
 {
   gchar *authors[] = {
@@ -118,7 +118,7 @@ help_about ( void * foo UNUSED)
     "Alexandre Bourget <alexandre.bourget@savoirfairelinux.com>",
     "Pierre-Luc Beaudoin <pierre-luc.beaudoin@savoirfairelinux.com>",
     "Emmanuel Milou <emmanuel.milou@savoirfairelinux.com>",
-    "Yun Liu <yun.liu@savoirfairelinux.com>"
+    "Yun Liu <yun.liu@savoirfairelinux.com>",
     "Alexandre Savard <alexandre.savard@savoirfairelinux.com>",
     "Jean-Philippe Barrette-LaPierre",
     "Laurielle Lea",
@@ -138,132 +138,133 @@ help_about ( void * foo UNUSED)
       "version", VERSION,
       "website", "http://www.sflphone.org",
       NULL);
+
 }
 
 
-  GtkWidget *
+    GtkWidget *
 create_help_menu()
 {
-  GtkWidget * menu;
-  GtkWidget * root_menu;
-  GtkWidget * menu_items;
+    GtkWidget * menu;
+    GtkWidget * root_menu;
+    GtkWidget * menu_items;
 
-  menu      = gtk_menu_new ();
+    menu      = gtk_menu_new ();
 
-  menu_items = gtk_image_menu_item_new_from_stock( GTK_STOCK_ABOUT, get_accel_group());
-  gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
-  g_signal_connect_swapped (G_OBJECT (menu_items), "activate",
-      G_CALLBACK (help_about),
-      NULL);
-  gtk_widget_show (menu_items);
+    menu_items = gtk_image_menu_item_new_from_stock( GTK_STOCK_ABOUT, get_accel_group());
+    gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
+    g_signal_connect_swapped (G_OBJECT (menu_items), "activate",
+            G_CALLBACK (help_about),
+            NULL);
+    gtk_widget_show (menu_items);
 
-  root_menu = gtk_menu_item_new_with_mnemonic (_("_Help"));
-  gtk_menu_item_set_submenu (GTK_MENU_ITEM (root_menu), menu);
+    root_menu = gtk_menu_item_new_with_mnemonic (_("_Help"));
+    gtk_menu_item_set_submenu (GTK_MENU_ITEM (root_menu), menu);
 
-  return root_menu;
+    return root_menu;
 }
 /* ----------------------------------------------------------------- */
-  GtkWidget *
+    GtkWidget *
 create_waiting_icon()
 {
-  GtkWidget * waiting_icon;
-  waiting_icon = gtk_image_menu_item_new_with_label("");
-  gtk_image_menu_item_set_image (
-        GTK_IMAGE_MENU_ITEM(waiting_icon),
-        gtk_image_new_from_animation(
-            gdk_pixbuf_animation_new_from_file(ICONS_DIR "/wait-on.gif", NULL)));
-  gtk_menu_item_set_right_justified(GTK_MENU_ITEM(waiting_icon),TRUE);
-
-  return waiting_icon;
+    GtkWidget * waiting_icon;
+    waiting_icon = gtk_image_menu_item_new_with_label("");
+    gtk_image_menu_item_set_image (
+            GTK_IMAGE_MENU_ITEM(waiting_icon),
+            gtk_image_new_from_animation(
+                gdk_pixbuf_animation_new_from_file(ICONS_DIR "/wait-on.gif", NULL)));
+    gtk_menu_item_set_right_justified(GTK_MENU_ITEM(waiting_icon),TRUE);
+
+    return waiting_icon;
 }
 /* ----------------------------------------------------------------- */
-  static void
+    static void
 call_new_call ( void * foo UNUSED)
 {
-  sflphone_new_call();
+    sflphone_new_call();
 }
 
-  static void
+    static void
 call_quit ( void * foo UNUSED)
 {
-  sflphone_quit();
+    sflphone_quit();
 }
 
-  static void
+    static void
 call_minimize ( void * foo UNUSED)
 {
 #if GTK_CHECK_VERSION(2,10,0)
-  gtk_widget_hide(GTK_WIDGET( get_main_window() ));
-  set_minimized( TRUE );
+    gtk_widget_hide(GTK_WIDGET( get_main_window() ));
+    set_minimized( TRUE );
 #endif
 }
 
-  static void
+    static void
 switch_account(  GtkWidget* item , gpointer data UNUSED)
 {
-  account_t* acc = g_object_get_data( G_OBJECT(item) , "account" );
-  DEBUG("%s" , acc->accountID);
-  account_list_set_current_id( acc->accountID );
-  status_bar_display_account ();
+    account_t* acc = g_object_get_data( G_OBJECT(item) , "account" );
+    DEBUG("%s" , acc->accountID);
+    account_list_set_current (acc);
+    status_bar_display_account ();
 }
 
-  static void
+    static void
 call_hold  (void* foo UNUSED)
 {
-  call_t * selectedCall = calltab_get_selected_call(current_calls);
+    call_t * selectedCall = calltab_get_selected_call(current_calls);
 
-  if(selectedCall)
-  {
-    if(selectedCall->state == CALL_STATE_HOLD)
+    if(selectedCall)
     {
-      gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( holdMenu ), gtk_image_new_from_file( ICONS_DIR "/icon_unhold.svg"));
-      sflphone_off_hold();
+        if(selectedCall->state == CALL_STATE_HOLD)
+        {
+            gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( holdMenu ), gtk_image_new_from_file( ICONS_DIR "/icon_unhold.svg"));
+            sflphone_off_hold();
+        }
+        else
+        {
+            gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( holdMenu ), gtk_image_new_from_file( ICONS_DIR "/icon_hold.svg"));
+            sflphone_on_hold();
+        }
     }
-    else
-    {
-      gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( holdMenu ), gtk_image_new_from_file( ICONS_DIR "/icon_hold.svg"));
-      sflphone_on_hold();
-    }
-  }
 }
 
-  static void
+    static void
 call_pick_up ( void * foo UNUSED)
 {
-  sflphone_pick_up();
+    sflphone_pick_up();
 }
 
-  static void
+    static void
 call_hang_up ( void * foo UNUSED)
 {
-  sflphone_hang_up();
+    sflphone_hang_up();
 }
 
-static void
+    static void
 call_record ( void * foo UNUSED)
 {
-  sflphone_rec_call();
+    sflphone_rec_call();
 }
 
-  static void
+    static void
 call_wizard ( void * foo UNUSED)
 {
 #if GTK_CHECK_VERSION(2,10,0)
-  build_wizard();
+    build_wizard();
 #endif
 }
 
-static void
+    static void
 remove_from_history( void * foo UNUSED)
 {
-  call_t* c = calltab_get_selected_call( history );
-  if(c){
-    DEBUG("Remove the call from the history");
-    calllist_remove_from_history( c );
-  }
+    call_t* c = calltab_get_selected_call( history );
+    if(c){
+        DEBUG("Remove the call from the history");
+        calllist_remove_from_history( c );
+    }
 }
 
-static void
+    static void
 call_back( void * foo UNUSED)
 {
     call_t *selected_call, *new_call;
@@ -285,428 +286,428 @@ call_back( void * foo UNUSED)
     }
 }
 
-  GtkWidget *
+    GtkWidget *
 create_call_menu()
 {
-  GtkWidget * menu;
-  GtkWidget * root_menu;
-  GtkWidget * menu_items;
-  GtkWidget * image;
-
-  menu      = gtk_menu_new ();
-
-  image = gtk_image_new_from_file( ICONS_DIR "/icon_call.svg");
-  newCallMenu = gtk_image_menu_item_new_with_mnemonic(_("_New call"));
-  gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( newCallMenu ), image );
-  gtk_menu_shell_append (GTK_MENU_SHELL (menu), newCallMenu);
-  g_signal_connect_swapped (G_OBJECT (newCallMenu), "activate",
-      G_CALLBACK (call_new_call),
-      NULL);
-  gtk_widget_show (newCallMenu);
-
-  menu_items = gtk_separator_menu_item_new ();
-  gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
-
-  image = gtk_image_new_from_file( ICONS_DIR "/icon_accept.svg");
-  pickUpMenu = gtk_image_menu_item_new_with_mnemonic(_("_Pick up"));
-  gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( pickUpMenu ), image );
-  gtk_menu_shell_append (GTK_MENU_SHELL (menu), pickUpMenu);
-  gtk_widget_set_sensitive( GTK_WIDGET(pickUpMenu), FALSE);
-  g_signal_connect_swapped (G_OBJECT (pickUpMenu), "activate",
-      G_CALLBACK (call_pick_up),
-      NULL);
-  gtk_widget_show (pickUpMenu);
-
-  image = gtk_image_new_from_file( ICONS_DIR "/icon_hangup.svg");
-  hangUpMenu = gtk_image_menu_item_new_with_mnemonic(_("_Hang up"));
-  gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( hangUpMenu ), image );
-  gtk_menu_shell_append (GTK_MENU_SHELL (menu), hangUpMenu);
-  gtk_widget_set_sensitive( GTK_WIDGET(hangUpMenu), FALSE);
-  g_signal_connect_swapped (G_OBJECT (hangUpMenu), "activate",
-      G_CALLBACK (call_hang_up),
-      NULL);
-  gtk_widget_show (hangUpMenu);
-
-  image = gtk_image_new_from_file( ICONS_DIR "/icon_hold.svg");
-  holdMenu = gtk_image_menu_item_new_with_mnemonic (_("On _Hold"));
-  gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( holdMenu ), image );
-  gtk_menu_shell_append (GTK_MENU_SHELL (menu), holdMenu);
-  gtk_widget_set_sensitive( GTK_WIDGET(holdMenu),   FALSE);
-  //Here we connect only to activate
-  //The toggled state is managed from update_menus()
-  holdConnId = g_signal_connect(G_OBJECT (holdMenu), "activate",
-      G_CALLBACK (call_hold),
-      NULL);
-  gtk_widget_show (menu_items);
-
-  image = gtk_image_new_from_stock (GTK_STOCK_MEDIA_RECORD, GTK_ICON_SIZE_MENU);
-  recordMenu = gtk_image_menu_item_new_with_mnemonic(_("_Record"));
-  gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( recordMenu ), image );
-  gtk_menu_shell_append (GTK_MENU_SHELL (menu), recordMenu);
-  gtk_widget_set_sensitive( GTK_WIDGET(recordMenu), FALSE);
-  g_signal_connect_swapped (G_OBJECT (recordMenu), "activate",
-      G_CALLBACK (call_record),
-      NULL);
-  gtk_widget_show (recordMenu);
+    GtkWidget * menu;
+    GtkWidget * root_menu;
+    GtkWidget * menu_items;
+    GtkWidget * image;
+
+    menu      = gtk_menu_new ();
+
+    image = gtk_image_new_from_file( ICONS_DIR "/icon_call.svg");
+    newCallMenu = gtk_image_menu_item_new_with_mnemonic(_("_New call"));
+    gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( newCallMenu ), image );
+    gtk_menu_shell_append (GTK_MENU_SHELL (menu), newCallMenu);
+    g_signal_connect_swapped (G_OBJECT (newCallMenu), "activate",
+            G_CALLBACK (call_new_call),
+            NULL);
+    gtk_widget_show (newCallMenu);
+
+    menu_items = gtk_separator_menu_item_new ();
+    gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
+
+    image = gtk_image_new_from_file( ICONS_DIR "/icon_accept.svg");
+    pickUpMenu = gtk_image_menu_item_new_with_mnemonic(_("_Pick up"));
+    gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( pickUpMenu ), image );
+    gtk_menu_shell_append (GTK_MENU_SHELL (menu), pickUpMenu);
+    gtk_widget_set_sensitive( GTK_WIDGET(pickUpMenu), FALSE);
+    g_signal_connect_swapped (G_OBJECT (pickUpMenu), "activate",
+            G_CALLBACK (call_pick_up),
+            NULL);
+    gtk_widget_show (pickUpMenu);
 
-  // Separator
-  menu_items = gtk_separator_menu_item_new ();
-  gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
+    image = gtk_image_new_from_file( ICONS_DIR "/icon_hangup.svg");
+    hangUpMenu = gtk_image_menu_item_new_with_mnemonic(_("_Hang up"));
+    gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( hangUpMenu ), image );
+    gtk_menu_shell_append (GTK_MENU_SHELL (menu), hangUpMenu);
+    gtk_widget_set_sensitive( GTK_WIDGET(hangUpMenu), FALSE);
+    g_signal_connect_swapped (G_OBJECT (hangUpMenu), "activate",
+            G_CALLBACK (call_hang_up),
+            NULL);
+    gtk_widget_show (hangUpMenu);
+
+    image = gtk_image_new_from_file( ICONS_DIR "/icon_hold.svg");
+    holdMenu = gtk_image_menu_item_new_with_mnemonic (_("On _Hold"));
+    gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( holdMenu ), image );
+    gtk_menu_shell_append (GTK_MENU_SHELL (menu), holdMenu);
+    gtk_widget_set_sensitive( GTK_WIDGET(holdMenu),   FALSE);
+    //Here we connect only to activate
+    //The toggled state is managed from update_menus()
+    holdConnId = g_signal_connect(G_OBJECT (holdMenu), "activate",
+            G_CALLBACK (call_hold),
+            NULL);
+    gtk_widget_show (menu_items);
+
+    image = gtk_image_new_from_stock (GTK_STOCK_MEDIA_RECORD, GTK_ICON_SIZE_MENU);
+    recordMenu = gtk_image_menu_item_new_with_mnemonic(_("_Record"));
+    gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( recordMenu ), image );
+    gtk_menu_shell_append (GTK_MENU_SHELL (menu), recordMenu);
+    gtk_widget_set_sensitive( GTK_WIDGET(recordMenu), FALSE);
+    g_signal_connect_swapped (G_OBJECT (recordMenu), "activate",
+            G_CALLBACK (call_record),
+            NULL);
+    gtk_widget_show (recordMenu);
+
+    // Separator
+    menu_items = gtk_separator_menu_item_new ();
+    gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
 
 #if GTK_CHECK_VERSION(2,10,0)
-  menu_items = gtk_image_menu_item_new_with_mnemonic(_("_Account creation wizard"));
-  gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
-  g_signal_connect_swapped( G_OBJECT( menu_items ) , "activate" , G_CALLBACK( call_wizard  ) , NULL );
-  gtk_widget_show (menu_items);
-  // Separator
-  menu_items = gtk_separator_menu_item_new ();
-  gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
+    menu_items = gtk_image_menu_item_new_with_mnemonic(_("_Account creation wizard"));
+    gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
+    g_signal_connect_swapped( G_OBJECT( menu_items ) , "activate" , G_CALLBACK( call_wizard  ) , NULL );
+    gtk_widget_show (menu_items);
+    // Separator
+    menu_items = gtk_separator_menu_item_new ();
+    gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
 #endif
 
-  // Close menu to minimize the main window to the system tray
-  menu_items = gtk_image_menu_item_new_from_stock( GTK_STOCK_CLOSE, get_accel_group());
-  gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
-  g_signal_connect_swapped (G_OBJECT (menu_items), "activate",
-      G_CALLBACK (call_minimize),
-      NULL);
-  gtk_widget_show (menu_items);
+    // Close menu to minimize the main window to the system tray
+    menu_items = gtk_image_menu_item_new_from_stock( GTK_STOCK_CLOSE, get_accel_group());
+    gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
+    g_signal_connect_swapped (G_OBJECT (menu_items), "activate",
+            G_CALLBACK (call_minimize),
+            NULL);
+    gtk_widget_show (menu_items);
 
-  // Separator
-  menu_items = gtk_separator_menu_item_new ();
-  gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
+    // Separator
+    menu_items = gtk_separator_menu_item_new ();
+    gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
 
-  // Quit Menu - quit SFLphone
-  menu_items = gtk_image_menu_item_new_from_stock( GTK_STOCK_QUIT, get_accel_group());
-  gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
-  g_signal_connect_swapped (G_OBJECT (menu_items), "activate",
-      G_CALLBACK (call_quit),
-      NULL);
-  gtk_widget_show (menu_items);
+    // Quit Menu - quit SFLphone
+    menu_items = gtk_image_menu_item_new_from_stock( GTK_STOCK_QUIT, get_accel_group());
+    gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
+    g_signal_connect_swapped (G_OBJECT (menu_items), "activate",
+            G_CALLBACK (call_quit),
+            NULL);
+    gtk_widget_show (menu_items);
 
 
-  root_menu = gtk_menu_item_new_with_mnemonic (_("_Call"));
-  gtk_menu_item_set_submenu (GTK_MENU_ITEM (root_menu), menu);
+    root_menu = gtk_menu_item_new_with_mnemonic (_("_Call"));
+    gtk_menu_item_set_submenu (GTK_MENU_ITEM (root_menu), menu);
 
-  return root_menu;
+    return root_menu;
 }
 /* ----------------------------------------------------------------- */
 
-  static void
+    static void
 edit_preferences ( void * foo UNUSED)
 {
-  show_config_window();
+    show_config_window();
 }
 
-  static void
+    static void
 edit_accounts ( void * foo UNUSED)
 {
-  show_accounts_window();
+    show_accounts_window();
 }
 
 // The menu Edit/Copy should copy the current selected call's number
-  static void
+    static void
 edit_copy ( void * foo UNUSED)
 {
-  GtkClipboard* clip = gtk_clipboard_get(GDK_SELECTION_CLIPBOARD);
-  call_t * selectedCall = calltab_get_selected_call(current_calls);
-  gchar * no = NULL;
+    GtkClipboard* clip = gtk_clipboard_get(GDK_SELECTION_CLIPBOARD);
+    call_t * selectedCall = calltab_get_selected_call(current_calls);
+    gchar * no = NULL;
 
-  if(selectedCall)
-  {
-    switch(selectedCall->state)
+    if(selectedCall)
     {
-      case CALL_STATE_TRANSFERT:
-      case CALL_STATE_DIALING:
-      case CALL_STATE_RINGING:
-	no = selectedCall->to;
-	break;
-      case CALL_STATE_CURRENT:
-      case CALL_STATE_HOLD:
-      case CALL_STATE_BUSY:
-      case CALL_STATE_FAILURE:
-      case CALL_STATE_INCOMING:
-      default:
-	no = call_get_number(selectedCall);
-	break;
+        switch(selectedCall->state)
+        {
+            case CALL_STATE_TRANSFERT:
+            case CALL_STATE_DIALING:
+            case CALL_STATE_RINGING:
+                no = selectedCall->to;
+                break;
+            case CALL_STATE_CURRENT:
+            case CALL_STATE_HOLD:
+            case CALL_STATE_BUSY:
+            case CALL_STATE_FAILURE:
+            case CALL_STATE_INCOMING:
+            default:
+                no = call_get_number(selectedCall);
+                break;
+        }
+
+        gtk_clipboard_set_text (clip, no, strlen(no) );
     }
 
-    gtk_clipboard_set_text (clip, no, strlen(no) );
-  }
-
 }
 
 // The menu Edit/Paste should paste the clipboard into the current selected call
-  static void
+    static void
 edit_paste ( void * foo UNUSED)
 {
-  GtkClipboard* clip = gtk_clipboard_get(GDK_SELECTION_CLIPBOARD);
-  call_t * selectedCall = calltab_get_selected_call(current_calls);
-  gchar * no = gtk_clipboard_wait_for_text (clip);
+    GtkClipboard* clip = gtk_clipboard_get(GDK_SELECTION_CLIPBOARD);
+    call_t * selectedCall = calltab_get_selected_call(current_calls);
+    gchar * no = gtk_clipboard_wait_for_text (clip);
 
-  if(no && selectedCall)
-  {
-    switch(selectedCall->state)
+    if(no && selectedCall)
     {
-      case CALL_STATE_TRANSFERT:
-      case CALL_STATE_DIALING:
-	// Add the text to the number
-	{
-	  gchar * before = selectedCall->to;
-	  selectedCall->to = g_strconcat(selectedCall->to, no, NULL);
-	  g_free(before);
-	  DEBUG("TO: %s", selectedCall->to);
-
-	  if(selectedCall->state == CALL_STATE_DIALING)
-	  {
-	    g_free(selectedCall->from);
-	    selectedCall->from = g_strconcat("\"\" <", selectedCall->to, ">", NULL);
-	  }
-	  calltree_update_call(current_calls, selectedCall);
-	}
-	break;
-      case CALL_STATE_RINGING:
-      case CALL_STATE_INCOMING:
-      case CALL_STATE_BUSY:
-      case CALL_STATE_FAILURE:
-      case CALL_STATE_HOLD:
-	{ // Create a new call to hold the new text
-	  selectedCall = sflphone_new_call();
-
-	  gchar * before = selectedCall->to;
-	  selectedCall->to = g_strconcat(selectedCall->to, no, NULL);
-	  g_free(before);
-	  DEBUG("TO: %s", selectedCall->to);
-
-	  g_free(selectedCall->from);
-	  selectedCall->from = g_strconcat("\"\" <", selectedCall->to, ">", NULL);
-
-	  calltree_update_call(current_calls, selectedCall);
-	}
-	break;
-      case CALL_STATE_CURRENT:
-      default:
-	{
-	  unsigned int i;
-	  for(i = 0; i < strlen(no); i++)
-	  {
-	    gchar * oneNo = g_strndup(&no[i], 1);
-	    DEBUG("<%s>", oneNo);
-	    dbus_play_dtmf(oneNo);
-
-	    gchar * temp = g_strconcat(call_get_number(selectedCall), oneNo, NULL);
-	    gchar * before = selectedCall->from;
-	    selectedCall->from = g_strconcat("\"",call_get_name(selectedCall) ,"\" <", temp, ">", NULL);
-	    g_free(before);
-	    g_free(temp);
-	    calltree_update_call(current_calls, selectedCall);
-
-	  }
-	}
-	break;
-    }
+        switch(selectedCall->state)
+        {
+            case CALL_STATE_TRANSFERT:
+            case CALL_STATE_DIALING:
+                // Add the text to the number
+                {
+                    gchar * before = selectedCall->to;
+                    selectedCall->to = g_strconcat(selectedCall->to, no, NULL);
+                    g_free(before);
+                    DEBUG("TO: %s", selectedCall->to);
+
+                    if(selectedCall->state == CALL_STATE_DIALING)
+                    {
+                        g_free(selectedCall->from);
+                        selectedCall->from = g_strconcat("\"\" <", selectedCall->to, ">", NULL);
+                    }
+                    calltree_update_call(current_calls, selectedCall);
+                }
+                break;
+            case CALL_STATE_RINGING:
+            case CALL_STATE_INCOMING:
+            case CALL_STATE_BUSY:
+            case CALL_STATE_FAILURE:
+            case CALL_STATE_HOLD:
+                { // Create a new call to hold the new text
+                    selectedCall = sflphone_new_call();
+
+                    gchar * before = selectedCall->to;
+                    selectedCall->to = g_strconcat(selectedCall->to, no, NULL);
+                    g_free(before);
+                    DEBUG("TO: %s", selectedCall->to);
+
+                    g_free(selectedCall->from);
+                    selectedCall->from = g_strconcat("\"\" <", selectedCall->to, ">", NULL);
+
+                    calltree_update_call(current_calls, selectedCall);
+                }
+                break;
+            case CALL_STATE_CURRENT:
+            default:
+                {
+                    unsigned int i;
+                    for(i = 0; i < strlen(no); i++)
+                    {
+                        gchar * oneNo = g_strndup(&no[i], 1);
+                        DEBUG("<%s>", oneNo);
+                        dbus_play_dtmf(oneNo);
+
+                        gchar * temp = g_strconcat(call_get_number(selectedCall), oneNo, NULL);
+                        gchar * before = selectedCall->from;
+                        selectedCall->from = g_strconcat("\"",call_get_name(selectedCall) ,"\" <", temp, ">", NULL);
+                        g_free(before);
+                        g_free(temp);
+                        calltree_update_call(current_calls, selectedCall);
+
+                    }
+                }
+                break;
+        }
 
-  }
-  else // There is no current call, create one
-  {
-    selectedCall = sflphone_new_call();
+    }
+    else // There is no current call, create one
+    {
+        selectedCall = sflphone_new_call();
 
-    gchar * before = selectedCall->to;
-    selectedCall->to = g_strconcat(selectedCall->to, no, NULL);
-    g_free(before);
-    DEBUG("TO: %s", selectedCall->to);
+        gchar * before = selectedCall->to;
+        selectedCall->to = g_strconcat(selectedCall->to, no, NULL);
+        g_free(before);
+        DEBUG("TO: %s", selectedCall->to);
 
-    g_free(selectedCall->from);
-    selectedCall->from = g_strconcat("\"\" <", selectedCall->to, ">", NULL);
-    calltree_update_call(current_calls,selectedCall);
-  }
+        g_free(selectedCall->from);
+        selectedCall->from = g_strconcat("\"\" <", selectedCall->to, ">", NULL);
+        calltree_update_call(current_calls,selectedCall);
+    }
 
 }
 
-  static void
+    static void
 clear_history (void)
 {
-  if( calllist_get_size( history ) != 0 ){
-      calllist_clean_history();
+    if( calllist_get_size( history ) != 0 ){
+        calllist_clean_history();
     }
 }
 
-  GtkWidget *
+    GtkWidget *
 create_edit_menu()
 {
-  GtkWidget * menu;
-  GtkWidget * image;
-  GtkWidget * root_menu;
-  GtkWidget * menu_items;
-
-  menu      = gtk_menu_new ();
+    GtkWidget * menu;
+    GtkWidget * image;
+    GtkWidget * root_menu;
+    GtkWidget * menu_items;
+
+    menu      = gtk_menu_new ();
+
+    copyMenu = gtk_image_menu_item_new_from_stock( GTK_STOCK_COPY, get_accel_group());
+    gtk_menu_shell_append (GTK_MENU_SHELL (menu), copyMenu);
+    g_signal_connect_swapped (G_OBJECT (copyMenu), "activate",
+            G_CALLBACK (edit_copy),
+            NULL);
+    gtk_widget_show (copyMenu);
+
+    pasteMenu = gtk_image_menu_item_new_from_stock( GTK_STOCK_PASTE, get_accel_group());
+    gtk_menu_shell_append (GTK_MENU_SHELL (menu), pasteMenu);
+    g_signal_connect_swapped (G_OBJECT (pasteMenu), "activate",
+            G_CALLBACK (edit_paste),
+            NULL);
+    gtk_widget_show (pasteMenu);
 
-  copyMenu = gtk_image_menu_item_new_from_stock( GTK_STOCK_COPY, get_accel_group());
-  gtk_menu_shell_append (GTK_MENU_SHELL (menu), copyMenu);
-  g_signal_connect_swapped (G_OBJECT (copyMenu), "activate",
-      G_CALLBACK (edit_copy),
-      NULL);
-  gtk_widget_show (copyMenu);
-
-  pasteMenu = gtk_image_menu_item_new_from_stock( GTK_STOCK_PASTE, get_accel_group());
-  gtk_menu_shell_append (GTK_MENU_SHELL (menu), pasteMenu);
-  g_signal_connect_swapped (G_OBJECT (pasteMenu), "activate",
-      G_CALLBACK (edit_paste),
-      NULL);
-  gtk_widget_show (pasteMenu);
-
-  menu_items = gtk_separator_menu_item_new ();
-  gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
+    menu_items = gtk_separator_menu_item_new ();
+    gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
 
-  menu_items = gtk_image_menu_item_new_with_mnemonic(_("_Clear history"));
-  image = gtk_image_new_from_stock( GTK_STOCK_CLEAR , GTK_ICON_SIZE_MENU );
-  gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( menu_items ), image );
-  gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
-  g_signal_connect_swapped (G_OBJECT (menu_items), "activate",
-      G_CALLBACK (clear_history),
-      NULL);
-  gtk_widget_show (menu_items);
+    menu_items = gtk_image_menu_item_new_with_mnemonic(_("_Clear history"));
+    image = gtk_image_new_from_stock( GTK_STOCK_CLEAR , GTK_ICON_SIZE_MENU );
+    gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( menu_items ), image );
+    gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
+    g_signal_connect_swapped (G_OBJECT (menu_items), "activate",
+            G_CALLBACK (clear_history),
+            NULL);
+    gtk_widget_show (menu_items);
 
-  menu_items = gtk_separator_menu_item_new ();
-  gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
+    menu_items = gtk_separator_menu_item_new ();
+    gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
 
-  menu_items = gtk_menu_item_new_with_mnemonic( _("_Accounts") );
-  gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
-  g_signal_connect_swapped (G_OBJECT (menu_items), "activate",
-      G_CALLBACK (edit_accounts),
-      NULL);
-  gtk_widget_show (menu_items);
+    menu_items = gtk_menu_item_new_with_mnemonic( _("_Accounts") );
+    gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
+    g_signal_connect_swapped (G_OBJECT (menu_items), "activate",
+            G_CALLBACK (edit_accounts),
+            NULL);
+    gtk_widget_show (menu_items);
 
-  menu_items = gtk_image_menu_item_new_from_stock( GTK_STOCK_PREFERENCES, get_accel_group());
-  gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
-  g_signal_connect_swapped (G_OBJECT (menu_items), "activate",
-      G_CALLBACK (edit_preferences),
-      NULL);
-  gtk_widget_show (menu_items);
+    menu_items = gtk_image_menu_item_new_from_stock( GTK_STOCK_PREFERENCES, get_accel_group());
+    gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
+    g_signal_connect_swapped (G_OBJECT (menu_items), "activate",
+            G_CALLBACK (edit_preferences),
+            NULL);
+    gtk_widget_show (menu_items);
 
 
-  root_menu = gtk_menu_item_new_with_mnemonic (_("_Edit"));
-  gtk_menu_item_set_submenu (GTK_MENU_ITEM (root_menu), menu);
+    root_menu = gtk_menu_item_new_with_mnemonic (_("_Edit"));
+    gtk_menu_item_set_submenu (GTK_MENU_ITEM (root_menu), menu);
 
-  return root_menu;
+    return root_menu;
 }
 /* ----------------------------------------------------------------- */
-  static void
+    static void
 view_dialpad  (GtkImageMenuItem *imagemenuitem UNUSED,
-    void* foo UNUSED)
+        void* foo UNUSED)
 {
-  gboolean state;
-  main_window_dialpad( &state );
-  if( state )
-    gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( dialpadMenu ),
-				  gtk_image_new_from_file( ICONS_DIR "/icon_dialpad_off.svg"));
-  else
-    gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( dialpadMenu ),
-				  gtk_image_new_from_file( ICONS_DIR "/icon_dialpad.svg"));
-  dbus_set_dialpad( state );
+    gboolean state;
+    main_window_dialpad( &state );
+    if( state )
+        gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( dialpadMenu ),
+                gtk_image_new_from_file( ICONS_DIR "/icon_dialpad_off.svg"));
+    else
+        gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( dialpadMenu ),
+                gtk_image_new_from_file( ICONS_DIR "/icon_dialpad.svg"));
+    dbus_set_dialpad( state );
 
 
 }
 
-  static void
+    static void
 view_volume_controls  (GtkImageMenuItem *imagemenuitem UNUSED,
-    void* foo UNUSED)
+        void* foo UNUSED)
 {
-  gboolean state;
-  main_window_volume_controls( &state );
-  if( state )
-    gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( volumeMenu ),
-				  gtk_image_new_from_file( ICONS_DIR "/icon_volume_off.svg"));
-  else
-    gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( volumeMenu ),
-				  gtk_image_new_from_file( ICONS_DIR "/icon_volume.svg"));
-  dbus_set_volume_controls( state );
+    gboolean state;
+    main_window_volume_controls( &state );
+    if( state )
+        gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( volumeMenu ),
+                gtk_image_new_from_file( ICONS_DIR "/icon_volume_off.svg"));
+    else
+        gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( volumeMenu ),
+                gtk_image_new_from_file( ICONS_DIR "/icon_volume.svg"));
+    dbus_set_volume_controls( state );
 }
 
 /*
-  static void
-view_searchbar  (GtkImageMenuItem *imagemenuitem UNUSED,
-    void* foo UNUSED)
-{
-  gboolean state;
-  main_window_searchbar( &state );
-  dbus_set_searchbar( state );
-}
-*/
-  GtkWidget *
+   static void
+   view_searchbar  (GtkImageMenuItem *imagemenuitem UNUSED,
+   void* foo UNUSED)
+   {
+   gboolean state;
+   main_window_searchbar( &state );
+   dbus_set_searchbar( state );
+   }
+   */
+    GtkWidget *
 create_view_menu()
 {
-  GtkWidget * menu;
-  GtkWidget * root_menu;
-  GtkWidget * image;
-
-  menu      = gtk_menu_new ();
-
-  if( SHOW_DIALPAD )
-    image = gtk_image_new_from_file( ICONS_DIR "/icon_dialpad_off.svg");
-  else
-    image = gtk_image_new_from_file( ICONS_DIR "/icon_dialpad.svg");
-  dialpadMenu = gtk_image_menu_item_new_with_mnemonic (_("_Dialpad"));
-  gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( dialpadMenu ), image );
-  gtk_menu_shell_append (GTK_MENU_SHELL (menu), dialpadMenu);
-  g_signal_connect(G_OBJECT ( dialpadMenu ), "activate",
-      G_CALLBACK (view_dialpad),
-      NULL);
-  gtk_widget_show (dialpadMenu);
-
-  if( SHOW_VOLUME )
-    image = gtk_image_new_from_file( ICONS_DIR "/icon_volume.svg");
-  else
-    image = gtk_image_new_from_file( ICONS_DIR "/icon_volume.svg");
-  volumeMenu = gtk_image_menu_item_new_with_mnemonic (_("_Volume controls"));
-  gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( volumeMenu ), image );
-  gtk_menu_shell_append (GTK_MENU_SHELL (menu), volumeMenu);
-  g_signal_connect(G_OBJECT (volumeMenu), "activate",
-      G_CALLBACK (view_volume_controls),
-      NULL);
-  gtk_widget_show (volumeMenu);
+    GtkWidget * menu;
+    GtkWidget * root_menu;
+    GtkWidget * image;
 
-  /*image = gtk_image_new_from_stock( GTK_STOCK_FIND , GTK_ICON_SIZE_MENU );
-  searchbarMenu = gtk_image_menu_item_new_with_mnemonic (_("_Search bar"));
-  gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( searchbarMenu ), image );
-  gtk_menu_shell_append (GTK_MENU_SHELL (menu), searchbarMenu);
-  g_signal_connect(G_OBJECT (searchbarMenu), "activate",
+    menu      = gtk_menu_new ();
+
+    if( SHOW_DIALPAD )
+        image = gtk_image_new_from_file( ICONS_DIR "/icon_dialpad_off.svg");
+    else
+        image = gtk_image_new_from_file( ICONS_DIR "/icon_dialpad.svg");
+    dialpadMenu = gtk_image_menu_item_new_with_mnemonic (_("_Dialpad"));
+    gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( dialpadMenu ), image );
+    gtk_menu_shell_append (GTK_MENU_SHELL (menu), dialpadMenu);
+    g_signal_connect(G_OBJECT ( dialpadMenu ), "activate",
+            G_CALLBACK (view_dialpad),
+            NULL);
+    gtk_widget_show (dialpadMenu);
+
+    if( SHOW_VOLUME )
+        image = gtk_image_new_from_file( ICONS_DIR "/icon_volume.svg");
+    else
+        image = gtk_image_new_from_file( ICONS_DIR "/icon_volume.svg");
+    volumeMenu = gtk_image_menu_item_new_with_mnemonic (_("_Volume controls"));
+    gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( volumeMenu ), image );
+    gtk_menu_shell_append (GTK_MENU_SHELL (menu), volumeMenu);
+    g_signal_connect(G_OBJECT (volumeMenu), "activate",
+            G_CALLBACK (view_volume_controls),
+            NULL);
+    gtk_widget_show (volumeMenu);
+
+    /*image = gtk_image_new_from_stock( GTK_STOCK_FIND , GTK_ICON_SIZE_MENU );
+      searchbarMenu = gtk_image_menu_item_new_with_mnemonic (_("_Search bar"));
+      gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( searchbarMenu ), image );
+      gtk_menu_shell_append (GTK_MENU_SHELL (menu), searchbarMenu);
+      g_signal_connect(G_OBJECT (searchbarMenu), "activate",
       G_CALLBACK (view_searchbar),
       NULL);
-  gtk_widget_show (searchbarMenu);
-    */
+      gtk_widget_show (searchbarMenu);
+      */
 
-  root_menu = gtk_menu_item_new_with_mnemonic (_("_View"));
-  gtk_menu_item_set_submenu (GTK_MENU_ITEM (root_menu), menu);
+    root_menu = gtk_menu_item_new_with_mnemonic (_("_View"));
+    gtk_menu_item_set_submenu (GTK_MENU_ITEM (root_menu), menu);
 
-  return root_menu;
+    return root_menu;
 }
 /* ----------------------------------------------------------------- */
-  GtkWidget *
+    GtkWidget *
 create_menus ( )
 {
 
-  GtkWidget * menu_bar;
-  GtkWidget * root_menu;
+    GtkWidget * menu_bar;
+    GtkWidget * root_menu;
 
-  menu_bar  = gtk_menu_bar_new ();
+    menu_bar  = gtk_menu_bar_new ();
 
-  root_menu = create_call_menu();
-  gtk_menu_shell_append (GTK_MENU_SHELL (menu_bar), root_menu);
+    root_menu = create_call_menu();
+    gtk_menu_shell_append (GTK_MENU_SHELL (menu_bar), root_menu);
 
-  root_menu = create_edit_menu();
-  gtk_menu_shell_append (GTK_MENU_SHELL (menu_bar), root_menu);
+    root_menu = create_edit_menu();
+    gtk_menu_shell_append (GTK_MENU_SHELL (menu_bar), root_menu);
 
-  root_menu = create_view_menu();
-  gtk_menu_shell_append (GTK_MENU_SHELL (menu_bar), root_menu);
+    root_menu = create_view_menu();
+    gtk_menu_shell_append (GTK_MENU_SHELL (menu_bar), root_menu);
 
-  root_menu = create_help_menu();
-  gtk_menu_shell_append (GTK_MENU_SHELL (menu_bar), root_menu);
+    root_menu = create_help_menu();
+    gtk_menu_shell_append (GTK_MENU_SHELL (menu_bar), root_menu);
 
-  // Create waiting icon
-  waitingLayer = create_waiting_icon();
-  gtk_menu_shell_append(GTK_MENU_SHELL (menu_bar),waitingLayer);
+    // Create waiting icon
+    waitingLayer = create_waiting_icon();
+    gtk_menu_shell_append(GTK_MENU_SHELL (menu_bar),waitingLayer);
 
-  return menu_bar;
+    return menu_bar;
 }
 
 /* ----------------------------------------------------------------- */
@@ -717,197 +718,197 @@ static void edit_number_cb (GtkWidget *widget UNUSED, gpointer user_data) {
 }
 
 
-  void
+    void
 show_popup_menu (GtkWidget *my_widget, GdkEventButton *event)
 {
-  // TODO update the selection to make sure the call under the mouse is the call selected
+    // TODO update the selection to make sure the call under the mouse is the call selected
 
-  gboolean pickup = FALSE, hangup = FALSE, hold = FALSE, copy = FALSE, record = FALSE;
-  gboolean accounts = FALSE;
+    gboolean pickup = FALSE, hangup = FALSE, hold = FALSE, copy = FALSE, record = FALSE;
+    gboolean accounts = FALSE;
 
-  call_t * selectedCall = calltab_get_selected_call(current_calls);
-  if (selectedCall)
-  {
-    copy = TRUE;
-    switch(selectedCall->state)
+    call_t * selectedCall = calltab_get_selected_call(current_calls);
+    if (selectedCall)
     {
-      case CALL_STATE_INCOMING:
-	pickup = TRUE;
-	hangup = TRUE;
-	break;
-      case CALL_STATE_HOLD:
-	hangup = TRUE;
-	hold   = TRUE;
-	break;
-      case CALL_STATE_RINGING:
-	hangup = TRUE;
-	break;
-      case CALL_STATE_DIALING:
-	pickup = TRUE;
-	hangup = TRUE;
-	accounts = TRUE;
-	break;
-      case CALL_STATE_RECORD:
-      case CALL_STATE_CURRENT:
-	hangup = TRUE;
-	hold   = TRUE;
-        record = TRUE;
-	break;
-      case CALL_STATE_BUSY:
-      case CALL_STATE_FAILURE:
-	hangup = TRUE;
-	break;
-      default:
-        WARN("Should not happen in show_popup_menu!");
-	break;
+        copy = TRUE;
+        switch(selectedCall->state)
+        {
+            case CALL_STATE_INCOMING:
+                pickup = TRUE;
+                hangup = TRUE;
+                break;
+            case CALL_STATE_HOLD:
+                hangup = TRUE;
+                hold   = TRUE;
+                break;
+            case CALL_STATE_RINGING:
+                hangup = TRUE;
+                break;
+            case CALL_STATE_DIALING:
+                pickup = TRUE;
+                hangup = TRUE;
+                accounts = TRUE;
+                break;
+            case CALL_STATE_RECORD:
+            case CALL_STATE_CURRENT:
+                hangup = TRUE;
+                hold   = TRUE;
+                record = TRUE;
+                break;
+            case CALL_STATE_BUSY:
+            case CALL_STATE_FAILURE:
+                hangup = TRUE;
+                break;
+            default:
+                WARN("Should not happen in show_popup_menu!");
+                break;
+        }
     }
-  }
 
-  GtkWidget *menu;
-  GtkWidget *image;
-  int button, event_time;
-  GtkWidget * menu_items;
+    GtkWidget *menu;
+    GtkWidget *image;
+    int button, event_time;
+    GtkWidget * menu_items;
 
-  menu = gtk_menu_new ();
-  //g_signal_connect (menu, "deactivate",
-  //       G_CALLBACK (gtk_widget_destroy), NULL);
+    menu = gtk_menu_new ();
+    //g_signal_connect (menu, "deactivate",
+    //       G_CALLBACK (gtk_widget_destroy), NULL);
 
-  if(copy)
-  {
-    menu_items = gtk_image_menu_item_new_from_stock( GTK_STOCK_COPY, get_accel_group());
+    if(copy)
+    {
+        menu_items = gtk_image_menu_item_new_from_stock( GTK_STOCK_COPY, get_accel_group());
+        gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
+        g_signal_connect (G_OBJECT (menu_items), "activate",
+                G_CALLBACK (edit_copy),
+                NULL);
+        gtk_widget_show (menu_items);
+    }
+
+    menu_items = gtk_image_menu_item_new_from_stock( GTK_STOCK_PASTE, get_accel_group());
     gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
     g_signal_connect (G_OBJECT (menu_items), "activate",
-	G_CALLBACK (edit_copy),
-	NULL);
+            G_CALLBACK (edit_paste),
+            NULL);
     gtk_widget_show (menu_items);
-  }
 
-  menu_items = gtk_image_menu_item_new_from_stock( GTK_STOCK_PASTE, get_accel_group());
-  gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
-  g_signal_connect (G_OBJECT (menu_items), "activate",
-      G_CALLBACK (edit_paste),
-      NULL);
-  gtk_widget_show (menu_items);
+    if(pickup || hangup || hold)
+    {
+        menu_items = gtk_separator_menu_item_new ();
+        gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
+        gtk_widget_show (menu_items);
+    }
 
-  if(pickup || hangup || hold)
-  {
-    menu_items = gtk_separator_menu_item_new ();
-    gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
-    gtk_widget_show (menu_items);
-  }
+    if(pickup)
+    {
 
-  if(pickup)
-  {
+        menu_items = gtk_image_menu_item_new_with_mnemonic(_("_Pick up"));
+        image = gtk_image_new_from_file( ICONS_DIR "/icon_accept.svg");
+        gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(menu_items), image);
+        gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
+        g_signal_connect (G_OBJECT (menu_items), "activate",
+                G_CALLBACK (call_pick_up),
+                NULL);
+        gtk_widget_show (menu_items);
+    }
 
-    menu_items = gtk_image_menu_item_new_with_mnemonic(_("_Pick up"));
-    image = gtk_image_new_from_file( ICONS_DIR "/icon_accept.svg");
-    gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(menu_items), image);
-    gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
-    g_signal_connect (G_OBJECT (menu_items), "activate",
-	G_CALLBACK (call_pick_up),
-	NULL);
-    gtk_widget_show (menu_items);
-  }
+    if(hangup)
+    {
+        menu_items = gtk_image_menu_item_new_with_mnemonic(_("_Hang up"));
+        image = gtk_image_new_from_file( ICONS_DIR "/icon_hangup.svg");
+        gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(menu_items), image);
+        gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
+        g_signal_connect (G_OBJECT (menu_items), "activate",
+                G_CALLBACK (call_hang_up),
+                NULL);
+        gtk_widget_show (menu_items);
+    }
 
-  if(hangup)
-  {
-    menu_items = gtk_image_menu_item_new_with_mnemonic(_("_Hang up"));
-    image = gtk_image_new_from_file( ICONS_DIR "/icon_hangup.svg");
-    gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(menu_items), image);
-    gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
-    g_signal_connect (G_OBJECT (menu_items), "activate",
-	G_CALLBACK (call_hang_up),
-	NULL);
-    gtk_widget_show (menu_items);
-  }
+    if(hold)
+    {
+        menu_items = gtk_check_menu_item_new_with_mnemonic (_("On _Hold"));
+        gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
+        gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menu_items),
+                (selectedCall->state == CALL_STATE_HOLD ? TRUE : FALSE));
+        g_signal_connect(G_OBJECT (menu_items), "activate",
+                G_CALLBACK (call_hold),
+                NULL);
+        gtk_widget_show (menu_items);
+    }
 
-  if(hold)
-  {
-    menu_items = gtk_check_menu_item_new_with_mnemonic (_("On _Hold"));
-    gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
-    gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menu_items),
-	(selectedCall->state == CALL_STATE_HOLD ? TRUE : FALSE));
-    g_signal_connect(G_OBJECT (menu_items), "activate",
-	G_CALLBACK (call_hold),
-	NULL);
-    gtk_widget_show (menu_items);
-  }
+    if(record)
+    {
+        menu_items = gtk_image_menu_item_new_with_mnemonic(_("_Record"));
+        image = gtk_image_new_from_stock (GTK_STOCK_MEDIA_RECORD, GTK_ICON_SIZE_MENU);
+        gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(menu_items), image);
+        gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
+        g_signal_connect (G_OBJECT (menu_items), "activate",
+                G_CALLBACK (call_record),
+                NULL);
+        gtk_widget_show (menu_items);
+    }
 
-   if(record)
-  {
-    menu_items = gtk_image_menu_item_new_with_mnemonic(_("_Record"));
-    image = gtk_image_new_from_stock (GTK_STOCK_MEDIA_RECORD, GTK_ICON_SIZE_MENU);
-    gtk_image_menu_item_set_image(GTK_IMAGE_MENU_ITEM(menu_items), image);
-    gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
-    g_signal_connect (G_OBJECT (menu_items), "activate",
-	G_CALLBACK (call_record),
-	NULL);
-    gtk_widget_show (menu_items);
-  }
-
-  if(accounts)
-  {
-      add_registered_accounts_to_menu (menu);
-  }
-
-  if (event)
-  {
-    button = event->button;
-    event_time = event->time;
-  }
-  else
-  {
-    button = 0;
-    event_time = gtk_get_current_event_time ();
-  }
-
-  gtk_menu_attach_to_widget (GTK_MENU (menu), my_widget, NULL);
-  gtk_menu_popup (GTK_MENU (menu), NULL, NULL, NULL, NULL,
-      button, event_time);
+    if(accounts)
+    {
+        add_registered_accounts_to_menu (menu);
+    }
+
+    if (event)
+    {
+        button = event->button;
+        event_time = event->time;
+    }
+    else
+    {
+        button = 0;
+        event_time = gtk_get_current_event_time ();
+    }
+
+    gtk_menu_attach_to_widget (GTK_MENU (menu), my_widget, NULL);
+    gtk_menu_popup (GTK_MENU (menu), NULL, NULL, NULL, NULL,
+            button, event_time);
 }
 
 
-void
+    void
 show_popup_menu_history(GtkWidget *my_widget, GdkEventButton *event)
 {
 
-  gboolean pickup = FALSE;
-  gboolean remove = FALSE;
-  gboolean edit = FALSE;
+    gboolean pickup = FALSE;
+    gboolean remove = FALSE;
+    gboolean edit = FALSE;
 
-  call_t * selectedCall = calltab_get_selected_call( history );
-  if (selectedCall)
-  {
-    remove = TRUE;
-    pickup = TRUE;
-    edit = TRUE;
-  }
+    call_t * selectedCall = calltab_get_selected_call( history );
+    if (selectedCall)
+    {
+        remove = TRUE;
+        pickup = TRUE;
+        edit = TRUE;
+    }
 
-  GtkWidget *menu;
-  GtkWidget *image;
-  int button, event_time;
-  GtkWidget * menu_items;
+    GtkWidget *menu;
+    GtkWidget *image;
+    int button, event_time;
+    GtkWidget * menu_items;
 
-  menu = gtk_menu_new ();
-  //g_signal_connect (menu, "deactivate",
-  //       G_CALLBACK (gtk_widget_destroy), NULL);
+    menu = gtk_menu_new ();
+    //g_signal_connect (menu, "deactivate",
+    //       G_CALLBACK (gtk_widget_destroy), NULL);
 
-  if(pickup)
-  {
+    if(pickup)
+    {
 
-    menu_items = gtk_image_menu_item_new_with_mnemonic(_("_Call back"));
-    image = gtk_image_new_from_file( ICONS_DIR "/icon_accept.svg");
-    gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( menu_items ), image );
+        menu_items = gtk_image_menu_item_new_with_mnemonic(_("_Call back"));
+        image = gtk_image_new_from_file( ICONS_DIR "/icon_accept.svg");
+        gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( menu_items ), image );
+        gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
+        g_signal_connect (G_OBJECT (menu_items), "activate",G_CALLBACK (call_back), NULL);
+        gtk_widget_show (menu_items);
+    }
+
+    menu_items = gtk_separator_menu_item_new ();
     gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
-    g_signal_connect (G_OBJECT (menu_items), "activate",G_CALLBACK (call_back), NULL);
     gtk_widget_show (menu_items);
-  }
-
-  menu_items = gtk_separator_menu_item_new ();
-  gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
-  gtk_widget_show (menu_items);
 
-  if (edit)
+    if (edit)
     {
         menu_items = gtk_image_menu_item_new_from_stock( GTK_STOCK_EDIT, get_accel_group());
         gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
@@ -916,64 +917,64 @@ show_popup_menu_history(GtkWidget *my_widget, GdkEventButton *event)
     }
 
 
-  if(remove)
-  {
-    menu_items = gtk_image_menu_item_new_from_stock( GTK_STOCK_DELETE, get_accel_group());
-    gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
-    g_signal_connect (G_OBJECT (menu_items), "activate", G_CALLBACK (remove_from_history),  NULL);
-    gtk_widget_show (menu_items);
-  }
-
-  if (event)
-  {
-    button = event->button;
-    event_time = event->time;
-  }
-  else
-  {
-    button = 0;
-    event_time = gtk_get_current_event_time ();
-  }
-
-  gtk_menu_attach_to_widget (GTK_MENU (menu), my_widget, NULL);
-  gtk_menu_popup (GTK_MENU (menu), NULL, NULL, NULL, NULL,
-      button, event_time);
+    if(remove)
+    {
+        menu_items = gtk_image_menu_item_new_from_stock( GTK_STOCK_DELETE, get_accel_group());
+        gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
+        g_signal_connect (G_OBJECT (menu_items), "activate", G_CALLBACK (remove_from_history),  NULL);
+        gtk_widget_show (menu_items);
+    }
+
+    if (event)
+    {
+        button = event->button;
+        event_time = event->time;
+    }
+    else
+    {
+        button = 0;
+        event_time = gtk_get_current_event_time ();
+    }
+
+    gtk_menu_attach_to_widget (GTK_MENU (menu), my_widget, NULL);
+    gtk_menu_popup (GTK_MENU (menu), NULL, NULL, NULL, NULL,
+            button, event_time);
 }
     void
 show_popup_menu_contacts(GtkWidget *my_widget, GdkEventButton *event)
 {
 
-  gboolean pickup = FALSE;
-  gboolean accounts = FALSE;
-  gboolean edit = FALSE;
+    gboolean pickup = FALSE;
+    gboolean accounts = FALSE;
+    gboolean edit = FALSE;
 
-  call_t * selectedCall = calltab_get_selected_call( contacts );
-  if (selectedCall)
-  {
-    pickup = TRUE;
-    accounts = TRUE;
-    edit = TRUE;
-  }
+    call_t * selectedCall = calltab_get_selected_call( contacts );
+    if (selectedCall)
+    {
+        pickup = TRUE;
+        accounts = TRUE;
+        edit = TRUE;
+    }
 
-  GtkWidget *menu;
-  GtkWidget *image;
-  int button, event_time;
-  GtkWidget * menu_items;
+    GtkWidget *menu;
+    GtkWidget *image;
+    int button, event_time;
+    GtkWidget * menu_items;
 
-  menu = gtk_menu_new ();
-  //g_signal_connect (menu, "deactivate",
-  //       G_CALLBACK (gtk_widget_destroy), NULL);
+    menu = gtk_menu_new ();
+    //g_signal_connect (menu, "deactivate",
+    //       G_CALLBACK (gtk_widget_destroy), NULL);
 
-  if(pickup)
-  {
+    if(pickup)
+    {
 
-    menu_items = gtk_image_menu_item_new_with_mnemonic(_("_New call"));
-    image = gtk_image_new_from_file( ICONS_DIR "/icon_accept.svg");
-    gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( menu_items ), image );
-    gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
-    g_signal_connect (G_OBJECT (menu_items), "activate",G_CALLBACK (call_back), NULL);
-    gtk_widget_show (menu_items);
-  }
+        menu_items = gtk_image_menu_item_new_with_mnemonic(_("_New call"));
+        image = gtk_image_new_from_file( ICONS_DIR "/icon_accept.svg");
+        gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( menu_items ), image );
+        gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
+        g_signal_connect (G_OBJECT (menu_items), "activate",G_CALLBACK (call_back), NULL);
+        gtk_widget_show (menu_items);
+    }
 
     if (edit)
     {
@@ -983,25 +984,25 @@ show_popup_menu_contacts(GtkWidget *my_widget, GdkEventButton *event)
         gtk_widget_show (menu_items);
     }
 
-  if(accounts)
-  {
-      add_registered_accounts_to_menu (menu);
+    if(accounts)
+    {
+        add_registered_accounts_to_menu (menu);
+    }
+
+    if (event)
+    {
+        button = event->button;
+        event_time = event->time;
+    }
+    else
+    {
+        button = 0;
+        event_time = gtk_get_current_event_time ();
     }
 
-  if (event)
-  {
-    button = event->button;
-    event_time = event->time;
-  }
-  else
-  {
-    button = 0;
-    event_time = gtk_get_current_event_time ();
-  }
-
-  gtk_menu_attach_to_widget (GTK_MENU (menu), my_widget, NULL);
-  gtk_menu_popup (GTK_MENU (menu), NULL, NULL, NULL, NULL,
-      button, event_time);
+    gtk_menu_attach_to_widget (GTK_MENU (menu), my_widget, NULL);
+    gtk_menu_popup (GTK_MENU (menu), NULL, NULL, NULL, NULL,
+            button, event_time);
 }
 
 
@@ -1009,7 +1010,7 @@ void add_registered_accounts_to_menu (GtkWidget *menu) {
 
     GtkWidget *menu_items;
     unsigned int i;
-    account_t* acc;
+    account_t* acc, *current;
     gchar* alias;
 
     menu_items = gtk_separator_menu_item_new ();
@@ -1017,23 +1018,24 @@ void add_registered_accounts_to_menu (GtkWidget *menu) {
     gtk_widget_show (menu_items);
 
     for( i = 0 ; i < account_list_get_size() ; i++ ){
-      acc = account_list_get_nth(i);
-      // Display only the registered accounts
-      if( g_strcasecmp( account_state_name(acc -> state) , account_state_name(ACCOUNT_STATE_REGISTERED) ) == 0 ){
-	        alias = g_strconcat( g_hash_table_lookup(acc->properties , ACCOUNT_ALIAS) , " - ",g_hash_table_lookup(acc->properties , ACCOUNT_TYPE), NULL);
-	menu_items = gtk_check_menu_item_new_with_mnemonic(alias);
-	gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
-	g_object_set_data( G_OBJECT( menu_items ) , "account" , acc );
-	g_free( alias );
-	if( account_list_get_current() != NULL ){
-	  gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menu_items),
-	      (g_strcasecmp( acc->accountID , account_list_get_current()->accountID) == 0)? TRUE : FALSE);
-	}
-	g_signal_connect (G_OBJECT (menu_items), "activate",
-	    G_CALLBACK (switch_account),
-	    NULL);
-	gtk_widget_show (menu_items);
-      } // fi
+        acc = account_list_get_nth(i);
+        // Display only the registered accounts
+        if( g_strcasecmp( account_state_name(acc -> state) , account_state_name(ACCOUNT_STATE_REGISTERED) ) == 0 ){
+            alias = g_strconcat( g_hash_table_lookup(acc->properties , ACCOUNT_ALIAS) , " - ",g_hash_table_lookup(acc->properties , ACCOUNT_TYPE), NULL);
+            menu_items = gtk_check_menu_item_new_with_mnemonic(alias);
+            gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
+            g_object_set_data( G_OBJECT( menu_items ) , "account" , acc );
+            g_free( alias );
+            current = account_list_get_current();
+            if(current){
+                gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menu_items),
+                        (g_strcasecmp( acc->accountID , current->accountID) == 0)? TRUE : FALSE);
+            }
+            g_signal_connect (G_OBJECT (menu_items), "activate",
+                    G_CALLBACK (switch_account),
+                    NULL);
+            gtk_widget_show (menu_items);
+        } // fi
     }
 
 }
@@ -1088,7 +1090,7 @@ void show_edit_number (call_t *call) {
     // Set the number to be edited
     editable_num = gtk_entry_new ();
 #if GTK_CHECK_VERSION(2,12,0)
-      gtk_widget_set_tooltip_text(GTK_WIDGET(editable_num), _("Edit the phone number before making a call"));
+    gtk_widget_set_tooltip_text(GTK_WIDGET(editable_num), _("Edit the phone number before making a call"));
 #endif
     if (call)
         gtk_entry_set_text(GTK_ENTRY(editable_num), g_strdup (call_get_number (call)));
diff --git a/sflphone-client-gnome/src/sflnotify.c b/sflphone-client-gnome/src/sflnotify.c
index 4021a044f0228a08943e4f1dd6778d88039a43b9..882aeb5407b90c4e21a05c3d444872204f5912a7 100644
--- a/sflphone-client-gnome/src/sflnotify.c
+++ b/sflphone-client-gnome/src/sflnotify.c
@@ -19,124 +19,94 @@
 
 #include <sflnotify.h>
 
-static NotifyNotification *notification;
+GnomeNotification *_gnome_notification;
 
-    void
-notify_incoming_call( call_t* c  )
+void create_new_gnome_notification (gchar *title, gchar *body, NotifyUrgency urgency, gint timeout, GnomeNotification **notif)
 {
-    if( dbus_get_notify()){
+    GnomeNotification *_notif;
 
-        GdkPixbuf *pixbuf;
-        gchar* callerid;
-        gchar* title;
-        notify_init("sflphone");
+    if( dbus_get_notify()){
 
-        if (g_strcasecmp (c->accountID,"") == 0) {
-            title = g_markup_printf_escaped ("IP-to-IP call");
-        }
-        else {
-            title = g_markup_printf_escaped(_("%s account: %s") ,
-                    (gchar*)g_hash_table_lookup(account_list_get_by_id(c->accountID)->properties , ACCOUNT_TYPE) ,
-                    (gchar*)g_hash_table_lookup(account_list_get_by_id(c->accountID)->properties , ACCOUNT_ALIAS) ) ;
-        }
-        callerid = g_markup_printf_escaped(_("<i>From:</i> %s") , c->from);
+        _notif = g_new0 (GnomeNotification, 1);
 
-        pixbuf = gdk_pixbuf_new_from_file(ICONS_DIR "/ring.svg", NULL);
+        notify_init ("SFLphone");
 
-        notification = notify_notification_new( title,
-                callerid,
-                NULL,
-                NULL);
-        notify_notification_set_urgency( notification , NOTIFY_URGENCY_CRITICAL );
-        notify_notification_set_icon_from_pixbuf (notification, pixbuf);
+        // Set struct fields
+        _notif->notification = notify_notification_new (title, body, NULL, NULL);
+        //_notif->icon = gdk_pixbuf_new_from_file_at_size (LOGO, 120, 120, NULL);
+        _notif->icon = gdk_pixbuf_new_from_file (LOGO_SMALL, NULL);
 #if GTK_CHECK_VERSION(2,10,0)
-        notify_notification_attach_to_status_icon( notification , get_status_icon() );
+        notify_notification_attach_to_status_icon (_notif->notification , get_status_icon() );
 #endif
-        notify_notification_set_timeout( notification , (( g_strcasecmp(__TIMEOUT_MODE, "default") == 0 )? __TIMEOUT_TIME : NOTIFY_EXPIRES_NEVER ));
-        g_object_set_data( G_OBJECT( notification ) , "call" , c );
-        notify_notification_add_action( notification , "accept" , _("Accept") , (NotifyActionCallback) answer_call_cb , NULL,  NULL );
-        notify_notification_add_action( notification , "refuse" , _("Refuse") , (NotifyActionCallback) refuse_call_cb , NULL , NULL );
-        notify_notification_add_action( notification , "ignore" , _("Ignore") , (NotifyActionCallback) ignore_call_cb , NULL , NULL );
 
-        if (!notify_notification_show (notification, NULL)) {
+        notify_notification_set_urgency (_notif->notification, urgency);
+        
+        if (_notif->icon != NULL)
+            notify_notification_set_icon_from_pixbuf (_notif->notification, _notif->icon);
+        else
+            ERROR ("notify(), cannot load notification icon");
+
+        notify_notification_set_timeout (_notif->notification, timeout);
+
+        if (!notify_notification_show (_notif->notification, NULL)) {
             ERROR("notify(), failed to send notification");
         }
+
+        *notif = _notif;
     }
 }
-    void
-answer_call_cb( NotifyNotification *notification, gpointer data  UNUSED )
-{
-    call_t* c = (call_t*)g_object_get_data( G_OBJECT( notification ) , "call" );
-    c->history_state = INCOMING;
-    calltree_update_call( history , c );
-    dbus_accept(c);
-#if GTK_CHECK_VERSION(2,10,0)
-    if( __POPUP_WINDOW )
-        status_icon_unminimize();
-#endif
-    g_object_unref( notification );
-}
 
-    void
-refuse_call_cb( NotifyNotification *notification, gpointer data  UNUSED)
-{
-    call_t* c = (call_t*)g_object_get_data( G_OBJECT( notification ) , "call" );
-    dbus_refuse(c);
-    g_object_unref( notification );
-}
 
     void
-ignore_call_cb( NotifyNotification *notification, gpointer data  UNUSED)
+notify_incoming_call (call_t* c)
 {
-    g_object_unref( notification );
+
+        gchar* callerid;
+        gchar* title;
+
+        if (g_strcasecmp (c->accountID,"") == 0) {
+            title = g_markup_printf_escaped ("IP-to-IP call");
+        }
+        else {
+            title = g_markup_printf_escaped(_("%s account: %s") ,
+                    (gchar*)g_hash_table_lookup(account_list_get_by_id(c->accountID)->properties , ACCOUNT_TYPE) ,
+                    (gchar*)g_hash_table_lookup(account_list_get_by_id(c->accountID)->properties , ACCOUNT_ALIAS) ) ;
+        }
+        callerid = g_markup_printf_escaped(_("<i>From:</i> %s") , c->from);
+
+        create_new_gnome_notification (title,
+                                        callerid, 
+                                        NOTIFY_URGENCY_CRITICAL, 
+                                        (g_strcasecmp(__TIMEOUT_MODE, "default") == 0 )? __TIMEOUT_TIME : NOTIFY_EXPIRES_NEVER,
+                                        &_gnome_notification); 
 }
 
     void
-notify_voice_mails( guint count , account_t* acc )
+notify_voice_mails (guint count, account_t* acc)
 {
-
-    if( dbus_get_mail_notify()) {
         // the account is different from NULL
-        GdkPixbuf *pixbuf;
         gchar* title;
         gchar* body;
-        notify_init("sflphone");
 
         title = g_markup_printf_escaped(_("%s account: %s") ,
                 (gchar*)g_hash_table_lookup(acc->properties , ACCOUNT_TYPE) ,
                 (gchar*) g_hash_table_lookup(acc->properties , ACCOUNT_ALIAS) ) ;
         body = g_markup_printf_escaped(_("%d voice mails"), count);
 
-        pixbuf = gdk_pixbuf_new_from_file(LOGO, NULL);
-
-        notification = notify_notification_new( title,
-                body,
-                NULL,
-                NULL);
-        notify_notification_set_urgency( notification , NOTIFY_URGENCY_LOW );
-        notify_notification_set_icon_from_pixbuf (notification, pixbuf);
-#if GTK_CHECK_VERSION(2,10,0)
-        notify_notification_attach_to_status_icon( notification , get_status_icon() );
-#endif
-        notify_notification_set_timeout( notification , NOTIFY_EXPIRES_DEFAULT );
-        notify_notification_add_action( notification , "ignore" , _("Ignore") , (NotifyActionCallback) ignore_call_cb , NULL , NULL );
-
-        if (!notify_notification_show (notification, NULL)) {
-            ERROR("notify(), failed to send notification");
-        }
-    }
+        create_new_gnome_notification (title,
+                                        body, 
+                                        NOTIFY_URGENCY_LOW, 
+                                        NOTIFY_EXPIRES_DEFAULT,
+                                        &_gnome_notification); 
 }
 
     void
-notify_current_account( account_t* acc )
+notify_current_account (account_t* acc)
 {
 
-    if( dbus_get_notify()){
         // the account is different from NULL
-        GdkPixbuf *pixbuf;
         gchar* title;
         gchar* body="";
-        notify_init("sflphone");
 
         body = g_markup_printf_escaped(_("Calling with %s account <i>%s</i>") ,
                 (gchar*)g_hash_table_lookup( acc->properties , ACCOUNT_TYPE) ,
@@ -144,109 +114,69 @@ notify_current_account( account_t* acc )
 
         title = g_markup_printf_escaped(_("Current account"));
 
-        pixbuf = gdk_pixbuf_new_from_file(LOGO, NULL);
-
-        notification = notify_notification_new( title,
-                body,
-                NULL,
-                NULL);
-        notify_notification_set_urgency( notification , NOTIFY_URGENCY_NORMAL );
-        notify_notification_set_icon_from_pixbuf (notification, pixbuf);
-#if GTK_CHECK_VERSION(2,10,0)
-        notify_notification_attach_to_status_icon( notification , get_status_icon() );
-#endif
-        notify_notification_set_timeout( notification , NOTIFY_EXPIRES_DEFAULT );
-        notify_notification_add_action( notification , "ignore" , _("Ignore") , (NotifyActionCallback) ignore_call_cb , NULL , NULL );
-
-        if (!notify_notification_show (notification, NULL)) {
-            ERROR("notify(), failed to send notification");
-        }
-    }
+        create_new_gnome_notification (title,
+                                        body, 
+                                        NOTIFY_URGENCY_NORMAL, 
+                                        NOTIFY_EXPIRES_DEFAULT,
+                                        &_gnome_notification); 
 }
+
     void
-notify_no_accounts(  )
+notify_no_accounts ()
 {
-    GdkPixbuf *pixbuf;
     gchar* title;
     gchar* body="";
-    notify_init("sflphone");
 
     body = g_markup_printf_escaped(_("You haven't setup any accounts"));
-
     title = g_markup_printf_escaped(_("Error"));
 
-    pixbuf = gdk_pixbuf_new_from_file(LOGO, NULL);
-
-    notification = notify_notification_new( title,
-            body,
-            NULL,
-            NULL);
-    notify_notification_set_urgency( notification , NOTIFY_URGENCY_CRITICAL );
-    notify_notification_set_icon_from_pixbuf (notification, pixbuf);
-#if GTK_CHECK_VERSION(2,10,0)
-    notify_notification_attach_to_status_icon( notification , get_status_icon() );
-#endif
-    notify_notification_set_timeout( notification , NOTIFY_EXPIRES_DEFAULT );
-    //notify_notification_add_action( notification , "setup" , _("Setup Accounts") , (NotifyActionCallback) setup_accounts_cb , NULL , NULL );
-
-    if (!notify_notification_show (notification, NULL)) {
-        ERROR("notify(), failed to send notification");
-    }
+    create_new_gnome_notification (title,
+                                    body, 
+                                    NOTIFY_URGENCY_CRITICAL, 
+                                    NOTIFY_EXPIRES_DEFAULT,
+                                    &_gnome_notification); 
 }
 
-    void
-setup_accounts_cb( NotifyNotification *notification, gpointer data  UNUSED)
-{
-    //gtk_widget_set_parent( show_accounts_window() , GTK_WIDGET(get_main_window()));
-    show_accounts_window();
-    g_object_unref( notification );
-}
 
     void
-notify_no_registered_accounts(  )
+notify_no_registered_accounts ()
 {
-    GdkPixbuf *pixbuf;
     gchar* title;
     gchar* body="";
-    notify_init("sflphone");
-
 
     body = g_markup_printf_escaped(_("You have no registered accounts"));
-
-
     title = g_markup_printf_escaped(_("Error"));
 
-    pixbuf = gdk_pixbuf_new_from_file(LOGO, NULL);
-
-    notification = notify_notification_new( title,
-            body,
-            NULL,
-            NULL);
-    notify_notification_set_urgency( notification , NOTIFY_URGENCY_CRITICAL );
-    notify_notification_set_icon_from_pixbuf (notification, pixbuf);
-#if GTK_CHECK_VERSION(2,10,0)
-    notify_notification_attach_to_status_icon( notification , get_status_icon() );
-#endif
-    notify_notification_set_timeout( notification , NOTIFY_EXPIRES_DEFAULT );
-    //notify_notification_add_action( notification , "setup" , _("Setup Accounts") , (NotifyActionCallback) setup_accounts_cb , NULL , NULL );
-
-  if (!notify_notification_show (notification, NULL)) {
-    ERROR("notify(), failed to send notification");
-  }
-
+    create_new_gnome_notification (title,
+                                    body, 
+                                    NOTIFY_URGENCY_CRITICAL, 
+                                    NOTIFY_EXPIRES_DEFAULT,
+                                    &_gnome_notification); 
 }
 
     void
 stop_notification( void )
 {
-    if( notification != NULL )
+    /*
+    if( _gnome_notification != NULL )
     {
-        if(notify_notification_show( notification , NULL))
+        if(_gnome_notification->notification != NULL)
         {
-            notify_notification_close( notification , NULL);
-            g_object_unref( notification );
-            notification = NULL;
+            notify_notification_close (_gnome_notification->notification, NULL);
+            g_object_unref(_gnome_notification->notification );
+            _gnome_notification->notification = NULL;
         }
-        notification = NULL;
-    }
+    free_notification (_gnome_notification);
+    }*/
+}
+
+/**
+ * Freeing a notification instance
+ */
+void free_notification (GnomeNotification *g)
+{
+  g_free(g->title);
+  g_free(g->body);
+  g_free(g->notification);
+  g_free(g);
 }
diff --git a/sflphone-client-gnome/src/sflnotify.h b/sflphone-client-gnome/src/sflnotify.h
index 6131322b445326a68b60114d1c849d5a020ad208..1f0fdff962ba1c3b8028a036d79ca90a5cc3cdf9 100644
--- a/sflphone-client-gnome/src/sflnotify.h
+++ b/sflphone-client-gnome/src/sflnotify.h
@@ -17,9 +17,8 @@
  *   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  */
 
-
-#ifndef __SFL_NOTIFY_H__
-#define __SFL_NOTIFY_H__
+#ifndef __GNOME_NOTIFICATION_H__
+#define __GNOME_NOTIFICATION_H__
 
 /** @file sflnotify.h
   * @brief Implements desktop notification for incoming events.
@@ -29,11 +28,22 @@
 #include <accountlist.h>
 #include <calllist.h>
 #include <dbus/dbus.h>
-#include <actions.h>
 #include <statusicon.h>
-#include <configwindow.h>
 #include <sflphone_const.h>
 
+G_BEGIN_DECLS
+
+typedef struct {
+    NotifyNotification *notification;
+    gchar *title;
+    gchar *body;
+    GdkPixbuf *icon;
+} GnomeNotification;
+
+void create_new_gnome_notification (gchar *title, gchar *body, NotifyUrgency urgency, gint timeout, GnomeNotification **notif);
+
+void free_notification (GnomeNotification *g);
+
 /**
  * Notify an incoming call
  * A dialog box is attached to the status icon
@@ -65,41 +75,11 @@ void notify_no_accounts( );
  */
 void notify_no_registered_accounts(  );
 
-/**
- * Callback when answer button is pressed.
- * Action associated: Pick up the incoming call
- * @param notification	The pointer on the notification structure
- * @param data	The data associated. Here: call_t*
- */
-void answer_call_cb( NotifyNotification *notification, gpointer data );
-
-/**
- * Callback when refuse button is pressed
- * Action associated: Hang up the incoming call
- * @param notification	The pointer on the notification structure
- * @param data	The data associated. Here: call_t*
- */
-void refuse_call_cb( NotifyNotification *notification, gpointer data );
-
-/**
- * Callback when ignore button is pressed
- * Action associated: Nothing - The call continues ringing
- * @param notification	The pointer on the notification structure
- * @param data	The data associated. Here: call_t*
- */
-void ignore_call_cb( NotifyNotification *notification, gpointer data );
-
-/**
- * Callback when you try to make a call without accounts setup and 'setup account' button is clicked.
- * Action associated: Open the account window
- * @param notification The pointer on the notification structure
- * @param data The data associated. Here: account_t*
- */
-void setup_accounts_cb(NotifyNotification *notification, gpointer data);
-
 /**
  * Stop and close the current notification if an action occured before the timeout
  */
 void stop_notification( void );
 
+G_END_DECLS
+
 #endif
diff --git a/sflphone-client-gnome/src/sflphone_const.h b/sflphone-client-gnome/src/sflphone_const.h
index cb71c403da397ab1ba546881b16eb686eb63e9ce..9ae9bbb696a50aa3a6b8207c7f5a8f30ab0dd8e3 100644
--- a/sflphone-client-gnome/src/sflphone_const.h
+++ b/sflphone-client-gnome/src/sflphone_const.h
@@ -28,8 +28,8 @@
  * @brief Contains the global variables for the client code
  */
 
-
-#define LOGO        ICONS_DIR "/sflphone1.svg"
+#define LOGO                ICONS_DIR "/sflphone.svg"
+#define LOGO_SMALL          ICONS_DIR "/sflphone_small.svg"
 
 /** Locale */
 #define _(STRING)   gettext( STRING )
diff --git a/sflphone-client-gnome/src/statusicon.c b/sflphone-client-gnome/src/statusicon.c
index e95f141887c3019091114441dd7da65b883fbc73..18fd693c13be0226b7edc7dbfc01cbf5f7e1fe63 100644
--- a/sflphone-client-gnome/src/statusicon.c
+++ b/sflphone-client-gnome/src/statusicon.c
@@ -121,7 +121,7 @@ show_status_icon()
 			  create_menu());			  
 
   // Add a tooltip to the system tray icon
-  gchar *tip =  g_markup_printf_escaped (_("SFLphone - %i accounts registered") , account_list_get_size());
+  gchar *tip =  g_markup_printf_escaped (_("SFLphone - %i accounts configured") , account_list_get_size());
   gtk_status_icon_set_tooltip( status , tip );
   g_free(tip);
 }
diff --git a/sflphone-client-gnome/src/toolbar.c b/sflphone-client-gnome/src/toolbar.c
index f6a59c73425ce9917b0536c6861f702ddbefa286..68ed11fce3223fcf4b8dc9a8320be40f05f108bf 100644
--- a/sflphone-client-gnome/src/toolbar.c
+++ b/sflphone-client-gnome/src/toolbar.c
@@ -20,134 +20,134 @@
 #include <toolbar.h>
 #include <contacts/addressbook.h>
 
-static gboolean
+    static gboolean
 is_inserted( GtkWidget* button )
 {
-  return ( GTK_WIDGET(button)->parent == GTK_WIDGET( toolbar ) );
+    return ( GTK_WIDGET(button)->parent == GTK_WIDGET( toolbar ) );
 }
 
 /**
  * Static rec_button
  */
-static void
+    static void
 rec_button( GtkWidget *widget UNUSED, gpointer   data UNUSED)
 {
-  sflphone_rec_call();
+    sflphone_rec_call();
 }
 
-static void
+    static void
 call_mailbox( GtkWidget* widget UNUSED, gpointer data UNUSED)
 {
-  account_t* current;
-  call_t *mailbox_call;
-  gchar *to, *from, *account_id;
-
-  current = account_list_get_current ();
-  if( current == NULL ) // Should not happens
-      return;
-
-  to = g_strdup(g_hash_table_lookup(current->properties, ACCOUNT_MAILBOX));
-  from = g_markup_printf_escaped(_("\"Voicemail\" <%s>"),  to);
-  account_id = g_strdup (current->accountID);
-
-  create_new_call (to, from, CALL_STATE_DIALING, account_id, &mailbox_call);
-  DEBUG("TO : %s" , mailbox_call->to);
-  calllist_add( current_calls , mailbox_call );
-  calltree_add_call( current_calls , mailbox_call );
-  update_menus();
-  sflphone_place_call( mailbox_call );
-  calltree_display(current_calls);
+    account_t* current;
+    call_t *mailbox_call;
+    gchar *to, *from, *account_id;
+
+    current = account_list_get_current ();
+    if( current == NULL ) // Should not happens
+        return;
+
+    to = g_strdup(g_hash_table_lookup(current->properties, ACCOUNT_MAILBOX));
+    from = g_markup_printf_escaped(_("\"Voicemail\" <%s>"),  to);
+    account_id = g_strdup (current->accountID);
+
+    create_new_call (to, from, CALL_STATE_DIALING, account_id, &mailbox_call);
+    DEBUG("TO : %s" , mailbox_call->to);
+    calllist_add( current_calls , mailbox_call );
+    calltree_add_call( current_calls , mailbox_call );
+    update_menus();
+    sflphone_place_call( mailbox_call );
+    calltree_display(current_calls);
 }
 
-  /**
+/**
  * Make a call
  */
-  static void
+    static void
 call_button( GtkWidget *widget UNUSED, gpointer   data UNUSED)
 {
-  DEBUG("------ call_button -----");
-  call_t * selectedCall;
-  call_t* new_call;
-  gchar *to, *from;
+    DEBUG("------ call_button -----");
+    call_t * selectedCall;
+    call_t* new_call;
+    gchar *to, *from;
 
-  selectedCall = calltab_get_selected_call(active_calltree);
+    selectedCall = calltab_get_selected_call(active_calltree);
 
-  if(calllist_get_size(current_calls)>0)
-    sflphone_pick_up();
+    if(calllist_get_size(current_calls)>0)
+        sflphone_pick_up();
 
-  else if(calllist_get_size(active_calltree) > 0){
-    if( selectedCall)
-    {
-      DEBUG("Calling a called num");
+    else if(calllist_get_size(active_calltree) > 0){
+        if( selectedCall)
+        {
+            DEBUG("Calling a called num");
 
-      to = g_strdup(call_get_number(selectedCall));
-      from = g_strconcat("\"\" <", call_get_number(selectedCall), ">",NULL);
+            to = g_strdup(call_get_number(selectedCall));
+            from = g_strconcat("\"\" <", call_get_number(selectedCall), ">",NULL);
 
-      create_new_call (to, from, CALL_STATE_DIALING, "", &new_call);
+            create_new_call (to, from, CALL_STATE_DIALING, "", &new_call);
 
-      DEBUG("call : from : %s to %s", new_call->from, new_call->to);
+            DEBUG("call : from : %s to %s", new_call->from, new_call->to);
 
-      calllist_add(current_calls, new_call);
-      calltree_add_call(current_calls, new_call);
-      sflphone_place_call(new_call);
-      calltree_display (current_calls);
+            calllist_add(current_calls, new_call);
+            calltree_add_call(current_calls, new_call);
+            sflphone_place_call(new_call);
+            calltree_display (current_calls);
+        }
+        else
+        {
+            sflphone_new_call();
+            calltree_display(current_calls);
+        }
     }
     else
     {
-      sflphone_new_call();
-      calltree_display(current_calls);
+        sflphone_new_call();
+        calltree_display(current_calls);
     }
-  }
-  else
-  {
-    sflphone_new_call();
-    calltree_display(current_calls);
-  }
 }
 
 /**
  * Hang up the line
  */
-  static void
+    static void
 hang_up( GtkWidget *widget UNUSED, gpointer   data UNUSED)
 {
-  sflphone_hang_up();
+    sflphone_hang_up();
 }
 
 /**
  * Hold the line
  */
-  static void
+    static void
 hold( GtkWidget *widget UNUSED, gpointer   data UNUSED)
 {
-  sflphone_on_hold();
+    sflphone_on_hold();
 }
 
 /**
  * Transfert the line
  */
-  static void
+    static void
 transfert  (GtkToggleToolButton *toggle_tool_button,
-    gpointer             user_data UNUSED )
+        gpointer             user_data UNUSED )
 {
-  gboolean up = gtk_toggle_tool_button_get_active(toggle_tool_button);
-  if(up)
-  {
-    sflphone_set_transfert();
-  }
-  else
-  {
-    sflphone_unset_transfert();
-  }
+    gboolean up = gtk_toggle_tool_button_get_active(toggle_tool_button);
+    if(up)
+    {
+        sflphone_set_transfert();
+    }
+    else
+    {
+        sflphone_unset_transfert();
+    }
 }
 
 /**
  * Unhold call
  */
-  static void
+    static void
 unhold( GtkWidget *widget UNUSED, gpointer   data UNUSED)
 {
-  sflphone_off_hold();
+    sflphone_off_hold();
 }
 
 static void toggle_button_cb (GtkToggleToolButton *widget, gpointer user_data)
@@ -163,214 +163,223 @@ static void toggle_button_cb (GtkToggleToolButton *widget, gpointer user_data)
 
 GtkWidget *create_toolbar ()
 {
-  GtkWidget *ret;
-  GtkWidget *image;
+    GtkWidget *ret;
+    GtkWidget *image;
 
-  ret = gtk_toolbar_new();
-  toolbar = ret;
+    ret = gtk_toolbar_new();
+    toolbar = ret;
 
-  gtk_toolbar_set_orientation(GTK_TOOLBAR(ret), GTK_ORIENTATION_HORIZONTAL);
-  gtk_toolbar_set_style(GTK_TOOLBAR(ret), GTK_TOOLBAR_ICONS);
+    gtk_toolbar_set_orientation(GTK_TOOLBAR(ret), GTK_ORIENTATION_HORIZONTAL);
+    gtk_toolbar_set_style(GTK_TOOLBAR(ret), GTK_TOOLBAR_ICONS);
 
-  image = gtk_image_new_from_file( ICONS_DIR "/call.svg");
-  callButton = gtk_tool_button_new (image, _("Place a call"));
+    image = gtk_image_new_from_file( ICONS_DIR "/call.svg");
+    callButton = gtk_tool_button_new (image, _("Place a call"));
 #if GTK_CHECK_VERSION(2,12,0)
-  gtk_widget_set_tooltip_text(GTK_WIDGET(callButton), _("Place a call"));
+    gtk_widget_set_tooltip_text(GTK_WIDGET(callButton), _("Place a call"));
 #endif
-  g_signal_connect (G_OBJECT (callButton), "clicked",
-      G_CALLBACK (call_button), NULL);
-  gtk_toolbar_insert(GTK_TOOLBAR(ret), GTK_TOOL_ITEM(callButton), -1);
+    g_signal_connect (G_OBJECT (callButton), "clicked",
+            G_CALLBACK (call_button), NULL);
+    gtk_toolbar_insert(GTK_TOOLBAR(ret), GTK_TOOL_ITEM(callButton), -1);
 
-  image = gtk_image_new_from_file( ICONS_DIR "/accept.svg");
-  pickupButton = gtk_tool_button_new(image, _("Pick up"));
+    image = gtk_image_new_from_file( ICONS_DIR "/accept.svg");
+    pickupButton = gtk_tool_button_new(image, _("Pick up"));
 #if GTK_CHECK_VERSION(2,12,0)
-  gtk_widget_set_tooltip_text(GTK_WIDGET(pickupButton), _("Pick up"));
+    gtk_widget_set_tooltip_text(GTK_WIDGET(pickupButton), _("Pick up"));
 #endif
-  gtk_widget_set_state( GTK_WIDGET(pickupButton), GTK_STATE_INSENSITIVE);
-  g_signal_connect(G_OBJECT (pickupButton), "clicked",
-      G_CALLBACK (call_button), NULL);
-  gtk_widget_show_all(GTK_WIDGET(pickupButton));
+    gtk_widget_set_state( GTK_WIDGET(pickupButton), GTK_STATE_INSENSITIVE);
+    g_signal_connect(G_OBJECT (pickupButton), "clicked",
+            G_CALLBACK (call_button), NULL);
+    gtk_widget_show_all(GTK_WIDGET(pickupButton));
 
-  image = gtk_image_new_from_file( ICONS_DIR "/hang_up.svg");
-  hangupButton = gtk_tool_button_new (image, _("Hang up"));
+    image = gtk_image_new_from_file( ICONS_DIR "/hang_up.svg");
+    hangupButton = gtk_tool_button_new (image, _("Hang up"));
 #if GTK_CHECK_VERSION(2,12,0)
-  gtk_widget_set_tooltip_text(GTK_WIDGET(hangupButton), _("Hang up"));
+    gtk_widget_set_tooltip_text(GTK_WIDGET(hangupButton), _("Hang up"));
 #endif
-  gtk_widget_set_state( GTK_WIDGET(hangupButton), GTK_STATE_INSENSITIVE);
-  g_signal_connect (G_OBJECT (hangupButton), "clicked",
-      G_CALLBACK (hang_up), NULL);
-  gtk_toolbar_insert(GTK_TOOLBAR(ret), GTK_TOOL_ITEM(hangupButton), -1);
+    gtk_widget_set_state( GTK_WIDGET(hangupButton), GTK_STATE_INSENSITIVE);
+    g_signal_connect (G_OBJECT (hangupButton), "clicked",
+            G_CALLBACK (hang_up), NULL);
+    gtk_toolbar_insert(GTK_TOOLBAR(ret), GTK_TOOL_ITEM(hangupButton), -1);
 
-  image = gtk_image_new_from_file( ICONS_DIR "/unhold.svg");
-  unholdButton = gtk_tool_button_new (image, _("Off Hold"));
+    image = gtk_image_new_from_file( ICONS_DIR "/unhold.svg");
+    unholdButton = gtk_tool_button_new (image, _("Off Hold"));
 #if GTK_CHECK_VERSION(2,12,0)
-  gtk_widget_set_tooltip_text(GTK_WIDGET(unholdButton), _("Off Hold"));
+    gtk_widget_set_tooltip_text(GTK_WIDGET(unholdButton), _("Off Hold"));
 #endif
-  gtk_widget_set_state( GTK_WIDGET(unholdButton), GTK_STATE_INSENSITIVE);
-  g_signal_connect (G_OBJECT (unholdButton), "clicked",
-      G_CALLBACK (unhold), NULL);
-  //gtk_toolbar_insert(GTK_TOOLBAR(ret), GTK_TOOL_ITEM(unholdButton), -1);
-  gtk_widget_show_all(GTK_WIDGET(unholdButton));
-
-  image = gtk_image_new_from_file( ICONS_DIR "/hold.svg");
-  holdButton =  gtk_tool_button_new (image, _("On Hold"));
+    gtk_widget_set_state( GTK_WIDGET(unholdButton), GTK_STATE_INSENSITIVE);
+    g_signal_connect (G_OBJECT (unholdButton), "clicked",
+            G_CALLBACK (unhold), NULL);
+    //gtk_toolbar_insert(GTK_TOOLBAR(ret), GTK_TOOL_ITEM(unholdButton), -1);
+    gtk_widget_show_all(GTK_WIDGET(unholdButton));
+
+    image = gtk_image_new_from_file( ICONS_DIR "/hold.svg");
+    holdButton =  gtk_tool_button_new (image, _("On Hold"));
 #if GTK_CHECK_VERSION(2,12,0)
-  gtk_widget_set_tooltip_text(GTK_WIDGET(holdButton), _("On Hold"));
+    gtk_widget_set_tooltip_text(GTK_WIDGET(holdButton), _("On Hold"));
 #endif
-  gtk_widget_set_state( GTK_WIDGET(holdButton), GTK_STATE_INSENSITIVE);
-  g_signal_connect (G_OBJECT (holdButton), "clicked",
-      G_CALLBACK (hold), NULL);
-  gtk_toolbar_insert(GTK_TOOLBAR(ret), GTK_TOOL_ITEM(holdButton), -1);
-
-  image = gtk_image_new_from_file( ICONS_DIR "/transfert.svg");
-  transfertButton = gtk_toggle_tool_button_new ();
-  gtk_tool_button_set_icon_widget(GTK_TOOL_BUTTON(transfertButton), image);
+    gtk_widget_set_state( GTK_WIDGET(holdButton), GTK_STATE_INSENSITIVE);
+    g_signal_connect (G_OBJECT (holdButton), "clicked",
+            G_CALLBACK (hold), NULL);
+    gtk_toolbar_insert(GTK_TOOLBAR(ret), GTK_TOOL_ITEM(holdButton), -1);
+
+    image = gtk_image_new_from_file( ICONS_DIR "/transfert.svg");
+    transfertButton = gtk_toggle_tool_button_new ();
+    gtk_tool_button_set_icon_widget(GTK_TOOL_BUTTON(transfertButton), image);
 #if GTK_CHECK_VERSION(2,12,0)
-  gtk_widget_set_tooltip_text(GTK_WIDGET(transfertButton), _("Transfer"));
+    gtk_widget_set_tooltip_text(GTK_WIDGET(transfertButton), _("Transfer"));
 #endif
-  gtk_tool_button_set_label(GTK_TOOL_BUTTON(transfertButton), _("Transfer"));
-  gtk_widget_set_state( GTK_WIDGET(transfertButton), GTK_STATE_INSENSITIVE);
-  transfertButtonConnId = g_signal_connect (G_OBJECT (transfertButton), "toggled",
-      G_CALLBACK (transfert), NULL);
-  gtk_toolbar_insert(GTK_TOOLBAR(ret), GTK_TOOL_ITEM(transfertButton), -1);
-
-  image = gtk_image_new_from_file( ICONS_DIR "/history2.svg");
-  historyButton = gtk_toggle_tool_button_new();
-  gtk_tool_button_set_icon_widget (GTK_TOOL_BUTTON (historyButton), image);
+    gtk_tool_button_set_label(GTK_TOOL_BUTTON(transfertButton), _("Transfer"));
+    gtk_widget_set_state( GTK_WIDGET(transfertButton), GTK_STATE_INSENSITIVE);
+    transfertButtonConnId = g_signal_connect (G_OBJECT (transfertButton), "toggled",
+            G_CALLBACK (transfert), NULL);
+    gtk_toolbar_insert(GTK_TOOLBAR(ret), GTK_TOOL_ITEM(transfertButton), -1);
+
+    image = gtk_image_new_from_file( ICONS_DIR "/history2.svg");
+    historyButton = gtk_toggle_tool_button_new();
+    gtk_tool_button_set_icon_widget (GTK_TOOL_BUTTON (historyButton), image);
 #if GTK_CHECK_VERSION(2,12,0)
-  gtk_widget_set_tooltip_text(GTK_WIDGET(historyButton), _("History"));
+    gtk_widget_set_tooltip_text(GTK_WIDGET(historyButton), _("History"));
 #endif
-  gtk_tool_button_set_label (GTK_TOOL_BUTTON (historyButton), _("History"));
-  g_signal_connect (G_OBJECT (historyButton), "toggled", G_CALLBACK (toggle_button_cb), history);
-  gtk_toolbar_insert(GTK_TOOLBAR(ret), GTK_TOOL_ITEM(historyButton), -1);
-  active_calltree = current_calls;
-
-  image = gtk_image_new_from_file( ICONS_DIR "/addressbook.svg");
-  contactButton = gtk_toggle_tool_button_new();
-  gtk_tool_button_set_icon_widget (GTK_TOOL_BUTTON (contactButton), image);
+    gtk_tool_button_set_label (GTK_TOOL_BUTTON (historyButton), _("History"));
+    g_signal_connect (G_OBJECT (historyButton), "toggled", G_CALLBACK (toggle_button_cb), history);
+    gtk_toolbar_insert(GTK_TOOLBAR(ret), GTK_TOOL_ITEM(historyButton), -1);
+    active_calltree = current_calls;
+
+    image = gtk_image_new_from_file( ICONS_DIR "/addressbook.svg");
+    contactButton = gtk_toggle_tool_button_new();
+    gtk_tool_button_set_icon_widget (GTK_TOOL_BUTTON (contactButton), image);
 #if GTK_CHECK_VERSION(2,12,0)
-  gtk_widget_set_tooltip_text(GTK_WIDGET(contactButton), _("Address book"));
+    gtk_widget_set_tooltip_text(GTK_WIDGET(contactButton), _("Address book"));
 #endif
-  gtk_tool_button_set_label (GTK_TOOL_BUTTON (contactButton), _("Address book"));
-  gtk_widget_set_state( GTK_WIDGET(contactButton), GTK_STATE_INSENSITIVE);
-  g_signal_connect (G_OBJECT (contactButton), "toggled", G_CALLBACK (toggle_button_cb), contacts);
-  gtk_toolbar_insert(GTK_TOOLBAR(ret), GTK_TOOL_ITEM(contactButton), -1);
-
-  image = gtk_image_new_from_file( ICONS_DIR "/mailbox.svg");
-  mailboxButton = gtk_tool_button_new( image , _("Voicemail"));
-  gtk_tool_button_set_icon_widget(GTK_TOOL_BUTTON(mailboxButton), image);
-  if( account_list_get_size() ==0 ) gtk_widget_set_state( GTK_WIDGET(mailboxButton), GTK_STATE_INSENSITIVE );
+    gtk_tool_button_set_label (GTK_TOOL_BUTTON (contactButton), _("Address book"));
+    gtk_widget_set_state( GTK_WIDGET(contactButton), GTK_STATE_INSENSITIVE);
+    g_signal_connect (G_OBJECT (contactButton), "toggled", G_CALLBACK (toggle_button_cb), contacts);
+    gtk_toolbar_insert(GTK_TOOLBAR(ret), GTK_TOOL_ITEM(contactButton), -1);
+
+    image = gtk_image_new_from_file( ICONS_DIR "/mailbox.svg");
+    mailboxButton = gtk_tool_button_new( image , _("Voicemail"));
+    gtk_tool_button_set_icon_widget(GTK_TOOL_BUTTON(mailboxButton), image);
+    if( account_list_get_size() ==0 ) gtk_widget_set_state( GTK_WIDGET(mailboxButton), GTK_STATE_INSENSITIVE );
 #if GTK_CHECK_VERSION(2,12,0)
-  gtk_widget_set_tooltip_text(GTK_WIDGET(mailboxButton), _("Voicemail"));
+    gtk_widget_set_tooltip_text(GTK_WIDGET(mailboxButton), _("Voicemail"));
 #endif
-  g_signal_connect (G_OBJECT (mailboxButton), "clicked",
-      G_CALLBACK (call_mailbox), NULL);
-  gtk_toolbar_insert(GTK_TOOLBAR(ret), GTK_TOOL_ITEM(mailboxButton), -1);
+    g_signal_connect (G_OBJECT (mailboxButton), "clicked",
+            G_CALLBACK (call_mailbox), NULL);
+    gtk_toolbar_insert(GTK_TOOLBAR(ret), GTK_TOOL_ITEM(mailboxButton), -1);
 
-  recButton = gtk_tool_button_new_from_stock (GTK_STOCK_MEDIA_RECORD);
+    recButton = gtk_tool_button_new_from_stock (GTK_STOCK_MEDIA_RECORD);
 #if GTK_CHECK_VERSION(2,12,0)
-  gtk_widget_set_tooltip_text(GTK_WIDGET(recButton), _("Record a call"));
+    gtk_widget_set_tooltip_text(GTK_WIDGET(recButton), _("Record a call"));
 #endif
-  gtk_widget_set_state( GTK_WIDGET(recButton), GTK_STATE_INSENSITIVE);
-  g_signal_connect (G_OBJECT (recButton), "clicked",
-      G_CALLBACK (rec_button), NULL);
-  gtk_toolbar_insert(GTK_TOOLBAR(ret), GTK_TOOL_ITEM(recButton), -1);
+    gtk_widget_set_state( GTK_WIDGET(recButton), GTK_STATE_INSENSITIVE);
+    g_signal_connect (G_OBJECT (recButton), "clicked",
+            G_CALLBACK (rec_button), NULL);
+    gtk_toolbar_insert(GTK_TOOLBAR(ret), GTK_TOOL_ITEM(recButton), -1);
 
 
-  return ret;
+    return ret;
 }
 
-  void
+    void
 toolbar_update_buttons ()
 {
-  gtk_widget_set_sensitive( GTK_WIDGET(callButton),       FALSE);
-  gtk_widget_set_sensitive( GTK_WIDGET(hangupButton),     FALSE);
-  gtk_widget_set_sensitive( GTK_WIDGET(holdButton),       FALSE);
-  gtk_widget_set_sensitive( GTK_WIDGET(transfertButton),  FALSE);
-  gtk_widget_set_sensitive( GTK_WIDGET(mailboxButton) ,   FALSE);
-  gtk_widget_set_sensitive( GTK_WIDGET(unholdButton),     FALSE);
-  gtk_widget_set_sensitive( GTK_WIDGET(recButton),        FALSE);
-  g_object_ref(holdButton);
-  g_object_ref(unholdButton);
-  if( is_inserted( GTK_WIDGET(holdButton) ) )   gtk_container_remove(GTK_CONTAINER(toolbar), GTK_WIDGET(holdButton));
-  if( is_inserted( GTK_WIDGET(unholdButton) ) ) gtk_container_remove(GTK_CONTAINER(toolbar), GTK_WIDGET(unholdButton));
-  gtk_toolbar_insert(GTK_TOOLBAR(toolbar), holdButton, 3);
-  g_object_ref(callButton);
-  g_object_ref(pickupButton);
-  if( is_inserted( GTK_WIDGET(callButton) ) ) gtk_container_remove(GTK_CONTAINER(toolbar), GTK_WIDGET(callButton));
-  if( is_inserted( GTK_WIDGET(pickupButton) ) ) gtk_container_remove(GTK_CONTAINER(toolbar), GTK_WIDGET(pickupButton));
-  gtk_toolbar_insert(GTK_TOOLBAR(toolbar), callButton, 0);
-  //gtk_toolbar_insert(GTK_TOOLBAR(toolbar), recButton, 0);
-
-
-  gtk_signal_handler_block(GTK_OBJECT(transfertButton),transfertButtonConnId);
-  gtk_toggle_tool_button_set_active(GTK_TOGGLE_TOOL_BUTTON(transfertButton), FALSE);
-  gtk_signal_handler_unblock(transfertButton, transfertButtonConnId);
-
-  call_t * selectedCall = calltab_get_selected_call(active_calltree);
+
+    gtk_widget_set_sensitive( GTK_WIDGET(callButton),       FALSE);
+    gtk_widget_set_sensitive( GTK_WIDGET(hangupButton),     FALSE);
+    gtk_widget_set_sensitive( GTK_WIDGET(holdButton),       FALSE);
+    gtk_widget_set_sensitive( GTK_WIDGET(transfertButton),  FALSE);
+    gtk_widget_set_sensitive( GTK_WIDGET(mailboxButton) ,   FALSE);
+    gtk_widget_set_sensitive( GTK_WIDGET(unholdButton),     FALSE);
+    gtk_widget_set_sensitive( GTK_WIDGET(recButton),        FALSE);
+    gtk_widget_set_sensitive( GTK_WIDGET(contactButton),        FALSE);
+    g_object_ref (contactButton);
+    if( is_inserted( GTK_WIDGET(contactButton) ) )     gtk_container_remove(GTK_CONTAINER(toolbar), GTK_WIDGET (contactButton));
+    g_object_ref(holdButton);
+    g_object_ref(unholdButton);
+    if( is_inserted( GTK_WIDGET(holdButton) ) )   gtk_container_remove(GTK_CONTAINER(toolbar), GTK_WIDGET(holdButton));
+    if( is_inserted( GTK_WIDGET(unholdButton) ) ) gtk_container_remove(GTK_CONTAINER(toolbar), GTK_WIDGET(unholdButton));
+    gtk_toolbar_insert(GTK_TOOLBAR(toolbar), holdButton, 3);
+    g_object_ref(callButton);
+    g_object_ref(pickupButton);
+    if( is_inserted( GTK_WIDGET(callButton) ) ) gtk_container_remove(GTK_CONTAINER(toolbar), GTK_WIDGET(callButton));
+    if( is_inserted( GTK_WIDGET(pickupButton) ) ) gtk_container_remove(GTK_CONTAINER(toolbar), GTK_WIDGET(pickupButton));
+    gtk_toolbar_insert(GTK_TOOLBAR(toolbar), callButton, 0);
+
+    // If addressbook support has been enabled and all addressbooks are loaded, display the icon
+    if (addressbook_is_enabled () && addressbook_is_ready()) {  
+        gtk_toolbar_insert(GTK_TOOLBAR(toolbar), contactButton, 5);
+        // Make the icon clickable only if at least one address book is active
+        if (addressbook_is_active ())   gtk_widget_set_sensitive( GTK_WIDGET(contactButton), TRUE);
+    }
+
+    gtk_signal_handler_block(GTK_OBJECT(transfertButton),transfertButtonConnId);
+    gtk_toggle_tool_button_set_active(GTK_TOGGLE_TOOL_BUTTON(transfertButton), FALSE);
+    gtk_signal_handler_unblock(transfertButton, transfertButtonConnId);
+
+    call_t * selectedCall = calltab_get_selected_call(active_calltree);
     if (selectedCall)
     {
         switch(selectedCall->state)
         {
             case CALL_STATE_INCOMING:
-              gtk_widget_set_sensitive( GTK_WIDGET(pickupButton),     TRUE);
-              gtk_widget_set_sensitive( GTK_WIDGET(hangupButton), TRUE);
-              g_object_ref(callButton);
-              gtk_container_remove(GTK_CONTAINER(toolbar), GTK_WIDGET(callButton));
-              gtk_toolbar_insert(GTK_TOOLBAR(toolbar), pickupButton, 0);
-          break;
+                gtk_widget_set_sensitive( GTK_WIDGET(pickupButton),     TRUE);
+                gtk_widget_set_sensitive( GTK_WIDGET(hangupButton), TRUE);
+                g_object_ref(callButton);
+                gtk_container_remove(GTK_CONTAINER(toolbar), GTK_WIDGET(callButton));
+                gtk_toolbar_insert(GTK_TOOLBAR(toolbar), pickupButton, 0);
+                break;
             case CALL_STATE_HOLD:
-              gtk_widget_set_sensitive( GTK_WIDGET(hangupButton),     TRUE);
-              gtk_widget_set_sensitive( GTK_WIDGET(unholdButton),     TRUE);
-              gtk_widget_set_sensitive( GTK_WIDGET(callButton),       TRUE);
-              g_object_ref(holdButton);
-              gtk_container_remove(GTK_CONTAINER(toolbar), GTK_WIDGET(holdButton));
-              gtk_toolbar_insert(GTK_TOOLBAR(toolbar), unholdButton, 3);
-          break;
+                gtk_widget_set_sensitive( GTK_WIDGET(hangupButton),     TRUE);
+                gtk_widget_set_sensitive( GTK_WIDGET(unholdButton),     TRUE);
+                gtk_widget_set_sensitive( GTK_WIDGET(callButton),       TRUE);
+                g_object_ref(holdButton);
+                gtk_container_remove(GTK_CONTAINER(toolbar), GTK_WIDGET(holdButton));
+                gtk_toolbar_insert(GTK_TOOLBAR(toolbar), unholdButton, 3);
+                break;
             case CALL_STATE_RINGING:
-              gtk_widget_set_sensitive( GTK_WIDGET(hangupButton),     TRUE);
-              gtk_widget_set_sensitive( GTK_WIDGET(callButton),     TRUE);
-          break;
+                gtk_widget_set_sensitive( GTK_WIDGET(hangupButton),     TRUE);
+                gtk_widget_set_sensitive( GTK_WIDGET(callButton),     TRUE);
+                break;
             case CALL_STATE_DIALING:
-              if( active_calltree == current_calls )  gtk_widget_set_sensitive( GTK_WIDGET(hangupButton),     TRUE);
-              gtk_widget_set_sensitive( GTK_WIDGET(pickupButton),       TRUE);
-              g_object_ref(callButton);
-              gtk_container_remove(GTK_CONTAINER(toolbar), GTK_WIDGET(callButton));
-              gtk_toolbar_insert(GTK_TOOLBAR(toolbar), pickupButton, 0);
-          break;
+                if( active_calltree == current_calls )  gtk_widget_set_sensitive( GTK_WIDGET(hangupButton),     TRUE);
+                gtk_widget_set_sensitive( GTK_WIDGET(pickupButton),       TRUE);
+                g_object_ref(callButton);
+                gtk_container_remove(GTK_CONTAINER(toolbar), GTK_WIDGET(callButton));
+                gtk_toolbar_insert(GTK_TOOLBAR(toolbar), pickupButton, 0);
+                break;
             case CALL_STATE_CURRENT:
-              gtk_widget_set_sensitive( GTK_WIDGET(hangupButton),     TRUE);
-              gtk_widget_set_sensitive( GTK_WIDGET(holdButton),       TRUE);
-              gtk_widget_set_sensitive( GTK_WIDGET(transfertButton),  TRUE);
-              gtk_widget_set_sensitive( GTK_WIDGET(callButton),       TRUE);
+                gtk_widget_set_sensitive( GTK_WIDGET(hangupButton),     TRUE);
+                gtk_widget_set_sensitive( GTK_WIDGET(holdButton),       TRUE);
+                gtk_widget_set_sensitive( GTK_WIDGET(transfertButton),  TRUE);
+                gtk_widget_set_sensitive( GTK_WIDGET(callButton),       TRUE);
                 gtk_widget_set_sensitive( GTK_WIDGET(recButton),        TRUE);
-          break;
+                break;
             case CALL_STATE_BUSY:
             case CALL_STATE_FAILURE:
-              gtk_widget_set_sensitive( GTK_WIDGET(hangupButton),     TRUE);
-              break;
+                gtk_widget_set_sensitive( GTK_WIDGET(hangupButton),     TRUE);
+                break;
             case CALL_STATE_TRANSFERT:
-              gtk_signal_handler_block(GTK_OBJECT(transfertButton),transfertButtonConnId);
-              gtk_toggle_tool_button_set_active(GTK_TOGGLE_TOOL_BUTTON(transfertButton), TRUE);
-              gtk_signal_handler_unblock(transfertButton, transfertButtonConnId);
-              gtk_widget_set_sensitive( GTK_WIDGET(callButton),       TRUE);
-              gtk_widget_set_sensitive( GTK_WIDGET(hangupButton),     TRUE);
-              gtk_widget_set_sensitive( GTK_WIDGET(holdButton),       TRUE);
-              gtk_widget_set_sensitive( GTK_WIDGET(transfertButton),  TRUE);
-              break;
+                gtk_signal_handler_block(GTK_OBJECT(transfertButton),transfertButtonConnId);
+                gtk_toggle_tool_button_set_active(GTK_TOGGLE_TOOL_BUTTON(transfertButton), TRUE);
+                gtk_signal_handler_unblock(transfertButton, transfertButtonConnId);
+                gtk_widget_set_sensitive( GTK_WIDGET(callButton),       TRUE);
+                gtk_widget_set_sensitive( GTK_WIDGET(hangupButton),     TRUE);
+                gtk_widget_set_sensitive( GTK_WIDGET(holdButton),       TRUE);
+                gtk_widget_set_sensitive( GTK_WIDGET(transfertButton),  TRUE);
+                break;
             case CALL_STATE_RECORD:
-              gtk_widget_set_sensitive( GTK_WIDGET(hangupButton),     TRUE);
-              gtk_widget_set_sensitive( GTK_WIDGET(holdButton),       TRUE);
-              gtk_widget_set_sensitive( GTK_WIDGET(transfertButton),  TRUE);
-              gtk_widget_set_sensitive( GTK_WIDGET(callButton),       TRUE);
+                gtk_widget_set_sensitive( GTK_WIDGET(hangupButton),     TRUE);
+                gtk_widget_set_sensitive( GTK_WIDGET(holdButton),       TRUE);
+                gtk_widget_set_sensitive( GTK_WIDGET(transfertButton),  TRUE);
+                gtk_widget_set_sensitive( GTK_WIDGET(callButton),       TRUE);
                 gtk_widget_set_sensitive( GTK_WIDGET(recButton),        TRUE);
-          break;
+                break;
             default:
-              // Fix bug #1145
-              // Actually it could happen when sflphone_fill_account_list()
-              // call this function and no "call" is selected
-              // WARN("Toolbar update - Should not happen!");
-          break;
+                // Fix bug #1145
+                // Actually it could happen when sflphone_fill_account_list()
+                // call this function and no "call" is selected
+                // WARN("Toolbar update - Should not happen!");
+                break;
         }
     }
     else
@@ -378,7 +387,8 @@ toolbar_update_buttons ()
         if( account_list_get_size() > 0 )
         {
             gtk_widget_set_sensitive( GTK_WIDGET(callButton), TRUE );
-            gtk_widget_set_sensitive( GTK_WIDGET(mailboxButton), TRUE );
+            if (account_list_current_account_has_mailbox ())
+                gtk_widget_set_sensitive( GTK_WIDGET(mailboxButton), TRUE );
         }
         else
         {
@@ -386,10 +396,5 @@ toolbar_update_buttons ()
         }
     }
 
-    // Activate addressbook button if needed
-    // TODO : should be moved in a better place
-    if(addressbook_is_ready())
-      gtk_widget_set_sensitive( GTK_WIDGET(contactButton), TRUE);
-    else
-      gtk_widget_set_sensitive( GTK_WIDGET(contactButton), FALSE);
+
 }
diff --git a/sflphone-client-gnome/tests/check_global.c b/sflphone-client-gnome/tests/check_global.c
index f464eefb27e8d859f7ddc430e0bde03ff34f420b..5ba1256895d63a31eac550ff920506d1fdc9fa08 100644
--- a/sflphone-client-gnome/tests/check_global.c
+++ b/sflphone-client-gnome/tests/check_global.c
@@ -24,23 +24,28 @@
 #include "../src/accountlist.h"
 #include "../src/sflphone_const.h"
 
-account_t* create_test_account ()
+account_t* create_test_account (gchar *alias)
 {
     account_t *test;
+    gchar *id;
+    
+    srand(time(NULL));
     
     test = g_new0 (account_t, 1); 
-    test->accountID = "test";
+    id = g_new0(gchar, 30);
+    g_sprintf(id, "%s-%d", alias, rand());
+    test->accountID = g_strdup (id);
     test->state = ACCOUNT_STATE_REGISTERED;
     test->properties = g_hash_table_new(NULL, g_str_equal);
     
     // Populate the properties
     g_hash_table_replace (test->properties, ACCOUNT_ENABLED, "1");
-    g_hash_table_replace (test->properties, ACCOUNT_ALIAS, "test account");
+    g_hash_table_replace (test->properties, ACCOUNT_ALIAS, alias);
     g_hash_table_replace (test->properties, ACCOUNT_TYPE, "SIP");
-    g_hash_table_replace (test->properties, ACCOUNT_HOSTNAME, "192.168.1.1");
-    g_hash_table_replace (test->properties, ACCOUNT_USERNAME, "test");
-    g_hash_table_replace (test->properties, ACCOUNT_PASSWORD, "my-password");
-    g_hash_table_replace (test->properties, ACCOUNT_MAILBOX, "888");
+    g_hash_table_replace (test->properties, ACCOUNT_HOSTNAME, "sflphone.org");
+    g_hash_table_replace (test->properties, ACCOUNT_USERNAME, "1260");
+    g_hash_table_replace (test->properties, ACCOUNT_PASSWORD, "NIPAgmLo");
+    g_hash_table_replace (test->properties, ACCOUNT_MAILBOX, "");
     g_hash_table_replace (test->properties, ACCOUNT_SIP_STUN_SERVER, "");
     g_hash_table_replace (test->properties, ACCOUNT_SIP_STUN_ENABLED, "0");
 
@@ -50,7 +55,7 @@ account_t* create_test_account ()
 
 START_TEST (test_add_account)
 {
-    account_t *test = create_test_account ();
+    account_t *test = create_test_account ("test");
 
     account_list_init ();
     account_list_add (test);
@@ -62,18 +67,21 @@ END_TEST
 
 START_TEST (test_ordered_list)
 {
-    account_t *test = create_test_account ();
+    gchar *list;
+    account_t *test = create_test_account ("test");
 
+    list = g_new0(gchar, 30);
+    g_sprintf(list, "%s/%s/", test->accountID, test->accountID);
     account_list_init ();
     account_list_add (test);
     account_list_add (test);
-    fail_unless (g_strcasecmp (account_list_get_ordered_list (), "test/test/") == 0, "ERROR - BAD ACCOUNT LIST SERIALIZING");
+    fail_unless (g_strcasecmp (account_list_get_ordered_list (), list) == 0, "ERROR - BAD ACCOUNT LIST SERIALIZING");
 }
 END_TEST
 
 START_TEST (test_get_by_id)
 {
-    account_t *test = create_test_account ();
+    account_t *test = create_test_account ("test");
     account_t *tmp;
 
     account_list_init ();
@@ -85,7 +93,7 @@ END_TEST
 
 START_TEST (test_sip_account)
 {
-    account_t *test = create_test_account ();
+    account_t *test = create_test_account ("test");
 
     account_list_init ();
     account_list_add (test);
@@ -93,14 +101,76 @@ START_TEST (test_sip_account)
 }
 END_TEST
 
-START_TEST (test_set_current_account)
+START_TEST (test_get_account_position)
 {
-    account_t *test = create_test_account ();
+    guint pos, pos1;
+    account_t *test = create_test_account ("test");
+    account_t *test2 = create_test_account ("test2");
+    
+    account_list_init ();
+    account_list_add (test);
+    account_list_add (test2);
+
+    pos = account_list_get_position (test);
+    pos1 = account_list_get_position (test2);
+    fail_if (pos == -1, "ERROR - bad account position");
+    fail_unless (pos == 0, "ERROR - bad account position");
+
+    fail_if (pos1 == -1, "ERROR - bad account position");
+    fail_unless (pos1 == 1, "ERROR - bad account position");
+    
+    account_list_set_current (test);
+    pos = account_list_get_position (test);
+    pos1 = account_list_get_position (test2);
+    fail_if (pos == -1, "ERROR - bad account position");
+    fail_unless (pos == 0, "ERROR - bad account position");
+    fail_unless (pos1 == 1, "ERROR - bad account position");
+}
+END_TEST
+
+START_TEST (test_get_current_account)
+{
+    account_t *test = create_test_account ("test");
+    account_t *test2 = create_test_account ("test2");
+    account_t *current;
+
+    account_list_init ();
+    account_list_add (test);
+    account_list_add (test2);
+    current = account_list_get_current ();
+    fail_unless (current != NULL, "ERROR - current account NULL");
+    // The current account must be the first we add
+    if (current)
+    {
+        fail_unless (g_strcasecmp (g_hash_table_lookup(current->properties, ACCOUNT_ALIAS) , 
+                                   g_hash_table_lookup(test->properties, ACCOUNT_ALIAS)) == 0, 
+                     "ERROR - BAD CURRENT ACCOUNT");
+    }
+
+    // Then we try to change the current account
+    account_list_set_current (test2);
+    current = account_list_get_current ();
+    fail_unless (current != NULL, "ERROR - current account NULL");
+    // The current account must be the first we add
+    if (current)
+    {
+        fail_unless (g_strcasecmp (g_hash_table_lookup(current->properties, ACCOUNT_ALIAS) , 
+                                    g_hash_table_lookup(test2->properties, ACCOUNT_ALIAS)) == 0, 
+                    "ERROR - BAD CURRENT ACCOUNT");
+    }
+}
+END_TEST
+
+START_TEST (test_current_account_has_mailbox)
+{
+    account_t *test = create_test_account ("test");
 
     account_list_init ();
     account_list_add (test);
-    account_list_set_current_id (test->accountID);
-    fail_unless (account_list_get_sip_account_number () == 1, "ERROR - BAD CURRENT ACCOUNT");
+    fail_unless (account_list_current_account_has_mailbox () == FALSE, "current account has a default mailbox");
+
+    g_hash_table_replace (test->properties, ACCOUNT_MAILBOX, "888");
+    fail_unless (account_list_current_account_has_mailbox () == TRUE, "current account has not no voicemail number");
 }
 END_TEST
 
@@ -115,6 +185,9 @@ global_suite (void)
   tcase_add_test (tc_cases, test_ordered_list);
   tcase_add_test (tc_cases, test_sip_account);
   tcase_add_test (tc_cases, test_get_by_id);
+  tcase_add_test (tc_cases, test_get_account_position);
+  tcase_add_test (tc_cases, test_get_current_account);
+  tcase_add_test (tc_cases, test_current_account_has_mailbox);
   suite_add_tcase (s, tc_cases);
 
   return s;
diff --git a/sflphone-common/Makefile.am b/sflphone-common/Makefile.am
index f774bdf57cdde3095aa6082adb35b7f09a5c383c..ffd473d7d1fb1878fcc9cc46d7505db095930206 100644
--- a/sflphone-common/Makefile.am
+++ b/sflphone-common/Makefile.am
@@ -1,14 +1,21 @@
 # Makefile.am
 
+if BUILD_TEST
+TESTS_DIR=test
 unittest:
 	@(cd test; make)
 	@echo ""
 	@echo "NOTICE: Unitary tests successfully build"
 	@echo "Go in the test directory to run them"
 	@echo ""
+else
+unittest:
+	@echo "SFLphone WARNING:"
+	@echo " -- You need the cppunit devel package to compile the unitary tests."
+endif
 
 ACLOCAL_AMFLAGS = -I m4
 
-SUBDIRS = libs src ringtones po man test
+SUBDIRS = libs src ringtones po man $(TESTS_DIR)
 EXTRA_DIST = m4/*.m4 tools/*.sh platform/* images/* README.gentoo
 
diff --git a/sflphone-common/configure.ac b/sflphone-common/configure.ac
index 19d4b8e71173ef9f718963b2465b387bf4795c4d..69f2bcf1ff60155866443a426b88423595a9df18 100644
--- a/sflphone-common/configure.ac
+++ b/sflphone-common/configure.ac
@@ -6,20 +6,23 @@ AC_INIT([SFLphone],[0.9.5~beta],[sflphoneteam@savoirfairelinux.com],[sflphone])
 AC_COPYRIGHT([[Copyright (c) Savoir-Faire Linux 2004-2009]])
 AC_REVISION([$Revision$])
 
+AC_CANONICAL_SYSTEM
+
 AM_INIT_AUTOMAKE(AC_PACKAGE_NAME, AC_PACKAGE_VERSION)
 AM_CONFIG_HEADER([config.h])
 
-dnl Compute canonical system name
-dnl AC_CANONICAL_TARGET
-
 dnl Use this variable in the program
 AC_SUBST(PACKAGE_VERSION)
 
 AM_PROG_LIBTOOL
 
+
 dnl Rewrite name of programs to be installed
 dnl AC_ARG_PROGRAM
 
+dnl Compute canonical system name
+dnl AC_CANONICAL_TARGET
+
 dnl Improve make variable MAKE
 AC_PROG_MAKE_SET
 
@@ -144,11 +147,11 @@ dnl Check for GNU ccRTP
 PKG_PROG_PKG_CONFIG
 
 #Trying to set PJSIP using pkg-config
-PKG_CHECK_MODULES(SIP, libpj-sfl, have_libpj=true, have_libpj=false)
-if test "x${have_libpj}" = "xfalse" ; then
-    AC_MSG_ERROR([PJSIP not found. http://www.pjsip.org/download.htm])
-fi
-AC_SUBST(SIP_CFLAGS)
+#PKG_CHECK_MODULES(SIP, libpj-sfl, have_libpj=true, have_libpj=false)
+#if test "x${have_libpj}" = "xfalse" ; then
+ #   AC_MSG_ERROR([PJSIP not found. http://www.pjsip.org/download.htm])
+#fi
+#AC_SUBST(SIP_CFLAGS)
 
 dnl Check for uuid development package - name: uuid-dev 
 UUID_MIN_VERSION=1.0
@@ -264,11 +267,9 @@ AC_ARG_WITH(build-libdbus-cxx,
 )
 AC_SUBST(BUILD_LIBDBUS_CXX_DIR)
 
-
-
 dnl Check for libcppunit-dev
 CPPUNIT_MIN_VERSION=1.12
-PKG_CHECK_MODULES(CPPUNIT, cppunit >= ${CPPUNIT_MIN_VERSION})
+PKG_CHECK_MODULES(CPPUNIT, cppunit >= ${CPPUNIT_MIN_VERSION}, AM_CONDITIONAL(BUILD_TEST, test 1 = 1 ), AM_CONDITIONAL(BUILD_TEST, test 0 = 1 ))
 AC_SUBST(CPPUNIT_LIBS)
 
 # check for libgsm1 (doesn't use pkg-config)
@@ -393,4 +394,6 @@ AC_DEFINE_UNQUOTED(DBUS_SERVICES_DIR, "$DBUS_SERVICES_DIR", [Where services dir
 AC_SUBST(SFLPHONE_CFLAGS)
 AC_SUBST(SFLPHONE_LIBS)
 AC_OUTPUT
-AC_MSG_NOTICE([[Configuration done! Run `make' to build the software.]])
+AC_MSG_NOTICE([[Configuration done! Please make sure that pjsip library (libs/pjproject-1.0.1) has already been compiled. Run `make' to build the software.]])
+
+
diff --git a/sflphone-common/debian/changelog b/sflphone-common/debian/changelog
index 2c2978cee82ff96d0d93b026286bfe9e534d1fbd..796f15554f9545e461972cb8c425b0ec30d7b148 100644
--- a/sflphone-common/debian/changelog
+++ b/sflphone-common/debian/changelog
@@ -1,83 +1,114 @@
-sflphone-common (0.9.5-0ubuntu1~3.gbp20b188) SYSTEM; urgency=low
+sflphone-common (0.9.5-SYSVER) SYSTEM; urgency=low
+
+    ** 0.9.5 release **
+
+  * [#1060] FIx bug in chinese translation
+  * [#1313] git add rtpTest.cpp rtpTest.h
+  * [#1313] Add init/close rtp tests
+  * [#1313] Basic instanciation of the rtp layer
+  * [#1449] Gtk-Critical concerning history filters and new calls
+  * [#1400] Make the match with the hostname instead of username
+  * [#1324] Change status bar label for "Using %s (%s)"
+  * [#1403] Icon size: 60x60 px
+  * [#1403] Do not remove notification, improve icon quality
+  * [#1403] Add smaller icon for gnome notifications
+  * [#1403] Prevent crash when hangup && no notification
+  * [#1403] Remove all actions on notifications; code refactoring
+  * [#1451] Use stun.sflphone.org as default STUN server
+  * [#1060] New po files - need to be translated
+  * [#1060] Update french translation - Rebuild template file
+  * [#1456] Add a flag to be replaced in the control files
+  * [#1454] Make cppunit optional; remove from build deps in control
+    files
+  * [#1401] Add libexpat1-dev dependency in control files
+  * [#1448] Take off these ugly debug messages
+  * [#1448] fixed getTelephoneTone and getTelephoneFile() called
+    repeatedly
+  * [#1406] add liblog4c-dev in build-depends
+  * [#1409] Restore .desktop icon
+
+ -- SFLphone Automatic Build System <team@sflphone.org>  Mon, 25 May 2009 11:34:40 -0400
+
+sflphone-common (0.9.5-SYSVER~rc2) SYSTEM; urgency=low
+
+    ** 0.9.5 rc2 **
+
+  * [#1422] Improved error message
+  * [#1402] Fix pjsip build
+  * [#1404] Clear GTK-Critical Bug at client startup
+  * [#1422] Added automatic VM shutdown when building on more than one
+    VM
+  * [#1422] Fixed some issues with new changelog generation script
+  * [#1422] Moved distribution update to specific file
+  * [#1422] Dropped git-dch, replace by home made implementation
+  * Changes for name based dbus connection
+  * Clean changelogs
+  * [#1343] Gnome: Implement a callback system to handle focus on
+    different widgets
+  * Debus Session
+  * Refactoring Python code, PEP8
+  * [#1430] Get back dbus_g_proxy_new_for_name
+  * [#1430] Get back DBUS_BUS_SESSION type
+  * [#1430] Dbus fixed owner message binding
+  * Second test with DBUS owner
+  * [#1404] Gnome -> Preferences -> Hooks
+  * [#1404] Gnome -> Preferences -> Recordings
+  * [#1404] Call History
+  * [#1404] Gnome -> Preferences -> Address Book
+  * [#1404] IF the first notification option disable the second
+    notification
+  * Dbus with fixed owner does not automatically start the deamon
+  * Add codec debug tests in pysflphone
+  * [#1407] Some print info
+  * [#1407] Add a scenario to pick_up action
+  * Test client dbus connection to a fixed owner
+  * Add python dbus test suite
+  * [#1161] Modified version handling in build system
+  * [#1314] Test pulse audio and audio streams connect and disconnect
+  * [#1402] Add info message after configure
+  * [#1402] Build the daemon with the local pjsip library (vs the
+    installed one)
+  * [#1009] Fix Codec Sampling Rate set to zeros
+  * [#1314] Add mutex to pulse layer audio streams
+  * [#1314] Refactoring pulseaudio stream to test connect disconnect
+  * [#1314] Refactoring of pulselayer to test conect/disconnect
+  * Add debug messages in debus calls concerning account
+  * [#1314] Add some return values to audio init functions
+  * [#1406] add liblog4c-dev in build-depends
+  * [#1409] Restore .desktop icon
+  * Bug #1405: Fix strings as requested.
+  * Bug #1404: Fix strings in preferences panel.
+
+ -- SFLphone Automatic Build System <team@sflphone.org>  Tue, 19 May 2009 12:08:03 -0400
+
+sflphone-common (0.9.5-0ubuntu1~rc1) SYSTEM; urgency=low
 
-  ** SNAPSHOT build @20b188472f4e66c75b3f1dffe1f110b7070397ec **
-
-  [ Emmanuel Milou ]
-  * [#1220] Add Conflicts: sflphone in debian control files
-  * [#1179] Add liblog4c3 runtime dependency
-  * [#1212] FIx typo error in dependency list for itnrepid
-  * [#1212] FIx .desktop file to point on the right exec
-  * [#1212] Modify changelog replacing tag
-
-  [ Sflphone Project ]
-  * "[#1262] Updated changelogs for version 0.9.5-0ubuntu1~beta"
-
-  [ Emmanuel Milou ]
-  * [#1212] restore changelogs
-
-  [ Sflphone Project ]
-  * [#1262] Updated changelogs for version 0.9.5-0ubuntu1 Snapshot 2009-
-    04-27
-
-  [ Emmanuel Milou ]
-  * [#1212] restore changelogs
-
-  [ Sflphone Project ]
-  * [#1262] Updated changelogs for version 0.9.5-0ubuntu1~beta
-
-  [ Emmanuel Milou ]
-  * [#1212] restore changelogs
-
-  [ Sflphone Project ]
-  * [#1262] Updated changelogs for version 0.9.5-0ubuntu1~beta
+  [ SFLphone Project ]
   * [#1262] Updated changelogs for version 0.9.5-0ubuntu1 Snapshot 2009-
-    04-28
+    05-05
 
   [ Emmanuel Milou ]
-  * [#1212] Restore changelogs
-
-  [ Sflphone Project ]
-  * [#1262] Updated changelogs for version 0.9.5-0ubuntu1 Snapshot 2009-
-    04-28
-
-  [ Julien Bonjean ]
-  * [#1262]Introduced dynamic version setting
-
-  [ Sflphone Project ]
+  * Add some python CLI client code; not really functional
+  * [#1108] Fix peerHungup method for IP to IP call
 
   [ Alexandre Savard ]
-  * [#1143] Add celtcodec.cpp
-  * [#1143] add configure and make stuffs
-  * [#1143] add frame size into each codecs
-  * [#1143] Take timestamp's step size from codec
-  * [#1143] RTP thread at 11 ms
-  * [#1143] Dynamic RTP thread sleep parameter
-  * [#1143] Fix dynamic thread sleep time calculation
+  * [#1108] Correct setting of SIP contact for direct IP call
+  * [#1108] SIP user agent handles incoming REFER
 
   [ Emmanuel Milou ]
-  * [#1262] sflphone-client-gnome uses changelog version number
+  * Remove website from repository
+  * Update translation
 
   [ Alexandre Savard ]
-  * [#1143] Some cleanup
-
-  [ SFLphone Project ]
-  * [#1262] Updated changelogs for version 0.9.5-0ubuntu1 Snapshot 2009-
-    04-29
+  * Sflphone icon's tooltip changed for "configured" instead of
+    "registered"
 
   [ Emmanuel Milou ]
-  * [#1262] Update changelogs
-  * [#1262] Update rules
-  * [#1143] Build celt codec only if version >= 0.5.1 is detected
-  * [1143] Restore rules files - do not need to specify --without-celt
-  * [#1336] Change SFLphone logo
-  * [#1331] Fix searchbar problems
-  * [#1332] Fix unexplicit labels
-  * [#1334] Fix unexplicit label
-  * [#1329] Fix recordings config panel
+  * Update translation
 
   [ Sflphone Project ]
 
- -- Sflphone Project <sflphone@mtl.savoirfairelinux.net>  Thu, 30 Apr 2009 10:01:34 -0400
+ -- Sflphone Project <sflphone@mtl.savoirfairelinux.net>  Tue, 05 May 2009 19:16:09 -0400
 
 sflphone-common (0.9.5-0ubuntu1~beta) SYSTEM; urgency=low
 
diff --git a/sflphone-common/debian/control.hardy b/sflphone-common/debian/control.hardy
index a8e21760384ceb2d7f09614be3772d84c6f4c942..e14674d170b6caa6f4bac6d1118e5d1a336a88f6 100644
--- a/sflphone-common/debian/control.hardy
+++ b/sflphone-common/debian/control.hardy
@@ -2,7 +2,7 @@ Source: sflphone-common
 Maintainer: SavoirFaireLinux Inc <emmanuel.milou@savoirfairelinux.com>
 Section: gnome
 Priority: optional
-Build-Depends: debhelper (>= 5), libgcc1, autoconf, automake, libpulse-dev, libsamplerate0-dev, libcommoncpp2-dev, libccrtp-dev, libcppunit-dev, libgsm1-dev, libspeex-dev, libtool, libdbus-1-dev, libasound2-dev, uuid-dev
+Build-Depends: debhelper (>= 5), libgcc1, autoconf, automake, libpulse-dev, libsamplerate0-dev, libcommoncpp2-dev, libccrtp-dev, libgsm1-dev, libspeex-dev, libtool, libdbus-1-dev, libasound2-dev, uuid-dev, libexpat1-dev
 Standards-Version: 3.7.3
 
 Package: sflphone-common
diff --git a/sflphone-common/debian/control.intrepid b/sflphone-common/debian/control.intrepid
index 7376cb3ebc957cc3792790236073cbfb8da6e03e..270e67811229719df9e000fd3a0871e30b9c675a 100644
--- a/sflphone-common/debian/control.intrepid
+++ b/sflphone-common/debian/control.intrepid
@@ -2,7 +2,7 @@ Source: sflphone-common
 Maintainer: SavoirFaireLinux Inc <emmanuel.milou@savoirfairelinux.com>
 Section: gnome
 Priority: optional
-Build-Depends: debhelper (>= 5), libgcc1 , autoconf, libpulse-dev, libsamplerate0-dev, libcommoncpp2-dev, libccrtp-dev, libcppunit-dev, libgsm1-dev, libspeex-dev, libtool, libdbus-1-dev, libasound2-dev, libspeexdsp-dev, uuid-dev
+Build-Depends: debhelper (>= 5), libgcc1 , autoconf, libpulse-dev, libsamplerate0-dev, libcommoncpp2-dev, libccrtp-dev, libgsm1-dev, libspeex-dev, libtool, libdbus-1-dev, libasound2-dev, libspeexdsp-dev, uuid-dev, libexpat1-dev
 Standards-Version: 3.8.0
 
 Package: sflphone-common
diff --git a/sflphone-common/debian/control.jaunty b/sflphone-common/debian/control.jaunty
index 67dc4c90701f7313966ac891f7cc84559ac278c5..f871e07e758e0ce60d07488c106de092517de54e 100644
--- a/sflphone-common/debian/control.jaunty
+++ b/sflphone-common/debian/control.jaunty
@@ -2,7 +2,7 @@ Source: sflphone-common
 Maintainer: SavoirFaireLinux Inc <emmanuel.milou@savoirfairelinux.com>
 Section: gnome
 Priority: optional
-Build-Depends: debhelper (>= 5), libgcc1 , autoconf, automake, libpulse-dev, libsamplerate0-dev, libcommoncpp2-dev, libccrtp-dev, libcppunit-dev, libgsm1-dev, libspeex-dev, libtool, libdbus-1-dev, libasound2-dev, libspeexdsp-dev, uuid-dev
+Build-Depends: debhelper (>= 5), libgcc1 , autoconf, automake, libpulse-dev, libsamplerate0-dev, libcommoncpp2-dev, libccrtp-dev, libgsm1-dev, libspeex-dev, libtool, libdbus-1-dev, libasound2-dev, libspeexdsp-dev, uuid-dev, libexpat1-dev
 Standards-Version: 3.7.3
 
 Package: sflphone-common
diff --git a/sflphone-common/globals.mak b/sflphone-common/globals.mak
index 832c65d78edca78ef83300de391f4b978c1d41ed..22944b21e0a8f9b42744ff62c8954e6c26c78287 100644
--- a/sflphone-common/globals.mak
+++ b/sflphone-common/globals.mak
@@ -3,7 +3,22 @@ src=$(top_srcdir)
 sflcodecdir=$(libdir)/sflphone/codecs
 sflplugindir=$(libdir)/sflphone/plugins
 
-PJSIP_LIBS = -lpjnath-sfl -lpjsua-sfl -lpjsip-sfl -lpjmedia-sfl -lpjsip-simple-sfl -lpjsip-ua-sfl -lpjmedia-codec-sfl -lpjlib-util-sfl -lpj-sfl 
+# for pjsip
+export TARGET_NAME := @target@
+
+PJSIP_LIBS= \
+			-L$(src)/libs/pjproject-1.0.1/pjnath/ \
+			-L$(src)/libs/pjproject-1.0.1/pjsip/ \
+			-L$(src)/libs/pjproject-1.0.1/pjlib/ \
+			-L$(src)/libs/pjproject-1.0.1/pjlib-util/ \
+			-L$(src)/libs/pjproject-1.0.1/pjmedia/ \
+			-lpjnath-sfl-$(TARGET_NAME) -lpjsua-sfl-$(TARGET_NAME) -lpjsip-sfl-$(TARGET_NAME) -lpjmedia-sfl-$(TARGET_NAME) -lpjsip-simple-sfl-$(TARGET_NAME) -lpjsip-ua-sfl-$(TARGET_NAME) -lpjmedia-codec-sfl-$(TARGET_NAME) -lpjlib-util-sfl-$(TARGET_NAME) -lpj-sfl-$(TARGET_NAME)
+
+SIP_CFLAGS=-I$(src)/libs/pjproject-1.0.1/pjsip/include \
+		   -I$(src)/libs/pjproject-1.0.1/pjlib/include \
+		   -I$(src)/libs/pjproject-1.0.1/pjlib-util/include \
+		   -I$(src)/libs/pjproject-1.0.1/pjmedia/include \
+		   -I$(src)/libs/pjproject-1.0.1/pjnath/include
 
 DBUSCPP_CFLAGS=$(top_srcdir)/libs/dbus-c++/include/dbus-c++
 
@@ -24,13 +39,14 @@ AM_CPPFLAGS = \
 	-I$(src)/libs \
 	-I$(src)/libs/dbus-c++/include \
 	-I$(src)/libs/iax2 \
+	-I$(src)/libs/pjproject-1.0.1 \
 	-I$(src)/src \
 	-I$(src)/test \
 	-DPREFIX=\"$(prefix)\" \
 	-DPROGSHAREDIR=\"${datadir}/sflphone\" \
 	$(ZEROCONFFLAGS) \
 	$(IAX_FLAGS) \
-	@SIP_CFLAGS@ \
+	$(SIP_CFLAGS) \
 	$(DBUSCPP_CFLAGS) \
 	-DCODECS_DIR=\""$(sflcodecdir)"\" \
 	-DPLUGINS_DIR=\""$(sflplugindir)"\" \
diff --git a/sflphone-common/po/README b/sflphone-common/po/README
index fd7b8b023f6686fd97a055ea9751b34e1b396719..a3629ea2350c1299b40bca4e1fa38c8fef45441b 100644
--- a/sflphone-common/po/README
+++ b/sflphone-common/po/README
@@ -1,6 +1,6 @@
 If we need to update sflphone.pot file, do the following steps:
 
-xgettext -k_ -o sflphone.pot ../sflphone-gtk/src/*.c
+xgettext -k_ -o sflphone.pot ../../sflphone-client-gnome/src/*.c ../../sflphone-client-gnome/src/config/*.c ../../sflphone-client-gnome/src/dbus/*.c ../../sflphone-client-gnome/src/contacts/*.c
 
 Then make && sudo make install
 
diff --git a/sflphone-common/po/de.po b/sflphone-common/po/de.po
index 1125d763740b4042d206836a41ca66513474aa4e..4371c318d078fe25c7b44ea8d964d4412ac0e597 100644
--- a/sflphone-common/po/de.po
+++ b/sflphone-common/po/de.po
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: sflphone\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-04-02 11:15-0400\n"
+"POT-Creation-Date: 2009-05-21 10:45-0400\n"
 "PO-Revision-Date: 2009-01-08 10:46-0500\n"
 "Last-Translator: Sven Werlen <sven.werlen@savoirfairelinux.com>\n"
 "Language-Team: SavoirFaire Linux Inc <sflphoneteam@savoirfairelinux.com>\n"
@@ -17,63 +17,70 @@ msgstr ""
 "X-Generator: Lokalize 0.2\n"
 "Plural-Forms: nplurals=2; plural=(n > 1);\n"
 
-#: ../sflphone-gtk/src/accountlist.c:158
+#: ../../sflphone-client-gnome/src/accountlist.c:169
 msgid "Registered"
 msgstr "registriert"
 
-#: ../sflphone-gtk/src/accountlist.c:161
+#: ../../sflphone-client-gnome/src/accountlist.c:172
 msgid "Not Registered"
 msgstr "nicht registriert"
 
-#: ../sflphone-gtk/src/accountlist.c:164
+#: ../../sflphone-client-gnome/src/accountlist.c:175
 msgid "Trying..."
 msgstr "Am versuchen..."
 
-#: ../sflphone-gtk/src/accountlist.c:167 ../sflphone-gtk/src/sflnotify.c:171
-#: ../sflphone-gtk/src/sflnotify.c:212
+#: ../../sflphone-client-gnome/src/accountlist.c:178
+#: ../../sflphone-client-gnome/src/sflnotify.c:176
+#: ../../sflphone-client-gnome/src/sflnotify.c:217
 msgid "Error"
 msgstr "Fehler"
 
-#: ../sflphone-gtk/src/accountlist.c:170
+#: ../../sflphone-client-gnome/src/accountlist.c:181
 msgid "Bad authentification"
 msgstr "Falsche Authentifizierung"
 
-#: ../sflphone-gtk/src/accountlist.c:173
+#: ../../sflphone-client-gnome/src/accountlist.c:184
 msgid "Network unreachable"
 msgstr "Kein Netzwerk"
 
-#: ../sflphone-gtk/src/accountlist.c:176
+#: ../../sflphone-client-gnome/src/accountlist.c:187
 msgid "Host unreachable"
 msgstr "Host unerreichbar"
 
-#: ../sflphone-gtk/src/accountlist.c:179
+#: ../../sflphone-client-gnome/src/accountlist.c:190
 msgid "Stun configuration error"
 msgstr "Stun: Konfigurationsfehler"
 
-#: ../sflphone-gtk/src/accountlist.c:182
+#: ../../sflphone-client-gnome/src/accountlist.c:193
 msgid "Stun server invalid"
 msgstr "Ungültiger Stun Server"
 
-#: ../sflphone-gtk/src/accountlist.c:185
+#: ../../sflphone-client-gnome/src/accountlist.c:196
 msgid "Invalid"
 msgstr "Ungültig"
 
-#: ../sflphone-gtk/src/actions.c:55 ../sflphone-gtk/src/sflnotify.c:103
+#: ../../sflphone-client-gnome/src/actions.c:55
+#: ../../sflphone-client-gnome/src/sflnotify.c:108
 #, c-format
 msgid "%d voice mails"
 msgstr "%d Voice Nachrichten"
 
-#: ../sflphone-gtk/src/actions.c:57
+#: ../../sflphone-client-gnome/src/actions.c:57
 #, c-format
 msgid "%d voice mail"
 msgstr "%d Voice Nachricht"
 
-#: ../sflphone-gtk/src/actions.c:81
+#: ../../sflphone-client-gnome/src/actions.c:81
 #, c-format
-msgid "%s account- %s"
-msgstr "%s Konto- %s"
+msgid "Using %s (%s)"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/actions.c:87
+#, fuzzy
+msgid "No registered account"
+msgstr "Sie haben noch kein registriertes Konto"
 
-#: ../sflphone-gtk/src/actions.c:225
+#: ../../sflphone-client-gnome/src/actions.c:229
 msgid ""
 "Unable to connect to the SFLphone server.\n"
 "Make sure the daemon is running."
@@ -81,12 +88,17 @@ msgstr ""
 "SFLphone Server kann nicht verbunden werden. Stellen Sie sicher, dass der "
 "Dämon läuft."
 
-#: ../sflphone-gtk/src/actions.c:764
+#: ../../sflphone-client-gnome/src/actions.c:787
 #, c-format
-msgid "%s account- %s             %s"
-msgstr "%s Konto- %s             %s"
+msgid "IP call - %s"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/actions.c:790
+#, c-format
+msgid "Using %s (%s) - Codec: %s"
+msgstr ""
 
-#: ../sflphone-gtk/src/actions.c:861
+#: ../../sflphone-client-gnome/src/actions.c:880
 #, c-format
 msgid ""
 "<b>Error: No audio codecs found.\n"
@@ -99,8 +111,8 @@ msgstr ""
 "</b> SFL Audio-Codecs müssen in <i>%s</i> oder <b>.sflphone</b> Ihres HOME-"
 "Verzeichniss ( <i>%s</i> ) gespeichert werden."
 
-#: ../sflphone-gtk/src/assistant.c:31
-#, c-format
+#: ../../sflphone-client-gnome/src/assistant.c:35
+#, fuzzy, c-format
 msgid ""
 "This assistant is now finished.\n"
 "You can at any time check your registration state or modify your accounts "
@@ -109,7 +121,6 @@ msgid ""
 "Alias :    %s\n"
 "Server :   %s\n"
 "Username : %s\n"
-"Password : %s"
 msgstr ""
 "Assistent vollendet.\n"
 "\n"
@@ -121,136 +132,129 @@ msgstr ""
 "Benutzername : %s\n"
 "Passwort : %s"
 
-#: ../sflphone-gtk/src/assistant.c:154
+#: ../../sflphone-client-gnome/src/assistant.c:160
 msgid "SFLphone account configuration wizard"
 msgstr "SFLphone Konto (Konfigurationsassistent)"
 
-#: ../sflphone-gtk/src/assistant.c:180
+#: ../../sflphone-client-gnome/src/assistant.c:186
 msgid "Welcome to SFLphone!"
 msgstr "Wilkommen zu SFLphone!"
 
-#: ../sflphone-gtk/src/assistant.c:181
+#: ../../sflphone-client-gnome/src/assistant.c:187
 msgid "This installation wizard will help you configure an account."
 msgstr ""
 "The Installationsassistent wird Ihnen helfen, ein Konto zu konfigurieren."
 
-#: ../sflphone-gtk/src/assistant.c:195
+#: ../../sflphone-client-gnome/src/assistant.c:201
 msgid "VoIP Protocols"
 msgstr "VoIP Protokoll"
 
-#: ../sflphone-gtk/src/assistant.c:195
+#: ../../sflphone-client-gnome/src/assistant.c:201
 msgid "Select an account type:"
 msgstr "Kontotyp auswählen:"
 
-#: ../sflphone-gtk/src/assistant.c:213
+#: ../../sflphone-client-gnome/src/assistant.c:219
 msgid "Account"
 msgstr "Konto"
 
-#: ../sflphone-gtk/src/assistant.c:213
+#: ../../sflphone-client-gnome/src/assistant.c:219
 msgid "Please select one of the following option:"
 msgstr "Bitte eine Option auswählen:"
 
-#: ../sflphone-gtk/src/assistant.c:215
+#: ../../sflphone-client-gnome/src/assistant.c:221
 msgid "Create a free SIP/IAX2 account on sflphone.org"
 msgstr ""
 
-#: ../sflphone-gtk/src/assistant.c:217
+#: ../../sflphone-client-gnome/src/assistant.c:223
 msgid "Register an existing SIP or IAX2 account"
 msgstr ""
 
-#: ../sflphone-gtk/src/assistant.c:230
+#: ../../sflphone-client-gnome/src/assistant.c:236
 msgid "SIP account configuration"
 msgstr "Konfiguration des SIP-Konto"
 
-#: ../sflphone-gtk/src/assistant.c:230 ../sflphone-gtk/src/assistant.c:305
+#: ../../sflphone-client-gnome/src/assistant.c:236
+#: ../../sflphone-client-gnome/src/assistant.c:332
 msgid "Please fill the following information:"
 msgstr "Folgende Informationen bitte ausfühlen:"
 
-#: ../sflphone-gtk/src/assistant.c:238 ../sflphone-gtk/src/assistant.c:313
-#: ../sflphone-gtk/src/config/accountwindow.c:143
+#: ../../sflphone-client-gnome/src/assistant.c:244
+#: ../../sflphone-client-gnome/src/assistant.c:340
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:148
 msgid "_Alias"
 msgstr "_Alias"
 
-#: ../sflphone-gtk/src/assistant.c:246 ../sflphone-gtk/src/assistant.c:321
-#: ../sflphone-gtk/src/config/accountwindow.c:179
+#: ../../sflphone-client-gnome/src/assistant.c:252
+#: ../../sflphone-client-gnome/src/assistant.c:348
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:184
 msgid "_Host name"
 msgstr "_Hostname"
 
-#: ../sflphone-gtk/src/assistant.c:254 ../sflphone-gtk/src/assistant.c:329
-#: ../sflphone-gtk/src/config/accountwindow.c:187
+#: ../../sflphone-client-gnome/src/assistant.c:260
+#: ../../sflphone-client-gnome/src/assistant.c:356
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:192
 msgid "_User name"
 msgstr "_Benutzername"
 
-#: ../sflphone-gtk/src/assistant.c:264 ../sflphone-gtk/src/assistant.c:339
-#: ../sflphone-gtk/src/config/accountwindow.c:198
+#: ../../sflphone-client-gnome/src/assistant.c:276
+#: ../../sflphone-client-gnome/src/assistant.c:371
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:207
 msgid "_Password"
 msgstr "_Passwort"
 
-#: ../sflphone-gtk/src/assistant.c:282
+#: ../../sflphone-client-gnome/src/assistant.c:294
+#: ../../sflphone-client-gnome/src/assistant.c:387
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:223
+#, fuzzy
+msgid "_Voicemail number"
+msgstr "_Voicemail Boxnummer"
+
+#: ../../sflphone-client-gnome/src/assistant.c:309
 msgid "Optional Email Address "
 msgstr ""
 
-#: ../sflphone-gtk/src/assistant.c:282
+#: ../../sflphone-client-gnome/src/assistant.c:309
 msgid "This email address will be use to send your voicemail messages"
 msgstr ""
 
-#: ../sflphone-gtk/src/assistant.c:290
+#: ../../sflphone-client-gnome/src/assistant.c:317
 msgid "_Email"
 msgstr "_Email"
 
-#: ../sflphone-gtk/src/assistant.c:305
+#: ../../sflphone-client-gnome/src/assistant.c:332
 msgid "IAX2 account configuration"
 msgstr "Konfiguration des IAX2 Konto"
 
-#: ../sflphone-gtk/src/assistant.c:360
-#: ../sflphone-gtk/src/config/configwindow.c:837
+#: ../../sflphone-client-gnome/src/assistant.c:405
+#: ../../sflphone-client-gnome/src/config/configwindow.c:863
 msgid "Network Address Translation"
 msgstr "Network Address Translation (NAT)"
 
-#: ../sflphone-gtk/src/assistant.c:360
+#: ../../sflphone-client-gnome/src/assistant.c:405
 msgid "You should probably enable this if you are behind a firewall."
 msgstr "Sie sollten dieses einschalten, falls Sie hinter einer Firewall sind."
 
-#: ../sflphone-gtk/src/assistant.c:369
-#: ../sflphone-gtk/src/config/configwindow.c:499
+#: ../../sflphone-client-gnome/src/assistant.c:414
+#: ../../sflphone-client-gnome/src/config/configwindow.c:516
 msgid "E_nable STUN"
 msgstr "STUN Ei_nschalten"
 
-#: ../sflphone-gtk/src/assistant.c:376
+#: ../../sflphone-client-gnome/src/assistant.c:421
 msgid "_STUN server"
 msgstr "_STUN Server"
 
-#: ../sflphone-gtk/src/assistant.c:390
+#: ../../sflphone-client-gnome/src/assistant.c:435
 msgid "Account Registration"
 msgstr "Konto Registrierung"
 
-#: ../sflphone-gtk/src/assistant.c:390
+#: ../../sflphone-client-gnome/src/assistant.c:435
 msgid "Congratulations!"
 msgstr "Gratulation!"
 
-#: ../sflphone-gtk/src/context-menu.c:296 ../sflphone-gtk/src/menus.c:308
-#: ../sflphone-gtk/src/menus.c:791
-msgid "_Pick up"
-msgstr "_Abnehmen"
-
-#: ../sflphone-gtk/src/context-menu.c:308 ../sflphone-gtk/src/menus.c:318
-#: ../sflphone-gtk/src/menus.c:803
-msgid "_Hang up"
-msgstr "A_uflegen"
-
-#: ../sflphone-gtk/src/context-menu.c:320 ../sflphone-gtk/src/menus.c:328
-#: ../sflphone-gtk/src/menus.c:815
-msgid "On _Hold"
-msgstr "in _Warteschleife"
-
-#: ../sflphone-gtk/src/context-menu.c:332 ../sflphone-gtk/src/menus.c:340
-#: ../sflphone-gtk/src/menus.c:827
-msgid "_Record"
-msgstr "_Gespräch aufzeichnen"
-
-#: ../sflphone-gtk/src/errors.c:28
+#: ../../sflphone-client-gnome/src/errors.c:28
+#, fuzzy
 msgid ""
-"<b>ALSA notification</b>\n"
+"ALSA notification\n"
 "\n"
 "Error while opening playback device"
 msgstr ""
@@ -258,9 +262,10 @@ msgstr ""
 "\n"
 "Fehler während Öffnen des \"playback device\""
 
-#: ../sflphone-gtk/src/errors.c:31
+#: ../../sflphone-client-gnome/src/errors.c:31
+#, fuzzy
 msgid ""
-"<b>ALSA notification</b>\n"
+"ALSA notification\n"
 "\n"
 "Error while opening capture device"
 msgstr ""
@@ -268,9 +273,10 @@ msgstr ""
 "\n"
 "Fehler während Öffnen des \"capture device\""
 
-#: ../sflphone-gtk/src/errors.c:34
+#: ../../sflphone-client-gnome/src/errors.c:34
+#, fuzzy
 msgid ""
-"<b>Pulseaudio notification</b>\n"
+"Pulseaudio notification\n"
 "\n"
 "Pulseaudio is not running"
 msgstr ""
@@ -278,468 +284,587 @@ msgstr ""
 "\n"
 "Pulseaudio nicht gestartet"
 
-#: ../sflphone-gtk/src/mainwindow.c:70
+#: ../../sflphone-client-gnome/src/mainwindow.c:70
 msgid "There is one call in progress."
 msgstr "Laufender Anruf."
 
-#: ../sflphone-gtk/src/mainwindow.c:74
+#: ../../sflphone-client-gnome/src/mainwindow.c:74
 msgid "There are calls in progress."
 msgstr "Laufende Anrufe."
 
-#: ../sflphone-gtk/src/mainwindow.c:83
+#: ../../sflphone-client-gnome/src/mainwindow.c:83
 msgid "Do you still want to quit?"
 msgstr ""
 
-#: ../sflphone-gtk/src/menus.c:131
+#: ../../sflphone-client-gnome/src/mainwindow.c:296
+#, fuzzy
+msgid "SFLphone Error"
+msgstr "SFLphone 0.9.2"
+
+#: ../../sflphone-client-gnome/src/menus.c:134
 msgid "SFLphone is a VoIP client compatible with SIP and IAX2 protocols."
 msgstr "SFLphone ist ein VoIP Client (kompatibel mit SIP und IAX2 Protokolle)"
 
-#: ../sflphone-gtk/src/menus.c:134
+#: ../../sflphone-client-gnome/src/menus.c:137
 msgid "About SFLphone"
 msgstr "Über SFLphone"
 
-#: ../sflphone-gtk/src/menus.c:157
+#: ../../sflphone-client-gnome/src/menus.c:161
 msgid "_Help"
 msgstr "_Hilfe"
 
-#: ../sflphone-gtk/src/menus.c:296 ../sflphone-gtk/src/menus.c:949
+#: ../../sflphone-client-gnome/src/menus.c:300
+#: ../../sflphone-client-gnome/src/menus.c:971
 msgid "_New call"
 msgstr "_Neuer Anruf"
 
-#: ../sflphone-gtk/src/menus.c:354
-msgid "_Account Assistant"
-msgstr "_Konto Setup Assistent"
+#: ../../sflphone-client-gnome/src/menus.c:312
+#: ../../sflphone-client-gnome/src/menus.c:803
+msgid "_Pick up"
+msgstr "_Abnehmen"
 
-#: ../sflphone-gtk/src/menus.c:384
+#: ../../sflphone-client-gnome/src/menus.c:322
+#: ../../sflphone-client-gnome/src/menus.c:815
+msgid "_Hang up"
+msgstr "A_uflegen"
+
+#: ../../sflphone-client-gnome/src/menus.c:332
+#: ../../sflphone-client-gnome/src/menus.c:827
+msgid "On _Hold"
+msgstr "in _Warteschleife"
+
+#: ../../sflphone-client-gnome/src/menus.c:344
+#: ../../sflphone-client-gnome/src/menus.c:839
+msgid "_Record"
+msgstr "_Gespräch aufzeichnen"
+
+#: ../../sflphone-client-gnome/src/menus.c:358
+#, fuzzy
+msgid "_Account creation wizard"
+msgstr "SFLphone Konto (Konfigurationsassistent)"
+
+#: ../../sflphone-client-gnome/src/menus.c:388
 msgid "_Call"
 msgstr "_Anruf"
 
-#: ../sflphone-gtk/src/menus.c:557
+#: ../../sflphone-client-gnome/src/menus.c:561
 msgid "_Clear history"
 msgstr "Liste der vorherigen Anrufen _leeren"
 
-#: ../sflphone-gtk/src/menus.c:569
+#: ../../sflphone-client-gnome/src/menus.c:573
 msgid "_Accounts"
 msgstr "_Konten"
 
-#: ../sflphone-gtk/src/menus.c:584
+#: ../../sflphone-client-gnome/src/menus.c:588
 msgid "_Edit"
 msgstr "_Editieren"
 
-#: ../sflphone-gtk/src/menus.c:644
+#: ../../sflphone-client-gnome/src/menus.c:649
 msgid "_Dialpad"
 msgstr "_Wählscheibe"
 
-#: ../sflphone-gtk/src/menus.c:656
+#: ../../sflphone-client-gnome/src/menus.c:661
 msgid "_Volume controls"
 msgstr "Lautstärke Kontrollen"
 
-#: ../sflphone-gtk/src/menus.c:665
-msgid "_Search contact"
-msgstr "Adressbuch _Suche"
-
-#: ../sflphone-gtk/src/menus.c:673
+#: ../../sflphone-client-gnome/src/menus.c:679
 msgid "_View"
 msgstr "_Anzeigen"
 
-#: ../sflphone-gtk/src/menus.c:885
+#: ../../sflphone-client-gnome/src/menus.c:899
 msgid "_Call back"
 msgstr "_zurückrufen"
 
-#: ../sflphone-gtk/src/sflnotify.c:34 ../sflphone-gtk/src/sflnotify.c:100
+#: ../../sflphone-client-gnome/src/menus.c:1082
+msgid "Edit phone"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/menus.c:1093
+msgid "Edit the phone number before making a call"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/sflnotify.c:38
+#: ../../sflphone-client-gnome/src/sflnotify.c:105
 #, c-format
 msgid "%s account: %s"
 msgstr "%s Konto: %s"
 
-#: ../sflphone-gtk/src/sflnotify.c:37
+#: ../../sflphone-client-gnome/src/sflnotify.c:42
 #, c-format
 msgid "<i>From:</i> %s"
 msgstr "<i>Von:</i> %s"
 
-#: ../sflphone-gtk/src/sflnotify.c:52
+#: ../../sflphone-client-gnome/src/sflnotify.c:57
 msgid "Accept"
 msgstr "Annehmen"
 
-#: ../sflphone-gtk/src/sflnotify.c:53
+#: ../../sflphone-client-gnome/src/sflnotify.c:58
 msgid "Refuse"
 msgstr "Ablehnen"
 
-#: ../sflphone-gtk/src/sflnotify.c:54 ../sflphone-gtk/src/sflnotify.c:117
-#: ../sflphone-gtk/src/sflnotify.c:154
+#: ../../sflphone-client-gnome/src/sflnotify.c:59
+#: ../../sflphone-client-gnome/src/sflnotify.c:122
+#: ../../sflphone-client-gnome/src/sflnotify.c:159
 msgid "Ignore"
 msgstr "Ignorieren"
 
-#: ../sflphone-gtk/src/sflnotify.c:136
+#: ../../sflphone-client-gnome/src/sflnotify.c:141
 #, c-format
 msgid "Calling with %s account <i>%s</i>"
 msgstr "Mit %s Konto <i>%s</i> anrufen"
 
-#: ../sflphone-gtk/src/sflnotify.c:140
+#: ../../sflphone-client-gnome/src/sflnotify.c:145
 msgid "Current account"
 msgstr "Aktuelles Konto"
 
-#: ../sflphone-gtk/src/sflnotify.c:169
+#: ../../sflphone-client-gnome/src/sflnotify.c:174
 msgid "You haven't setup any accounts"
 msgstr "Sie haben noch kein Konto eingestellt"
 
-#: ../sflphone-gtk/src/sflnotify.c:209
+#: ../../sflphone-client-gnome/src/sflnotify.c:214
 msgid "You have no registered accounts"
 msgstr "Sie haben noch kein registriertes Konto"
 
-#: ../sflphone-gtk/src/sliders.c:161
+#: ../../sflphone-client-gnome/src/sliders.c:161
 msgid "Speakers volume"
 msgstr "Lautsprecher Lautstärke"
 
-#: ../sflphone-gtk/src/sliders.c:163
+#: ../../sflphone-client-gnome/src/sliders.c:163
 msgid "Mic volume"
 msgstr "Mikro Lautstärke"
 
-#: ../sflphone-gtk/src/statusicon.c:91
+#: ../../sflphone-client-gnome/src/statusicon.c:91
 msgid "_Show main window"
 msgstr "_Hauptfenster anzeigen"
 
-#: ../sflphone-gtk/src/statusicon.c:124
-#, c-format
-msgid "SFLphone - %i accounts registered"
+#: ../../sflphone-client-gnome/src/statusicon.c:124
+#, fuzzy, c-format
+msgid "SFLphone - %i accounts configured"
 msgstr "SFLphone - %i Konten registriert"
 
-#: ../sflphone-gtk/src/timestamp.c:46
+#: ../../sflphone-client-gnome/src/timestamp.c:46
 msgid "<small>Missed call</small>"
 msgstr "<small>Anruf verpasst</small>"
 
-#: ../sflphone-gtk/src/timestamp.c:64
+#: ../../sflphone-client-gnome/src/timestamp.c:64
 #, c-format
 msgid "<small>Duration:</small> %s"
 msgstr "<small>Dauer:</small> %s"
 
-#: ../sflphone-gtk/src/toolbar.c:49
+#: ../../sflphone-client-gnome/src/toolbar.c:50
 #, c-format
 msgid "\"Voicemail\" <%s>"
 msgstr "\"Voicemail\" <%s>"
 
-#: ../sflphone-gtk/src/toolbar.c:175 ../sflphone-gtk/src/toolbar.c:177
+#: ../../sflphone-client-gnome/src/toolbar.c:176
+#: ../../sflphone-client-gnome/src/toolbar.c:178
 msgid "Place a call"
 msgstr "Anrufen"
 
-#: ../sflphone-gtk/src/toolbar.c:184 ../sflphone-gtk/src/toolbar.c:186
+#: ../../sflphone-client-gnome/src/toolbar.c:185
+#: ../../sflphone-client-gnome/src/toolbar.c:187
 msgid "Pick up"
 msgstr "Abnehmen"
 
-#: ../sflphone-gtk/src/toolbar.c:194 ../sflphone-gtk/src/toolbar.c:196
+#: ../../sflphone-client-gnome/src/toolbar.c:195
+#: ../../sflphone-client-gnome/src/toolbar.c:197
 msgid "Hang up"
 msgstr "Auflegen"
 
-#: ../sflphone-gtk/src/toolbar.c:204 ../sflphone-gtk/src/toolbar.c:206
+#: ../../sflphone-client-gnome/src/toolbar.c:205
+#: ../../sflphone-client-gnome/src/toolbar.c:207
 msgid "Off Hold"
 msgstr "Aus Warteschleife"
 
-#: ../sflphone-gtk/src/toolbar.c:215 ../sflphone-gtk/src/toolbar.c:217
+#: ../../sflphone-client-gnome/src/toolbar.c:216
+#: ../../sflphone-client-gnome/src/toolbar.c:218
 msgid "On Hold"
 msgstr "In Warteschleife"
 
-#: ../sflphone-gtk/src/toolbar.c:228 ../sflphone-gtk/src/toolbar.c:230
+#: ../../sflphone-client-gnome/src/toolbar.c:229
+#: ../../sflphone-client-gnome/src/toolbar.c:231
 msgid "Transfer"
 msgstr "Weiterleiten"
 
-#: ../sflphone-gtk/src/toolbar.c:240 ../sflphone-gtk/src/toolbar.c:242
+#: ../../sflphone-client-gnome/src/toolbar.c:241
+#: ../../sflphone-client-gnome/src/toolbar.c:243
 msgid "History"
 msgstr "Vorherige Anrufe"
 
-#: ../sflphone-gtk/src/toolbar.c:251 ../sflphone-gtk/src/toolbar.c:253
+#: ../../sflphone-client-gnome/src/toolbar.c:252
+#: ../../sflphone-client-gnome/src/toolbar.c:254
 msgid "Address book"
 msgstr ""
 
-#: ../sflphone-gtk/src/toolbar.c:258 ../sflphone-gtk/src/toolbar.c:262
+#: ../../sflphone-client-gnome/src/toolbar.c:260
+#: ../../sflphone-client-gnome/src/toolbar.c:264
 msgid "Voicemail"
 msgstr "Voicemail"
 
-#: ../sflphone-gtk/src/toolbar.c:270
+#: ../../sflphone-client-gnome/src/toolbar.c:272
 msgid "Record a call"
 msgstr "Gespräch aufzeichnen"
 
-#: ../sflphone-gtk/src/contacts/history.c:75
-#: ../sflphone-gtk/src/contacts/searchbar.c:39
-#: ../sflphone-gtk/src/contacts/searchbar.c:65
-msgid "Search"
-msgstr "Suchen"
-
-#: ../sflphone-gtk/src/config/accountwindow.c:103
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:108
 msgid "Account settings"
 msgstr "Kontoeinstellungen"
 
-#: ../sflphone-gtk/src/config/accountwindow.c:115
-msgid "Account parameters"
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:120
+#, fuzzy
+msgid "Account Parameters"
 msgstr "Kontoparameter"
 
-#: ../sflphone-gtk/src/config/accountwindow.c:137
-msgid "_Enabled"
-msgstr "_Aktiv"
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:142
+msgid "_Enable this account"
+msgstr ""
 
-#: ../sflphone-gtk/src/config/accountwindow.c:151
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:156
 msgid "_Protocol"
 msgstr "_Protokoll"
 
-#: ../sflphone-gtk/src/config/accountwindow.c:169
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:174
 msgid "Unknown"
 msgstr "unbekannt"
 
-#: ../sflphone-gtk/src/config/accountwindow.c:209
-msgid "_Voicemail box #"
-msgstr "_Voicemail Boxnummer"
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:265
+#: ../../sflphone-client-gnome/src/config/configwindow.c:732
+msgid "General"
+msgstr "Allgemein"
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:105
-msgid "Search Parameters"
-msgstr "Parametersuche"
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:276
+msgid "_Use Evolution address books"
+msgstr ""
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:116
-msgid "Maximum result number for a request: "
-msgstr "Maximale Anzahl der Resultaten per Abfrage: "
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:283
+msgid "Download limit:"
+msgstr ""
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:127
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:294
 msgid "_Display contact photo if available"
 msgstr ""
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:132
-msgid "Search for and display: "
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:301
+msgid "Fields"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:311
+msgid "Use the following fields from Evolution's address books:"
 msgstr ""
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:135
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:316
 msgid "_Business phone"
 msgstr ""
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:140
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:321
 msgid "_Home phone"
 msgstr ""
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:145
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:326
 msgid "_Mobile phone"
 msgstr ""
 
-#: ../sflphone-gtk/src/config/audioconf.c:154
-#, c-format
-msgid "audio device index for output = %d\n"
-msgstr "\"Audio device index\" für Ausgabe = %d\n"
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:333
+msgid "Address Books"
+msgstr ""
 
-#: ../sflphone-gtk/src/config/audioconf.c:562
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:343
+msgid "Select which Evolution address books to use:"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:377
+#: ../../sflphone-client-gnome/src/config/audioconf.c:574
 msgid "Name"
 msgstr "Name"
 
-#: ../sflphone-gtk/src/config/audioconf.c:567
+#: ../../sflphone-client-gnome/src/config/audioconf.c:155
+#, fuzzy, c-format
+msgid "audio device index for output = %d"
+msgstr "\"Audio device index\" für Ausgabe = %d\n"
+
+#: ../../sflphone-client-gnome/src/config/audioconf.c:579
 msgid "Frequency"
 msgstr "Frequenz"
 
-#: ../sflphone-gtk/src/config/audioconf.c:572
+#: ../../sflphone-client-gnome/src/config/audioconf.c:584
 msgid "Bitrate"
 msgstr "Bitrate"
 
-#: ../sflphone-gtk/src/config/audioconf.c:577
+#: ../../sflphone-client-gnome/src/config/audioconf.c:589
 msgid "Bandwidth"
 msgstr "Bandbreite"
 
-#: ../sflphone-gtk/src/config/audioconf.c:637
+#: ../../sflphone-client-gnome/src/config/audioconf.c:652
 msgid "Pulseaudio"
 msgstr "Pulseaudio"
 
-#: ../sflphone-gtk/src/config/audioconf.c:640
+#: ../../sflphone-client-gnome/src/config/audioconf.c:655
 msgid "ALSA"
 msgstr "ALSA"
 
-#: ../sflphone-gtk/src/config/audioconf.c:666
+#: ../../sflphone-client-gnome/src/config/audioconf.c:681
 msgid "ALSA plugin"
 msgstr "ALSA Plugin"
 
-#: ../sflphone-gtk/src/config/audioconf.c:688
+#: ../../sflphone-client-gnome/src/config/audioconf.c:703
 msgid "Output"
 msgstr "Ausgabe"
 
-#: ../sflphone-gtk/src/config/audioconf.c:710
+#: ../../sflphone-client-gnome/src/config/audioconf.c:725
 msgid "Input"
 msgstr "Eingabe"
 
-#: ../sflphone-gtk/src/config/audioconf.c:743
+#: ../../sflphone-client-gnome/src/config/audioconf.c:758
 msgid "_Enable ringtones"
 msgstr "Klingeltöne _einschalten"
 
-#: ../sflphone-gtk/src/config/audioconf.c:748
+#: ../../sflphone-client-gnome/src/config/audioconf.c:764
 msgid "Choose a ringtone"
 msgstr "Klingelton auswählen"
 
-#: ../sflphone-gtk/src/config/audioconf.c:753
+#: ../../sflphone-client-gnome/src/config/audioconf.c:769
 msgid "Audio Files"
 msgstr "Audio Dateien"
 
-#: ../sflphone-gtk/src/config/audioconf.c:770
-msgid "_Activate silence detection"
+#: ../../sflphone-client-gnome/src/config/audioconf.c:788
+msgid "_Voice Activity Detection"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/config/audioconf.c:798
+msgid "_Noise Reduction (Narrow-Band Companding)"
 msgstr ""
 
-#: ../sflphone-gtk/src/config/audioconf.c:798
+#: ../../sflphone-client-gnome/src/config/audioconf.c:826
 msgid "Sound Manager"
 msgstr "Sound Manager"
 
-#: ../sflphone-gtk/src/config/audioconf.c:805
+#: ../../sflphone-client-gnome/src/config/audioconf.c:833
 msgid "ALSA configuration"
 msgstr "ALSA Konfiguration"
 
-#: ../sflphone-gtk/src/config/audioconf.c:815
+#: ../../sflphone-client-gnome/src/config/audioconf.c:850
 msgid "Codecs"
 msgstr "Codecs"
 
-#: ../sflphone-gtk/src/config/audioconf.c:823
-msgid "Noise reduction"
-msgstr ""
-
-#: ../sflphone-gtk/src/config/audioconf.c:830
+#: ../../sflphone-client-gnome/src/config/audioconf.c:873
 msgid "Ringtones"
 msgstr "Klingeltöne"
 
-#: ../sflphone-gtk/src/config/configwindow.c:385
+#: ../../sflphone-client-gnome/src/config/configwindow.c:402
 msgid "Protocol"
 msgstr "Protokoll"
 
-#: ../sflphone-gtk/src/config/configwindow.c:392
+#: ../../sflphone-client-gnome/src/config/configwindow.c:409
 msgid "Status"
 msgstr "Status"
 
-#: ../sflphone-gtk/src/config/configwindow.c:495
+#: ../../sflphone-client-gnome/src/config/configwindow.c:512
 msgid "Stun parameters will apply to each SIP account created."
 msgstr ""
 
-#: ../sflphone-gtk/src/config/configwindow.c:503
+#: ../../sflphone-client-gnome/src/config/configwindow.c:520
 msgid "Enable it if you are behind a firewall"
 msgstr "Einschalten falls Sie hinter einer Firewall sind"
 
-#: ../sflphone-gtk/src/config/configwindow.c:511
+#: ../../sflphone-client-gnome/src/config/configwindow.c:528
 msgid "Format: name.server:port"
 msgstr "Format: Name.Server:Port"
 
-#: ../sflphone-gtk/src/config/configwindow.c:561
-msgid "Desktop Notification"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:579
+#, fuzzy
+msgid "Desktop Notifications"
 msgstr "Desktopbenachrichtigung"
 
-#: ../sflphone-gtk/src/config/configwindow.c:569
-msgid "_Enable"
-msgstr "_Einschalten"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:588
+#, fuzzy
+msgid "_Enable notifications"
+msgstr "Klingeltöne _einschalten"
 
-#: ../sflphone-gtk/src/config/configwindow.c:574
-msgid "_Notify voice mails"
-msgstr "_Benachrichtigung für Voice Nachrichten"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:594
+msgid "Enable voicemail _notifications"
+msgstr ""
 
-#: ../sflphone-gtk/src/config/configwindow.c:580
+#: ../../sflphone-client-gnome/src/config/configwindow.c:605
 msgid "System Tray Icon"
 msgstr "Benachrichtigungsfeld (\"System Tray\") Icon"
 
-#: ../sflphone-gtk/src/config/configwindow.c:588
+#: ../../sflphone-client-gnome/src/config/configwindow.c:613
 msgid "_Popup main window on incoming call"
 msgstr "Hauptfenster anzeigen wenn eingehendes Gespräch"
 
-#: ../sflphone-gtk/src/config/configwindow.c:593
+#: ../../sflphone-client-gnome/src/config/configwindow.c:618
 msgid "Ne_ver popup main window"
 msgstr "_Hauptfenster nie anzeigen"
 
-#: ../sflphone-gtk/src/config/configwindow.c:597
-msgid "_Start hidden"
-msgstr "_Unsichtbar beim Start"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:622
+msgid "Hide SFLphone window on _startup"
+msgstr ""
 
-#: ../sflphone-gtk/src/config/configwindow.c:603
+#: ../../sflphone-client-gnome/src/config/configwindow.c:628
 msgid "Calls History"
 msgstr "Liste der vorherigen Anrufen"
 
-#: ../sflphone-gtk/src/config/configwindow.c:611
-msgid "_Maximum number of calls"
-msgstr "_maximale Anzahl von Anrufen"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:636
+#, fuzzy
+msgid "_History size limit"
+msgstr "Liste der vorherigen Anrufen is leer"
 
-#: ../sflphone-gtk/src/config/configwindow.c:627
+#: ../../sflphone-client-gnome/src/config/configwindow.c:653
 msgid "PulseAudio sound server"
 msgstr "PulseAudio Sound Server"
 
-#: ../sflphone-gtk/src/config/configwindow.c:635
-msgid "_Control running applications volume"
-msgstr "Lautstärke für laufende Anwendungen _einstellen"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:661
+msgid "Mute other applications during a _call"
+msgstr ""
 
-#: ../sflphone-gtk/src/config/configwindow.c:648
+#: ../../sflphone-client-gnome/src/config/configwindow.c:674
 msgid "SIP Port"
 msgstr "SIP Port"
 
-#: ../sflphone-gtk/src/config/configwindow.c:661
+#: ../../sflphone-client-gnome/src/config/configwindow.c:687
 msgid "Port:"
 msgstr "Port:"
 
-#: ../sflphone-gtk/src/config/configwindow.c:706
-msgid "General"
-msgstr "Allgemein"
-
-#: ../sflphone-gtk/src/config/configwindow.c:717
-msgid "_Destination folder"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:742
+msgid "_Recordings folder"
 msgstr ""
 
-#: ../sflphone-gtk/src/config/configwindow.c:723
+#: ../../sflphone-client-gnome/src/config/configwindow.c:748
 msgid "Select a folder"
 msgstr ""
 
-#: ../sflphone-gtk/src/config/configwindow.c:748
+#: ../../sflphone-client-gnome/src/config/configwindow.c:773
 msgid "Preferences"
 msgstr "Einstellungen"
 
-#: ../sflphone-gtk/src/config/configwindow.c:768
+#: ../../sflphone-client-gnome/src/config/configwindow.c:793
 msgid "General Settings"
 msgstr "Allgemeine Einstellungen"
 
-#: ../sflphone-gtk/src/config/configwindow.c:773
+#: ../../sflphone-client-gnome/src/config/configwindow.c:798
 msgid "Audio Settings"
 msgstr "Audio Einstellungen"
 
-#: ../sflphone-gtk/src/config/configwindow.c:778
-msgid "Record"
-msgstr ""
+#: ../../sflphone-client-gnome/src/config/configwindow.c:803
+#, fuzzy
+msgid "Recordings"
+msgstr "_Gespräch aufzeichnen"
 
-#: ../sflphone-gtk/src/config/configwindow.c:783
+#: ../../sflphone-client-gnome/src/config/configwindow.c:808
 msgid "Address Book"
 msgstr ""
 
-#: ../sflphone-gtk/src/config/configwindow.c:788
+#: ../../sflphone-client-gnome/src/config/configwindow.c:813
 msgid "Hooks"
 msgstr ""
 
-#: ../sflphone-gtk/src/config/configwindow.c:814
+#: ../../sflphone-client-gnome/src/config/configwindow.c:840
 msgid "Accounts"
 msgstr "Konten"
 
-#: ../sflphone-gtk/src/config/configwindow.c:826
-msgid "Accounts previously setup"
-msgstr "Zuvor eingestellte Konten"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:852
+#, fuzzy
+msgid "Configured Accounts"
+msgstr "Aktuelles Konto"
 
-#: ../sflphone-gtk/src/config/hooks-config.c:92
-msgid "URL argument"
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:130
+msgid "URL Passing"
 msgstr ""
 
-#: ../sflphone-gtk/src/config/hooks-config.c:102
-msgid "_SIP protocol"
-msgstr "_SIP protokoll"
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:140
+#, c-format
+msgid ""
+"SFLphone can run custom commands if incoming calls come with an URL "
+"attached.\n"
+"In this case, %s will be replaced with the passed URL."
+msgstr ""
 
-#: ../sflphone-gtk/src/config/hooks-config.c:107
-msgid "_IAX2 protocol"
-msgstr "_IAX2 protokoll"
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:143
+msgid "Trigger on specific _SIP header"
+msgstr ""
 
-#: ../sflphone-gtk/src/config/hooks-config.c:113
-msgid "_SIP Header: "
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:155
+msgid "Trigger on _IAX2 URL"
 msgstr ""
 
-#: ../sflphone-gtk/src/config/hooks-config.c:120
-msgid "_Command: "
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:160
+msgid "_Command to run: "
 msgstr ""
 
-#~ msgid "SFLphone 0.9.3"
-#~ msgstr "SFLphone 0.9.2"
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:168
+msgid "Phone Number Rewriting"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:178
+msgid "_Prefix dialed numbers with:"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/contacts/history.c:83
+#: ../../sflphone-client-gnome/src/contacts/searchbar.c:123
+#, fuzzy
+msgid "Search history"
+msgstr "Liste der vorherigen Anrufen _leeren"
+
+#: ../../sflphone-client-gnome/src/contacts/history.c:83
+#: ../../sflphone-client-gnome/src/contacts/searchbar.c:110
+#, fuzzy
+msgid "Search contact"
+msgstr "Adressbuch _Suche"
+
+#, fuzzy
+#~ msgid "Registered to %s (%s)"
+#~ msgstr "registriert"
+
+#~ msgid "%s account- %s             %s"
+#~ msgstr "%s Konto- %s             %s"
+
+#~ msgid "_Enable"
+#~ msgstr "_Einschalten"
+
+#~ msgid "_Notify voice mails"
+#~ msgstr "_Benachrichtigung für Voice Nachrichten"
+
+#~ msgid "_Start hidden"
+#~ msgstr "_Unsichtbar beim Start"
+
+#~ msgid "_Maximum number of calls"
+#~ msgstr "_maximale Anzahl von Anrufen"
+
+#~ msgid "_Control running applications volume"
+#~ msgstr "Lautstärke für laufende Anwendungen _einstellen"
+
+#, fuzzy
+#~ msgid "Account previously setup"
+#~ msgstr "Zuvor eingestellte Konten"
+
+#~ msgid "_SIP protocol"
+#~ msgstr "_SIP protokoll"
+
+#~ msgid "_IAX2 protocol"
+#~ msgstr "_IAX2 protokoll"
+
+#~ msgid "Search"
+#~ msgstr "Suchen"
+
+#~ msgid "_Enabled"
+#~ msgstr "_Aktiv"
+
+#~ msgid "%s account- %s"
+#~ msgstr "%s Konto- %s"
+
+#~ msgid "_Account Assistant"
+#~ msgstr "_Konto Setup Assistent"
 
 #~ msgid "Setup Accounts"
 #~ msgstr "Konten einstellen"
 
+#~ msgid "Search Parameters"
+#~ msgstr "Parametersuche"
+
+#~ msgid "Maximum result number for a request: "
+#~ msgstr "Maximale Anzahl der Resultaten per Abfrage: "
+
 #~ msgid "_STUN Server"
 #~ msgstr "_STUN Server"
 
 #~ msgid "Apply"
 #~ msgstr "übernehmen"
-
-#~ msgid "History empty"
-#~ msgstr "Liste der vorherigen Anrufen is leer"
-
diff --git a/sflphone-common/po/es.po b/sflphone-common/po/es.po
index f55ec7ea4edbd3f40822bc96347877bbfa6fcba6..df246654f815314fd63936b6e3d4d33edd42db3d 100644
--- a/sflphone-common/po/es.po
+++ b/sflphone-common/po/es.po
@@ -9,72 +9,78 @@ msgid ""
 msgstr ""
 "Project-Id-Version: SFLphone 0.9.4\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-04-02 11:15-0400\n"
+"POT-Creation-Date: 2009-05-21 10:45-0400\n"
 "PO-Revision-Date: 2008-08-11 11:53+0200\n"
-"Last-Translator: Maxime Chambreuil <maxime.chambreuil@savoirfairelinux.com>\n"
+"Last-Translator: Carlos Galisteo <cgalisteo AT k-rolus.net>\n"
 "Language-Team: SavoirFaireLinux Inc <sflphoneteam@savoirfairelinux.com>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=n>1;\n"
 
-#: ../sflphone-gtk/src/accountlist.c:158
+#: ../../sflphone-client-gnome/src/accountlist.c:169
 msgid "Registered"
 msgstr "Registrado"
 
-#: ../sflphone-gtk/src/accountlist.c:161
+#: ../../sflphone-client-gnome/src/accountlist.c:172
 msgid "Not Registered"
 msgstr "No registrado"
 
-#: ../sflphone-gtk/src/accountlist.c:164
+#: ../../sflphone-client-gnome/src/accountlist.c:175
 msgid "Trying..."
 msgstr "Intentando..."
 
-#: ../sflphone-gtk/src/accountlist.c:167 ../sflphone-gtk/src/sflnotify.c:171
-#: ../sflphone-gtk/src/sflnotify.c:212
+#: ../../sflphone-client-gnome/src/accountlist.c:178
+#: ../../sflphone-client-gnome/src/sflnotify.c:176
+#: ../../sflphone-client-gnome/src/sflnotify.c:217
 msgid "Error"
 msgstr "Error"
 
-#: ../sflphone-gtk/src/accountlist.c:170
+#: ../../sflphone-client-gnome/src/accountlist.c:181
 msgid "Bad authentification"
-msgstr ""
+msgstr "Autenticación erronea"
 
-#: ../sflphone-gtk/src/accountlist.c:173
+#: ../../sflphone-client-gnome/src/accountlist.c:184
 msgid "Network unreachable"
-msgstr ""
+msgstr "Red Inaccesible"
 
-#: ../sflphone-gtk/src/accountlist.c:176
+#: ../../sflphone-client-gnome/src/accountlist.c:187
 msgid "Host unreachable"
 msgstr "_Parte del servidor"
 
-#: ../sflphone-gtk/src/accountlist.c:179
+#: ../../sflphone-client-gnome/src/accountlist.c:190
 msgid "Stun configuration error"
 msgstr "Error de configuración Stun"
 
-#: ../sflphone-gtk/src/accountlist.c:182
+#: ../../sflphone-client-gnome/src/accountlist.c:193
 msgid "Stun server invalid"
 msgstr "Servidor stun inválido"
 
-#: ../sflphone-gtk/src/accountlist.c:185
+#: ../../sflphone-client-gnome/src/accountlist.c:196
 msgid "Invalid"
 msgstr "Inválido"
 
-#: ../sflphone-gtk/src/actions.c:55 ../sflphone-gtk/src/sflnotify.c:103
+#: ../../sflphone-client-gnome/src/actions.c:55
+#: ../../sflphone-client-gnome/src/sflnotify.c:108
 #, c-format
 msgid "%d voice mails"
 msgstr "%d mensajes de voz"
 
-#: ../sflphone-gtk/src/actions.c:57
+#: ../../sflphone-client-gnome/src/actions.c:57
 #, c-format
 msgid "%d voice mail"
 msgstr "%d mensaje de voz"
 
-#: ../sflphone-gtk/src/actions.c:81
+#: ../../sflphone-client-gnome/src/actions.c:81
 #, c-format
-msgid "%s account- %s"
-msgstr "%s cuenta: %s"
+msgid "Using %s (%s)"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/actions.c:87
+msgid "No registered account"
+msgstr "No tiene ninguna cuenta registrada"
 
-#: ../sflphone-gtk/src/actions.c:225
+#: ../../sflphone-client-gnome/src/actions.c:229
 msgid ""
 "Unable to connect to the SFLphone server.\n"
 "Make sure the daemon is running."
@@ -82,12 +88,17 @@ msgstr ""
 "Incapaz de conectar con el servidor SFLphone.\n"
 " Asegúrese de que el demonio esté funcionando."
 
-#: ../sflphone-gtk/src/actions.c:764
+#: ../../sflphone-client-gnome/src/actions.c:787
 #, c-format
-msgid "%s account- %s             %s"
-msgstr "%s cuenta- %s             %s"
+msgid "IP call - %s"
+msgstr "Llamada IP - %s"
 
-#: ../sflphone-gtk/src/actions.c:861
+#: ../../sflphone-client-gnome/src/actions.c:790
+#, c-format
+msgid "Using %s (%s) - Codec: %s"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/actions.c:880
 #, c-format
 msgid ""
 "<b>Error: No audio codecs found.\n"
@@ -100,8 +111,8 @@ msgstr ""
 "</b> Los codecs de audio de SFLphone deben estar en <i>%s</i> o en el "
 "directorio <b>.sflphone</b> de su home( <i>%s</i> )"
 
-#: ../sflphone-gtk/src/assistant.c:31
-#, fuzzy, c-format
+#: ../../sflphone-client-gnome/src/assistant.c:35
+#, c-format
 msgid ""
 "This assistant is now finished.\n"
 "You can at any time check your registration state or modify your accounts "
@@ -110,142 +121,135 @@ msgid ""
 "Alias :    %s\n"
 "Server :   %s\n"
 "Username : %s\n"
-"Password : %s"
 msgstr ""
 "Ese asistante ha finalizado.\n"
-"\n"
 "Puede comprobar en cualquier momento su estado de registro o modificar la "
-"configuración de sus cuentas en la ventana de Opciones/Cuentas."
+"configuración de sus cuentas en la ventana de Opciones/Cuentas.\n"
+"\n"
+"Alias :    %s\n"
+"Server :   %s\n"
+"Username : %s\n"
 
-#: ../sflphone-gtk/src/assistant.c:154
+#: ../../sflphone-client-gnome/src/assistant.c:160
 msgid "SFLphone account configuration wizard"
 msgstr "Asistente de configuración de cuentas de SFLphone"
 
-#: ../sflphone-gtk/src/assistant.c:180
+#: ../../sflphone-client-gnome/src/assistant.c:186
 msgid "Welcome to SFLphone!"
 msgstr "¡Bienvenido a SFLphone!"
 
-#: ../sflphone-gtk/src/assistant.c:181
+#: ../../sflphone-client-gnome/src/assistant.c:187
 msgid "This installation wizard will help you configure an account."
 msgstr "Este asistente de instalación le ayudará a configurar una cuenta."
 
-#: ../sflphone-gtk/src/assistant.c:195
+#: ../../sflphone-client-gnome/src/assistant.c:201
 msgid "VoIP Protocols"
 msgstr "Protocolos VoIP"
 
-#: ../sflphone-gtk/src/assistant.c:195
+#: ../../sflphone-client-gnome/src/assistant.c:201
 msgid "Select an account type:"
 msgstr "Escoja un tipo de cuenta:"
 
-#: ../sflphone-gtk/src/assistant.c:213
+#: ../../sflphone-client-gnome/src/assistant.c:219
 msgid "Account"
-msgstr "Cuentas"
+msgstr "Cuenta"
 
-#: ../sflphone-gtk/src/assistant.c:213
+#: ../../sflphone-client-gnome/src/assistant.c:219
 msgid "Please select one of the following option:"
-msgstr "Por favor, rellene la siguiente información:"
+msgstr "Por favor, elija una de las siguientes opciones:"
 
-#: ../sflphone-gtk/src/assistant.c:215
+#: ../../sflphone-client-gnome/src/assistant.c:221
 msgid "Create a free SIP/IAX2 account on sflphone.org"
 msgstr "Crear una cuenta SIP/IAX2 gratis en sflphone.org"
 
-#: ../sflphone-gtk/src/assistant.c:217
+#: ../../sflphone-client-gnome/src/assistant.c:223
 msgid "Register an existing SIP or IAX2 account"
-msgstr "Registrar una cuenta SIP o IAX@ existente"
+msgstr "Registrar una cuenta SIP o IAX2 existente"
 
-#: ../sflphone-gtk/src/assistant.c:230
+#: ../../sflphone-client-gnome/src/assistant.c:236
 msgid "SIP account configuration"
 msgstr "Configuración de cuenta SIP"
 
-#: ../sflphone-gtk/src/assistant.c:230 ../sflphone-gtk/src/assistant.c:305
+#: ../../sflphone-client-gnome/src/assistant.c:236
+#: ../../sflphone-client-gnome/src/assistant.c:332
 msgid "Please fill the following information:"
 msgstr "Por favor, rellene la siguiente información:"
 
-#: ../sflphone-gtk/src/assistant.c:238 ../sflphone-gtk/src/assistant.c:313
-#: ../sflphone-gtk/src/config/accountwindow.c:143
+#: ../../sflphone-client-gnome/src/assistant.c:244
+#: ../../sflphone-client-gnome/src/assistant.c:340
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:148
 msgid "_Alias"
 msgstr "_Alias"
 
-#: ../sflphone-gtk/src/assistant.c:246 ../sflphone-gtk/src/assistant.c:321
-#: ../sflphone-gtk/src/config/accountwindow.c:179
+#: ../../sflphone-client-gnome/src/assistant.c:252
+#: ../../sflphone-client-gnome/src/assistant.c:348
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:184
 msgid "_Host name"
 msgstr "_Nombre de equipo"
 
-#: ../sflphone-gtk/src/assistant.c:254 ../sflphone-gtk/src/assistant.c:329
-#: ../sflphone-gtk/src/config/accountwindow.c:187
+#: ../../sflphone-client-gnome/src/assistant.c:260
+#: ../../sflphone-client-gnome/src/assistant.c:356
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:192
 msgid "_User name"
 msgstr "_Usuario"
 
-#: ../sflphone-gtk/src/assistant.c:264 ../sflphone-gtk/src/assistant.c:339
-#: ../sflphone-gtk/src/config/accountwindow.c:198
+#: ../../sflphone-client-gnome/src/assistant.c:276
+#: ../../sflphone-client-gnome/src/assistant.c:371
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:207
 msgid "_Password"
 msgstr "_Contraseña"
 
-#: ../sflphone-gtk/src/assistant.c:282
+#: ../../sflphone-client-gnome/src/assistant.c:294
+#: ../../sflphone-client-gnome/src/assistant.c:387
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:223
+msgid "_Voicemail number"
+msgstr "_Número de buzón de voz"
+
+#: ../../sflphone-client-gnome/src/assistant.c:309
 msgid "Optional Email Address "
 msgstr "Dirección de correo opcional "
 
-#: ../sflphone-gtk/src/assistant.c:282
+#: ../../sflphone-client-gnome/src/assistant.c:309
 msgid "This email address will be use to send your voicemail messages"
-msgstr "Este dirección de correo sera usado para mandar los mensajes"
+msgstr "Esta dirección de correo se usará para mandar sus mensajes de voz"
 
-#: ../sflphone-gtk/src/assistant.c:290
+#: ../../sflphone-client-gnome/src/assistant.c:317
 msgid "_Email"
 msgstr "_Correo"
 
-#: ../sflphone-gtk/src/assistant.c:305
+#: ../../sflphone-client-gnome/src/assistant.c:332
 msgid "IAX2 account configuration"
 msgstr "Configuración de cuenta IAX2"
 
-#: ../sflphone-gtk/src/assistant.c:360
-#: ../sflphone-gtk/src/config/configwindow.c:837
+#: ../../sflphone-client-gnome/src/assistant.c:405
+#: ../../sflphone-client-gnome/src/config/configwindow.c:863
 msgid "Network Address Translation"
 msgstr "Conversión de Dirección de Red (NAT)"
 
-#: ../sflphone-gtk/src/assistant.c:360
+#: ../../sflphone-client-gnome/src/assistant.c:405
 msgid "You should probably enable this if you are behind a firewall."
 msgstr "Probablemente tiene que activar esto si está detrás de un cortafuegos."
 
-#: ../sflphone-gtk/src/assistant.c:369
-#: ../sflphone-gtk/src/config/configwindow.c:499
+#: ../../sflphone-client-gnome/src/assistant.c:414
+#: ../../sflphone-client-gnome/src/config/configwindow.c:516
 msgid "E_nable STUN"
 msgstr "A_ctivar STUN"
 
-#: ../sflphone-gtk/src/assistant.c:376
+#: ../../sflphone-client-gnome/src/assistant.c:421
 msgid "_STUN server"
 msgstr "_Servidor STUN"
 
-#: ../sflphone-gtk/src/assistant.c:390
+#: ../../sflphone-client-gnome/src/assistant.c:435
 msgid "Account Registration"
 msgstr "Registro de cuenta"
 
-#: ../sflphone-gtk/src/assistant.c:390
+#: ../../sflphone-client-gnome/src/assistant.c:435
 msgid "Congratulations!"
 msgstr "¡Enhorabuena!"
 
-#: ../sflphone-gtk/src/context-menu.c:296 ../sflphone-gtk/src/menus.c:308
-#: ../sflphone-gtk/src/menus.c:791
-msgid "_Pick up"
-msgstr "_Descolgar"
-
-#: ../sflphone-gtk/src/context-menu.c:308 ../sflphone-gtk/src/menus.c:318
-#: ../sflphone-gtk/src/menus.c:803
-msgid "_Hang up"
-msgstr "_Colgar"
-
-#: ../sflphone-gtk/src/context-menu.c:320 ../sflphone-gtk/src/menus.c:328
-#: ../sflphone-gtk/src/menus.c:815
-msgid "On _Hold"
-msgstr "En _Espera"
-
-#: ../sflphone-gtk/src/context-menu.c:332 ../sflphone-gtk/src/menus.c:340
-#: ../sflphone-gtk/src/menus.c:827
-msgid "_Record"
-msgstr "_Recordar"
-
-#: ../sflphone-gtk/src/errors.c:28
+#: ../../sflphone-client-gnome/src/errors.c:28
 msgid ""
-"<b>ALSA notification</b>\n"
+"ALSA notification\n"
 "\n"
 "Error while opening playback device"
 msgstr ""
@@ -253,9 +257,9 @@ msgstr ""
 "\n"
 "Error al abrir el dispositivo de reproducción"
 
-#: ../sflphone-gtk/src/errors.c:31
+#: ../../sflphone-client-gnome/src/errors.c:31
 msgid ""
-"<b>ALSA notification</b>\n"
+"ALSA notification\n"
 "\n"
 "Error while opening capture device"
 msgstr ""
@@ -263,9 +267,9 @@ msgstr ""
 "\n"
 "Error al abrir el dispositivo de captura"
 
-#: ../sflphone-gtk/src/errors.c:34
+#: ../../sflphone-client-gnome/src/errors.c:34
 msgid ""
-"<b>Pulseaudio notification</b>\n"
+"Pulseaudio notification\n"
 "\n"
 "Pulseaudio is not running"
 msgstr ""
@@ -273,463 +277,528 @@ msgstr ""
 "\n"
 "Pulseaudio no está funcionando"
 
-#: ../sflphone-gtk/src/mainwindow.c:70
+#: ../../sflphone-client-gnome/src/mainwindow.c:70
 msgid "There is one call in progress."
 msgstr "No hay llamada en curso"
 
-#: ../sflphone-gtk/src/mainwindow.c:74
+#: ../../sflphone-client-gnome/src/mainwindow.c:74
 msgid "There are calls in progress."
 msgstr "Hay llamadas en curso."
 
-#: ../sflphone-gtk/src/mainwindow.c:83
+#: ../../sflphone-client-gnome/src/mainwindow.c:83
 msgid "Do you still want to quit?"
 msgstr "Sin embargo quiere parar ?"
 
-#: ../sflphone-gtk/src/menus.c:131
+#: ../../sflphone-client-gnome/src/mainwindow.c:296
+msgid "SFLphone Error"
+msgstr "SFLphone Error"
+
+#: ../../sflphone-client-gnome/src/menus.c:134
 msgid "SFLphone is a VoIP client compatible with SIP and IAX2 protocols."
 msgstr ""
 "SFLphone es un telefono por Internet compatible con los protocolos SIP y IAX2"
 
-#: ../sflphone-gtk/src/menus.c:134
+#: ../../sflphone-client-gnome/src/menus.c:137
 msgid "About SFLphone"
 msgstr "Sobre SFLphone"
 
-#: ../sflphone-gtk/src/menus.c:157
+#: ../../sflphone-client-gnome/src/menus.c:161
 msgid "_Help"
 msgstr "_Ayuda"
 
-#: ../sflphone-gtk/src/menus.c:296 ../sflphone-gtk/src/menus.c:949
+#: ../../sflphone-client-gnome/src/menus.c:300
+#: ../../sflphone-client-gnome/src/menus.c:971
 msgid "_New call"
 msgstr "_Nueva llamada"
 
-#: ../sflphone-gtk/src/menus.c:354
-msgid "_Account Assistant"
-msgstr "_Asistente de Cuenta"
+#: ../../sflphone-client-gnome/src/menus.c:312
+#: ../../sflphone-client-gnome/src/menus.c:803
+msgid "_Pick up"
+msgstr "_Descolgar"
+
+#: ../../sflphone-client-gnome/src/menus.c:322
+#: ../../sflphone-client-gnome/src/menus.c:815
+msgid "_Hang up"
+msgstr "_Colgar"
+
+#: ../../sflphone-client-gnome/src/menus.c:332
+#: ../../sflphone-client-gnome/src/menus.c:827
+msgid "On _Hold"
+msgstr "En _Espera"
 
-#: ../sflphone-gtk/src/menus.c:384
+#: ../../sflphone-client-gnome/src/menus.c:344
+#: ../../sflphone-client-gnome/src/menus.c:839
+msgid "_Record"
+msgstr "_Recordar"
+
+#: ../../sflphone-client-gnome/src/menus.c:358
+msgid "_Account creation wizard"
+msgstr "Asistente de configuración de cuentas"
+
+#: ../../sflphone-client-gnome/src/menus.c:388
 msgid "_Call"
 msgstr "_Llamar"
 
-#: ../sflphone-gtk/src/menus.c:557
+#: ../../sflphone-client-gnome/src/menus.c:561
 msgid "_Clear history"
-msgstr "Historia de Llamada"
+msgstr "_Limpiar historial"
 
-#: ../sflphone-gtk/src/menus.c:569
+#: ../../sflphone-client-gnome/src/menus.c:573
 msgid "_Accounts"
 msgstr "_Cuentas"
 
-#: ../sflphone-gtk/src/menus.c:584
+#: ../../sflphone-client-gnome/src/menus.c:588
 msgid "_Edit"
 msgstr "_Editar"
 
-#: ../sflphone-gtk/src/menus.c:644
+#: ../../sflphone-client-gnome/src/menus.c:649
 msgid "_Dialpad"
 msgstr "_Teclado numérico"
 
-#: ../sflphone-gtk/src/menus.c:656
+#: ../../sflphone-client-gnome/src/menus.c:661
 msgid "_Volume controls"
 msgstr "_Controles de volumen"
 
-#: ../sflphone-gtk/src/menus.c:665
-msgid "_Search contact"
-msgstr "_Buscar contactos"
-
-#: ../sflphone-gtk/src/menus.c:673
+#: ../../sflphone-client-gnome/src/menus.c:679
 msgid "_View"
 msgstr "_Ver"
 
-#: ../sflphone-gtk/src/menus.c:885
+#: ../../sflphone-client-gnome/src/menus.c:899
 msgid "_Call back"
 msgstr "_Llamar"
 
-#: ../sflphone-gtk/src/sflnotify.c:34 ../sflphone-gtk/src/sflnotify.c:100
+#: ../../sflphone-client-gnome/src/menus.c:1082
+msgid "Edit phone"
+msgstr "Editar teléfono"
+
+#: ../../sflphone-client-gnome/src/menus.c:1093
+msgid "Edit the phone number before making a call"
+msgstr "Editar el número de teléfono antes de llamar"
+
+#: ../../sflphone-client-gnome/src/sflnotify.c:38
+#: ../../sflphone-client-gnome/src/sflnotify.c:105
 #, c-format
 msgid "%s account: %s"
 msgstr "%s cuenta: %s"
 
-#: ../sflphone-gtk/src/sflnotify.c:37
+#: ../../sflphone-client-gnome/src/sflnotify.c:42
 #, c-format
 msgid "<i>From:</i> %s"
 msgstr "<i>De:</i> %s"
 
-#: ../sflphone-gtk/src/sflnotify.c:52
+#: ../../sflphone-client-gnome/src/sflnotify.c:57
 msgid "Accept"
 msgstr "Aceptar"
 
-#: ../sflphone-gtk/src/sflnotify.c:53
+#: ../../sflphone-client-gnome/src/sflnotify.c:58
 msgid "Refuse"
 msgstr "Rechazar"
 
-#: ../sflphone-gtk/src/sflnotify.c:54 ../sflphone-gtk/src/sflnotify.c:117
-#: ../sflphone-gtk/src/sflnotify.c:154
+#: ../../sflphone-client-gnome/src/sflnotify.c:59
+#: ../../sflphone-client-gnome/src/sflnotify.c:122
+#: ../../sflphone-client-gnome/src/sflnotify.c:159
 msgid "Ignore"
 msgstr "Ignorar"
 
-#: ../sflphone-gtk/src/sflnotify.c:136
+#: ../../sflphone-client-gnome/src/sflnotify.c:141
 #, c-format
 msgid "Calling with %s account <i>%s</i>"
 msgstr "Llamando con la cuenta %s <i>%s</i>"
 
-#: ../sflphone-gtk/src/sflnotify.c:140
+#: ../../sflphone-client-gnome/src/sflnotify.c:145
 msgid "Current account"
-msgstr "Cuenta"
+msgstr "Cuenta actual"
 
-#: ../sflphone-gtk/src/sflnotify.c:169
+#: ../../sflphone-client-gnome/src/sflnotify.c:174
 msgid "You haven't setup any accounts"
 msgstr "No ha configurado cuentas"
 
-#: ../sflphone-gtk/src/sflnotify.c:209
+#: ../../sflphone-client-gnome/src/sflnotify.c:214
 msgid "You have no registered accounts"
 msgstr "No tiene ninguna cuenta registrada"
 
-#: ../sflphone-gtk/src/sliders.c:161
+#: ../../sflphone-client-gnome/src/sliders.c:161
 msgid "Speakers volume"
 msgstr "Volumen de altavoces"
 
-#: ../sflphone-gtk/src/sliders.c:163
+#: ../../sflphone-client-gnome/src/sliders.c:163
 msgid "Mic volume"
 msgstr "Volumen del micrófono"
 
-#: ../sflphone-gtk/src/statusicon.c:91
+#: ../../sflphone-client-gnome/src/statusicon.c:91
 msgid "_Show main window"
 msgstr "Mostrar ventana principal"
 
-#: ../sflphone-gtk/src/statusicon.c:124
+#: ../../sflphone-client-gnome/src/statusicon.c:124
 #, c-format
-msgid "SFLphone - %i accounts registered"
-msgstr "SFLphone - %i cuenta registrada"
+msgid "SFLphone - %i accounts configured"
+msgstr "SFLphone - %i cuentas configuradas"
 
-#: ../sflphone-gtk/src/timestamp.c:46
+#: ../../sflphone-client-gnome/src/timestamp.c:46
 msgid "<small>Missed call</small>"
-msgstr "<small>Llamada faltada</small>"
+msgstr "<small>Llamada fallida</small>"
 
-#: ../sflphone-gtk/src/timestamp.c:64
+#: ../../sflphone-client-gnome/src/timestamp.c:64
 #, c-format
 msgid "<small>Duration:</small> %s"
 msgstr "<small>Duración:</small> %s"
 
-#: ../sflphone-gtk/src/toolbar.c:49
+#: ../../sflphone-client-gnome/src/toolbar.c:50
 #, c-format
 msgid "\"Voicemail\" <%s>"
 msgstr "\"Mensaje\" <%s>"
 
-#: ../sflphone-gtk/src/toolbar.c:175 ../sflphone-gtk/src/toolbar.c:177
+#: ../../sflphone-client-gnome/src/toolbar.c:176
+#: ../../sflphone-client-gnome/src/toolbar.c:178
 msgid "Place a call"
 msgstr "Llamar"
 
-#: ../sflphone-gtk/src/toolbar.c:184 ../sflphone-gtk/src/toolbar.c:186
+#: ../../sflphone-client-gnome/src/toolbar.c:185
+#: ../../sflphone-client-gnome/src/toolbar.c:187
 msgid "Pick up"
 msgstr "Descolgar"
 
-#: ../sflphone-gtk/src/toolbar.c:194 ../sflphone-gtk/src/toolbar.c:196
+#: ../../sflphone-client-gnome/src/toolbar.c:195
+#: ../../sflphone-client-gnome/src/toolbar.c:197
 msgid "Hang up"
 msgstr "Colgar"
 
-#: ../sflphone-gtk/src/toolbar.c:204 ../sflphone-gtk/src/toolbar.c:206
+#: ../../sflphone-client-gnome/src/toolbar.c:205
+#: ../../sflphone-client-gnome/src/toolbar.c:207
 msgid "Off Hold"
 msgstr "Seguir"
 
-#: ../sflphone-gtk/src/toolbar.c:215 ../sflphone-gtk/src/toolbar.c:217
+#: ../../sflphone-client-gnome/src/toolbar.c:216
+#: ../../sflphone-client-gnome/src/toolbar.c:218
 msgid "On Hold"
 msgstr "Retener"
 
-#: ../sflphone-gtk/src/toolbar.c:228 ../sflphone-gtk/src/toolbar.c:230
+#: ../../sflphone-client-gnome/src/toolbar.c:229
+#: ../../sflphone-client-gnome/src/toolbar.c:231
 msgid "Transfer"
 msgstr "Transferir"
 
-#: ../sflphone-gtk/src/toolbar.c:240 ../sflphone-gtk/src/toolbar.c:242
+#: ../../sflphone-client-gnome/src/toolbar.c:241
+#: ../../sflphone-client-gnome/src/toolbar.c:243
 msgid "History"
 msgstr "Historia de Llamada"
 
-#: ../sflphone-gtk/src/toolbar.c:251 ../sflphone-gtk/src/toolbar.c:253
+#: ../../sflphone-client-gnome/src/toolbar.c:252
+#: ../../sflphone-client-gnome/src/toolbar.c:254
 msgid "Address book"
-msgstr ""
+msgstr "Libreta de contactos"
 
-#: ../sflphone-gtk/src/toolbar.c:258 ../sflphone-gtk/src/toolbar.c:262
+#: ../../sflphone-client-gnome/src/toolbar.c:260
+#: ../../sflphone-client-gnome/src/toolbar.c:264
 msgid "Voicemail"
-msgstr "Mensaje"
+msgstr "Mensaje de voz"
 
-#: ../sflphone-gtk/src/toolbar.c:270
+#: ../../sflphone-client-gnome/src/toolbar.c:272
 msgid "Record a call"
-msgstr "Recordar una llamada"
+msgstr "Grabar una llamada"
 
-#: ../sflphone-gtk/src/contacts/history.c:75
-#: ../sflphone-gtk/src/contacts/searchbar.c:39
-#: ../sflphone-gtk/src/contacts/searchbar.c:65
-msgid "Search"
-msgstr "Buscar"
-
-#: ../sflphone-gtk/src/config/accountwindow.c:103
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:108
 msgid "Account settings"
 msgstr "Configuración de cuentas"
 
-#: ../sflphone-gtk/src/config/accountwindow.c:115
-msgid "Account parameters"
-msgstr "Paràmetros de cuenta"
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:120
+msgid "Account Parameters"
+msgstr "Parámetros de cuenta"
 
-#: ../sflphone-gtk/src/config/accountwindow.c:137
-msgid "_Enabled"
-msgstr "_Activado"
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:142
+msgid "_Enable this account"
+msgstr "_Habilitar esta cuenta"
 
-#: ../sflphone-gtk/src/config/accountwindow.c:151
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:156
 msgid "_Protocol"
 msgstr "_Protocolo"
 
-#: ../sflphone-gtk/src/config/accountwindow.c:169
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:174
 msgid "Unknown"
 msgstr "Desconocido"
 
-#: ../sflphone-gtk/src/config/accountwindow.c:209
-msgid "_Voicemail box #"
-msgstr "_Número de buzón de voz"
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:265
+#: ../../sflphone-client-gnome/src/config/configwindow.c:732
+msgid "General"
+msgstr "General"
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:105
-msgid "Search Parameters"
-msgstr "Buscar paràmetros"
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:276
+msgid "_Use Evolution address books"
+msgstr "_Usar libreta de contactos de Evolution"
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:116
-msgid "Maximum result number for a request: "
-msgstr "Numero maximo de resultados de búsqueda"
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:283
+msgid "Download limit:"
+msgstr "Límite de descarga"
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:127
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:294
 msgid "_Display contact photo if available"
-msgstr "_Mostrar fotos de contactos, si disponible"
+msgstr "_Mostrar fotos de contactos, si está disponible"
+
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:301
+msgid "Fields"
+msgstr "Campos"
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:132
-msgid "Search for and display: "
-msgstr "Buscar y mostrar: "
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:311
+msgid "Use the following fields from Evolution's address books:"
+msgstr "Usar los siguientes campos de la libreta de direcciones de Evolution:"
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:135
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:316
 msgid "_Business phone"
-msgstr "_Numero de telefono profecional"
+msgstr "_Numero de teléfono profesional"
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:140
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:321
 msgid "_Home phone"
-msgstr "_Numero de telefono personal"
+msgstr "_Numero de teléfono personal"
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:145
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:326
 msgid "_Mobile phone"
-msgstr "_Numero de movil"
+msgstr "_Número de movil"
 
-#: ../sflphone-gtk/src/config/audioconf.c:154
-#, c-format
-msgid "audio device index for output = %d\n"
-msgstr ""
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:333
+msgid "Address Books"
+msgstr "Libreta de direcciones"
+
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:343
+msgid "Select which Evolution address books to use:"
+msgstr "Seleccione las libretas de direcciones de Evolution a usar:"
 
-#: ../sflphone-gtk/src/config/audioconf.c:562
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:377
+#: ../../sflphone-client-gnome/src/config/audioconf.c:574
 msgid "Name"
 msgstr "Nombre"
 
-#: ../sflphone-gtk/src/config/audioconf.c:567
+#: ../../sflphone-client-gnome/src/config/audioconf.c:155
+#, c-format
+msgid "audio device index for output = %d"
+msgstr "índice del dispositivo de salida de audio = %d"
+
+#: ../../sflphone-client-gnome/src/config/audioconf.c:579
 msgid "Frequency"
 msgstr "Frecuencia"
 
-#: ../sflphone-gtk/src/config/audioconf.c:572
+#: ../../sflphone-client-gnome/src/config/audioconf.c:584
 msgid "Bitrate"
 msgstr "Tasa de transferencia"
 
-#: ../sflphone-gtk/src/config/audioconf.c:577
+#: ../../sflphone-client-gnome/src/config/audioconf.c:589
 msgid "Bandwidth"
 msgstr "Ancho de banda"
 
-#: ../sflphone-gtk/src/config/audioconf.c:637
+#: ../../sflphone-client-gnome/src/config/audioconf.c:652
 msgid "Pulseaudio"
-msgstr ""
+msgstr "Pulseaudio"
 
-#: ../sflphone-gtk/src/config/audioconf.c:640
+#: ../../sflphone-client-gnome/src/config/audioconf.c:655
 msgid "ALSA"
-msgstr ""
+msgstr "ALSA"
 
-#: ../sflphone-gtk/src/config/audioconf.c:666
+#: ../../sflphone-client-gnome/src/config/audioconf.c:681
 msgid "ALSA plugin"
 msgstr "Plugin ALSA"
 
-#: ../sflphone-gtk/src/config/audioconf.c:688
+#: ../../sflphone-client-gnome/src/config/audioconf.c:703
 msgid "Output"
-msgstr ""
+msgstr "Salida"
 
-#: ../sflphone-gtk/src/config/audioconf.c:710
+#: ../../sflphone-client-gnome/src/config/audioconf.c:725
 msgid "Input"
-msgstr ""
+msgstr "Entrada"
 
-#: ../sflphone-gtk/src/config/audioconf.c:743
+#: ../../sflphone-client-gnome/src/config/audioconf.c:758
 msgid "_Enable ringtones"
 msgstr "_Habilitar tonos de llamada"
 
-#: ../sflphone-gtk/src/config/audioconf.c:748
+#: ../../sflphone-client-gnome/src/config/audioconf.c:764
 msgid "Choose a ringtone"
 msgstr "Elija un tono de llmada"
 
-#: ../sflphone-gtk/src/config/audioconf.c:753
+#: ../../sflphone-client-gnome/src/config/audioconf.c:769
 msgid "Audio Files"
 msgstr "Archivos de Audio"
 
-#: ../sflphone-gtk/src/config/audioconf.c:770
-msgid "_Activate silence detection"
-msgstr ""
+#: ../../sflphone-client-gnome/src/config/audioconf.c:788
+msgid "_Voice Activity Detection"
+msgstr "_Detección de actividad de voz"
+
+#: ../../sflphone-client-gnome/src/config/audioconf.c:798
+msgid "_Noise Reduction (Narrow-Band Companding)"
+msgstr "_Reducción de ruido"
 
-#: ../sflphone-gtk/src/config/audioconf.c:798
+#: ../../sflphone-client-gnome/src/config/audioconf.c:826
 msgid "Sound Manager"
-msgstr ""
+msgstr "Gestor de audio"
 
-#: ../sflphone-gtk/src/config/audioconf.c:805
+#: ../../sflphone-client-gnome/src/config/audioconf.c:833
 msgid "ALSA configuration"
-msgstr "Configuraciòn de cuenta SIP"
+msgstr "Configuración de ALSA"
 
-#: ../sflphone-gtk/src/config/audioconf.c:815
+#: ../../sflphone-client-gnome/src/config/audioconf.c:850
 msgid "Codecs"
-msgstr ""
+msgstr "Códecs"
 
-#: ../sflphone-gtk/src/config/audioconf.c:823
-msgid "Noise reduction"
-msgstr "Reducción de ruidos"
-
-#: ../sflphone-gtk/src/config/audioconf.c:830
+#: ../../sflphone-client-gnome/src/config/audioconf.c:873
 msgid "Ringtones"
-msgstr "_Permitir los ringtones"
+msgstr "Tonos de llamada"
 
-#: ../sflphone-gtk/src/config/configwindow.c:385
+#: ../../sflphone-client-gnome/src/config/configwindow.c:402
 msgid "Protocol"
 msgstr "Protocolo"
 
-#: ../sflphone-gtk/src/config/configwindow.c:392
+#: ../../sflphone-client-gnome/src/config/configwindow.c:409
 msgid "Status"
 msgstr "Estado"
 
-#: ../sflphone-gtk/src/config/configwindow.c:495
+#: ../../sflphone-client-gnome/src/config/configwindow.c:512
 msgid "Stun parameters will apply to each SIP account created."
 msgstr "Parámetros de stun se aplicarán a cada cuenta SIP creada."
 
-#: ../sflphone-gtk/src/config/configwindow.c:503
+#: ../../sflphone-client-gnome/src/config/configwindow.c:520
 msgid "Enable it if you are behind a firewall"
-msgstr "Actívelo si está detrás de un cortafuegos, después reinicie SFLphone"
+msgstr "Actívelo si está detrás de un cortafuegos"
 
-#: ../sflphone-gtk/src/config/configwindow.c:511
+#: ../../sflphone-client-gnome/src/config/configwindow.c:528
 msgid "Format: name.server:port"
 msgstr "Formato: nombre.servidor:puerto"
 
-#: ../sflphone-gtk/src/config/configwindow.c:561
-msgid "Desktop Notification"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:579
+msgid "Desktop Notifications"
 msgstr "Notificación de escritorio"
 
-#: ../sflphone-gtk/src/config/configwindow.c:569
-msgid "_Enable"
-msgstr "_Activar"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:588
+msgid "_Enable notifications"
+msgstr "_Habilitar notificaciones"
 
-#: ../sflphone-gtk/src/config/configwindow.c:574
-msgid "_Notify voice mails"
-msgstr "_Notificar mensajes de voz"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:594
+msgid "Enable voicemail _notifications"
+msgstr "Habilitar _notificaciones de mensajes de voz"
 
-#: ../sflphone-gtk/src/config/configwindow.c:580
+#: ../../sflphone-client-gnome/src/config/configwindow.c:605
 msgid "System Tray Icon"
 msgstr "Icono de bandeja del sistema"
 
-#: ../sflphone-gtk/src/config/configwindow.c:588
+#: ../../sflphone-client-gnome/src/config/configwindow.c:613
 msgid "_Popup main window on incoming call"
 msgstr "_Popup ventana principal al recibir llamadas"
 
-#: ../sflphone-gtk/src/config/configwindow.c:593
+#: ../../sflphone-client-gnome/src/config/configwindow.c:618
 msgid "Ne_ver popup main window"
 msgstr "_Nunca mostrar ventana principal"
 
-#: ../sflphone-gtk/src/config/configwindow.c:597
-msgid "_Start hidden"
-msgstr "_Iniciar oculto"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:622
+msgid "Hide SFLphone window on _startup"
+msgstr "Esconder SFLphone en el arranque"
 
-#: ../sflphone-gtk/src/config/configwindow.c:603
+#: ../../sflphone-client-gnome/src/config/configwindow.c:628
 msgid "Calls History"
 msgstr "Historial de llamadas"
 
-#: ../sflphone-gtk/src/config/configwindow.c:611
-msgid "_Maximum number of calls"
-msgstr "_Numero maximo de llamadas"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:636
+msgid "_History size limit"
+msgstr "Límite de tamaño de _historial"
 
-#: ../sflphone-gtk/src/config/configwindow.c:627
+#: ../../sflphone-client-gnome/src/config/configwindow.c:653
 msgid "PulseAudio sound server"
 msgstr "Servidor de sonido Pulseaudio"
 
-#: ../sflphone-gtk/src/config/configwindow.c:635
-msgid "_Control running applications volume"
-msgstr "_Control del volumen de las applicaciones en curso"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:661
+msgid "Mute other applications during a _call"
+msgstr "Silenciar el resto de aplicaciones durante una llamada"
 
-#: ../sflphone-gtk/src/config/configwindow.c:648
+#: ../../sflphone-client-gnome/src/config/configwindow.c:674
 msgid "SIP Port"
-msgstr ""
+msgstr "Puerto SIP"
 
-#: ../sflphone-gtk/src/config/configwindow.c:661
+#: ../../sflphone-client-gnome/src/config/configwindow.c:687
 msgid "Port:"
-msgstr ""
-
-#: ../sflphone-gtk/src/config/configwindow.c:706
-msgid "General"
-msgstr "Configuración"
+msgstr "Puerto:"
 
-#: ../sflphone-gtk/src/config/configwindow.c:717
-msgid "_Destination folder"
-msgstr "_Carpeta de destinación"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:742
+msgid "_Recordings folder"
+msgstr "Directorio de Grabaciones"
 
-#: ../sflphone-gtk/src/config/configwindow.c:723
+#: ../../sflphone-client-gnome/src/config/configwindow.c:748
 msgid "Select a folder"
-msgstr ""
+msgstr "Seleccione un directorio"
 
-#: ../sflphone-gtk/src/config/configwindow.c:748
+#: ../../sflphone-client-gnome/src/config/configwindow.c:773
 msgid "Preferences"
 msgstr "Preferencias"
 
-#: ../sflphone-gtk/src/config/configwindow.c:768
+#: ../../sflphone-client-gnome/src/config/configwindow.c:793
 msgid "General Settings"
-msgstr "Configuración"
+msgstr "Configuración general"
 
-#: ../sflphone-gtk/src/config/configwindow.c:773
+#: ../../sflphone-client-gnome/src/config/configwindow.c:798
 msgid "Audio Settings"
 msgstr "Configuración de audio"
 
-#: ../sflphone-gtk/src/config/configwindow.c:778
-msgid "Record"
-msgstr "Registrar"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:803
+msgid "Recordings"
+msgstr "Grabaciones"
 
-#: ../sflphone-gtk/src/config/configwindow.c:783
+#: ../../sflphone-client-gnome/src/config/configwindow.c:808
 msgid "Address Book"
-msgstr ""
+msgstr "Libreta de direcciones"
 
-#: ../sflphone-gtk/src/config/configwindow.c:788
+#: ../../sflphone-client-gnome/src/config/configwindow.c:813
 msgid "Hooks"
-msgstr ""
+msgstr "Disparadores"
 
-#: ../sflphone-gtk/src/config/configwindow.c:814
+#: ../../sflphone-client-gnome/src/config/configwindow.c:840
 msgid "Accounts"
 msgstr "Cuentas"
 
-#: ../sflphone-gtk/src/config/configwindow.c:826
-msgid "Accounts previously setup"
-msgstr "Cuentas existentes"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:852
+msgid "Configured Accounts"
+msgstr "Cuentas Configuradas"
 
-#: ../sflphone-gtk/src/config/hooks-config.c:92
-msgid "URL argument"
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:130
+msgid "URL Passing"
+msgstr "Paso de URL"
+
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:140
+#, c-format
+msgid ""
+"SFLphone can run custom commands if incoming calls come with an URL "
+"attached.\n"
+"In this case, %s will be replaced with the passed URL."
 msgstr ""
+"SFLphone puede ejecutar órdenes personalizadas si las llamadas entrantes "
+"incluyen una URL.\n"
+"En este caso, %s se remplazará por la URL."
 
-#: ../sflphone-gtk/src/config/hooks-config.c:102
-msgid "_SIP protocol"
-msgstr "_Protocolo SIP"
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:143
+msgid "Trigger on specific _SIP header"
+msgstr "Evento desencadenado con una cabecera _SIP específica"
 
-#: ../sflphone-gtk/src/config/hooks-config.c:107
-msgid "_IAX2 protocol"
-msgstr "_Protocolo IAX2"
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:155
+msgid "Trigger on _IAX2 URL"
+msgstr "Evento desencadenado con una URL _IAX2"
 
-#: ../sflphone-gtk/src/config/hooks-config.c:113
-msgid "_SIP Header: "
-msgstr ""
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:160
+msgid "_Command to run: "
+msgstr "_Orden a ejecutar: "
 
-#: ../sflphone-gtk/src/config/hooks-config.c:120
-msgid "_Command: "
-msgstr ""
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:168
+msgid "Phone Number Rewriting"
+msgstr "Reescritura de número de teléfono"
+
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:178
+msgid "_Prefix dialed numbers with:"
+msgstr "_prefijar los números marcados con:"
+
+#: ../../sflphone-client-gnome/src/contacts/history.c:83
+#: ../../sflphone-client-gnome/src/contacts/searchbar.c:123
+msgid "Search history"
+msgstr "Historial de búsquedas"
 
-#, fuzzy
-#~ msgid "SFLphone 0.9.3"
-#~ msgstr "SFLphone 0.9.3"
+#: ../../sflphone-client-gnome/src/contacts/history.c:83
+#: ../../sflphone-client-gnome/src/contacts/searchbar.c:110
+msgid "Search contact"
+msgstr "_Buscar contacto"
 
-#~ msgid "Setup Accounts"
-#~ msgstr "Cuentas"
+#~ msgid "Registered to %s (%s)"
+#~ msgstr "Registrado en %s (%s)"
 
-#~ msgid "_STUN Server"
-#~ msgstr "_Servidor STUN"
+#~ msgid "%s account- %s             %s"
+#~ msgstr "%s cuenta- %s             %s"
diff --git a/sflphone-common/po/fr.po b/sflphone-common/po/fr.po
index 5fc0060c1a12b43699c9790dbdce8dd6e1913a36..e820d6547fc188eeacd4397ad2991f890521629c 100644
--- a/sflphone-common/po/fr.po
+++ b/sflphone-common/po/fr.po
@@ -9,7 +9,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: SFLphone 0.9.4\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-04-02 11:15-0400\n"
+"POT-Creation-Date: 2009-05-21 10:45-0400\n"
 "PO-Revision-Date: 2008-03-31 14:15\n"
 "Last-Translator: Emmanuel Milou <emmanuel.milou@savoirfairelinux.com>\n"
 "Language-Team: SavoirFaireLinux Inc <sflphoneteam@savoirfairelinux.com>\n"
@@ -18,63 +18,69 @@ msgstr ""
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=n>1;\n"
 
-#: ../sflphone-gtk/src/accountlist.c:158
+#: ../../sflphone-client-gnome/src/accountlist.c:169
 msgid "Registered"
 msgstr "Enregistré"
 
-#: ../sflphone-gtk/src/accountlist.c:161
+#: ../../sflphone-client-gnome/src/accountlist.c:172
 msgid "Not Registered"
 msgstr "Non Enregistré"
 
-#: ../sflphone-gtk/src/accountlist.c:164
+#: ../../sflphone-client-gnome/src/accountlist.c:175
 msgid "Trying..."
 msgstr "En cours..."
 
-#: ../sflphone-gtk/src/accountlist.c:167 ../sflphone-gtk/src/sflnotify.c:171
-#: ../sflphone-gtk/src/sflnotify.c:212
+#: ../../sflphone-client-gnome/src/accountlist.c:178
+#: ../../sflphone-client-gnome/src/sflnotify.c:176
+#: ../../sflphone-client-gnome/src/sflnotify.c:217
 msgid "Error"
 msgstr "Erreur"
 
-#: ../sflphone-gtk/src/accountlist.c:170
+#: ../../sflphone-client-gnome/src/accountlist.c:181
 msgid "Bad authentification"
 msgstr "Erreur d'authentification"
 
-#: ../sflphone-gtk/src/accountlist.c:173
+#: ../../sflphone-client-gnome/src/accountlist.c:184
 msgid "Network unreachable"
 msgstr "Réseau non trouvé"
 
-#: ../sflphone-gtk/src/accountlist.c:176
+#: ../../sflphone-client-gnome/src/accountlist.c:187
 msgid "Host unreachable"
 msgstr "Serveur introuvable"
 
-#: ../sflphone-gtk/src/accountlist.c:179
+#: ../../sflphone-client-gnome/src/accountlist.c:190
 msgid "Stun configuration error"
 msgstr "Erreur de configuration Stun"
 
-#: ../sflphone-gtk/src/accountlist.c:182
+#: ../../sflphone-client-gnome/src/accountlist.c:193
 msgid "Stun server invalid"
 msgstr "Serveur Stun invalide"
 
-#: ../sflphone-gtk/src/accountlist.c:185
+#: ../../sflphone-client-gnome/src/accountlist.c:196
 msgid "Invalid"
 msgstr "Non valide"
 
-#: ../sflphone-gtk/src/actions.c:55 ../sflphone-gtk/src/sflnotify.c:103
+#: ../../sflphone-client-gnome/src/actions.c:55
+#: ../../sflphone-client-gnome/src/sflnotify.c:108
 #, c-format
 msgid "%d voice mails"
 msgstr "%d messages vocaux"
 
-#: ../sflphone-gtk/src/actions.c:57
+#: ../../sflphone-client-gnome/src/actions.c:57
 #, c-format
 msgid "%d voice mail"
 msgstr "%d message vocal"
 
-#: ../sflphone-gtk/src/actions.c:81
+#: ../../sflphone-client-gnome/src/actions.c:81
 #, c-format
-msgid "%s account- %s"
-msgstr "compte %s- %s"
+msgid "Using %s (%s)"
+msgstr "Utilise %s (%s)"
 
-#: ../sflphone-gtk/src/actions.c:225
+#: ../../sflphone-client-gnome/src/actions.c:87
+msgid "No registered account"
+msgstr "Aucun compte enregistré"
+
+#: ../../sflphone-client-gnome/src/actions.c:229
 msgid ""
 "Unable to connect to the SFLphone server.\n"
 "Make sure the daemon is running."
@@ -82,12 +88,17 @@ msgstr ""
 "Impossible de se connecter au serveur SFLphone.\n"
 " Assurez-vous que le démon est lancé."
 
-#: ../sflphone-gtk/src/actions.c:764
-#, fuzzy, c-format
-msgid "%s account- %s             %s"
-msgstr "compte %s- %s"
+#: ../../sflphone-client-gnome/src/actions.c:787
+#, c-format
+msgid "IP call - %s"
+msgstr "Appel IP - %s"
+
+#: ../../sflphone-client-gnome/src/actions.c:790
+#, c-format
+msgid "Using %s (%s) - Codec: %s"
+msgstr "Utilise %s (%s) - Codec: %s"
 
-#: ../sflphone-gtk/src/actions.c:861
+#: ../../sflphone-client-gnome/src/actions.c:880
 #, c-format
 msgid ""
 "<b>Error: No audio codecs found.\n"
@@ -100,7 +111,7 @@ msgstr ""
 "</b> Les codecs audio SFL doivent être soit dans <i>%s</i> soit dans le "
 "répertoire <b>.sflphone</b> de votre répertoire racine( <i>%s</i> )"
 
-#: ../sflphone-gtk/src/assistant.c:31
+#: ../../sflphone-client-gnome/src/assistant.c:35
 #, c-format
 msgid ""
 "This assistant is now finished.\n"
@@ -110,642 +121,725 @@ msgid ""
 "Alias :    %s\n"
 "Server :   %s\n"
 "Username : %s\n"
-"Password : %s"
 msgstr ""
 "Cet assistant est maintenant terminé.\n"
-"\n"
 " Vous pouvez à tout moment vérifier votre état d'enregistrement ou modifier "
 "les paramètres de vos comptes dans la fenêtre Options/Comptes.\n"
 "\n"
 "Alias :    %s\n"
 "Serveur :   %s\n"
 "Nom d'usager : %s\n"
-"Mot de passe : %s"
 
-#: ../sflphone-gtk/src/assistant.c:154
+#: ../../sflphone-client-gnome/src/assistant.c:160
 msgid "SFLphone account configuration wizard"
 msgstr "Assistant de configuration de compte"
 
-#: ../sflphone-gtk/src/assistant.c:180
+#: ../../sflphone-client-gnome/src/assistant.c:186
 msgid "Welcome to SFLphone!"
 msgstr "Bienvenue dans SFLphone"
 
-#: ../sflphone-gtk/src/assistant.c:181
+#: ../../sflphone-client-gnome/src/assistant.c:187
 msgid "This installation wizard will help you configure an account."
 msgstr "Cet assistant va vous guider dans la configuration d'un compte. "
 
-#: ../sflphone-gtk/src/assistant.c:195
+#: ../../sflphone-client-gnome/src/assistant.c:201
 msgid "VoIP Protocols"
 msgstr "Protocoles VoIP"
 
-#: ../sflphone-gtk/src/assistant.c:195
+#: ../../sflphone-client-gnome/src/assistant.c:201
 msgid "Select an account type:"
 msgstr "Choisissez un type de compte:"
 
-#: ../sflphone-gtk/src/assistant.c:213
+#: ../../sflphone-client-gnome/src/assistant.c:219
 msgid "Account"
-msgstr "Comptes"
+msgstr "Compte"
 
-#: ../sflphone-gtk/src/assistant.c:213
+#: ../../sflphone-client-gnome/src/assistant.c:219
 msgid "Please select one of the following option:"
 msgstr "Veuillez remplir les champs suivants:"
 
-#: ../sflphone-gtk/src/assistant.c:215
+#: ../../sflphone-client-gnome/src/assistant.c:221
 msgid "Create a free SIP/IAX2 account on sflphone.org"
 msgstr "Créer un compte SIP/IAX2 gratuit sur sflphone.org"
 
-#: ../sflphone-gtk/src/assistant.c:217
+#: ../../sflphone-client-gnome/src/assistant.c:223
 msgid "Register an existing SIP or IAX2 account"
 msgstr "Enregistrer un compte SIP ou IAX2 existant"
 
-#: ../sflphone-gtk/src/assistant.c:230
+#: ../../sflphone-client-gnome/src/assistant.c:236
 msgid "SIP account configuration"
 msgstr "Configuration d'un compte SIP"
 
-#: ../sflphone-gtk/src/assistant.c:230 ../sflphone-gtk/src/assistant.c:305
+#: ../../sflphone-client-gnome/src/assistant.c:236
+#: ../../sflphone-client-gnome/src/assistant.c:332
 msgid "Please fill the following information:"
 msgstr "Veuillez remplir les champs suivants:"
 
-#: ../sflphone-gtk/src/assistant.c:238 ../sflphone-gtk/src/assistant.c:313
-#: ../sflphone-gtk/src/config/accountwindow.c:143
+#: ../../sflphone-client-gnome/src/assistant.c:244
+#: ../../sflphone-client-gnome/src/assistant.c:340
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:148
 msgid "_Alias"
 msgstr "A_lias"
 
-#: ../sflphone-gtk/src/assistant.c:246 ../sflphone-gtk/src/assistant.c:321
-#: ../sflphone-gtk/src/config/accountwindow.c:179
+#: ../../sflphone-client-gnome/src/assistant.c:252
+#: ../../sflphone-client-gnome/src/assistant.c:348
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:184
 msgid "_Host name"
 msgstr "_Serveur"
 
-#: ../sflphone-gtk/src/assistant.c:254 ../sflphone-gtk/src/assistant.c:329
-#: ../sflphone-gtk/src/config/accountwindow.c:187
+#: ../../sflphone-client-gnome/src/assistant.c:260
+#: ../../sflphone-client-gnome/src/assistant.c:356
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:192
 msgid "_User name"
 msgstr "Usa_ger"
 
-#: ../sflphone-gtk/src/assistant.c:264 ../sflphone-gtk/src/assistant.c:339
-#: ../sflphone-gtk/src/config/accountwindow.c:198
+#: ../../sflphone-client-gnome/src/assistant.c:276
+#: ../../sflphone-client-gnome/src/assistant.c:371
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:207
 msgid "_Password"
 msgstr "_Mot de passe"
 
-#: ../sflphone-gtk/src/assistant.c:282
+#: ../../sflphone-client-gnome/src/assistant.c:294
+#: ../../sflphone-client-gnome/src/assistant.c:387
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:223
+msgid "_Voicemail number"
+msgstr "_Boite vocale #"
+
+#: ../../sflphone-client-gnome/src/assistant.c:309
 msgid "Optional Email Address "
 msgstr "Courriel optionnel"
 
-#: ../sflphone-gtk/src/assistant.c:282
+#: ../../sflphone-client-gnome/src/assistant.c:309
 msgid "This email address will be use to send your voicemail messages"
 msgstr "Vos messages vocaux seront envoyés par courriel à cette adresse "
 
-#: ../sflphone-gtk/src/assistant.c:290
-#, fuzzy
+#: ../../sflphone-client-gnome/src/assistant.c:317
 msgid "_Email"
 msgstr "_Email"
 
-#: ../sflphone-gtk/src/assistant.c:305
+#: ../../sflphone-client-gnome/src/assistant.c:332
 msgid "IAX2 account configuration"
 msgstr "Configuration d'un compte IAX2"
 
-#: ../sflphone-gtk/src/assistant.c:360
-#: ../sflphone-gtk/src/config/configwindow.c:837
+#: ../../sflphone-client-gnome/src/assistant.c:405
+#: ../../sflphone-client-gnome/src/config/configwindow.c:863
 msgid "Network Address Translation"
 msgstr "Traduction d'adresse réseau (NAT)"
 
-#: ../sflphone-gtk/src/assistant.c:360
+#: ../../sflphone-client-gnome/src/assistant.c:405
 msgid "You should probably enable this if you are behind a firewall."
 msgstr ""
-"Vous devriez probablement activer cette option si \n"
-"vous vous trouvez derrière un pare-feu."
+"Vous devriez probablement activer cette option si vous vous trouvez derrière "
+"un pare-feu."
 
-#: ../sflphone-gtk/src/assistant.c:369
-#: ../sflphone-gtk/src/config/configwindow.c:499
+#: ../../sflphone-client-gnome/src/assistant.c:414
+#: ../../sflphone-client-gnome/src/config/configwindow.c:516
 msgid "E_nable STUN"
 msgstr "A_ctiver STUN"
 
-#: ../sflphone-gtk/src/assistant.c:376
+#: ../../sflphone-client-gnome/src/assistant.c:421
 msgid "_STUN server"
 msgstr "S_erveur STUN"
 
-#: ../sflphone-gtk/src/assistant.c:390
+#: ../../sflphone-client-gnome/src/assistant.c:435
 msgid "Account Registration"
 msgstr "Enregistrement du compte"
 
-#: ../sflphone-gtk/src/assistant.c:390
+#: ../../sflphone-client-gnome/src/assistant.c:435
 msgid "Congratulations!"
 msgstr "Félicitations!"
 
-#: ../sflphone-gtk/src/context-menu.c:296 ../sflphone-gtk/src/menus.c:308
-#: ../sflphone-gtk/src/menus.c:791
-msgid "_Pick up"
-msgstr "_Décrocher"
-
-#: ../sflphone-gtk/src/context-menu.c:308 ../sflphone-gtk/src/menus.c:318
-#: ../sflphone-gtk/src/menus.c:803
-msgid "_Hang up"
-msgstr "_Raccrocher"
-
-#: ../sflphone-gtk/src/context-menu.c:320 ../sflphone-gtk/src/menus.c:328
-#: ../sflphone-gtk/src/menus.c:815
-msgid "On _Hold"
-msgstr "_Mettre en attente"
-
-#: ../sflphone-gtk/src/context-menu.c:332 ../sflphone-gtk/src/menus.c:340
-#: ../sflphone-gtk/src/menus.c:827
-#, fuzzy
-msgid "_Record"
-msgstr "Enregistrement"
-
-#: ../sflphone-gtk/src/errors.c:28
+#: ../../sflphone-client-gnome/src/errors.c:28
 msgid ""
-"<b>ALSA notification</b>\n"
+"ALSA notification\n"
 "\n"
 "Error while opening playback device"
 msgstr ""
-"<b>Notification ALSA</b>\n"
+"Notification ALSA\n"
 "\n"
 "Erreur lors de l'ouverture du périphérique de sortie"
 
-#: ../sflphone-gtk/src/errors.c:31
+#: ../../sflphone-client-gnome/src/errors.c:31
 msgid ""
-"<b>ALSA notification</b>\n"
+"ALSA notification\n"
 "\n"
 "Error while opening capture device"
 msgstr ""
-"<b>Notification ALSA</b>\n"
+"Notification ALSA\n"
 "\n"
 "Erreur lors de l'ouverture du périphérique d'entrée"
 
-#: ../sflphone-gtk/src/errors.c:34
+#: ../../sflphone-client-gnome/src/errors.c:34
 msgid ""
-"<b>Pulseaudio notification</b>\n"
+"Pulseaudio notification\n"
 "\n"
 "Pulseaudio is not running"
 msgstr ""
-"<b>Notification Pulseaudio</b>\n"
+"Notification Pulseaudio\n"
 "\n"
 "Pulseaudio n'est pas lancé"
 
-#: ../sflphone-gtk/src/mainwindow.c:70
+#: ../../sflphone-client-gnome/src/mainwindow.c:70
 msgid "There is one call in progress."
 msgstr "Vous avez un appel en cours."
 
-#: ../sflphone-gtk/src/mainwindow.c:74
+#: ../../sflphone-client-gnome/src/mainwindow.c:74
 msgid "There are calls in progress."
 msgstr "Vous avez des appels en cours."
 
-#: ../sflphone-gtk/src/mainwindow.c:83
+#: ../../sflphone-client-gnome/src/mainwindow.c:83
 msgid "Do you still want to quit?"
 msgstr "Voulez-vous quitter?"
 
-#: ../sflphone-gtk/src/menus.c:131
+#: ../../sflphone-client-gnome/src/mainwindow.c:296
+msgid "SFLphone Error"
+msgstr "Erreur SFLphone"
+
+#: ../../sflphone-client-gnome/src/menus.c:134
 msgid "SFLphone is a VoIP client compatible with SIP and IAX2 protocols."
 msgstr ""
 "SFLphone est un client VoIP compatible avec les protocoles SIP et IAX2."
 
-#: ../sflphone-gtk/src/menus.c:134
+#: ../../sflphone-client-gnome/src/menus.c:137
 msgid "About SFLphone"
 msgstr "A propos de SFLphone"
 
-#: ../sflphone-gtk/src/menus.c:157
+#: ../../sflphone-client-gnome/src/menus.c:161
 msgid "_Help"
 msgstr "A_ide"
 
-#: ../sflphone-gtk/src/menus.c:296 ../sflphone-gtk/src/menus.c:949
+#: ../../sflphone-client-gnome/src/menus.c:300
+#: ../../sflphone-client-gnome/src/menus.c:971
 msgid "_New call"
 msgstr "_Nouvel appel"
 
-#: ../sflphone-gtk/src/menus.c:354
-msgid "_Account Assistant"
-msgstr "_Assistant SFLphone"
+#: ../../sflphone-client-gnome/src/menus.c:312
+#: ../../sflphone-client-gnome/src/menus.c:803
+msgid "_Pick up"
+msgstr "_Décrocher"
+
+#: ../../sflphone-client-gnome/src/menus.c:322
+#: ../../sflphone-client-gnome/src/menus.c:815
+msgid "_Hang up"
+msgstr "_Raccrocher"
+
+#: ../../sflphone-client-gnome/src/menus.c:332
+#: ../../sflphone-client-gnome/src/menus.c:827
+msgid "On _Hold"
+msgstr "_Mettre en attente"
+
+#: ../../sflphone-client-gnome/src/menus.c:344
+#: ../../sflphone-client-gnome/src/menus.c:839
+msgid "_Record"
+msgstr "Enregistrer"
+
+#: ../../sflphone-client-gnome/src/menus.c:358
+msgid "_Account creation wizard"
+msgstr "Assistant de création de compte"
 
-#: ../sflphone-gtk/src/menus.c:384
+#: ../../sflphone-client-gnome/src/menus.c:388
 msgid "_Call"
 msgstr "_Actions"
 
-#: ../sflphone-gtk/src/menus.c:557
+#: ../../sflphone-client-gnome/src/menus.c:561
 msgid "_Clear history"
 msgstr "Effacer l'historique"
 
-#: ../sflphone-gtk/src/menus.c:569
+#: ../../sflphone-client-gnome/src/menus.c:573
 msgid "_Accounts"
 msgstr "Co_mptes"
 
-#: ../sflphone-gtk/src/menus.c:584
+#: ../../sflphone-client-gnome/src/menus.c:588
 msgid "_Edit"
 msgstr "_Options"
 
-#: ../sflphone-gtk/src/menus.c:644
+#: ../../sflphone-client-gnome/src/menus.c:649
 msgid "_Dialpad"
 msgstr "_Clavier"
 
-#: ../sflphone-gtk/src/menus.c:656
+#: ../../sflphone-client-gnome/src/menus.c:661
 msgid "_Volume controls"
 msgstr "_Contrôle du volume"
 
-#: ../sflphone-gtk/src/menus.c:665
-#, fuzzy
-msgid "_Search contact"
-msgstr "Rechercher un contact"
-
-#: ../sflphone-gtk/src/menus.c:673
+#: ../../sflphone-client-gnome/src/menus.c:679
 msgid "_View"
 msgstr "A_ffichage"
 
-#: ../sflphone-gtk/src/menus.c:885
+#: ../../sflphone-client-gnome/src/menus.c:899
 msgid "_Call back"
 msgstr "_Rappeler"
 
-#: ../sflphone-gtk/src/sflnotify.c:34 ../sflphone-gtk/src/sflnotify.c:100
+#: ../../sflphone-client-gnome/src/menus.c:1082
+msgid "Edit phone"
+msgstr "Éditer numéro"
+
+#: ../../sflphone-client-gnome/src/menus.c:1093
+msgid "Edit the phone number before making a call"
+msgstr "Éditer le numéro de téléphone avant d'appeler"
+
+#: ../../sflphone-client-gnome/src/sflnotify.c:38
+#: ../../sflphone-client-gnome/src/sflnotify.c:105
 #, c-format
 msgid "%s account: %s"
 msgstr "Compte %s: %s"
 
-#: ../sflphone-gtk/src/sflnotify.c:37
+#: ../../sflphone-client-gnome/src/sflnotify.c:42
 #, c-format
 msgid "<i>From:</i> %s"
 msgstr "<i>De:</i> %s"
 
-#: ../sflphone-gtk/src/sflnotify.c:52
+#: ../../sflphone-client-gnome/src/sflnotify.c:57
 msgid "Accept"
 msgstr "Accepter"
 
-#: ../sflphone-gtk/src/sflnotify.c:53
+#: ../../sflphone-client-gnome/src/sflnotify.c:58
 msgid "Refuse"
 msgstr "Refuser"
 
-#: ../sflphone-gtk/src/sflnotify.c:54 ../sflphone-gtk/src/sflnotify.c:117
-#: ../sflphone-gtk/src/sflnotify.c:154
+#: ../../sflphone-client-gnome/src/sflnotify.c:59
+#: ../../sflphone-client-gnome/src/sflnotify.c:122
+#: ../../sflphone-client-gnome/src/sflnotify.c:159
 msgid "Ignore"
 msgstr "Ignorer"
 
-#: ../sflphone-gtk/src/sflnotify.c:136
+#: ../../sflphone-client-gnome/src/sflnotify.c:141
 #, c-format
 msgid "Calling with %s account <i>%s</i>"
 msgstr "Appel avec le compte %s <i>%s</i>"
 
-#: ../sflphone-gtk/src/sflnotify.c:140
+#: ../../sflphone-client-gnome/src/sflnotify.c:145
 msgid "Current account"
 msgstr "Compte courant"
 
-#: ../sflphone-gtk/src/sflnotify.c:169
+#: ../../sflphone-client-gnome/src/sflnotify.c:174
 msgid "You haven't setup any accounts"
 msgstr "Vous n'avez aucun compte configuré"
 
-#: ../sflphone-gtk/src/sflnotify.c:209
+#: ../../sflphone-client-gnome/src/sflnotify.c:214
 msgid "You have no registered accounts"
 msgstr "Vous n'avez aucun compte enregistré"
 
-#: ../sflphone-gtk/src/sliders.c:161
+#: ../../sflphone-client-gnome/src/sliders.c:161
 msgid "Speakers volume"
 msgstr "Volume des hauts-parleurs"
 
-#: ../sflphone-gtk/src/sliders.c:163
+#: ../../sflphone-client-gnome/src/sliders.c:163
 msgid "Mic volume"
 msgstr "Volume du micro"
 
-#: ../sflphone-gtk/src/statusicon.c:91
+#: ../../sflphone-client-gnome/src/statusicon.c:91
 msgid "_Show main window"
 msgstr "_Afficher la fenêtre principale"
 
-#: ../sflphone-gtk/src/statusicon.c:124
+#: ../../sflphone-client-gnome/src/statusicon.c:124
 #, c-format
-msgid "SFLphone - %i accounts registered"
-msgstr "SFLphone - %i compte enregistré"
+msgid "SFLphone - %i accounts configured"
+msgstr "SFLphone - %i comptes configurés"
 
-#: ../sflphone-gtk/src/timestamp.c:46
+#: ../../sflphone-client-gnome/src/timestamp.c:46
 msgid "<small>Missed call</small>"
 msgstr "<small>Appel manqué</small>"
 
-#: ../sflphone-gtk/src/timestamp.c:64
+#: ../../sflphone-client-gnome/src/timestamp.c:64
 #, c-format
 msgid "<small>Duration:</small> %s"
 msgstr "<small>Durée:</small> %s"
 
-#: ../sflphone-gtk/src/toolbar.c:49
+#: ../../sflphone-client-gnome/src/toolbar.c:50
 #, c-format
 msgid "\"Voicemail\" <%s>"
 msgstr "\"Boite vocale\" <%s>"
 
-#: ../sflphone-gtk/src/toolbar.c:175 ../sflphone-gtk/src/toolbar.c:177
+#: ../../sflphone-client-gnome/src/toolbar.c:176
+#: ../../sflphone-client-gnome/src/toolbar.c:178
 msgid "Place a call"
 msgstr "Appeler"
 
-#: ../sflphone-gtk/src/toolbar.c:184 ../sflphone-gtk/src/toolbar.c:186
+#: ../../sflphone-client-gnome/src/toolbar.c:185
+#: ../../sflphone-client-gnome/src/toolbar.c:187
 msgid "Pick up"
 msgstr "Décrocher"
 
-#: ../sflphone-gtk/src/toolbar.c:194 ../sflphone-gtk/src/toolbar.c:196
+#: ../../sflphone-client-gnome/src/toolbar.c:195
+#: ../../sflphone-client-gnome/src/toolbar.c:197
 msgid "Hang up"
 msgstr "Raccrocher"
 
-#: ../sflphone-gtk/src/toolbar.c:204 ../sflphone-gtk/src/toolbar.c:206
+#: ../../sflphone-client-gnome/src/toolbar.c:205
+#: ../../sflphone-client-gnome/src/toolbar.c:207
 msgid "Off Hold"
 msgstr "Reprendre"
 
-#: ../sflphone-gtk/src/toolbar.c:215 ../sflphone-gtk/src/toolbar.c:217
+#: ../../sflphone-client-gnome/src/toolbar.c:216
+#: ../../sflphone-client-gnome/src/toolbar.c:218
 msgid "On Hold"
 msgstr "Mettre en attente"
 
-#: ../sflphone-gtk/src/toolbar.c:228 ../sflphone-gtk/src/toolbar.c:230
+#: ../../sflphone-client-gnome/src/toolbar.c:229
+#: ../../sflphone-client-gnome/src/toolbar.c:231
 msgid "Transfer"
 msgstr "Transférer"
 
-#: ../sflphone-gtk/src/toolbar.c:240 ../sflphone-gtk/src/toolbar.c:242
+#: ../../sflphone-client-gnome/src/toolbar.c:241
+#: ../../sflphone-client-gnome/src/toolbar.c:243
 msgid "History"
 msgstr "Historique"
 
-#: ../sflphone-gtk/src/toolbar.c:251 ../sflphone-gtk/src/toolbar.c:253
+#: ../../sflphone-client-gnome/src/toolbar.c:252
+#: ../../sflphone-client-gnome/src/toolbar.c:254
 msgid "Address book"
 msgstr "Carnet d'adresse"
 
-#: ../sflphone-gtk/src/toolbar.c:258 ../sflphone-gtk/src/toolbar.c:262
+#: ../../sflphone-client-gnome/src/toolbar.c:260
+#: ../../sflphone-client-gnome/src/toolbar.c:264
 msgid "Voicemail"
 msgstr "Boite vocale"
 
-#: ../sflphone-gtk/src/toolbar.c:270
+#: ../../sflphone-client-gnome/src/toolbar.c:272
 msgid "Record a call"
 msgstr "Enregistrer un appel"
 
-#: ../sflphone-gtk/src/contacts/history.c:75
-#: ../sflphone-gtk/src/contacts/searchbar.c:39
-#: ../sflphone-gtk/src/contacts/searchbar.c:65
-msgid "Search"
-msgstr "Recherche"
-
-#: ../sflphone-gtk/src/config/accountwindow.c:103
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:108
 msgid "Account settings"
 msgstr "Configuration des comptes"
 
-#: ../sflphone-gtk/src/config/accountwindow.c:115
-msgid "Account parameters"
-msgstr "Paramètres du compte"
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:120
+msgid "Account Parameters"
+msgstr "Paramètres du Compte"
 
-#: ../sflphone-gtk/src/config/accountwindow.c:137
-msgid "_Enabled"
-msgstr "_Activé"
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:142
+msgid "_Enable this account"
+msgstr "Activer ce compte"
 
-#: ../sflphone-gtk/src/config/accountwindow.c:151
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:156
 msgid "_Protocol"
 msgstr "_Protocole"
 
-#: ../sflphone-gtk/src/config/accountwindow.c:169
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:174
 msgid "Unknown"
 msgstr "Inconnu"
 
-#: ../sflphone-gtk/src/config/accountwindow.c:209
-msgid "_Voicemail box #"
-msgstr "_Boite vocale #"
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:265
+#: ../../sflphone-client-gnome/src/config/configwindow.c:732
+msgid "General"
+msgstr "Général"
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:105
-msgid "Search Parameters"
-msgstr "Paramètres de recherche"
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:276
+msgid "_Use Evolution address books"
+msgstr "Utiliser les carnets d'adresse d'Évolution"
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:116
-msgid "Maximum result number for a request: "
-msgstr "Nombre maximum d'appels"
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:283
+msgid "Download limit:"
+msgstr "Limite de téléchargement:"
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:127
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:294
 msgid "_Display contact photo if available"
 msgstr "Afficher la photo si disponible"
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:132
-msgid "Search for and display: "
-msgstr "Chercher et afficher: "
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:301
+msgid "Fields"
+msgstr "Champs"
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:135
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:311
+msgid "Use the following fields from Evolution's address books:"
+msgstr "Utiliser les champs suivants des carnets d'adresse d'Évolution"
+
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:316
 msgid "_Business phone"
 msgstr "Tél du bureau"
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:140
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:321
 msgid "_Home phone"
 msgstr "Tél du domicile"
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:145
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:326
 msgid "_Mobile phone"
 msgstr "Tél portable"
 
-#: ../sflphone-gtk/src/config/audioconf.c:154
-#, c-format
-msgid "audio device index for output = %d\n"
-msgstr "index du device audio de sortie = %d\n"
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:333
+msgid "Address Books"
+msgstr "Carnets d'adresse"
 
-#: ../sflphone-gtk/src/config/audioconf.c:562
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:343
+msgid "Select which Evolution address books to use:"
+msgstr "Sélectionner quels carnets d'adresse d'Évolution utiliser:"
+
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:377
+#: ../../sflphone-client-gnome/src/config/audioconf.c:574
 msgid "Name"
 msgstr "Nom"
 
-#: ../sflphone-gtk/src/config/audioconf.c:567
+#: ../../sflphone-client-gnome/src/config/audioconf.c:155
+#, c-format
+msgid "audio device index for output = %d"
+msgstr "index du device audio de sortie = %d"
+
+#: ../../sflphone-client-gnome/src/config/audioconf.c:579
 msgid "Frequency"
 msgstr "Fréquence"
 
-#: ../sflphone-gtk/src/config/audioconf.c:572
+#: ../../sflphone-client-gnome/src/config/audioconf.c:584
 msgid "Bitrate"
 msgstr "Bitrate"
 
-#: ../sflphone-gtk/src/config/audioconf.c:577
+#: ../../sflphone-client-gnome/src/config/audioconf.c:589
 msgid "Bandwidth"
 msgstr "Bande passante"
 
-#: ../sflphone-gtk/src/config/audioconf.c:637
+#: ../../sflphone-client-gnome/src/config/audioconf.c:652
 msgid "Pulseaudio"
 msgstr ""
 
-#: ../sflphone-gtk/src/config/audioconf.c:640
+#: ../../sflphone-client-gnome/src/config/audioconf.c:655
 msgid "ALSA"
 msgstr ""
 
-#: ../sflphone-gtk/src/config/audioconf.c:666
+#: ../../sflphone-client-gnome/src/config/audioconf.c:681
 msgid "ALSA plugin"
 msgstr "Greffon ALSA"
 
-#: ../sflphone-gtk/src/config/audioconf.c:688
+#: ../../sflphone-client-gnome/src/config/audioconf.c:703
 msgid "Output"
 msgstr "Sortie"
 
-#: ../sflphone-gtk/src/config/audioconf.c:710
+#: ../../sflphone-client-gnome/src/config/audioconf.c:725
 msgid "Input"
 msgstr "Entrée"
 
-#: ../sflphone-gtk/src/config/audioconf.c:743
+#: ../../sflphone-client-gnome/src/config/audioconf.c:758
 msgid "_Enable ringtones"
 msgstr "_Activer les sonneries"
 
-#: ../sflphone-gtk/src/config/audioconf.c:748
+#: ../../sflphone-client-gnome/src/config/audioconf.c:764
 msgid "Choose a ringtone"
 msgstr "Sélectionner une sonnerie"
 
-#: ../sflphone-gtk/src/config/audioconf.c:753
+#: ../../sflphone-client-gnome/src/config/audioconf.c:769
 msgid "Audio Files"
 msgstr "Fichier Audio"
 
-#: ../sflphone-gtk/src/config/audioconf.c:770
-msgid "_Activate silence detection"
-msgstr "Activer la détection de silence"
+#: ../../sflphone-client-gnome/src/config/audioconf.c:788
+msgid "_Voice Activity Detection"
+msgstr "Détection de l'activité de la voix"
+
+#: ../../sflphone-client-gnome/src/config/audioconf.c:798
+msgid "_Noise Reduction (Narrow-Band Companding)"
+msgstr "Réduction du bruit (Compresseur extenseur LBR)"
 
-#: ../sflphone-gtk/src/config/audioconf.c:798
+#: ../../sflphone-client-gnome/src/config/audioconf.c:826
 msgid "Sound Manager"
 msgstr "Interface Audio"
 
-#: ../sflphone-gtk/src/config/audioconf.c:805
+#: ../../sflphone-client-gnome/src/config/audioconf.c:833
 msgid "ALSA configuration"
 msgstr "Configuration ALSA"
 
-#: ../sflphone-gtk/src/config/audioconf.c:815
+#: ../../sflphone-client-gnome/src/config/audioconf.c:850
 msgid "Codecs"
 msgstr ""
 
-#: ../sflphone-gtk/src/config/audioconf.c:823
-msgid "Noise reduction"
-msgstr "Réduction du bruit"
-
-#: ../sflphone-gtk/src/config/audioconf.c:830
+#: ../../sflphone-client-gnome/src/config/audioconf.c:873
 msgid "Ringtones"
-msgstr "_Activer les sonneries"
+msgstr "Sonneries"
 
-#: ../sflphone-gtk/src/config/configwindow.c:385
+#: ../../sflphone-client-gnome/src/config/configwindow.c:402
 msgid "Protocol"
 msgstr "Protocole"
 
-#: ../sflphone-gtk/src/config/configwindow.c:392
+#: ../../sflphone-client-gnome/src/config/configwindow.c:409
 msgid "Status"
 msgstr "Statut"
 
-#: ../sflphone-gtk/src/config/configwindow.c:495
+#: ../../sflphone-client-gnome/src/config/configwindow.c:512
 msgid "Stun parameters will apply to each SIP account created."
 msgstr "Les paramètres STUN sont appliqués à tous les comptes SIP créés"
 
-#: ../sflphone-gtk/src/config/configwindow.c:503
+#: ../../sflphone-client-gnome/src/config/configwindow.c:520
 msgid "Enable it if you are behind a firewall"
 msgstr "À activer si vous êtes derrière un pare-feu, puis redémarrez SFLphone"
 
-#: ../sflphone-gtk/src/config/configwindow.c:511
+#: ../../sflphone-client-gnome/src/config/configwindow.c:528
 msgid "Format: name.server:port"
 msgstr "Format: nom.serveur:port"
 
-#: ../sflphone-gtk/src/config/configwindow.c:561
-msgid "Desktop Notification"
-msgstr "Notifications du bureau"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:579
+msgid "Desktop Notifications"
+msgstr "Notifications de Bureau"
 
-#: ../sflphone-gtk/src/config/configwindow.c:569
-msgid "_Enable"
-msgstr "_Activer"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:588
+msgid "_Enable notifications"
+msgstr "_Activer les notifications"
 
-#: ../sflphone-gtk/src/config/configwindow.c:574
-msgid "_Notify voice mails"
-msgstr "_Notifier les messages vocaux"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:594
+msgid "Enable voicemail _notifications"
+msgstr "Activer les notifications de boîte vocale"
 
-#: ../sflphone-gtk/src/config/configwindow.c:580
+#: ../../sflphone-client-gnome/src/config/configwindow.c:605
 msgid "System Tray Icon"
 msgstr "Icône dans la barre des tâches"
 
-#: ../sflphone-gtk/src/config/configwindow.c:588
+#: ../../sflphone-client-gnome/src/config/configwindow.c:613
 msgid "_Popup main window on incoming call"
 msgstr "_Faire apparaître la fenêtre principale lors d'appel entrant"
 
-#: ../sflphone-gtk/src/config/configwindow.c:593
+#: ../../sflphone-client-gnome/src/config/configwindow.c:618
 msgid "Ne_ver popup main window"
 msgstr "Ne _jamais afficher la fenêtre principale"
 
-#: ../sflphone-gtk/src/config/configwindow.c:597
-msgid "_Start hidden"
-msgstr "_Démarrer caché"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:622
+msgid "Hide SFLphone window on _startup"
+msgstr "Cacher la fenêtre de SFLphone au démarrage"
 
-#: ../sflphone-gtk/src/config/configwindow.c:603
+#: ../../sflphone-client-gnome/src/config/configwindow.c:628
 msgid "Calls History"
 msgstr "Historique des appels"
 
-#: ../sflphone-gtk/src/config/configwindow.c:611
-msgid "_Maximum number of calls"
-msgstr "N_ombre maximum d'appels"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:636
+msgid "_History size limit"
+msgstr "_Taille limite de l'historique"
 
-#: ../sflphone-gtk/src/config/configwindow.c:627
+#: ../../sflphone-client-gnome/src/config/configwindow.c:653
 msgid "PulseAudio sound server"
 msgstr "Serveur de son PulseAudio"
 
-#: ../sflphone-gtk/src/config/configwindow.c:635
-msgid "_Control running applications volume"
-msgstr "_Autoriser à modifier le volume des autres applications"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:661
+msgid "Mute other applications during a _call"
+msgstr "Éteindre le son des autres applications lors d'un appel"
 
-#: ../sflphone-gtk/src/config/configwindow.c:648
+#: ../../sflphone-client-gnome/src/config/configwindow.c:674
 msgid "SIP Port"
 msgstr "Port SIP"
 
-#: ../sflphone-gtk/src/config/configwindow.c:661
+#: ../../sflphone-client-gnome/src/config/configwindow.c:687
 msgid "Port:"
 msgstr ""
 
-#: ../sflphone-gtk/src/config/configwindow.c:706
-msgid "General"
-msgstr "Général"
-
-#: ../sflphone-gtk/src/config/configwindow.c:717
-msgid "_Destination folder"
-msgstr "_Dossier de destination"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:742
+msgid "_Recordings folder"
+msgstr "Dossier pour les enregistrements"
 
-#: ../sflphone-gtk/src/config/configwindow.c:723
+#: ../../sflphone-client-gnome/src/config/configwindow.c:748
 msgid "Select a folder"
 msgstr "Choisissez un dossier"
 
-#: ../sflphone-gtk/src/config/configwindow.c:748
+#: ../../sflphone-client-gnome/src/config/configwindow.c:773
 msgid "Preferences"
 msgstr "Préférences"
 
-#: ../sflphone-gtk/src/config/configwindow.c:768
+#: ../../sflphone-client-gnome/src/config/configwindow.c:793
 msgid "General Settings"
 msgstr "Préférences"
 
-#: ../sflphone-gtk/src/config/configwindow.c:773
+#: ../../sflphone-client-gnome/src/config/configwindow.c:798
 msgid "Audio Settings"
 msgstr "Paramètres Audio"
 
-#: ../sflphone-gtk/src/config/configwindow.c:778
-msgid "Record"
-msgstr "Enregistrement"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:803
+msgid "Recordings"
+msgstr "Enregistrements"
 
-#: ../sflphone-gtk/src/config/configwindow.c:783
+#: ../../sflphone-client-gnome/src/config/configwindow.c:808
 msgid "Address Book"
 msgstr "Carnet d'adresse"
 
-#: ../sflphone-gtk/src/config/configwindow.c:788
+#: ../../sflphone-client-gnome/src/config/configwindow.c:813
 msgid "Hooks"
 msgstr "Ancrage"
 
-#: ../sflphone-gtk/src/config/configwindow.c:814
+#: ../../sflphone-client-gnome/src/config/configwindow.c:840
 msgid "Accounts"
 msgstr "Comptes"
 
-#: ../sflphone-gtk/src/config/configwindow.c:826
-msgid "Accounts previously setup"
-msgstr "Liste des comptes existants"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:852
+msgid "Configured Accounts"
+msgstr "Comptes Configurés"
+
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:130
+msgid "URL Passing"
+msgstr "Passage d'URL"
+
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:140
+#, c-format
+msgid ""
+"SFLphone can run custom commands if incoming calls come with an URL "
+"attached.\n"
+"In this case, %s will be replaced with the passed URL."
+msgstr ""
+"SFLphone peut exécuter des commandes lors d'appels entrants qui ont un URL "
+"associé.\n"
+"Dans ce cas, %s sera remplacé par l'URL en question."
+
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:143
+msgid "Trigger on specific _SIP header"
+msgstr "Déclencher sur un entête _SIP spécifique"
+
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:155
+msgid "Trigger on _IAX2 URL"
+msgstr "Déclencher en _IAX2"
+
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:160
+msgid "_Command to run: "
+msgstr "Commande à exécuter: "
+
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:168
+msgid "Phone Number Rewriting"
+msgstr "Rééecriture du numéro"
+
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:178
+msgid "_Prefix dialed numbers with:"
+msgstr "Préfixer les numéros composés par:"
+
+#: ../../sflphone-client-gnome/src/contacts/history.c:83
+#: ../../sflphone-client-gnome/src/contacts/searchbar.c:123
+msgid "Search history"
+msgstr "Rechercher"
+
+#: ../../sflphone-client-gnome/src/contacts/history.c:83
+#: ../../sflphone-client-gnome/src/contacts/searchbar.c:110
+msgid "Search contact"
+msgstr "Rechercher un contact"
+
+#~ msgid "Registered to %s (%s)"
+#~ msgstr "Connecté avec %s (%s)"
+
+#~ msgid "%s account- %s             %s"
+#~ msgstr "compte %s- %s             %s"
+
+#~ msgid "Books"
+#~ msgstr "Carnets d'adresse"
+
+#~ msgid "_Enable"
+#~ msgstr "_Activer"
+
+#~ msgid "_Notify voice mails"
+#~ msgstr "_Notifier les messages vocaux"
 
-#: ../sflphone-gtk/src/config/hooks-config.c:92
-msgid "URL argument"
-msgstr "Argument URL"
+#~ msgid "_Start hidden"
+#~ msgstr "_Démarrer caché"
 
-#: ../sflphone-gtk/src/config/hooks-config.c:102
-msgid "_SIP protocol"
-msgstr "_Protocole SIP"
+#~ msgid "_Maximum number of calls"
+#~ msgstr "N_ombre maximum d'appels"
 
-#: ../sflphone-gtk/src/config/hooks-config.c:107
-msgid "_IAX2 protocol"
-msgstr "_Protocole IAX2"
+#~ msgid "_Control running applications volume"
+#~ msgstr "_Autoriser à modifier le volume des autres applications"
 
-#: ../sflphone-gtk/src/config/hooks-config.c:113
-msgid "_SIP Header: "
-msgstr "En-tête SIP: "
+#~ msgid "Account previously setup"
+#~ msgstr "Liste des comptes existants"
 
-#: ../sflphone-gtk/src/config/hooks-config.c:120
-msgid "_Command: "
-msgstr "Commande"
+#~ msgid "URL argument"
+#~ msgstr "Argument URL"
 
-#, fuzzy
-#~ msgid "SFLphone 0.9.4"
-#~ msgstr "SFLphone 0.9.4"
+#~ msgid "_SIP protocol"
+#~ msgstr "_Protocole SIP"
 
-#~ msgid "Setup Accounts"
-#~ msgstr "Configurer les comptes"
+#~ msgid "_SIP Header: "
+#~ msgstr "En-tête SIP: "
 
-#~ msgid "_STUN Server"
-#~ msgstr "S_erveur STUN"
+#~ msgid "_IAX2 protocol"
+#~ msgstr "_Protocole IAX2"
 
-#~ msgid "Apply"
-#~ msgstr "Appliquer"
+#~ msgid "_Add phone number prefix"
+#~ msgstr "Ajouter un préfixe au numéro"
 
-#~ msgid "History empty"
-#~ msgstr "L'historique est vide"
+#~ msgid "_Prepend: "
+#~ msgstr "Préfixe: "
diff --git a/sflphone-common/po/ru.po b/sflphone-common/po/ru.po
index 43f24e97e383cffcbcc8ca5302e8ef0d908da92b..32edc9fd5bffff08ed0407437e881a9ac5195f87 100644
--- a/sflphone-common/po/ru.po
+++ b/sflphone-common/po/ru.po
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: SFLphone 0.9.4\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-04-02 11:15-0400\n"
+"POT-Creation-Date: 2009-05-21 10:45-0400\n"
 "PO-Revision-Date: 2009-01-08 15:19 GMT-5\n"
 "Last-Translator: HUSSEIN ABDALLAH <hussein.abdallah@savoirfairelinux.com>\n"
 "Language-Team:  Savoir-Faire Linux Inc <sflphoneteam@savoirfairelinux.com>\n"
@@ -16,63 +16,70 @@ msgstr ""
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: ../sflphone-gtk/src/accountlist.c:158
+#: ../../sflphone-client-gnome/src/accountlist.c:169
 msgid "Registered"
 msgstr "Зарегистрирован"
 
-#: ../sflphone-gtk/src/accountlist.c:161
+#: ../../sflphone-client-gnome/src/accountlist.c:172
 msgid "Not Registered"
 msgstr "Не зарегистрирован"
 
-#: ../sflphone-gtk/src/accountlist.c:164
+#: ../../sflphone-client-gnome/src/accountlist.c:175
 msgid "Trying..."
 msgstr "Пробует подключиться..."
 
-#: ../sflphone-gtk/src/accountlist.c:167 ../sflphone-gtk/src/sflnotify.c:171
-#: ../sflphone-gtk/src/sflnotify.c:212
+#: ../../sflphone-client-gnome/src/accountlist.c:178
+#: ../../sflphone-client-gnome/src/sflnotify.c:176
+#: ../../sflphone-client-gnome/src/sflnotify.c:217
 msgid "Error"
 msgstr "Ошибка"
 
-#: ../sflphone-gtk/src/accountlist.c:170
+#: ../../sflphone-client-gnome/src/accountlist.c:181
 msgid "Bad authentification"
 msgstr "Неправильная идентификация"
 
-#: ../sflphone-gtk/src/accountlist.c:173
+#: ../../sflphone-client-gnome/src/accountlist.c:184
 msgid "Network unreachable"
 msgstr "Сеть недоступна"
 
-#: ../sflphone-gtk/src/accountlist.c:176
+#: ../../sflphone-client-gnome/src/accountlist.c:187
 msgid "Host unreachable"
 msgstr "Хост недоступен"
 
-#: ../sflphone-gtk/src/accountlist.c:179
+#: ../../sflphone-client-gnome/src/accountlist.c:190
 msgid "Stun configuration error"
 msgstr "Ошибка настройки Stun"
 
-#: ../sflphone-gtk/src/accountlist.c:182
+#: ../../sflphone-client-gnome/src/accountlist.c:193
 msgid "Stun server invalid"
 msgstr "Недействительный Stun-сервер"
 
-#: ../sflphone-gtk/src/accountlist.c:185
+#: ../../sflphone-client-gnome/src/accountlist.c:196
 msgid "Invalid"
 msgstr "Недействительный"
 
-#: ../sflphone-gtk/src/actions.c:55 ../sflphone-gtk/src/sflnotify.c:103
+#: ../../sflphone-client-gnome/src/actions.c:55
+#: ../../sflphone-client-gnome/src/sflnotify.c:108
 #, c-format
 msgid "%d voice mails"
 msgstr "%d речевые сообщения"
 
-#: ../sflphone-gtk/src/actions.c:57
+#: ../../sflphone-client-gnome/src/actions.c:57
 #, c-format
 msgid "%d voice mail"
 msgstr "%d речевое сообщение"
 
-#: ../sflphone-gtk/src/actions.c:81
+#: ../../sflphone-client-gnome/src/actions.c:81
 #, c-format
-msgid "%s account- %s"
-msgstr "%s аккаунт- %s"
+msgid "Using %s (%s)"
+msgstr ""
 
-#: ../sflphone-gtk/src/actions.c:225
+#: ../../sflphone-client-gnome/src/actions.c:87
+#, fuzzy
+msgid "No registered account"
+msgstr "У вас нет зарегистрированных аккаунтов"
+
+#: ../../sflphone-client-gnome/src/actions.c:229
 msgid ""
 "Unable to connect to the SFLphone server.\n"
 "Make sure the daemon is running."
@@ -80,12 +87,17 @@ msgstr ""
 "Невозможно подключиться к SFLphone-серверу.\n"
 "Проверьте если демон работает."
 
-#: ../sflphone-gtk/src/actions.c:764
-#, fuzzy, c-format
-msgid "%s account- %s             %s"
-msgstr "%s аккаунт- %s"
+#: ../../sflphone-client-gnome/src/actions.c:787
+#, c-format
+msgid "IP call - %s"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/actions.c:790
+#, c-format
+msgid "Using %s (%s) - Codec: %s"
+msgstr ""
 
-#: ../sflphone-gtk/src/actions.c:861
+#: ../../sflphone-client-gnome/src/actions.c:880
 #, c-format
 msgid ""
 "<b>Error: No audio codecs found.\n"
@@ -98,7 +110,7 @@ msgstr ""
 "</b> Звуковые кодеки SFL должны находиться в <i>%s</i> или в <b>.sflphone</"
 "b> каталоге в вашем домашнем каталоге( <i>%s</i> )"
 
-#: ../sflphone-gtk/src/assistant.c:31
+#: ../../sflphone-client-gnome/src/assistant.c:35
 #, fuzzy, c-format
 msgid ""
 "This assistant is now finished.\n"
@@ -108,142 +120,134 @@ msgid ""
 "Alias :    %s\n"
 "Server :   %s\n"
 "Username : %s\n"
-"Password : %s"
 msgstr ""
 "Мастер закончил настройку.\n"
 "\n"
 " Вы можете в любое время проверить статус регистрации или изменить "
 "параметры  ваших аккаунтов в меню Правка / Аккаунты."
 
-#: ../sflphone-gtk/src/assistant.c:154
+#: ../../sflphone-client-gnome/src/assistant.c:160
 msgid "SFLphone account configuration wizard"
 msgstr "Мастер настройки SFLphone"
 
-#: ../sflphone-gtk/src/assistant.c:180
+#: ../../sflphone-client-gnome/src/assistant.c:186
 msgid "Welcome to SFLphone!"
 msgstr "Добро пожаловать в SFLphone!"
 
-#: ../sflphone-gtk/src/assistant.c:181
+#: ../../sflphone-client-gnome/src/assistant.c:187
 msgid "This installation wizard will help you configure an account."
 msgstr "Этот мастер установки поможет вам настроить ваш аккаунт."
 
-#: ../sflphone-gtk/src/assistant.c:195
+#: ../../sflphone-client-gnome/src/assistant.c:201
 msgid "VoIP Protocols"
 msgstr "VoIP-протоколы"
 
-#: ../sflphone-gtk/src/assistant.c:195
+#: ../../sflphone-client-gnome/src/assistant.c:201
 msgid "Select an account type:"
 msgstr "Выберите тип аккаунта:"
 
-#: ../sflphone-gtk/src/assistant.c:213
+#: ../../sflphone-client-gnome/src/assistant.c:219
 msgid "Account"
 msgstr "Аккаунты"
 
-#: ../sflphone-gtk/src/assistant.c:213
+#: ../../sflphone-client-gnome/src/assistant.c:219
 msgid "Please select one of the following option:"
 msgstr "Введите пожалуйста следующие данные"
 
-#: ../sflphone-gtk/src/assistant.c:215
+#: ../../sflphone-client-gnome/src/assistant.c:221
 msgid "Create a free SIP/IAX2 account on sflphone.org"
 msgstr "Создать бесплатный SIP/IAX2-аккаунт на sflphone.org"
 
-#: ../sflphone-gtk/src/assistant.c:217
+#: ../../sflphone-client-gnome/src/assistant.c:223
 msgid "Register an existing SIP or IAX2 account"
 msgstr "Зарегистрировать существующий SIP или IAX2 аккаунт"
 
-#: ../sflphone-gtk/src/assistant.c:230
+#: ../../sflphone-client-gnome/src/assistant.c:236
 msgid "SIP account configuration"
 msgstr "Настройка SIP-аккаунта"
 
-#: ../sflphone-gtk/src/assistant.c:230 ../sflphone-gtk/src/assistant.c:305
+#: ../../sflphone-client-gnome/src/assistant.c:236
+#: ../../sflphone-client-gnome/src/assistant.c:332
 msgid "Please fill the following information:"
 msgstr "Введите пожалуйста следующие данные"
 
-#: ../sflphone-gtk/src/assistant.c:238 ../sflphone-gtk/src/assistant.c:313
-#: ../sflphone-gtk/src/config/accountwindow.c:143
+#: ../../sflphone-client-gnome/src/assistant.c:244
+#: ../../sflphone-client-gnome/src/assistant.c:340
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:148
 msgid "_Alias"
 msgstr "_Псевдоним"
 
-#: ../sflphone-gtk/src/assistant.c:246 ../sflphone-gtk/src/assistant.c:321
-#: ../sflphone-gtk/src/config/accountwindow.c:179
+#: ../../sflphone-client-gnome/src/assistant.c:252
+#: ../../sflphone-client-gnome/src/assistant.c:348
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:184
 msgid "_Host name"
 msgstr "Имя или IP-адрес _сервера"
 
-#: ../sflphone-gtk/src/assistant.c:254 ../sflphone-gtk/src/assistant.c:329
-#: ../sflphone-gtk/src/config/accountwindow.c:187
+#: ../../sflphone-client-gnome/src/assistant.c:260
+#: ../../sflphone-client-gnome/src/assistant.c:356
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:192
 msgid "_User name"
 msgstr "Имя или _номер пользователя"
 
-#: ../sflphone-gtk/src/assistant.c:264 ../sflphone-gtk/src/assistant.c:339
-#: ../sflphone-gtk/src/config/accountwindow.c:198
+#: ../../sflphone-client-gnome/src/assistant.c:276
+#: ../../sflphone-client-gnome/src/assistant.c:371
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:207
 msgid "_Password"
 msgstr "Па_роль"
 
-#: ../sflphone-gtk/src/assistant.c:282
+#: ../../sflphone-client-gnome/src/assistant.c:294
+#: ../../sflphone-client-gnome/src/assistant.c:387
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:223
+#, fuzzy
+msgid "_Voicemail number"
+msgstr "Номер _автоответчика #"
+
+#: ../../sflphone-client-gnome/src/assistant.c:309
 msgid "Optional Email Address "
 msgstr "Электронный адрес (необязательный) "
 
-#: ../sflphone-gtk/src/assistant.c:282
+#: ../../sflphone-client-gnome/src/assistant.c:309
 msgid "This email address will be use to send your voicemail messages"
 msgstr "Этот электронный адрес будет использоваться для речевых сообщений"
 
-#: ../sflphone-gtk/src/assistant.c:290
+#: ../../sflphone-client-gnome/src/assistant.c:317
 msgid "_Email"
 msgstr "_Включить"
 
-#: ../sflphone-gtk/src/assistant.c:305
+#: ../../sflphone-client-gnome/src/assistant.c:332
 msgid "IAX2 account configuration"
 msgstr "Настройка IAX2-аккаунта"
 
-#: ../sflphone-gtk/src/assistant.c:360
-#: ../sflphone-gtk/src/config/configwindow.c:837
+#: ../../sflphone-client-gnome/src/assistant.c:405
+#: ../../sflphone-client-gnome/src/config/configwindow.c:863
 msgid "Network Address Translation"
 msgstr "Network Address Translation"
 
-#: ../sflphone-gtk/src/assistant.c:360
+#: ../../sflphone-client-gnome/src/assistant.c:405
 msgid "You should probably enable this if you are behind a firewall."
 msgstr "Вы наверное должны это включить если вы находитесь за сетевым экраном."
 
-#: ../sflphone-gtk/src/assistant.c:369
-#: ../sflphone-gtk/src/config/configwindow.c:499
+#: ../../sflphone-client-gnome/src/assistant.c:414
+#: ../../sflphone-client-gnome/src/config/configwindow.c:516
 msgid "E_nable STUN"
 msgstr "Включить STUN"
 
-#: ../sflphone-gtk/src/assistant.c:376
+#: ../../sflphone-client-gnome/src/assistant.c:421
 msgid "_STUN server"
 msgstr "_STUN-сервер"
 
-#: ../sflphone-gtk/src/assistant.c:390
+#: ../../sflphone-client-gnome/src/assistant.c:435
 msgid "Account Registration"
 msgstr "Регистрация аккаунта"
 
-#: ../sflphone-gtk/src/assistant.c:390
+#: ../../sflphone-client-gnome/src/assistant.c:435
 msgid "Congratulations!"
 msgstr "Поздравляем!"
 
-#: ../sflphone-gtk/src/context-menu.c:296 ../sflphone-gtk/src/menus.c:308
-#: ../sflphone-gtk/src/menus.c:791
-msgid "_Pick up"
-msgstr "_Взять трубку"
-
-#: ../sflphone-gtk/src/context-menu.c:308 ../sflphone-gtk/src/menus.c:318
-#: ../sflphone-gtk/src/menus.c:803
-msgid "_Hang up"
-msgstr "_Положить трубку"
-
-#: ../sflphone-gtk/src/context-menu.c:320 ../sflphone-gtk/src/menus.c:328
-#: ../sflphone-gtk/src/menus.c:815
-msgid "On _Hold"
-msgstr "_Удержать звонок"
-
-#: ../sflphone-gtk/src/context-menu.c:332 ../sflphone-gtk/src/menus.c:340
-#: ../sflphone-gtk/src/menus.c:827
-msgid "_Record"
-msgstr "Записать"
-
-#: ../sflphone-gtk/src/errors.c:28
+#: ../../sflphone-client-gnome/src/errors.c:28
+#, fuzzy
 msgid ""
-"<b>ALSA notification</b>\n"
+"ALSA notification\n"
 "\n"
 "Error while opening playback device"
 msgstr ""
@@ -251,9 +255,10 @@ msgstr ""
 "\n"
 "Ошибка во время активирования устройства проигрывания"
 
-#: ../sflphone-gtk/src/errors.c:31
+#: ../../sflphone-client-gnome/src/errors.c:31
+#, fuzzy
 msgid ""
-"<b>ALSA notification</b>\n"
+"ALSA notification\n"
 "\n"
 "Error while opening capture device"
 msgstr ""
@@ -261,9 +266,10 @@ msgstr ""
 "\n"
 "Ошибка во время активирования устройства входа"
 
-#: ../sflphone-gtk/src/errors.c:34
+#: ../../sflphone-client-gnome/src/errors.c:34
+#, fuzzy
 msgid ""
-"<b>Pulseaudio notification</b>\n"
+"Pulseaudio notification\n"
 "\n"
 "Pulseaudio is not running"
 msgstr ""
@@ -271,473 +277,616 @@ msgstr ""
 "\n"
 "Pulseaudio не работает"
 
-#: ../sflphone-gtk/src/mainwindow.c:70
+#: ../../sflphone-client-gnome/src/mainwindow.c:70
 msgid "There is one call in progress."
 msgstr "Звонок ещё не окончен"
 
-#: ../sflphone-gtk/src/mainwindow.c:74
+#: ../../sflphone-client-gnome/src/mainwindow.c:74
 msgid "There are calls in progress."
 msgstr "Несколько звонков ещё не окончены"
 
-#: ../sflphone-gtk/src/mainwindow.c:83
+#: ../../sflphone-client-gnome/src/mainwindow.c:83
 msgid "Do you still want to quit?"
 msgstr "Вы уверенны что хотите выйти?"
 
-#: ../sflphone-gtk/src/menus.c:131
+#: ../../sflphone-client-gnome/src/mainwindow.c:296
+#, fuzzy
+msgid "SFLphone Error"
+msgstr "SFLphone 0.9.2"
+
+#: ../../sflphone-client-gnome/src/menus.c:134
 msgid "SFLphone is a VoIP client compatible with SIP and IAX2 protocols."
 msgstr "SFLphone - SIP и IAX2-совместимый VoIP-клиент "
 
-#: ../sflphone-gtk/src/menus.c:134
+#: ../../sflphone-client-gnome/src/menus.c:137
 msgid "About SFLphone"
 msgstr "О SFLphone"
 
-#: ../sflphone-gtk/src/menus.c:157
+#: ../../sflphone-client-gnome/src/menus.c:161
 msgid "_Help"
 msgstr "_Помощь"
 
-#: ../sflphone-gtk/src/menus.c:296 ../sflphone-gtk/src/menus.c:949
+#: ../../sflphone-client-gnome/src/menus.c:300
+#: ../../sflphone-client-gnome/src/menus.c:971
 msgid "_New call"
 msgstr "_Новый звонок"
 
-#: ../sflphone-gtk/src/menus.c:354
-msgid "_Account Assistant"
-msgstr "_Мастер настройки аккаунтов"
+#: ../../sflphone-client-gnome/src/menus.c:312
+#: ../../sflphone-client-gnome/src/menus.c:803
+msgid "_Pick up"
+msgstr "_Взять трубку"
+
+#: ../../sflphone-client-gnome/src/menus.c:322
+#: ../../sflphone-client-gnome/src/menus.c:815
+msgid "_Hang up"
+msgstr "_Положить трубку"
 
-#: ../sflphone-gtk/src/menus.c:384
+#: ../../sflphone-client-gnome/src/menus.c:332
+#: ../../sflphone-client-gnome/src/menus.c:827
+msgid "On _Hold"
+msgstr "_Удержать звонок"
+
+#: ../../sflphone-client-gnome/src/menus.c:344
+#: ../../sflphone-client-gnome/src/menus.c:839
+msgid "_Record"
+msgstr "Записать"
+
+#: ../../sflphone-client-gnome/src/menus.c:358
+#, fuzzy
+msgid "_Account creation wizard"
+msgstr "Мастер настройки SFLphone"
+
+#: ../../sflphone-client-gnome/src/menus.c:388
 msgid "_Call"
 msgstr "_Звонок"
 
-#: ../sflphone-gtk/src/menus.c:557
+#: ../../sflphone-client-gnome/src/menus.c:561
 msgid "_Clear history"
 msgstr "_Стереть журнал"
 
-#: ../sflphone-gtk/src/menus.c:569
+#: ../../sflphone-client-gnome/src/menus.c:573
 msgid "_Accounts"
 msgstr "_Аккаунты"
 
-#: ../sflphone-gtk/src/menus.c:584
+#: ../../sflphone-client-gnome/src/menus.c:588
 msgid "_Edit"
 msgstr "_Правка"
 
-#: ../sflphone-gtk/src/menus.c:644
+#: ../../sflphone-client-gnome/src/menus.c:649
 msgid "_Dialpad"
 msgstr "_Клавиатура"
 
-#: ../sflphone-gtk/src/menus.c:656
+#: ../../sflphone-client-gnome/src/menus.c:661
 msgid "_Volume controls"
 msgstr "_Настройки громкости"
 
-#: ../sflphone-gtk/src/menus.c:665
-msgid "_Search contact"
-msgstr "_Искать в журнале"
-
-#: ../sflphone-gtk/src/menus.c:673
+#: ../../sflphone-client-gnome/src/menus.c:679
 msgid "_View"
 msgstr "_Вид"
 
-#: ../sflphone-gtk/src/menus.c:885
+#: ../../sflphone-client-gnome/src/menus.c:899
 msgid "_Call back"
 msgstr "_Перезвонить"
 
-#: ../sflphone-gtk/src/sflnotify.c:34 ../sflphone-gtk/src/sflnotify.c:100
+#: ../../sflphone-client-gnome/src/menus.c:1082
+#, fuzzy
+msgid "Edit phone"
+msgstr "_Мобильный телефон"
+
+#: ../../sflphone-client-gnome/src/menus.c:1093
+msgid "Edit the phone number before making a call"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/sflnotify.c:38
+#: ../../sflphone-client-gnome/src/sflnotify.c:105
 #, c-format
 msgid "%s account: %s"
 msgstr "%s аккаунт: %s"
 
-#: ../sflphone-gtk/src/sflnotify.c:37
+#: ../../sflphone-client-gnome/src/sflnotify.c:42
 #, c-format
 msgid "<i>From:</i> %s"
 msgstr "<i>От:</i> %s"
 
-#: ../sflphone-gtk/src/sflnotify.c:52
+#: ../../sflphone-client-gnome/src/sflnotify.c:57
 msgid "Accept"
 msgstr "Согласиться"
 
-#: ../sflphone-gtk/src/sflnotify.c:53
+#: ../../sflphone-client-gnome/src/sflnotify.c:58
 msgid "Refuse"
 msgstr "Отказаться"
 
-#: ../sflphone-gtk/src/sflnotify.c:54 ../sflphone-gtk/src/sflnotify.c:117
-#: ../sflphone-gtk/src/sflnotify.c:154
+#: ../../sflphone-client-gnome/src/sflnotify.c:59
+#: ../../sflphone-client-gnome/src/sflnotify.c:122
+#: ../../sflphone-client-gnome/src/sflnotify.c:159
 msgid "Ignore"
 msgstr "Пропустить"
 
-#: ../sflphone-gtk/src/sflnotify.c:136
+#: ../../sflphone-client-gnome/src/sflnotify.c:141
 #, c-format
 msgid "Calling with %s account <i>%s</i>"
 msgstr "Звонок с аккаунтом %s <i>%s</i>"
 
-#: ../sflphone-gtk/src/sflnotify.c:140
+#: ../../sflphone-client-gnome/src/sflnotify.c:145
 msgid "Current account"
 msgstr "Нынешний аккаунт"
 
-#: ../sflphone-gtk/src/sflnotify.c:169
+#: ../../sflphone-client-gnome/src/sflnotify.c:174
 msgid "You haven't setup any accounts"
 msgstr "Вы не настроили ни одного аккаунта"
 
-#: ../sflphone-gtk/src/sflnotify.c:209
+#: ../../sflphone-client-gnome/src/sflnotify.c:214
 msgid "You have no registered accounts"
 msgstr "У вас нет зарегистрированных аккаунтов"
 
-#: ../sflphone-gtk/src/sliders.c:161
+#: ../../sflphone-client-gnome/src/sliders.c:161
 msgid "Speakers volume"
 msgstr "Громкость"
 
-#: ../sflphone-gtk/src/sliders.c:163
+#: ../../sflphone-client-gnome/src/sliders.c:163
 msgid "Mic volume"
 msgstr "Громкость микрофона"
 
-#: ../sflphone-gtk/src/statusicon.c:91
+#: ../../sflphone-client-gnome/src/statusicon.c:91
 msgid "_Show main window"
 msgstr "_Показать главное окно"
 
-#: ../sflphone-gtk/src/statusicon.c:124
-#, c-format
-msgid "SFLphone - %i accounts registered"
+#: ../../sflphone-client-gnome/src/statusicon.c:124
+#, fuzzy, c-format
+msgid "SFLphone - %i accounts configured"
 msgstr "SFLphone - Зарегистрировано %i аккаунтов"
 
-#: ../sflphone-gtk/src/timestamp.c:46
+#: ../../sflphone-client-gnome/src/timestamp.c:46
 msgid "<small>Missed call</small>"
 msgstr "<small>Пропущенный звонок</small>"
 
-#: ../sflphone-gtk/src/timestamp.c:64
+#: ../../sflphone-client-gnome/src/timestamp.c:64
 #, c-format
 msgid "<small>Duration:</small> %s"
 msgstr "<small>Время:</small> %s"
 
-#: ../sflphone-gtk/src/toolbar.c:49
+#: ../../sflphone-client-gnome/src/toolbar.c:50
 #, c-format
 msgid "\"Voicemail\" <%s>"
 msgstr "\"Автоответчик\" <%s>"
 
-#: ../sflphone-gtk/src/toolbar.c:175 ../sflphone-gtk/src/toolbar.c:177
+#: ../../sflphone-client-gnome/src/toolbar.c:176
+#: ../../sflphone-client-gnome/src/toolbar.c:178
 msgid "Place a call"
 msgstr "Позвонить"
 
-#: ../sflphone-gtk/src/toolbar.c:184 ../sflphone-gtk/src/toolbar.c:186
+#: ../../sflphone-client-gnome/src/toolbar.c:185
+#: ../../sflphone-client-gnome/src/toolbar.c:187
 msgid "Pick up"
 msgstr "Взять трубку"
 
-#: ../sflphone-gtk/src/toolbar.c:194 ../sflphone-gtk/src/toolbar.c:196
+#: ../../sflphone-client-gnome/src/toolbar.c:195
+#: ../../sflphone-client-gnome/src/toolbar.c:197
 msgid "Hang up"
 msgstr "Положить трубку"
 
-#: ../sflphone-gtk/src/toolbar.c:204 ../sflphone-gtk/src/toolbar.c:206
+#: ../../sflphone-client-gnome/src/toolbar.c:205
+#: ../../sflphone-client-gnome/src/toolbar.c:207
 msgid "Off Hold"
 msgstr "Снова взять"
 
-#: ../sflphone-gtk/src/toolbar.c:215 ../sflphone-gtk/src/toolbar.c:217
+#: ../../sflphone-client-gnome/src/toolbar.c:216
+#: ../../sflphone-client-gnome/src/toolbar.c:218
 msgid "On Hold"
 msgstr "Удержать звонок"
 
-#: ../sflphone-gtk/src/toolbar.c:228 ../sflphone-gtk/src/toolbar.c:230
+#: ../../sflphone-client-gnome/src/toolbar.c:229
+#: ../../sflphone-client-gnome/src/toolbar.c:231
 msgid "Transfer"
 msgstr "Переслать звонок на другой номер"
 
-#: ../sflphone-gtk/src/toolbar.c:240 ../sflphone-gtk/src/toolbar.c:242
+#: ../../sflphone-client-gnome/src/toolbar.c:241
+#: ../../sflphone-client-gnome/src/toolbar.c:243
 msgid "History"
 msgstr "Журнал"
 
-#: ../sflphone-gtk/src/toolbar.c:251 ../sflphone-gtk/src/toolbar.c:253
+#: ../../sflphone-client-gnome/src/toolbar.c:252
+#: ../../sflphone-client-gnome/src/toolbar.c:254
 msgid "Address book"
 msgstr "Адресная книга"
 
-#: ../sflphone-gtk/src/toolbar.c:258 ../sflphone-gtk/src/toolbar.c:262
+#: ../../sflphone-client-gnome/src/toolbar.c:260
+#: ../../sflphone-client-gnome/src/toolbar.c:264
 msgid "Voicemail"
 msgstr "Автоответчик"
 
-#: ../sflphone-gtk/src/toolbar.c:270
+#: ../../sflphone-client-gnome/src/toolbar.c:272
 msgid "Record a call"
 msgstr "Записать переговор"
 
-#: ../sflphone-gtk/src/contacts/history.c:75
-#: ../sflphone-gtk/src/contacts/searchbar.c:39
-#: ../sflphone-gtk/src/contacts/searchbar.c:65
-msgid "Search"
-msgstr "Поиск"
-
-#: ../sflphone-gtk/src/config/accountwindow.c:103
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:108
 msgid "Account settings"
 msgstr "Настройки аккаунта"
 
-#: ../sflphone-gtk/src/config/accountwindow.c:115
-msgid "Account parameters"
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:120
+#, fuzzy
+msgid "Account Parameters"
 msgstr "Параметры аккаунта"
 
-#: ../sflphone-gtk/src/config/accountwindow.c:137
-msgid "_Enabled"
-msgstr "_Включен"
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:142
+msgid "_Enable this account"
+msgstr ""
 
-#: ../sflphone-gtk/src/config/accountwindow.c:151
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:156
 msgid "_Protocol"
 msgstr "Пр_отокол"
 
-#: ../sflphone-gtk/src/config/accountwindow.c:169
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:174
 msgid "Unknown"
 msgstr "Неизвестный"
 
-#: ../sflphone-gtk/src/config/accountwindow.c:209
-msgid "_Voicemail box #"
-msgstr "Номер _автоответчика #"
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:265
+#: ../../sflphone-client-gnome/src/config/configwindow.c:732
+msgid "General"
+msgstr "Общие настройки"
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:105
-msgid "Search Parameters"
-msgstr "Параметры аккаунта"
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:276
+msgid "_Use Evolution address books"
+msgstr ""
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:116
-msgid "Maximum result number for a request: "
-msgstr "Максимальное количество звонков"
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:283
+msgid "Download limit:"
+msgstr ""
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:127
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:294
 msgid "_Display contact photo if available"
 msgstr "_Показать фотографию контакта (если имеется):"
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:132
-msgid "Search for and display: "
-msgstr "Найти и показать: "
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:301
+msgid "Fields"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:311
+msgid "Use the following fields from Evolution's address books:"
+msgstr ""
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:135
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:316
 msgid "_Business phone"
 msgstr "_Рабочий телефон"
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:140
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:321
 msgid "_Home phone"
 msgstr "_Домашний телефон"
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:145
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:326
 msgid "_Mobile phone"
 msgstr "_Мобильный телефон"
 
-#: ../sflphone-gtk/src/config/audioconf.c:154
-#, c-format
-msgid "audio device index for output = %d\n"
-msgstr "Индекс звукового устройства = %d\n"
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:333
+#, fuzzy
+msgid "Address Books"
+msgstr "Адресная книга"
 
-#: ../sflphone-gtk/src/config/audioconf.c:562
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:343
+msgid "Select which Evolution address books to use:"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:377
+#: ../../sflphone-client-gnome/src/config/audioconf.c:574
 msgid "Name"
 msgstr "Имя"
 
-#: ../sflphone-gtk/src/config/audioconf.c:567
+#: ../../sflphone-client-gnome/src/config/audioconf.c:155
+#, fuzzy, c-format
+msgid "audio device index for output = %d"
+msgstr "Индекс звукового устройства = %d\n"
+
+#: ../../sflphone-client-gnome/src/config/audioconf.c:579
 msgid "Frequency"
 msgstr "Частота"
 
-#: ../sflphone-gtk/src/config/audioconf.c:572
+#: ../../sflphone-client-gnome/src/config/audioconf.c:584
 msgid "Bitrate"
 msgstr "Битрейт"
 
-#: ../sflphone-gtk/src/config/audioconf.c:577
+#: ../../sflphone-client-gnome/src/config/audioconf.c:589
 msgid "Bandwidth"
 msgstr "Пропускная способность"
 
-#: ../sflphone-gtk/src/config/audioconf.c:637
+#: ../../sflphone-client-gnome/src/config/audioconf.c:652
 msgid "Pulseaudio"
 msgstr "Pulseaudio"
 
-#: ../sflphone-gtk/src/config/audioconf.c:640
+#: ../../sflphone-client-gnome/src/config/audioconf.c:655
 msgid "ALSA"
 msgstr "ALSA"
 
-#: ../sflphone-gtk/src/config/audioconf.c:666
+#: ../../sflphone-client-gnome/src/config/audioconf.c:681
 msgid "ALSA plugin"
 msgstr "ALSA-плагин"
 
-#: ../sflphone-gtk/src/config/audioconf.c:688
+#: ../../sflphone-client-gnome/src/config/audioconf.c:703
 msgid "Output"
 msgstr "Выход"
 
-#: ../sflphone-gtk/src/config/audioconf.c:710
+#: ../../sflphone-client-gnome/src/config/audioconf.c:725
 msgid "Input"
 msgstr "Вход"
 
-#: ../sflphone-gtk/src/config/audioconf.c:743
+#: ../../sflphone-client-gnome/src/config/audioconf.c:758
 msgid "_Enable ringtones"
 msgstr "Включить звонок"
 
-#: ../sflphone-gtk/src/config/audioconf.c:748
+#: ../../sflphone-client-gnome/src/config/audioconf.c:764
 msgid "Choose a ringtone"
 msgstr "Выберите звонок"
 
-#: ../sflphone-gtk/src/config/audioconf.c:753
+#: ../../sflphone-client-gnome/src/config/audioconf.c:769
 msgid "Audio Files"
 msgstr "Звуковые файлы"
 
-#: ../sflphone-gtk/src/config/audioconf.c:770
-msgid "_Activate silence detection"
+#: ../../sflphone-client-gnome/src/config/audioconf.c:788
+#, fuzzy
+msgid "_Voice Activity Detection"
 msgstr "Включить детектор тишины"
 
-#: ../sflphone-gtk/src/config/audioconf.c:798
+#: ../../sflphone-client-gnome/src/config/audioconf.c:798
+msgid "_Noise Reduction (Narrow-Band Companding)"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/config/audioconf.c:826
 msgid "Sound Manager"
 msgstr "Менеджер звука"
 
-#: ../sflphone-gtk/src/config/audioconf.c:805
+#: ../../sflphone-client-gnome/src/config/audioconf.c:833
 msgid "ALSA configuration"
 msgstr "Настройка ALSA"
 
-#: ../sflphone-gtk/src/config/audioconf.c:815
+#: ../../sflphone-client-gnome/src/config/audioconf.c:850
 msgid "Codecs"
 msgstr "Кодеки"
 
-#: ../sflphone-gtk/src/config/audioconf.c:823
-msgid "Noise reduction"
-msgstr "Уменьшение шума"
-
-#: ../sflphone-gtk/src/config/audioconf.c:830
+#: ../../sflphone-client-gnome/src/config/audioconf.c:873
 msgid "Ringtones"
 msgstr "Звонки"
 
-#: ../sflphone-gtk/src/config/configwindow.c:385
+#: ../../sflphone-client-gnome/src/config/configwindow.c:402
 msgid "Protocol"
 msgstr "Протокол"
 
-#: ../sflphone-gtk/src/config/configwindow.c:392
+#: ../../sflphone-client-gnome/src/config/configwindow.c:409
 msgid "Status"
 msgstr "Статус"
 
-#: ../sflphone-gtk/src/config/configwindow.c:495
+#: ../../sflphone-client-gnome/src/config/configwindow.c:512
 msgid "Stun parameters will apply to each SIP account created."
 msgstr "STUN-параметры будут эффективны для каждого созданного SIP-аккаунта"
 
-#: ../sflphone-gtk/src/config/configwindow.c:503
+#: ../../sflphone-client-gnome/src/config/configwindow.c:520
 msgid "Enable it if you are behind a firewall"
 msgstr ""
 "Включите это если вы находитесь за сетевым экраном и потом перезагрузите "
 "SFLphone"
 
-#: ../sflphone-gtk/src/config/configwindow.c:511
+#: ../../sflphone-client-gnome/src/config/configwindow.c:528
 msgid "Format: name.server:port"
 msgstr "Формат: имя.сервер:порт"
 
-#: ../sflphone-gtk/src/config/configwindow.c:561
-msgid "Desktop Notification"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:579
+#, fuzzy
+msgid "Desktop Notifications"
 msgstr "Извещения на рабочем столе"
 
-#: ../sflphone-gtk/src/config/configwindow.c:569
-msgid "_Enable"
-msgstr "_Включить"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:588
+#, fuzzy
+msgid "_Enable notifications"
+msgstr "Включить звонок"
 
-#: ../sflphone-gtk/src/config/configwindow.c:574
-msgid "_Notify voice mails"
-msgstr "_Предупредить о новых речевых сообщениях"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:594
+msgid "Enable voicemail _notifications"
+msgstr ""
 
-#: ../sflphone-gtk/src/config/configwindow.c:580
+#: ../../sflphone-client-gnome/src/config/configwindow.c:605
 msgid "System Tray Icon"
 msgstr "System Tray Icon"
 
-#: ../sflphone-gtk/src/config/configwindow.c:588
+#: ../../sflphone-client-gnome/src/config/configwindow.c:613
 msgid "_Popup main window on incoming call"
 msgstr "_Показать главное окно при входящем звонке"
 
-#: ../sflphone-gtk/src/config/configwindow.c:593
+#: ../../sflphone-client-gnome/src/config/configwindow.c:618
 msgid "Ne_ver popup main window"
 msgstr "Никогда не показывать главное окно"
 
-#: ../sflphone-gtk/src/config/configwindow.c:597
-msgid "_Start hidden"
-msgstr "_Начать спрятанным"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:622
+msgid "Hide SFLphone window on _startup"
+msgstr ""
 
-#: ../sflphone-gtk/src/config/configwindow.c:603
+#: ../../sflphone-client-gnome/src/config/configwindow.c:628
 msgid "Calls History"
 msgstr "Журнал звонков"
 
-#: ../sflphone-gtk/src/config/configwindow.c:611
-msgid "_Maximum number of calls"
-msgstr "_Максимальное количество звонков"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:636
+#, fuzzy
+msgid "_History size limit"
+msgstr "Журнал пуст"
 
-#: ../sflphone-gtk/src/config/configwindow.c:627
+#: ../../sflphone-client-gnome/src/config/configwindow.c:653
 msgid "PulseAudio sound server"
 msgstr "Сервер звука PulseAudio"
 
-#: ../sflphone-gtk/src/config/configwindow.c:635
-msgid "_Control running applications volume"
-msgstr "_Начать спрятанным "
+#: ../../sflphone-client-gnome/src/config/configwindow.c:661
+msgid "Mute other applications during a _call"
+msgstr ""
 
-#: ../sflphone-gtk/src/config/configwindow.c:648
+#: ../../sflphone-client-gnome/src/config/configwindow.c:674
 msgid "SIP Port"
 msgstr "SIP-порт"
 
-#: ../sflphone-gtk/src/config/configwindow.c:661
+#: ../../sflphone-client-gnome/src/config/configwindow.c:687
 msgid "Port:"
 msgstr "Порт:"
 
-#: ../sflphone-gtk/src/config/configwindow.c:706
-msgid "General"
-msgstr "Общие настройки"
-
-#: ../sflphone-gtk/src/config/configwindow.c:717
-msgid "_Destination folder"
-msgstr "Папка назна_чения"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:742
+msgid "_Recordings folder"
+msgstr ""
 
-#: ../sflphone-gtk/src/config/configwindow.c:723
+#: ../../sflphone-client-gnome/src/config/configwindow.c:748
 msgid "Select a folder"
 msgstr "Выберите папку"
 
-#: ../sflphone-gtk/src/config/configwindow.c:748
+#: ../../sflphone-client-gnome/src/config/configwindow.c:773
 msgid "Preferences"
 msgstr "Предпочтения"
 
-#: ../sflphone-gtk/src/config/configwindow.c:768
+#: ../../sflphone-client-gnome/src/config/configwindow.c:793
 msgid "General Settings"
 msgstr "Общие настройки"
 
-#: ../sflphone-gtk/src/config/configwindow.c:773
+#: ../../sflphone-client-gnome/src/config/configwindow.c:798
 msgid "Audio Settings"
 msgstr "Настройки звука"
 
-#: ../sflphone-gtk/src/config/configwindow.c:778
-msgid "Record"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:803
+#, fuzzy
+msgid "Recordings"
 msgstr "Записать"
 
-#: ../sflphone-gtk/src/config/configwindow.c:783
+#: ../../sflphone-client-gnome/src/config/configwindow.c:808
 msgid "Address Book"
 msgstr "Адресная книга"
 
-#: ../sflphone-gtk/src/config/configwindow.c:788
+#: ../../sflphone-client-gnome/src/config/configwindow.c:813
 msgid "Hooks"
 msgstr "перехватчики (hooks)"
 
-#: ../sflphone-gtk/src/config/configwindow.c:814
+#: ../../sflphone-client-gnome/src/config/configwindow.c:840
 msgid "Accounts"
 msgstr "Аккаунты"
 
-#: ../sflphone-gtk/src/config/configwindow.c:826
-msgid "Accounts previously setup"
-msgstr "Существующие аккаунты"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:852
+#, fuzzy
+msgid "Configured Accounts"
+msgstr "Нынешний аккаунт"
 
-#: ../sflphone-gtk/src/config/hooks-config.c:92
-msgid "URL argument"
-msgstr "URL аргумент"
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:130
+msgid "URL Passing"
+msgstr ""
 
-#: ../sflphone-gtk/src/config/hooks-config.c:102
-msgid "_SIP protocol"
-msgstr "Пр_отокол"
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:140
+#, c-format
+msgid ""
+"SFLphone can run custom commands if incoming calls come with an URL "
+"attached.\n"
+"In this case, %s will be replaced with the passed URL."
+msgstr ""
 
-#: ../sflphone-gtk/src/config/hooks-config.c:107
-msgid "_IAX2 protocol"
-msgstr "Пр_отокол"
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:143
+msgid "Trigger on specific _SIP header"
+msgstr ""
 
-#: ../sflphone-gtk/src/config/hooks-config.c:113
-msgid "_SIP Header: "
-msgstr "_SIP Заголовок"
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:155
+msgid "Trigger on _IAX2 URL"
+msgstr ""
 
-#: ../sflphone-gtk/src/config/hooks-config.c:120
-msgid "_Command: "
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:160
+#, fuzzy
+msgid "_Command to run: "
 msgstr "_Команда"
 
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:168
+msgid "Phone Number Rewriting"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:178
+msgid "_Prefix dialed numbers with:"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/contacts/history.c:83
+#: ../../sflphone-client-gnome/src/contacts/searchbar.c:123
+#, fuzzy
+msgid "Search history"
+msgstr "_Стереть журнал"
+
+#: ../../sflphone-client-gnome/src/contacts/history.c:83
+#: ../../sflphone-client-gnome/src/contacts/searchbar.c:110
+#, fuzzy
+msgid "Search contact"
+msgstr "_Искать в журнале"
+
+#, fuzzy
+#~ msgid "Registered to %s (%s)"
+#~ msgstr "Зарегистрирован"
+
+#, fuzzy
+#~ msgid "%s account- %s             %s"
+#~ msgstr "%s аккаунт- %s"
+
+#, fuzzy
+#~ msgid "Books"
+#~ msgstr "перехватчики (hooks)"
+
+#~ msgid "_Enable"
+#~ msgstr "_Включить"
+
+#~ msgid "_Notify voice mails"
+#~ msgstr "_Предупредить о новых речевых сообщениях"
+
+#~ msgid "_Start hidden"
+#~ msgstr "_Начать спрятанным"
+
+#~ msgid "_Maximum number of calls"
+#~ msgstr "_Максимальное количество звонков"
+
+#~ msgid "_Control running applications volume"
+#~ msgstr "_Начать спрятанным "
+
 #, fuzzy
-#~ msgid "SFLphone 0.9.3"
-#~ msgstr "SFLphone 0.9.2"
+#~ msgid "Account previously setup"
+#~ msgstr "Существующие аккаунты"
+
+#~ msgid "URL argument"
+#~ msgstr "URL аргумент"
+
+#~ msgid "_SIP protocol"
+#~ msgstr "Пр_отокол"
+
+#~ msgid "_SIP Header: "
+#~ msgstr "_SIP Заголовок"
+
+#~ msgid "_IAX2 protocol"
+#~ msgstr "Пр_отокол"
+
+#~ msgid "Search"
+#~ msgstr "Поиск"
+
+#~ msgid "_Enabled"
+#~ msgstr "_Включен"
+
+#~ msgid "%s account- %s"
+#~ msgstr "%s аккаунт- %s"
+
+#~ msgid "Noise reduction"
+#~ msgstr "Уменьшение шума"
+
+#~ msgid "_Destination folder"
+#~ msgstr "Папка назна_чения"
+
+#~ msgid "_Account Assistant"
+#~ msgstr "_Мастер настройки аккаунтов"
 
 #~ msgid "Setup Accounts"
 #~ msgstr "Настроить аккаунты"
 
+#~ msgid "Search Parameters"
+#~ msgstr "Параметры аккаунта"
+
+#~ msgid "Maximum result number for a request: "
+#~ msgstr "Максимальное количество звонков"
+
+#~ msgid "Search for and display: "
+#~ msgstr "Найти и показать: "
+
 #~ msgid "_STUN Server"
 #~ msgstr "_STUN-сервер"
 
 #~ msgid "Apply"
 #~ msgstr "Применить"
 
-#~ msgid "History empty"
-#~ msgstr "Журнал пуст"
-
 #~ msgid "Enabled"
 #~ msgstr "Включен"
diff --git a/sflphone-common/po/sflphone.pot b/sflphone-common/po/sflphone.pot
index d95d68f1994f50f349f4a78c886d904ad744a323..b00ff4c9854108cda6e75fccfa3023e583f76b5e 100644
--- a/sflphone-common/po/sflphone.pot
+++ b/sflphone-common/po/sflphone.pot
@@ -1,128 +1,100 @@
-# SFLphone translation template.
-# Copyright (C) 2008 2009 Savoir-Faire Linux Inc
-# This file is distributed under the same license as the sflphone package.
-# Emmanuel Milou <emmanuel.milou@savoirfairelinux.com>.
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
 #
 #, fuzzy
 msgid ""
 msgstr ""
-"Project-Id-Version: 0.9.3-1\n"
+"Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-02-10 15:24-0500\n"
-"PO-Revision-Date: 2009-02-10 15:24-0500\n"
-"Last-Translator: Hussein Abdallah <hussein.abdallah@savoirfairelinux.com>\n"
-"Language-Team: Savoir-Faire Linux Inc <sflphoneteam@savoirfairelinux.com>\n"
+"POT-Creation-Date: 2009-05-21 10:45-0400\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
 "MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Type: text/plain; charset=CHARSET\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: ../sflphone-gtk/src/accountlist.c:158
+#: ../../sflphone-client-gnome/src/accountlist.c:169
 msgid "Registered"
 msgstr ""
 
-#: ../sflphone-gtk/src/accountlist.c:161
+#: ../../sflphone-client-gnome/src/accountlist.c:172
 msgid "Not Registered"
 msgstr ""
 
-#: ../sflphone-gtk/src/accountlist.c:164
+#: ../../sflphone-client-gnome/src/accountlist.c:175
 msgid "Trying..."
 msgstr ""
 
-#: ../sflphone-gtk/src/accountlist.c:167 ../sflphone-gtk/src/sflnotify.c:171
-#: ../sflphone-gtk/src/sflnotify.c:210
+#: ../../sflphone-client-gnome/src/accountlist.c:178
+#: ../../sflphone-client-gnome/src/sflnotify.c:176
+#: ../../sflphone-client-gnome/src/sflnotify.c:217
 msgid "Error"
 msgstr ""
 
-#: ../sflphone-gtk/src/accountlist.c:170
+#: ../../sflphone-client-gnome/src/accountlist.c:181
 msgid "Bad authentification"
 msgstr ""
 
-#: ../sflphone-gtk/src/accountlist.c:173
+#: ../../sflphone-client-gnome/src/accountlist.c:184
 msgid "Network unreachable"
 msgstr ""
 
-#: ../sflphone-gtk/src/accountlist.c:176
+#: ../../sflphone-client-gnome/src/accountlist.c:187
 msgid "Host unreachable"
 msgstr ""
 
-#: ../sflphone-gtk/src/accountlist.c:179
+#: ../../sflphone-client-gnome/src/accountlist.c:190
 msgid "Stun configuration error"
 msgstr ""
 
-#: ../sflphone-gtk/src/accountlist.c:182
+#: ../../sflphone-client-gnome/src/accountlist.c:193
 msgid "Stun server invalid"
 msgstr ""
 
-#: ../sflphone-gtk/src/accountlist.c:185
+#: ../../sflphone-client-gnome/src/accountlist.c:196
 msgid "Invalid"
 msgstr ""
 
-#: ../sflphone-gtk/src/accountwindow.c:109
-msgid "Account settings"
-msgstr ""
-
-#: ../sflphone-gtk/src/accountwindow.c:121
-msgid "Account parameters"
-msgstr ""
-
-#: ../sflphone-gtk/src/accountwindow.c:143
-msgid "_Enabled"
-msgstr ""
-
-#: ../sflphone-gtk/src/accountwindow.c:149 ../sflphone-gtk/src/assistant.c:238
-#: ../sflphone-gtk/src/assistant.c:292
-msgid "_Alias"
-msgstr ""
-
-#: ../sflphone-gtk/src/accountwindow.c:157
-msgid "_Protocol"
-msgstr ""
-
-#: ../sflphone-gtk/src/accountwindow.c:175
-msgid "Unknown"
-msgstr ""
-
-#: ../sflphone-gtk/src/accountwindow.c:185 ../sflphone-gtk/src/assistant.c:246
-#: ../sflphone-gtk/src/assistant.c:300
-msgid "_Host name"
-msgstr ""
-
-#: ../sflphone-gtk/src/accountwindow.c:193 ../sflphone-gtk/src/assistant.c:254
-#: ../sflphone-gtk/src/assistant.c:308
-msgid "_User name"
-msgstr ""
-
-#: ../sflphone-gtk/src/accountwindow.c:204 ../sflphone-gtk/src/assistant.c:264
-#: ../sflphone-gtk/src/assistant.c:318
-msgid "_Password"
-msgstr ""
-
-#: ../sflphone-gtk/src/accountwindow.c:215
-msgid "_Voicemail box #"
-msgstr ""
-
-#: ../sflphone-gtk/src/actions.c:57 ../sflphone-gtk/src/sflnotify.c:103
+#: ../../sflphone-client-gnome/src/actions.c:55
+#: ../../sflphone-client-gnome/src/sflnotify.c:108
 #, c-format
 msgid "%d voice mails"
 msgstr ""
 
-#: ../sflphone-gtk/src/actions.c:59
+#: ../../sflphone-client-gnome/src/actions.c:57
 #, c-format
 msgid "%d voice mail"
 msgstr ""
 
-#: ../sflphone-gtk/src/actions.c:80
+#: ../../sflphone-client-gnome/src/actions.c:81
 #, c-format
-msgid "%s account- %s"
+msgid "Using %s (%s)"
 msgstr ""
 
-#: ../sflphone-gtk/src/actions.c:224
+#: ../../sflphone-client-gnome/src/actions.c:87
+msgid "No registered account"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/actions.c:229
 msgid ""
 "Unable to connect to the SFLphone server.\n"
 "Make sure the daemon is running."
 msgstr ""
 
-#: ../sflphone-gtk/src/actions.c:798
+#: ../../sflphone-client-gnome/src/actions.c:787
+#, c-format
+msgid "IP call - %s"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/actions.c:790
+#, c-format
+msgid "Using %s (%s) - Codec: %s"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/actions.c:880
 #, c-format
 msgid ""
 "<b>Error: No audio codecs found.\n"
@@ -131,489 +103,668 @@ msgid ""
 "b> directory in your home( <i>%s</i> )"
 msgstr ""
 
-#: ../sflphone-gtk/src/assistant.c:148
-msgid "SFLphone account configuration wizard"
+#: ../../sflphone-client-gnome/src/assistant.c:35
+#, c-format
+msgid ""
+"This assistant is now finished.\n"
+"You can at any time check your registration state or modify your accounts "
+"parameters in the Options/Accounts window.\n"
+"\n"
+"Alias :    %s\n"
+"Server :   %s\n"
+"Username : %s\n"
 msgstr ""
 
-#: ../sflphone-gtk/src/assistant.c:176
-msgid "SFLphone 0.9.2"
+#: ../../sflphone-client-gnome/src/assistant.c:160
+msgid "SFLphone account configuration wizard"
 msgstr ""
 
-#: ../sflphone-gtk/src/assistant.c:176
+#: ../../sflphone-client-gnome/src/assistant.c:186
 msgid "Welcome to SFLphone!"
 msgstr ""
 
-#: ../sflphone-gtk/src/assistant.c:178
+#: ../../sflphone-client-gnome/src/assistant.c:187
 msgid "This installation wizard will help you configure an account."
 msgstr ""
 
-#: ../sflphone-gtk/src/assistant.c:193
+#: ../../sflphone-client-gnome/src/assistant.c:201
 msgid "VoIP Protocols"
 msgstr ""
 
-#: ../sflphone-gtk/src/assistant.c:193
+#: ../../sflphone-client-gnome/src/assistant.c:201
 msgid "Select an account type:"
 msgstr ""
 
-#: ../sflphone-gtk/src/assistant.c:211
+#: ../../sflphone-client-gnome/src/assistant.c:219
 msgid "Account"
 msgstr ""
 
-#: ../sflphone-gtk/src/assistant.c:211
+#: ../../sflphone-client-gnome/src/assistant.c:219
 msgid "Please select one of the following option:"
 msgstr ""
 
-#: ../sflphone-gtk/src/assistant.c:213
+#: ../../sflphone-client-gnome/src/assistant.c:221
 msgid "Create a free SIP/IAX2 account on sflphone.org"
 msgstr ""
 
-#: ../sflphone-gtk/src/assistant.c:215
+#: ../../sflphone-client-gnome/src/assistant.c:223
 msgid "Register an existing SIP or IAX2 account"
 msgstr ""
 
-#: ../sflphone-gtk/src/assistant.c:230
+#: ../../sflphone-client-gnome/src/assistant.c:236
 msgid "SIP account configuration"
 msgstr ""
 
-#: ../sflphone-gtk/src/assistant.c:230 ../sflphone-gtk/src/assistant.c:284
+#: ../../sflphone-client-gnome/src/assistant.c:236
+#: ../../sflphone-client-gnome/src/assistant.c:332
 msgid "Please fill the following information:"
 msgstr ""
 
-#: ../sflphone-gtk/src/assistant.c:284
+#: ../../sflphone-client-gnome/src/assistant.c:244
+#: ../../sflphone-client-gnome/src/assistant.c:340
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:148
+msgid "_Alias"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/assistant.c:252
+#: ../../sflphone-client-gnome/src/assistant.c:348
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:184
+msgid "_Host name"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/assistant.c:260
+#: ../../sflphone-client-gnome/src/assistant.c:356
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:192
+msgid "_User name"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/assistant.c:276
+#: ../../sflphone-client-gnome/src/assistant.c:371
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:207
+msgid "_Password"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/assistant.c:294
+#: ../../sflphone-client-gnome/src/assistant.c:387
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:223
+msgid "_Voicemail number"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/assistant.c:309
+msgid "Optional Email Address "
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/assistant.c:309
+msgid "This email address will be use to send your voicemail messages"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/assistant.c:317
+msgid "_Email"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/assistant.c:332
 msgid "IAX2 account configuration"
 msgstr ""
 
-#: ../sflphone-gtk/src/assistant.c:341 ../sflphone-gtk/src/configwindow.c:821
+#: ../../sflphone-client-gnome/src/assistant.c:405
+#: ../../sflphone-client-gnome/src/config/configwindow.c:863
 msgid "Network Address Translation"
 msgstr ""
 
-#: ../sflphone-gtk/src/assistant.c:341
+#: ../../sflphone-client-gnome/src/assistant.c:405
 msgid "You should probably enable this if you are behind a firewall."
 msgstr ""
 
-#: ../sflphone-gtk/src/assistant.c:350 ../sflphone-gtk/src/configwindow.c:496
+#: ../../sflphone-client-gnome/src/assistant.c:414
+#: ../../sflphone-client-gnome/src/config/configwindow.c:516
 msgid "E_nable STUN"
 msgstr ""
 
-#: ../sflphone-gtk/src/assistant.c:357
+#: ../../sflphone-client-gnome/src/assistant.c:421
 msgid "_STUN server"
 msgstr ""
 
-#: ../sflphone-gtk/src/assistant.c:374
+#: ../../sflphone-client-gnome/src/assistant.c:435
 msgid "Account Registration"
 msgstr ""
 
-#: ../sflphone-gtk/src/assistant.c:374
+#: ../../sflphone-client-gnome/src/assistant.c:435
 msgid "Congratulations!"
 msgstr ""
 
-#: ../sflphone-gtk/src/assistant.c:376
+#: ../../sflphone-client-gnome/src/errors.c:28
 msgid ""
-"This assistant is now finished.\n"
+"ALSA notification\n"
 "\n"
-" You can at any time check your registration state or modify your accounts "
-"parameters in the Options/Accounts window."
+"Error while opening playback device"
 msgstr ""
 
-#: ../sflphone-gtk/src/audioconf.c:154
-#, c-format
-msgid "audio device index for output = %d\n"
+#: ../../sflphone-client-gnome/src/errors.c:31
+msgid ""
+"ALSA notification\n"
+"\n"
+"Error while opening capture device"
 msgstr ""
 
-#: ../sflphone-gtk/src/audioconf.c:562
-msgid "Name"
+#: ../../sflphone-client-gnome/src/errors.c:34
+msgid ""
+"Pulseaudio notification\n"
+"\n"
+"Pulseaudio is not running"
 msgstr ""
 
-#: ../sflphone-gtk/src/audioconf.c:567
-msgid "Frequency"
+#: ../../sflphone-client-gnome/src/mainwindow.c:70
+msgid "There is one call in progress."
 msgstr ""
 
-#: ../sflphone-gtk/src/audioconf.c:572
-msgid "Bitrate"
+#: ../../sflphone-client-gnome/src/mainwindow.c:74
+msgid "There are calls in progress."
 msgstr ""
 
-#: ../sflphone-gtk/src/audioconf.c:577
-msgid "Bandwidth"
+#: ../../sflphone-client-gnome/src/mainwindow.c:83
+msgid "Do you still want to quit?"
 msgstr ""
 
-#: ../sflphone-gtk/src/audioconf.c:637
-msgid "Pulseaudio"
+#: ../../sflphone-client-gnome/src/mainwindow.c:296
+msgid "SFLphone Error"
 msgstr ""
 
-#: ../sflphone-gtk/src/audioconf.c:640
-msgid "ALSA"
+#: ../../sflphone-client-gnome/src/menus.c:134
+msgid "SFLphone is a VoIP client compatible with SIP and IAX2 protocols."
 msgstr ""
 
-#: ../sflphone-gtk/src/audioconf.c:666
-msgid "ALSA plugin"
+#: ../../sflphone-client-gnome/src/menus.c:137
+msgid "About SFLphone"
 msgstr ""
 
-#: ../sflphone-gtk/src/audioconf.c:688
-msgid "Output"
+#: ../../sflphone-client-gnome/src/menus.c:161
+msgid "_Help"
 msgstr ""
 
-#: ../sflphone-gtk/src/audioconf.c:710
-msgid "Input"
+#: ../../sflphone-client-gnome/src/menus.c:300
+#: ../../sflphone-client-gnome/src/menus.c:971
+msgid "_New call"
 msgstr ""
 
-#: ../sflphone-gtk/src/audioconf.c:743
-msgid "_Enable ringtones"
+#: ../../sflphone-client-gnome/src/menus.c:312
+#: ../../sflphone-client-gnome/src/menus.c:803
+msgid "_Pick up"
 msgstr ""
 
-#: ../sflphone-gtk/src/audioconf.c:748
-msgid "Choose a ringtone"
+#: ../../sflphone-client-gnome/src/menus.c:322
+#: ../../sflphone-client-gnome/src/menus.c:815
+msgid "_Hang up"
 msgstr ""
 
-#: ../sflphone-gtk/src/audioconf.c:753
-msgid "Audio Files"
+#: ../../sflphone-client-gnome/src/menus.c:332
+#: ../../sflphone-client-gnome/src/menus.c:827
+msgid "On _Hold"
 msgstr ""
 
-#: ../sflphone-gtk/src/audioconf.c:770
-msgid "_Activate silence detection"
+#: ../../sflphone-client-gnome/src/menus.c:344
+#: ../../sflphone-client-gnome/src/menus.c:839
+msgid "_Record"
 msgstr ""
 
-#: ../sflphone-gtk/src/audioconf.c:798
-msgid "Sound Manager"
+#: ../../sflphone-client-gnome/src/menus.c:358
+msgid "_Account creation wizard"
 msgstr ""
 
-#: ../sflphone-gtk/src/audioconf.c:805
-msgid "ALSA configuration"
+#: ../../sflphone-client-gnome/src/menus.c:388
+msgid "_Call"
 msgstr ""
 
-#: ../sflphone-gtk/src/audioconf.c:815
-msgid "Codecs"
+#: ../../sflphone-client-gnome/src/menus.c:561
+msgid "_Clear history"
 msgstr ""
 
-#: ../sflphone-gtk/src/audioconf.c:823
-msgid "Noise reduction"
+#: ../../sflphone-client-gnome/src/menus.c:573
+msgid "_Accounts"
 msgstr ""
 
-#: ../sflphone-gtk/src/audioconf.c:830
-msgid "Ringtones"
+#: ../../sflphone-client-gnome/src/menus.c:588
+msgid "_Edit"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/menus.c:649
+msgid "_Dialpad"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/menus.c:661
+msgid "_Volume controls"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/menus.c:679
+msgid "_View"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/menus.c:899
+msgid "_Call back"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/menus.c:1082
+msgid "Edit phone"
 msgstr ""
 
-#: ../sflphone-gtk/src/calltree.c:209
+#: ../../sflphone-client-gnome/src/menus.c:1093
+msgid "Edit the phone number before making a call"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/sflnotify.c:38
+#: ../../sflphone-client-gnome/src/sflnotify.c:105
+#, c-format
+msgid "%s account: %s"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/sflnotify.c:42
+#, c-format
+msgid "<i>From:</i> %s"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/sflnotify.c:57
+msgid "Accept"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/sflnotify.c:58
+msgid "Refuse"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/sflnotify.c:59
+#: ../../sflphone-client-gnome/src/sflnotify.c:122
+#: ../../sflphone-client-gnome/src/sflnotify.c:159
+msgid "Ignore"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/sflnotify.c:141
+#, c-format
+msgid "Calling with %s account <i>%s</i>"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/sflnotify.c:145
+msgid "Current account"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/sflnotify.c:174
+msgid "You haven't setup any accounts"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/sflnotify.c:214
+msgid "You have no registered accounts"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/sliders.c:161
+msgid "Speakers volume"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/sliders.c:163
+msgid "Mic volume"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/statusicon.c:91
+msgid "_Show main window"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/statusicon.c:124
+#, c-format
+msgid "SFLphone - %i accounts configured"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/timestamp.c:46
+msgid "<small>Missed call</small>"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/timestamp.c:64
+#, c-format
+msgid "<small>Duration:</small> %s"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/toolbar.c:50
 #, c-format
 msgid "\"Voicemail\" <%s>"
 msgstr ""
 
-#: ../sflphone-gtk/src/calltree.c:431 ../sflphone-gtk/src/calltree.c:433
+#: ../../sflphone-client-gnome/src/toolbar.c:176
+#: ../../sflphone-client-gnome/src/toolbar.c:178
 msgid "Place a call"
 msgstr ""
 
-#: ../sflphone-gtk/src/calltree.c:440 ../sflphone-gtk/src/calltree.c:442
+#: ../../sflphone-client-gnome/src/toolbar.c:185
+#: ../../sflphone-client-gnome/src/toolbar.c:187
 msgid "Pick up"
 msgstr ""
 
-#: ../sflphone-gtk/src/calltree.c:450 ../sflphone-gtk/src/calltree.c:452
+#: ../../sflphone-client-gnome/src/toolbar.c:195
+#: ../../sflphone-client-gnome/src/toolbar.c:197
 msgid "Hang up"
 msgstr ""
 
-#: ../sflphone-gtk/src/calltree.c:460 ../sflphone-gtk/src/calltree.c:462
+#: ../../sflphone-client-gnome/src/toolbar.c:205
+#: ../../sflphone-client-gnome/src/toolbar.c:207
 msgid "Off Hold"
 msgstr ""
 
-#: ../sflphone-gtk/src/calltree.c:471 ../sflphone-gtk/src/calltree.c:473
+#: ../../sflphone-client-gnome/src/toolbar.c:216
+#: ../../sflphone-client-gnome/src/toolbar.c:218
 msgid "On Hold"
 msgstr ""
 
-#: ../sflphone-gtk/src/calltree.c:484 ../sflphone-gtk/src/calltree.c:486
+#: ../../sflphone-client-gnome/src/toolbar.c:229
+#: ../../sflphone-client-gnome/src/toolbar.c:231
 msgid "Transfer"
 msgstr ""
 
-#: ../sflphone-gtk/src/calltree.c:496 ../sflphone-gtk/src/calltree.c:498
+#: ../../sflphone-client-gnome/src/toolbar.c:241
+#: ../../sflphone-client-gnome/src/toolbar.c:243
 msgid "History"
 msgstr ""
 
-#: ../sflphone-gtk/src/calltree.c:506 ../sflphone-gtk/src/calltree.c:510
+#: ../../sflphone-client-gnome/src/toolbar.c:252
+#: ../../sflphone-client-gnome/src/toolbar.c:254
+msgid "Address book"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/toolbar.c:260
+#: ../../sflphone-client-gnome/src/toolbar.c:264
 msgid "Voicemail"
 msgstr ""
 
-#: ../sflphone-gtk/src/calltree.c:521
+#: ../../sflphone-client-gnome/src/toolbar.c:272
 msgid "Record a call"
 msgstr ""
 
-#: ../sflphone-gtk/src/configwindow.c:382
-msgid "Protocol"
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:108
+msgid "Account settings"
 msgstr ""
 
-#: ../sflphone-gtk/src/configwindow.c:389
-msgid "Status"
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:120
+msgid "Account Parameters"
 msgstr ""
 
-#: ../sflphone-gtk/src/configwindow.c:492
-msgid "Stun parameters will apply to each SIP account created."
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:142
+msgid "_Enable this account"
 msgstr ""
 
-#: ../sflphone-gtk/src/configwindow.c:500
-msgid "Enable it if you are behind a firewall"
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:156
+msgid "_Protocol"
 msgstr ""
 
-#: ../sflphone-gtk/src/configwindow.c:508
-msgid "Format: name.server:port"
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:174
+msgid "Unknown"
 msgstr ""
 
-#: ../sflphone-gtk/src/configwindow.c:558
-msgid "Desktop Notification"
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:265
+#: ../../sflphone-client-gnome/src/config/configwindow.c:732
+msgid "General"
 msgstr ""
 
-#: ../sflphone-gtk/src/configwindow.c:566
-msgid "_Enable"
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:276
+msgid "_Use Evolution address books"
 msgstr ""
 
-#: ../sflphone-gtk/src/configwindow.c:571
-msgid "_Notify voice mails"
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:283
+msgid "Download limit:"
 msgstr ""
 
-#: ../sflphone-gtk/src/configwindow.c:577
-msgid "System Tray Icon"
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:294
+msgid "_Display contact photo if available"
 msgstr ""
 
-#: ../sflphone-gtk/src/configwindow.c:585
-msgid "_Popup main window on incoming call"
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:301
+msgid "Fields"
 msgstr ""
 
-#: ../sflphone-gtk/src/configwindow.c:590
-msgid "Ne_ver popup main window"
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:311
+msgid "Use the following fields from Evolution's address books:"
 msgstr ""
 
-#: ../sflphone-gtk/src/configwindow.c:594
-msgid "_Start hidden"
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:316
+msgid "_Business phone"
 msgstr ""
 
-#: ../sflphone-gtk/src/configwindow.c:600
-msgid "Calls History"
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:321
+msgid "_Home phone"
 msgstr ""
 
-#: ../sflphone-gtk/src/configwindow.c:608
-msgid "_Maximum number of calls"
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:326
+msgid "_Mobile phone"
 msgstr ""
 
-#: ../sflphone-gtk/src/configwindow.c:624
-msgid "PulseAudio sound server"
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:333
+msgid "Address Books"
 msgstr ""
 
-#: ../sflphone-gtk/src/configwindow.c:632
-msgid "_Control running applications volume"
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:343
+msgid "Select which Evolution address books to use:"
 msgstr ""
 
-#: ../sflphone-gtk/src/configwindow.c:645
-msgid "SIP Port"
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:377
+#: ../../sflphone-client-gnome/src/config/audioconf.c:574
+msgid "Name"
 msgstr ""
 
-#: ../sflphone-gtk/src/configwindow.c:658
-msgid "Port:"
+#: ../../sflphone-client-gnome/src/config/audioconf.c:155
+#, c-format
+msgid "audio device index for output = %d"
 msgstr ""
 
-#: ../sflphone-gtk/src/configwindow.c:703
-msgid "General"
+#: ../../sflphone-client-gnome/src/config/audioconf.c:579
+msgid "Frequency"
 msgstr ""
 
-#: ../sflphone-gtk/src/configwindow.c:714
-msgid "_Destination folder"
+#: ../../sflphone-client-gnome/src/config/audioconf.c:584
+msgid "Bitrate"
 msgstr ""
 
-#: ../sflphone-gtk/src/configwindow.c:719
-msgid "Select a folder"
+#: ../../sflphone-client-gnome/src/config/audioconf.c:589
+msgid "Bandwidth"
 msgstr ""
 
-#: ../sflphone-gtk/src/configwindow.c:744
-msgid "Preferences"
+#: ../../sflphone-client-gnome/src/config/audioconf.c:652
+msgid "Pulseaudio"
 msgstr ""
 
-#: ../sflphone-gtk/src/configwindow.c:764
-msgid "General Settings"
+#: ../../sflphone-client-gnome/src/config/audioconf.c:655
+msgid "ALSA"
 msgstr ""
 
-#: ../sflphone-gtk/src/configwindow.c:769
-msgid "Audio Settings"
+#: ../../sflphone-client-gnome/src/config/audioconf.c:681
+msgid "ALSA plugin"
 msgstr ""
 
-#: ../sflphone-gtk/src/configwindow.c:774
-msgid "Record"
+#: ../../sflphone-client-gnome/src/config/audioconf.c:703
+msgid "Output"
 msgstr ""
 
-#: ../sflphone-gtk/src/configwindow.c:798
-msgid "Accounts"
+#: ../../sflphone-client-gnome/src/config/audioconf.c:725
+msgid "Input"
 msgstr ""
 
-#: ../sflphone-gtk/src/configwindow.c:810
-msgid "Accounts previously setup"
+#: ../../sflphone-client-gnome/src/config/audioconf.c:758
+msgid "_Enable ringtones"
 msgstr ""
 
-#: ../sflphone-gtk/src/errors.c:28
-msgid ""
-"<b>ALSA notification</b>\n"
-"\n"
-"Error while opening playback device"
+#: ../../sflphone-client-gnome/src/config/audioconf.c:764
+msgid "Choose a ringtone"
 msgstr ""
 
-#: ../sflphone-gtk/src/errors.c:31
-msgid ""
-"<b>ALSA notification</b>\n"
-"\n"
-"Error while opening capture device"
+#: ../../sflphone-client-gnome/src/config/audioconf.c:769
+msgid "Audio Files"
 msgstr ""
 
-#: ../sflphone-gtk/src/errors.c:34
-msgid ""
-"<b>Pulseaudio notification</b>\n"
-"\n"
-"Pulseaudio is not running"
+#: ../../sflphone-client-gnome/src/config/audioconf.c:788
+msgid "_Voice Activity Detection"
 msgstr ""
 
-#: ../sflphone-gtk/src/historyfilter.c:49
-#: ../sflphone-gtk/src/historyfilter.c:68
-#: ../sflphone-gtk/src/historyfilter.c:83
-msgid "Search"
+#: ../../sflphone-client-gnome/src/config/audioconf.c:798
+msgid "_Noise Reduction (Narrow-Band Companding)"
 msgstr ""
 
-#: ../sflphone-gtk/src/mainwindow.c:69
-msgid "There is one call in progress."
+#: ../../sflphone-client-gnome/src/config/audioconf.c:826
+msgid "Sound Manager"
 msgstr ""
 
-#: ../sflphone-gtk/src/mainwindow.c:73
-msgid "There are calls in progress."
+#: ../../sflphone-client-gnome/src/config/audioconf.c:833
+msgid "ALSA configuration"
 msgstr ""
 
-#: ../sflphone-gtk/src/mainwindow.c:82
-msgid "Do you still want to quit?"
+#: ../../sflphone-client-gnome/src/config/audioconf.c:850
+msgid "Codecs"
 msgstr ""
 
-#: ../sflphone-gtk/src/menus.c:135
-msgid "SFLphone is a VoIP client compatible with SIP and IAX2 protocols."
+#: ../../sflphone-client-gnome/src/config/audioconf.c:873
+msgid "Ringtones"
 msgstr ""
 
-#: ../sflphone-gtk/src/menus.c:138
-msgid "About SFLphone"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:402
+msgid "Protocol"
 msgstr ""
 
-#: ../sflphone-gtk/src/menus.c:161
-msgid "_Help"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:409
+msgid "Status"
 msgstr ""
 
-#: ../sflphone-gtk/src/menus.c:278
-msgid "_New call"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:512
+msgid "Stun parameters will apply to each SIP account created."
 msgstr ""
 
-#: ../sflphone-gtk/src/menus.c:290 ../sflphone-gtk/src/menus.c:760
-msgid "_Pick up"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:520
+msgid "Enable it if you are behind a firewall"
 msgstr ""
 
-#: ../sflphone-gtk/src/menus.c:300 ../sflphone-gtk/src/menus.c:772
-msgid "_Hang up"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:528
+msgid "Format: name.server:port"
 msgstr ""
 
-#: ../sflphone-gtk/src/menus.c:310 ../sflphone-gtk/src/menus.c:784
-msgid "On _Hold"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:579
+msgid "Desktop Notifications"
 msgstr ""
 
-#: ../sflphone-gtk/src/menus.c:326
-msgid "_Account Assistant"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:588
+msgid "_Enable notifications"
 msgstr ""
 
-#: ../sflphone-gtk/src/menus.c:356
-msgid "_Call"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:594
+msgid "Enable voicemail _notifications"
 msgstr ""
 
-#: ../sflphone-gtk/src/menus.c:529
-msgid "_Clear history"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:605
+msgid "System Tray Icon"
 msgstr ""
 
-#: ../sflphone-gtk/src/menus.c:541
-msgid "_Accounts"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:613
+msgid "_Popup main window on incoming call"
 msgstr ""
 
-#: ../sflphone-gtk/src/menus.c:556
-msgid "_Edit"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:618
+msgid "Ne_ver popup main window"
 msgstr ""
 
-#: ../sflphone-gtk/src/menus.c:616
-msgid "_Dialpad"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:622
+msgid "Hide SFLphone window on _startup"
 msgstr ""
 
-#: ../sflphone-gtk/src/menus.c:628
-msgid "_Volume controls"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:628
+msgid "Calls History"
 msgstr ""
 
-#: ../sflphone-gtk/src/menus.c:637
-msgid "_Search history"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:636
+msgid "_History size limit"
 msgstr ""
 
-#: ../sflphone-gtk/src/menus.c:645
-msgid "_View"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:653
+msgid "PulseAudio sound server"
 msgstr ""
 
-#: ../sflphone-gtk/src/menus.c:867
-msgid "_Call back"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:661
+msgid "Mute other applications during a _call"
 msgstr ""
 
-#: ../sflphone-gtk/src/sflnotify.c:34 ../sflphone-gtk/src/sflnotify.c:100
-#, c-format
-msgid "%s account: %s"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:674
+msgid "SIP Port"
 msgstr ""
 
-#: ../sflphone-gtk/src/sflnotify.c:37
-#, c-format
-msgid "<i>From:</i> %s"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:687
+msgid "Port:"
 msgstr ""
 
-#: ../sflphone-gtk/src/sflnotify.c:52
-msgid "Accept"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:742
+msgid "_Recordings folder"
 msgstr ""
 
-#: ../sflphone-gtk/src/sflnotify.c:53
-msgid "Refuse"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:748
+msgid "Select a folder"
 msgstr ""
 
-#: ../sflphone-gtk/src/sflnotify.c:54 ../sflphone-gtk/src/sflnotify.c:117
-#: ../sflphone-gtk/src/sflnotify.c:154
-msgid "Ignore"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:773
+msgid "Preferences"
 msgstr ""
 
-#: ../sflphone-gtk/src/sflnotify.c:136
-#, c-format
-msgid "Calling with %s account <i>%s</i>"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:793
+msgid "General Settings"
 msgstr ""
 
-#: ../sflphone-gtk/src/sflnotify.c:140
-msgid "Current account"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:798
+msgid "Audio Settings"
 msgstr ""
 
-#: ../sflphone-gtk/src/sflnotify.c:169
-msgid "You haven't setup any accounts"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:803
+msgid "Recordings"
 msgstr ""
 
-#: ../sflphone-gtk/src/sflnotify.c:185 ../sflphone-gtk/src/sflnotify.c:224
-msgid "Setup Accounts"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:808
+msgid "Address Book"
 msgstr ""
 
-#: ../sflphone-gtk/src/sflnotify.c:208
-msgid "You have no registered accounts"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:813
+msgid "Hooks"
 msgstr ""
 
-#: ../sflphone-gtk/src/sliders.c:161
-msgid "Speakers volume"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:840
+msgid "Accounts"
 msgstr ""
 
-#: ../sflphone-gtk/src/sliders.c:163
-msgid "Mic volume"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:852
+msgid "Configured Accounts"
 msgstr ""
 
-#: ../sflphone-gtk/src/statusicon.c:91
-msgid "_Show main window"
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:130
+msgid "URL Passing"
 msgstr ""
 
-#: ../sflphone-gtk/src/statusicon.c:124
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:140
 #, c-format
-msgid "SFLphone - %i accounts registered"
+msgid ""
+"SFLphone can run custom commands if incoming calls come with an URL "
+"attached.\n"
+"In this case, %s will be replaced with the passed URL."
 msgstr ""
 
-#: ../sflphone-gtk/src/timestamp.c:46
-msgid "<small>Missed call</small>"
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:143
+msgid "Trigger on specific _SIP header"
 msgstr ""
 
-#: ../sflphone-gtk/src/timestamp.c:64
-#, c-format
-msgid "<small>Duration:</small> %s"
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:155
+msgid "Trigger on _IAX2 URL"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:160
+msgid "_Command to run: "
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:168
+msgid "Phone Number Rewriting"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:178
+msgid "_Prefix dialed numbers with:"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/contacts/history.c:83
+#: ../../sflphone-client-gnome/src/contacts/searchbar.c:123
+msgid "Search history"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/contacts/history.c:83
+#: ../../sflphone-client-gnome/src/contacts/searchbar.c:110
+msgid "Search contact"
 msgstr ""
diff --git a/sflphone-common/po/zh_CN.po b/sflphone-common/po/zh_CN.po
index fee36e06cebb45b0096f21b5a3dfb1f3591ac917..7de05fd789dc5291fc8b58039702ca8ef61aa695 100644
--- a/sflphone-common/po/zh_CN.po
+++ b/sflphone-common/po/zh_CN.po
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: SFLphone 0.9.2\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-04-02 11:15-0400\n"
+"POT-Creation-Date: 2009-05-21 10:45-0400\n"
 "PO-Revision-Date: 2008-10-28 14:15\n"
 "Last-Translator: Yun Liu <yun.liu@savoirfairelinux.com>\n"
 "Language-Team: SavoirFaireLinux Inc <sflphoneteam@savoirfairelinux.com>\n"
@@ -17,63 +17,69 @@ msgstr ""
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=n>1;\n"
 
-#: ../sflphone-gtk/src/accountlist.c:158
+#: ../../sflphone-client-gnome/src/accountlist.c:169
 msgid "Registered"
 msgstr "已注册"
 
-#: ../sflphone-gtk/src/accountlist.c:161
+#: ../../sflphone-client-gnome/src/accountlist.c:172
 msgid "Not Registered"
 msgstr "未注册"
 
-#: ../sflphone-gtk/src/accountlist.c:164
+#: ../../sflphone-client-gnome/src/accountlist.c:175
 msgid "Trying..."
 msgstr "正在连接..."
 
-#: ../sflphone-gtk/src/accountlist.c:167 ../sflphone-gtk/src/sflnotify.c:171
-#: ../sflphone-gtk/src/sflnotify.c:212
+#: ../../sflphone-client-gnome/src/accountlist.c:178
+#: ../../sflphone-client-gnome/src/sflnotify.c:176
+#: ../../sflphone-client-gnome/src/sflnotify.c:217
 msgid "Error"
 msgstr "注册失败"
 
-#: ../sflphone-gtk/src/accountlist.c:170
+#: ../../sflphone-client-gnome/src/accountlist.c:181
 msgid "Bad authentification"
 msgstr "认证错误"
 
-#: ../sflphone-gtk/src/accountlist.c:173
+#: ../../sflphone-client-gnome/src/accountlist.c:184
 msgid "Network unreachable"
 msgstr "网络连接失败"
 
-#: ../sflphone-gtk/src/accountlist.c:176
+#: ../../sflphone-client-gnome/src/accountlist.c:187
 msgid "Host unreachable"
 msgstr "服务器连接失败"
 
-#: ../sflphone-gtk/src/accountlist.c:179
+#: ../../sflphone-client-gnome/src/accountlist.c:190
 msgid "Stun configuration error"
 msgstr "Stun配置有误"
 
-#: ../sflphone-gtk/src/accountlist.c:182
+#: ../../sflphone-client-gnome/src/accountlist.c:193
 msgid "Stun server invalid"
 msgstr "Stun服务器无效"
 
-#: ../sflphone-gtk/src/accountlist.c:185
+#: ../../sflphone-client-gnome/src/accountlist.c:196
 msgid "Invalid"
 msgstr "无效"
 
-#: ../sflphone-gtk/src/actions.c:55 ../sflphone-gtk/src/sflnotify.c:103
+#: ../../sflphone-client-gnome/src/actions.c:55
+#: ../../sflphone-client-gnome/src/sflnotify.c:108
 #, c-format
 msgid "%d voice mails"
 msgstr "%d 个语音信息"
 
-#: ../sflphone-gtk/src/actions.c:57
+#: ../../sflphone-client-gnome/src/actions.c:57
 #, c-format
 msgid "%d voice mail"
 msgstr "%d 个语音信息"
 
-#: ../sflphone-gtk/src/actions.c:81
+#: ../../sflphone-client-gnome/src/actions.c:81
 #, c-format
-msgid "%s account- %s"
-msgstr "%s 帐户- %s"
+msgid "Using %s (%s)"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/actions.c:87
+msgid "No registered account"
+msgstr "未发现已注册帐户"
 
-#: ../sflphone-gtk/src/actions.c:225
+#: ../../sflphone-client-gnome/src/actions.c:229
 msgid ""
 "Unable to connect to the SFLphone server.\n"
 "Make sure the daemon is running."
@@ -81,11 +87,17 @@ msgstr ""
 "连接SFLphone服务器失败.\n"
 "请检查daemon是否还在运行."
 
-#: ../sflphone-gtk/src/actions.c:764
-msgid "%s account- %s             %s"
-msgstr "%s 帐户- %s             %s"
+#: ../../sflphone-client-gnome/src/actions.c:787
+#, c-format
+msgid "IP call - %s"
+msgstr "IP 电话 - %s"
 
-#: ../sflphone-gtk/src/actions.c:861
+#: ../../sflphone-client-gnome/src/actions.c:790
+#, c-format
+msgid "Using %s (%s) - Codec: %s"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/actions.c:880
 #, c-format
 msgid ""
 "<b>Error: No audio codecs found.\n"
@@ -98,7 +110,8 @@ msgstr ""
 "</b> SFL声音codecs文件应位于<i>%s</i> 或 位于主目录( <i>%s</i> )的<b>."
 "sflphone</b>目录下"
 
-#: ../sflphone-gtk/src/assistant.c:31
+#: ../../sflphone-client-gnome/src/assistant.c:35
+#, c-format
 msgid ""
 "This assistant is now finished.\n"
 "You can at any time check your registration state or modify your accounts "
@@ -107,7 +120,6 @@ msgid ""
 "Alias :    %s\n"
 "Server :   %s\n"
 "Username : %s\n"
-"Password : %s"
 msgstr ""
 "配置完成.\n"
 "你可以随时在 选项/帐户 窗口中查看注册状态或者修改帐户参数.\n"
@@ -115,623 +127,743 @@ msgstr ""
 "别名:     %s\n"
 "服务器:   %s\n"
 "用户名:   %s\n"
-"密码:     %s"
 
-#: ../sflphone-gtk/src/assistant.c:154
+#: ../../sflphone-client-gnome/src/assistant.c:160
 msgid "SFLphone account configuration wizard"
 msgstr "SFLphone 帐户设置向导"
 
-#: ../sflphone-gtk/src/assistant.c:180
+#: ../../sflphone-client-gnome/src/assistant.c:186
 msgid "Welcome to SFLphone!"
 msgstr "欢迎使用SFLphone!"
 
-#: ../sflphone-gtk/src/assistant.c:181
+#: ../../sflphone-client-gnome/src/assistant.c:187
 msgid "This installation wizard will help you configure an account."
 msgstr "安装向导将帮助您配置帐户"
 
-#: ../sflphone-gtk/src/assistant.c:195
+#: ../../sflphone-client-gnome/src/assistant.c:201
 msgid "VoIP Protocols"
 msgstr "VoIP协议"
 
-#: ../sflphone-gtk/src/assistant.c:195
+#: ../../sflphone-client-gnome/src/assistant.c:201
 msgid "Select an account type:"
 msgstr "选择帐户类型:"
 
-#: ../sflphone-gtk/src/assistant.c:213
+#: ../../sflphone-client-gnome/src/assistant.c:219
 msgid "Account"
 msgstr "帐户"
 
-#: ../sflphone-gtk/src/assistant.c:213
+#: ../../sflphone-client-gnome/src/assistant.c:219
 msgid "Please select one of the following option:"
 msgstr "请选择以下选项中的一个:"
 
-#: ../sflphone-gtk/src/assistant.c:215
+#: ../../sflphone-client-gnome/src/assistant.c:221
 msgid "Create a free SIP/IAX2 account on sflphone.org"
 msgstr "在sflphone.org上创建免费的SIP/IAX2帐户"
 
-#: ../sflphone-gtk/src/assistant.c:217
+#: ../../sflphone-client-gnome/src/assistant.c:223
 msgid "Register an existing SIP or IAX2 account"
 msgstr "注册已存在的SIP或IAX2帐户"
 
-#: ../sflphone-gtk/src/assistant.c:230
+#: ../../sflphone-client-gnome/src/assistant.c:236
 msgid "SIP account configuration"
 msgstr "SIP帐户配置"
 
-#: ../sflphone-gtk/src/assistant.c:230 ../sflphone-gtk/src/assistant.c:305
+#: ../../sflphone-client-gnome/src/assistant.c:236
+#: ../../sflphone-client-gnome/src/assistant.c:332
 msgid "Please fill the following information:"
 msgstr "请填写以下信息:"
 
-#: ../sflphone-gtk/src/assistant.c:238 ../sflphone-gtk/src/assistant.c:313
-#: ../sflphone-gtk/src/config/accountwindow.c:143
+#: ../../sflphone-client-gnome/src/assistant.c:244
+#: ../../sflphone-client-gnome/src/assistant.c:340
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:148
 msgid "_Alias"
 msgstr "别名(A)"
 
-#: ../sflphone-gtk/src/assistant.c:246 ../sflphone-gtk/src/assistant.c:321
-#: ../sflphone-gtk/src/config/accountwindow.c:179
+#: ../../sflphone-client-gnome/src/assistant.c:252
+#: ../../sflphone-client-gnome/src/assistant.c:348
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:184
 msgid "_Host name"
 msgstr "主机名(H)"
 
-#: ../sflphone-gtk/src/assistant.c:254 ../sflphone-gtk/src/assistant.c:329
-#: ../sflphone-gtk/src/config/accountwindow.c:187
+#: ../../sflphone-client-gnome/src/assistant.c:260
+#: ../../sflphone-client-gnome/src/assistant.c:356
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:192
 msgid "_User name"
 msgstr "用户名(U)"
 
-#: ../sflphone-gtk/src/assistant.c:264 ../sflphone-gtk/src/assistant.c:339
-#: ../sflphone-gtk/src/config/accountwindow.c:198
+#: ../../sflphone-client-gnome/src/assistant.c:276
+#: ../../sflphone-client-gnome/src/assistant.c:371
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:207
 msgid "_Password"
 msgstr "密码(P)"
 
-#: ../sflphone-gtk/src/assistant.c:282
+#: ../../sflphone-client-gnome/src/assistant.c:294
+#: ../../sflphone-client-gnome/src/assistant.c:387
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:223
+msgid "_Voicemail number"
+msgstr "语音信箱号码(V)"
+
+#: ../../sflphone-client-gnome/src/assistant.c:309
 msgid "Optional Email Address "
 msgstr "可选邮件地址 "
 
-#: ../sflphone-gtk/src/assistant.c:282
+#: ../../sflphone-client-gnome/src/assistant.c:309
 msgid "This email address will be use to send your voicemail messages"
 msgstr "这个邮件地址将被用来发送您的语音邮箱消息"
 
-#: ../sflphone-gtk/src/assistant.c:290
+#: ../../sflphone-client-gnome/src/assistant.c:317
 msgid "_Email"
 msgstr " 邮件(E)"
 
-#: ../sflphone-gtk/src/assistant.c:305
+#: ../../sflphone-client-gnome/src/assistant.c:332
 msgid "IAX2 account configuration"
 msgstr "IAX2帐户配置"
 
-#: ../sflphone-gtk/src/assistant.c:360
-#: ../sflphone-gtk/src/config/configwindow.c:837
+#: ../../sflphone-client-gnome/src/assistant.c:405
+#: ../../sflphone-client-gnome/src/config/configwindow.c:863
 msgid "Network Address Translation"
 msgstr "网络地址解析"
 
-#: ../sflphone-gtk/src/assistant.c:360
+#: ../../sflphone-client-gnome/src/assistant.c:405
 msgid "You should probably enable this if you are behind a firewall."
 msgstr "如果你使用网络使用防火墙,你很有可能需要设定此项."
 
-#: ../sflphone-gtk/src/assistant.c:369
-#: ../sflphone-gtk/src/config/configwindow.c:499
+#: ../../sflphone-client-gnome/src/assistant.c:414
+#: ../../sflphone-client-gnome/src/config/configwindow.c:516
 msgid "E_nable STUN"
 msgstr "使用STUN(n)"
 
-#: ../sflphone-gtk/src/assistant.c:376
+#: ../../sflphone-client-gnome/src/assistant.c:421
 msgid "_STUN server"
 msgstr "STUN服务器(S)"
 
-#: ../sflphone-gtk/src/assistant.c:390
+#: ../../sflphone-client-gnome/src/assistant.c:435
 msgid "Account Registration"
 msgstr "帐户注册"
 
-#: ../sflphone-gtk/src/assistant.c:390
+#: ../../sflphone-client-gnome/src/assistant.c:435
 msgid "Congratulations!"
 msgstr "恭喜!"
 
-#: ../sflphone-gtk/src/context-menu.c:296 ../sflphone-gtk/src/menus.c:308
-#: ../sflphone-gtk/src/menus.c:791
-msgid "_Pick up"
-msgstr "拨出(P)"
-
-#: ../sflphone-gtk/src/context-menu.c:308 ../sflphone-gtk/src/menus.c:318
-#: ../sflphone-gtk/src/menus.c:803
-msgid "_Hang up"
-msgstr "放下(H)"
-
-#: ../sflphone-gtk/src/context-menu.c:320 ../sflphone-gtk/src/menus.c:328
-#: ../sflphone-gtk/src/menus.c:815
-msgid "On _Hold"
-msgstr "保持(H)"
-
-#: ../sflphone-gtk/src/context-menu.c:332 ../sflphone-gtk/src/menus.c:340
-#: ../sflphone-gtk/src/menus.c:827
-msgid "_Record"
-msgstr "记录(R)"
-
-#: ../sflphone-gtk/src/errors.c:28
+#: ../../sflphone-client-gnome/src/errors.c:28
 msgid ""
-"<b>ALSA notification</b>\n"
+"ALSA notification\n"
 "\n"
 "Error while opening playback device"
 msgstr ""
-"<b>ALSA提示</b>\n"
+"ALSA提示\n"
 "\n"
 "打开回放设备时出错"
 
-#: ../sflphone-gtk/src/errors.c:31
+#: ../../sflphone-client-gnome/src/errors.c:31
 msgid ""
-"<b>ALSA notification</b>\n"
+"ALSA notification\n"
 "\n"
 "Error while opening capture device"
 msgstr ""
-"<b>ALSA提示</b>\n"
+"ALSA提示\n"
 "\n"
 "打开采集设备时出错"
 
-#: ../sflphone-gtk/src/errors.c:34
+#: ../../sflphone-client-gnome/src/errors.c:34
 msgid ""
-"<b>Pulseaudio notification</b>\n"
+"Pulseaudio notification\n"
 "\n"
 "Pulseaudio is not running"
 msgstr ""
+"Pulseaudio提示\n"
+"\n"
+"Pulseaudio未运行"
 
-#: ../sflphone-gtk/src/mainwindow.c:70
+#: ../../sflphone-client-gnome/src/mainwindow.c:70
 msgid "There is one call in progress."
 msgstr "有一个电话正在处理"
 
-#: ../sflphone-gtk/src/mainwindow.c:74
+#: ../../sflphone-client-gnome/src/mainwindow.c:74
 msgid "There are calls in progress."
 msgstr "有电话正在处理中"
 
-#: ../sflphone-gtk/src/mainwindow.c:83
+#: ../../sflphone-client-gnome/src/mainwindow.c:83
 msgid "Do you still want to quit?"
 msgstr "确认要退出?"
 
-#: ../sflphone-gtk/src/menus.c:131
+#: ../../sflphone-client-gnome/src/mainwindow.c:296
+msgid "SFLphone Error"
+msgstr "SFLphone出错"
+
+#: ../../sflphone-client-gnome/src/menus.c:134
 msgid "SFLphone is a VoIP client compatible with SIP and IAX2 protocols."
 msgstr "SFLphone是一个VoIP客户端,它兼容SIP和IAX2协议."
 
-#: ../sflphone-gtk/src/menus.c:134
+#: ../../sflphone-client-gnome/src/menus.c:137
 msgid "About SFLphone"
 msgstr "关于SFLphone"
 
-#: ../sflphone-gtk/src/menus.c:157
+#: ../../sflphone-client-gnome/src/menus.c:161
 msgid "_Help"
 msgstr "帮助(H)"
 
-#: ../sflphone-gtk/src/menus.c:296 ../sflphone-gtk/src/menus.c:949
+#: ../../sflphone-client-gnome/src/menus.c:300
+#: ../../sflphone-client-gnome/src/menus.c:971
 msgid "_New call"
 msgstr "新电话(N)"
 
-#: ../sflphone-gtk/src/menus.c:354
-msgid "_Account Assistant"
-msgstr "帐户向导(A)"
+#: ../../sflphone-client-gnome/src/menus.c:312
+#: ../../sflphone-client-gnome/src/menus.c:803
+msgid "_Pick up"
+msgstr "拨出(P)"
+
+#: ../../sflphone-client-gnome/src/menus.c:322
+#: ../../sflphone-client-gnome/src/menus.c:815
+msgid "_Hang up"
+msgstr "放下(H)"
+
+#: ../../sflphone-client-gnome/src/menus.c:332
+#: ../../sflphone-client-gnome/src/menus.c:827
+msgid "On _Hold"
+msgstr "保持(H)"
+
+#: ../../sflphone-client-gnome/src/menus.c:344
+#: ../../sflphone-client-gnome/src/menus.c:839
+msgid "_Record"
+msgstr "记录(R)"
 
-#: ../sflphone-gtk/src/menus.c:384
+#: ../../sflphone-client-gnome/src/menus.c:358
+msgid "_Account creation wizard"
+msgstr "帐户创建向导"
+
+#: ../../sflphone-client-gnome/src/menus.c:388
 msgid "_Call"
 msgstr "电话"
 
-#: ../sflphone-gtk/src/menus.c:557
+#: ../../sflphone-client-gnome/src/menus.c:561
 msgid "_Clear history"
 msgstr "清空历史记录(C)"
 
-#: ../sflphone-gtk/src/menus.c:569
+#: ../../sflphone-client-gnome/src/menus.c:573
 msgid "_Accounts"
 msgstr "帐户(A)"
 
-#: ../sflphone-gtk/src/menus.c:584
+#: ../../sflphone-client-gnome/src/menus.c:588
 msgid "_Edit"
 msgstr "编辑(E)"
 
-#: ../sflphone-gtk/src/menus.c:644
+#: ../../sflphone-client-gnome/src/menus.c:649
 msgid "_Dialpad"
 msgstr "拨号面板"
 
-#: ../sflphone-gtk/src/menus.c:656
+#: ../../sflphone-client-gnome/src/menus.c:661
 msgid "_Volume controls"
 msgstr "音量控制(V)"
 
-#: ../sflphone-gtk/src/menus.c:665
-msgid "_Search contact"
-msgstr "查找历史(S)"
-
-#: ../sflphone-gtk/src/menus.c:673
+#: ../../sflphone-client-gnome/src/menus.c:679
 msgid "_View"
 msgstr "查看(V)"
 
-#: ../sflphone-gtk/src/menus.c:885
+#: ../../sflphone-client-gnome/src/menus.c:899
 msgid "_Call back"
 msgstr "回叫(C)"
 
-#: ../sflphone-gtk/src/sflnotify.c:34 ../sflphone-gtk/src/sflnotify.c:100
+#: ../../sflphone-client-gnome/src/menus.c:1082
+msgid "Edit phone"
+msgstr "编辑电话"
+
+#: ../../sflphone-client-gnome/src/menus.c:1093
+msgid "Edit the phone number before making a call"
+msgstr "拨出电话前编辑电话号码"
+
+#: ../../sflphone-client-gnome/src/sflnotify.c:38
+#: ../../sflphone-client-gnome/src/sflnotify.c:105
 #, c-format
 msgid "%s account: %s"
 msgstr "%s 帐户: %s"
 
-#: ../sflphone-gtk/src/sflnotify.c:37
+#: ../../sflphone-client-gnome/src/sflnotify.c:42
 #, c-format
 msgid "<i>From:</i> %s"
 msgstr "<i>拨入方:</i> %s"
 
-#: ../sflphone-gtk/src/sflnotify.c:52
+#: ../../sflphone-client-gnome/src/sflnotify.c:57
 msgid "Accept"
 msgstr "接受"
 
-#: ../sflphone-gtk/src/sflnotify.c:53
+#: ../../sflphone-client-gnome/src/sflnotify.c:58
 msgid "Refuse"
 msgstr "拒绝"
 
-#: ../sflphone-gtk/src/sflnotify.c:54 ../sflphone-gtk/src/sflnotify.c:117
-#: ../sflphone-gtk/src/sflnotify.c:154
+#: ../../sflphone-client-gnome/src/sflnotify.c:59
+#: ../../sflphone-client-gnome/src/sflnotify.c:122
+#: ../../sflphone-client-gnome/src/sflnotify.c:159
 msgid "Ignore"
 msgstr "忽略"
 
-#: ../sflphone-gtk/src/sflnotify.c:136
+#: ../../sflphone-client-gnome/src/sflnotify.c:141
 #, c-format
 msgid "Calling with %s account <i>%s</i>"
 msgstr "使用%s帐户<i>%s</i>呼叫"
 
-#: ../sflphone-gtk/src/sflnotify.c:140
+#: ../../sflphone-client-gnome/src/sflnotify.c:145
 msgid "Current account"
 msgstr "当前帐户"
 
-#: ../sflphone-gtk/src/sflnotify.c:169
+#: ../../sflphone-client-gnome/src/sflnotify.c:174
 msgid "You haven't setup any accounts"
 msgstr "你没有设置任何帐户"
 
-#: ../sflphone-gtk/src/sflnotify.c:209
+#: ../../sflphone-client-gnome/src/sflnotify.c:214
 msgid "You have no registered accounts"
 msgstr "未发现已注册帐户"
 
-#: ../sflphone-gtk/src/sliders.c:161
+#: ../../sflphone-client-gnome/src/sliders.c:161
 msgid "Speakers volume"
 msgstr "扬声器音量"
 
-#: ../sflphone-gtk/src/sliders.c:163
+#: ../../sflphone-client-gnome/src/sliders.c:163
 msgid "Mic volume"
 msgstr "话筒音量"
 
-#: ../sflphone-gtk/src/statusicon.c:91
+#: ../../sflphone-client-gnome/src/statusicon.c:91
 msgid "_Show main window"
 msgstr "显示主窗口(S)"
 
-#: ../sflphone-gtk/src/statusicon.c:124
+#: ../../sflphone-client-gnome/src/statusicon.c:124
 #, c-format
-msgid "SFLphone - %i accounts registered"
-msgstr "SFLphone - %i 个帐户已注册"
+msgid "SFLphone - %i accounts configured"
+msgstr "SFLphone - %i 个帐户已配置"
 
-#: ../sflphone-gtk/src/timestamp.c:46
+#: ../../sflphone-client-gnome/src/timestamp.c:46
 msgid "<small>Missed call</small>"
 msgstr "<small>未接电话</small>"
 
-#: ../sflphone-gtk/src/timestamp.c:64
+#: ../../sflphone-client-gnome/src/timestamp.c:64
 #, c-format
 msgid "<small>Duration:</small> %s"
 msgstr "<small>时长:</small> %s"
 
-#: ../sflphone-gtk/src/toolbar.c:49
+#: ../../sflphone-client-gnome/src/toolbar.c:50
 #, c-format
 msgid "\"Voicemail\" <%s>"
 msgstr "\"语音邮件\" <%s>"
 
-#: ../sflphone-gtk/src/toolbar.c:175 ../sflphone-gtk/src/toolbar.c:177
+#: ../../sflphone-client-gnome/src/toolbar.c:176
+#: ../../sflphone-client-gnome/src/toolbar.c:178
 msgid "Place a call"
 msgstr "拨号"
 
-#: ../sflphone-gtk/src/toolbar.c:184 ../sflphone-gtk/src/toolbar.c:186
+#: ../../sflphone-client-gnome/src/toolbar.c:185
+#: ../../sflphone-client-gnome/src/toolbar.c:187
 msgid "Pick up"
 msgstr "接电话"
 
-#: ../sflphone-gtk/src/toolbar.c:194 ../sflphone-gtk/src/toolbar.c:196
+#: ../../sflphone-client-gnome/src/toolbar.c:195
+#: ../../sflphone-client-gnome/src/toolbar.c:197
 msgid "Hang up"
 msgstr "放电话"
 
-#: ../sflphone-gtk/src/toolbar.c:204 ../sflphone-gtk/src/toolbar.c:206
+#: ../../sflphone-client-gnome/src/toolbar.c:205
+#: ../../sflphone-client-gnome/src/toolbar.c:207
 msgid "Off Hold"
 msgstr "恢复通话"
 
-#: ../sflphone-gtk/src/toolbar.c:215 ../sflphone-gtk/src/toolbar.c:217
+#: ../../sflphone-client-gnome/src/toolbar.c:216
+#: ../../sflphone-client-gnome/src/toolbar.c:218
 msgid "On Hold"
 msgstr "待机"
 
-#: ../sflphone-gtk/src/toolbar.c:228 ../sflphone-gtk/src/toolbar.c:230
+#: ../../sflphone-client-gnome/src/toolbar.c:229
+#: ../../sflphone-client-gnome/src/toolbar.c:231
 msgid "Transfer"
 msgstr "转接"
 
-#: ../sflphone-gtk/src/toolbar.c:240 ../sflphone-gtk/src/toolbar.c:242
+#: ../../sflphone-client-gnome/src/toolbar.c:241
+#: ../../sflphone-client-gnome/src/toolbar.c:243
 msgid "History"
 msgstr "历史"
 
-#: ../sflphone-gtk/src/toolbar.c:251 ../sflphone-gtk/src/toolbar.c:253
+#: ../../sflphone-client-gnome/src/toolbar.c:252
+#: ../../sflphone-client-gnome/src/toolbar.c:254
 msgid "Address book"
 msgstr "地址簿"
 
-#: ../sflphone-gtk/src/toolbar.c:258 ../sflphone-gtk/src/toolbar.c:262
+#: ../../sflphone-client-gnome/src/toolbar.c:260
+#: ../../sflphone-client-gnome/src/toolbar.c:264
 msgid "Voicemail"
 msgstr "语音信箱"
 
-#: ../sflphone-gtk/src/toolbar.c:270
+#: ../../sflphone-client-gnome/src/toolbar.c:272
 msgid "Record a call"
 msgstr "记录通话"
 
-#: ../sflphone-gtk/src/contacts/history.c:75
-#: ../sflphone-gtk/src/contacts/searchbar.c:39
-#: ../sflphone-gtk/src/contacts/searchbar.c:65
-msgid "Search"
-msgstr "查找"
-
-#: ../sflphone-gtk/src/config/accountwindow.c:103
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:108
 msgid "Account settings"
 msgstr "帐户设置"
 
-#: ../sflphone-gtk/src/config/accountwindow.c:115
-msgid "Account parameters"
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:120
+msgid "Account Parameters"
 msgstr "帐户相关参数"
 
-#: ../sflphone-gtk/src/config/accountwindow.c:137
-msgid "_Enabled"
-msgstr "启用(E)"
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:142
+msgid "_Enable this account"
+msgstr "启用该账户(E)"
 
-#: ../sflphone-gtk/src/config/accountwindow.c:151
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:156
 msgid "_Protocol"
 msgstr "协议(P)"
 
-#: ../sflphone-gtk/src/config/accountwindow.c:169
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:174
 msgid "Unknown"
 msgstr "未知"
 
-#: ../sflphone-gtk/src/config/accountwindow.c:209
-msgid "_Voicemail box #"
-msgstr "语音信箱(V)"
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:265
+#: ../../sflphone-client-gnome/src/config/configwindow.c:732
+msgid "General"
+msgstr "常用配置"
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:105
-msgid "Search Parameters"
-msgstr "查找相关参数"
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:276
+msgid "_Use Evolution address books"
+msgstr "使用Evolution地址薄(U)"
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:116
-msgid "Maximum result number for a request: "
-msgstr "最大拨号数"
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:283
+msgid "Download limit:"
+msgstr "下载上限:"
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:127
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:294
 msgid "_Display contact photo if available"
 msgstr "如果可行则显示联系人照片(D)"
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:132
-msgid "Search for and display: "
-msgstr "查找并显示:"
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:301
+msgid "Fields"
+msgstr "字段"
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:135
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:311
+msgid "Use the following fields from Evolution's address books:"
+msgstr "使用Evolution地址薄中的如下字段:"
+
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:316
 msgid "_Business phone"
 msgstr "商务电话(B)"
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:140
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:321
 msgid "_Home phone"
 msgstr "家庭电话(H)"
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:145
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:326
 msgid "_Mobile phone"
 msgstr "移动电话(M)"
 
-#: ../sflphone-gtk/src/config/audioconf.c:154
-#, c-format
-msgid "audio device index for output = %d\n"
-msgstr "音频设备索引输出 = %d\n"
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:333
+msgid "Address Books"
+msgstr "地址簿"
 
-#: ../sflphone-gtk/src/config/audioconf.c:562
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:343
+msgid "Select which Evolution address books to use:"
+msgstr "选择使用如下Evolution地址薄:"
+
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:377
+#: ../../sflphone-client-gnome/src/config/audioconf.c:574
 msgid "Name"
 msgstr "名称"
 
-#: ../sflphone-gtk/src/config/audioconf.c:567
+#: ../../sflphone-client-gnome/src/config/audioconf.c:155
+#, c-format
+msgid "audio device index for output = %d"
+msgstr "音频设备输出索引 = %d"
+
+#: ../../sflphone-client-gnome/src/config/audioconf.c:579
 msgid "Frequency"
 msgstr "频率"
 
-#: ../sflphone-gtk/src/config/audioconf.c:572
+#: ../../sflphone-client-gnome/src/config/audioconf.c:584
 msgid "Bitrate"
 msgstr "比率"
 
-#: ../sflphone-gtk/src/config/audioconf.c:577
+#: ../../sflphone-client-gnome/src/config/audioconf.c:589
 msgid "Bandwidth"
 msgstr "带宽"
 
-#: ../sflphone-gtk/src/config/audioconf.c:637
+#: ../../sflphone-client-gnome/src/config/audioconf.c:652
 msgid "Pulseaudio"
 msgstr "Pulseaudio"
 
-#: ../sflphone-gtk/src/config/audioconf.c:640
+#: ../../sflphone-client-gnome/src/config/audioconf.c:655
 msgid "ALSA"
 msgstr "ALSA"
 
-#: ../sflphone-gtk/src/config/audioconf.c:666
+#: ../../sflphone-client-gnome/src/config/audioconf.c:681
 msgid "ALSA plugin"
 msgstr "ALSA插件"
 
-#: ../sflphone-gtk/src/config/audioconf.c:688
+#: ../../sflphone-client-gnome/src/config/audioconf.c:703
 msgid "Output"
 msgstr "输出"
 
-#: ../sflphone-gtk/src/config/audioconf.c:710
+#: ../../sflphone-client-gnome/src/config/audioconf.c:725
 msgid "Input"
 msgstr "输入"
 
-#: ../sflphone-gtk/src/config/audioconf.c:743
+#: ../../sflphone-client-gnome/src/config/audioconf.c:758
 msgid "_Enable ringtones"
 msgstr "启用铃声(E)"
 
-#: ../sflphone-gtk/src/config/audioconf.c:748
+#: ../../sflphone-client-gnome/src/config/audioconf.c:764
 msgid "Choose a ringtone"
 msgstr "选择铃声"
 
-#: ../sflphone-gtk/src/config/audioconf.c:753
+#: ../../sflphone-client-gnome/src/config/audioconf.c:769
 msgid "Audio Files"
 msgstr "音频文件"
 
-#: ../sflphone-gtk/src/config/audioconf.c:770
-msgid "_Activate silence detection"
-msgstr "启用静音检测(A)"
+#: ../../sflphone-client-gnome/src/config/audioconf.c:788
+msgid "_Voice Activity Detection"
+msgstr "声音状态检测(V)"
 
-#: ../sflphone-gtk/src/config/audioconf.c:798
+#: ../../sflphone-client-gnome/src/config/audioconf.c:798
+msgid "_Noise Reduction (Narrow-Band Companding)"
+msgstr "降噪处理-窄频压缩(N)"
+
+#: ../../sflphone-client-gnome/src/config/audioconf.c:826
 msgid "Sound Manager"
 msgstr "音频管理器"
 
-#: ../sflphone-gtk/src/config/audioconf.c:805
+#: ../../sflphone-client-gnome/src/config/audioconf.c:833
 msgid "ALSA configuration"
 msgstr "ALSA 配置"
 
-#: ../sflphone-gtk/src/config/audioconf.c:815
+#: ../../sflphone-client-gnome/src/config/audioconf.c:850
 msgid "Codecs"
 msgstr "Codecs编码"
 
-#: ../sflphone-gtk/src/config/audioconf.c:823
-msgid "Noise reduction"
-msgstr "降噪"
-
-#: ../sflphone-gtk/src/config/audioconf.c:830
+#: ../../sflphone-client-gnome/src/config/audioconf.c:873
 msgid "Ringtones"
 msgstr "铃声"
 
-#: ../sflphone-gtk/src/config/configwindow.c:385
+#: ../../sflphone-client-gnome/src/config/configwindow.c:402
 msgid "Protocol"
 msgstr "协议"
 
-#: ../sflphone-gtk/src/config/configwindow.c:392
+#: ../../sflphone-client-gnome/src/config/configwindow.c:409
 msgid "Status"
 msgstr "状态"
 
-#: ../sflphone-gtk/src/config/configwindow.c:495
+#: ../../sflphone-client-gnome/src/config/configwindow.c:512
 msgid "Stun parameters will apply to each SIP account created."
 msgstr "Stun参数将应用于每一个注册的SIP帐户"
 
-#: ../sflphone-gtk/src/config/configwindow.c:503
+#: ../../sflphone-client-gnome/src/config/configwindow.c:520
 msgid "Enable it if you are behind a firewall"
 msgstr "当使用防火墙时,启用该项"
 
-#: ../sflphone-gtk/src/config/configwindow.c:511
+#: ../../sflphone-client-gnome/src/config/configwindow.c:528
 msgid "Format: name.server:port"
 msgstr "格式:name.server:port"
 
-#: ../sflphone-gtk/src/config/configwindow.c:561
-msgid "Desktop Notification"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:579
+msgid "Desktop Notifications"
 msgstr "桌面提示"
 
-#: ../sflphone-gtk/src/config/configwindow.c:569
-msgid "_Enable"
-msgstr "启用(E)"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:588
+msgid "_Enable notifications"
+msgstr "启用提示(E)"
 
-#: ../sflphone-gtk/src/config/configwindow.c:574
-msgid "_Notify voice mails"
-msgstr "通知语音邮件(N)"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:594
+msgid "Enable voicemail _notifications"
+msgstr "启用语音邮箱提示(n)"
 
-#: ../sflphone-gtk/src/config/configwindow.c:580
+#: ../../sflphone-client-gnome/src/config/configwindow.c:605
 msgid "System Tray Icon"
 msgstr "系统托盘图标"
 
-#: ../sflphone-gtk/src/config/configwindow.c:588
+#: ../../sflphone-client-gnome/src/config/configwindow.c:613
 msgid "_Popup main window on incoming call"
 msgstr "来电时弹出主窗口(P)"
 
-#: ../sflphone-gtk/src/config/configwindow.c:593
+#: ../../sflphone-client-gnome/src/config/configwindow.c:618
 msgid "Ne_ver popup main window"
 msgstr "从不弹出主窗口(v)"
 
-#: ../sflphone-gtk/src/config/configwindow.c:597
-msgid "_Start hidden"
-msgstr "启动时隐藏(S)"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:622
+msgid "Hide SFLphone window on _startup"
+msgstr "在启动时隐藏SFLphone主窗口"
 
-#: ../sflphone-gtk/src/config/configwindow.c:603
+#: ../../sflphone-client-gnome/src/config/configwindow.c:628
 msgid "Calls History"
 msgstr "拨号历史"
 
-#: ../sflphone-gtk/src/config/configwindow.c:611
-msgid "_Maximum number of calls"
-msgstr "最大拨号数(M)"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:636
+msgid "_History size limit"
+msgstr "历史记录上限(H)"
 
-#: ../sflphone-gtk/src/config/configwindow.c:627
+#: ../../sflphone-client-gnome/src/config/configwindow.c:653
 msgid "PulseAudio sound server"
 msgstr "PulseAudio服务器"
 
-#: ../sflphone-gtk/src/config/configwindow.c:635
-msgid "_Control running applications volume"
-msgstr "控制正在运行的应用程序的音量(C)"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:661
+msgid "Mute other applications during a _call"
+msgstr "当有来电时静音其它应用程序(c)"
 
-#: ../sflphone-gtk/src/config/configwindow.c:648
+#: ../../sflphone-client-gnome/src/config/configwindow.c:674
 msgid "SIP Port"
 msgstr "SIP端口号"
 
-#: ../sflphone-gtk/src/config/configwindow.c:661
+#: ../../sflphone-client-gnome/src/config/configwindow.c:687
 msgid "Port:"
 msgstr "端口:"
 
-#: ../sflphone-gtk/src/config/configwindow.c:706
-msgid "General"
-msgstr "常用配置"
-
-#: ../sflphone-gtk/src/config/configwindow.c:717
-msgid "_Destination folder"
-msgstr "目标文件夹(D)"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:742
+msgid "_Recordings folder"
+msgstr "记录文件夹(R)"
 
-#: ../sflphone-gtk/src/config/configwindow.c:723
+#: ../../sflphone-client-gnome/src/config/configwindow.c:748
 msgid "Select a folder"
 msgstr "选择文件夹"
 
-#: ../sflphone-gtk/src/config/configwindow.c:748
+#: ../../sflphone-client-gnome/src/config/configwindow.c:773
 msgid "Preferences"
 msgstr "属性"
 
-#: ../sflphone-gtk/src/config/configwindow.c:768
+#: ../../sflphone-client-gnome/src/config/configwindow.c:793
 msgid "General Settings"
 msgstr "常用配置"
 
-#: ../sflphone-gtk/src/config/configwindow.c:773
+#: ../../sflphone-client-gnome/src/config/configwindow.c:798
 msgid "Audio Settings"
 msgstr "音频配置"
 
-#: ../sflphone-gtk/src/config/configwindow.c:778
-msgid "Record"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:803
+msgid "Recordings"
 msgstr "记录"
 
-#: ../sflphone-gtk/src/config/configwindow.c:783
+#: ../../sflphone-client-gnome/src/config/configwindow.c:808
 msgid "Address Book"
 msgstr "地址簿"
 
-#: ../sflphone-gtk/src/config/configwindow.c:788
+#: ../../sflphone-client-gnome/src/config/configwindow.c:813
 msgid "Hooks"
 msgstr "钩键"
 
-#: ../sflphone-gtk/src/config/configwindow.c:814
+#: ../../sflphone-client-gnome/src/config/configwindow.c:840
 msgid "Accounts"
 msgstr "帐户"
 
-#: ../sflphone-gtk/src/config/configwindow.c:826
-msgid "Accounts previously setup"
-msgstr "以前帐户设置"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:852
+msgid "Configured Accounts"
+msgstr "已配置帐户"
+
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:130
+msgid "URL Passing"
+msgstr "传输URL"
+
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:140
+#, c-format
+msgid ""
+"SFLphone can run custom commands if incoming calls come with an URL "
+"attached.\n"
+"In this case, %s will be replaced with the passed URL."
+msgstr ""
+"当来电有附加的URL时,SFLphone可运行客户命令.\n"
+"在此情况下,传输的URL会被替换成%s."
+
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:143
+msgid "Trigger on specific _SIP header"
+msgstr "激活指定的SIP头(S)"
+
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:155
+msgid "Trigger on _IAX2 URL"
+msgstr "激活IAX2 URL(I)"
+
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:160
+msgid "_Command to run: "
+msgstr "运行命令(C):"
+
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:168
+msgid "Phone Number Rewriting"
+msgstr "重设电话号码"
+
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:178
+msgid "_Prefix dialed numbers with:"
+msgstr "号码前缀:"
 
-#: ../sflphone-gtk/src/config/hooks-config.c:92
-msgid "URL argument"
-msgstr "URL参数"
+#: ../../sflphone-client-gnome/src/contacts/history.c:83
+#: ../../sflphone-client-gnome/src/contacts/searchbar.c:123
+msgid "Search history"
+msgstr "查找历史记录"
 
-#: ../sflphone-gtk/src/config/hooks-config.c:102
-msgid "_SIP protocol"
-msgstr "SIP 协议(S)"
+#: ../../sflphone-client-gnome/src/contacts/history.c:83
+#: ../../sflphone-client-gnome/src/contacts/searchbar.c:110
+msgid "Search contact"
+msgstr "查找联系人(S)"
 
-#: ../sflphone-gtk/src/config/hooks-config.c:107
-msgid "_IAX2 protocol"
-msgstr "IAX2 协议(I)"
+#~ msgid "Registered to %s (%s)"
+#~ msgstr "注册到 %s (%s)"
 
-#: ../sflphone-gtk/src/config/hooks-config.c:113
-msgid "_SIP Header: "
-msgstr "SIP消息头(S):"
+#~ msgid "%s account- %s             %s"
+#~ msgstr "%s 帐户- %s             %s"
 
-#: ../sflphone-gtk/src/config/hooks-config.c:120
-msgid "_Command: "
-msgstr "命令(C):"
+#~ msgid "Books"
+#~ msgstr "钩键"
 
-#~ msgid "SFLphone 0.9.3"
-#~ msgstr "SFLphone 0.9.2"
+#~ msgid "_Enable"
+#~ msgstr "启用(E)"
+
+#~ msgid "_Notify voice mails"
+#~ msgstr "通知语音邮件(N)"
+
+#~ msgid "_Start hidden"
+#~ msgstr "启动时隐藏(S)"
+
+#~ msgid "_Maximum number of calls"
+#~ msgstr "最大拨号数(M)"
+
+#~ msgid "_Control running applications volume"
+#~ msgstr "控制正在运行的应用程序的音量(C)"
+
+#~ msgid "Account previously setup"
+#~ msgstr "帐户以前设置"
+
+#~ msgid "URL argument"
+#~ msgstr "URL参数"
+
+#~ msgid "_SIP protocol"
+#~ msgstr "SIP 协议(S)"
+
+#~ msgid "_SIP Header: "
+#~ msgstr "SIP消息头(S):"
+
+#~ msgid "_IAX2 protocol"
+#~ msgstr "IAX2 协议(I)"
+
+#~ msgid "Search"
+#~ msgstr "查找"
+
+#~ msgid "_Enabled"
+#~ msgstr "启用(E)"
+
+#~ msgid "%s account- %s"
+#~ msgstr "%s 帐户- %s"
+
+#~ msgid "Noise reduction"
+#~ msgstr "降噪"
+
+#~ msgid "_Destination folder"
+#~ msgstr "目标文件夹(D)"
+
+#~ msgid "_Account Assistant"
+#~ msgstr "帐户向导(A)"
 
 #~ msgid "Setup Accounts"
 #~ msgstr "设定帐户"
 
+#~ msgid "Search Parameters"
+#~ msgstr "查找相关参数"
+
+#~ msgid "Maximum result number for a request: "
+#~ msgstr "最大拨号数"
+
+#~ msgid "Search for and display: "
+#~ msgstr "查找并显示:"
+
 #~ msgid "_STUN Server"
 #~ msgstr "STUN服务器(S)"
 
 #~ msgid "Apply"
 #~ msgstr "应用"
-
-#~ msgid "History empty"
-#~ msgstr "无历史记录"
-
diff --git a/sflphone-common/po/zh_HK.po b/sflphone-common/po/zh_HK.po
index eebc77122fa5cb383ef1f48eb494d5db15225de3..bb25b47ecffb24f99e8eef4b1790661177fdebc5 100644
--- a/sflphone-common/po/zh_HK.po
+++ b/sflphone-common/po/zh_HK.po
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version: SFLphone 0.9.2\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-04-02 11:15-0400\n"
+"POT-Creation-Date: 2009-05-21 10:45-0400\n"
 "PO-Revision-Date: 2008-10-28 14:15\n"
 "Last-Translator: Yun Liu <yun.liu@savoirfairelinux.com>\n"
 "Language-Team: SavoirFaireLinux Inc <sflphoneteam@savoirfairelinux.com>\n"
@@ -17,63 +17,69 @@ msgstr ""
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=n>1;\n"
 
-#: ../sflphone-gtk/src/accountlist.c:158
+#: ../../sflphone-client-gnome/src/accountlist.c:169
 msgid "Registered"
 msgstr "已註冊"
 
-#: ../sflphone-gtk/src/accountlist.c:161
+#: ../../sflphone-client-gnome/src/accountlist.c:172
 msgid "Not Registered"
 msgstr "未註冊"
 
-#: ../sflphone-gtk/src/accountlist.c:164
+#: ../../sflphone-client-gnome/src/accountlist.c:175
 msgid "Trying..."
 msgstr "正在連接..."
 
-#: ../sflphone-gtk/src/accountlist.c:167 ../sflphone-gtk/src/sflnotify.c:171
-#: ../sflphone-gtk/src/sflnotify.c:212
+#: ../../sflphone-client-gnome/src/accountlist.c:178
+#: ../../sflphone-client-gnome/src/sflnotify.c:176
+#: ../../sflphone-client-gnome/src/sflnotify.c:217
 msgid "Error"
 msgstr "註冊失敗"
 
-#: ../sflphone-gtk/src/accountlist.c:170
+#: ../../sflphone-client-gnome/src/accountlist.c:181
 msgid "Bad authentification"
 msgstr "認證錯誤"
 
-#: ../sflphone-gtk/src/accountlist.c:173
+#: ../../sflphone-client-gnome/src/accountlist.c:184
 msgid "Network unreachable"
 msgstr "網路連線失敗"
 
-#: ../sflphone-gtk/src/accountlist.c:176
+#: ../../sflphone-client-gnome/src/accountlist.c:187
 msgid "Host unreachable"
 msgstr "伺服器連線失敗"
 
-#: ../sflphone-gtk/src/accountlist.c:179
+#: ../../sflphone-client-gnome/src/accountlist.c:190
 msgid "Stun configuration error"
 msgstr "Stun配置有誤"
 
-#: ../sflphone-gtk/src/accountlist.c:182
+#: ../../sflphone-client-gnome/src/accountlist.c:193
 msgid "Stun server invalid"
 msgstr "Stun伺服器無效"
 
-#: ../sflphone-gtk/src/accountlist.c:185
+#: ../../sflphone-client-gnome/src/accountlist.c:196
 msgid "Invalid"
 msgstr "無效"
 
-#: ../sflphone-gtk/src/actions.c:55 ../sflphone-gtk/src/sflnotify.c:103
+#: ../../sflphone-client-gnome/src/actions.c:55
+#: ../../sflphone-client-gnome/src/sflnotify.c:108
 #, c-format
 msgid "%d voice mails"
 msgstr "%d 個語音郵件"
 
-#: ../sflphone-gtk/src/actions.c:57
+#: ../../sflphone-client-gnome/src/actions.c:57
 #, c-format
 msgid "%d voice mail"
 msgstr "%d 個語音郵件"
 
-#: ../sflphone-gtk/src/actions.c:81
+#: ../../sflphone-client-gnome/src/actions.c:81
 #, c-format
-msgid "%s account- %s"
-msgstr "%s 帳戶- %s"
+msgid "Using %s (%s)"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/actions.c:87
+msgid "No registered account"
+msgstr "未發現已註冊帳戶"
 
-#: ../sflphone-gtk/src/actions.c:225
+#: ../../sflphone-client-gnome/src/actions.c:229
 msgid ""
 "Unable to connect to the SFLphone server.\n"
 "Make sure the daemon is running."
@@ -81,11 +87,17 @@ msgstr ""
 "連接SFLphone伺服器失敗.\n"
 "請核查daemon是否正在運行."
 
-#: ../sflphone-gtk/src/actions.c:764
-msgid "%s account- %s             %s"
-msgstr "%s 帳戶- %s		%s"
+#: ../../sflphone-client-gnome/src/actions.c:787
+#, c-format
+msgid "IP call - %s"
+msgstr "IP電話- %s"
 
-#: ../sflphone-gtk/src/actions.c:861
+#: ../../sflphone-client-gnome/src/actions.c:790
+#, c-format
+msgid "Using %s (%s) - Codec: %s"
+msgstr ""
+
+#: ../../sflphone-client-gnome/src/actions.c:880
 #, c-format
 msgid ""
 "<b>Error: No audio codecs found.\n"
@@ -98,7 +110,8 @@ msgstr ""
 "</b> SFL聲音編碼檔案應該位于<i>%s</i> 或者位于主目錄( <i>%s</i> )的<b>."
 "sflphone</b>目錄下"
 
-#: ../sflphone-gtk/src/assistant.c:31
+#: ../../sflphone-client-gnome/src/assistant.c:35
+#, c-format
 msgid ""
 "This assistant is now finished.\n"
 "You can at any time check your registration state or modify your accounts "
@@ -107,632 +120,749 @@ msgid ""
 "Alias :    %s\n"
 "Server :   %s\n"
 "Username : %s\n"
-"Password : %s"
 msgstr ""
 "配置完成.\n"
-"你可以隨時在 選項/帳戶 中查看註冊狀態或者修改帳戶信息"
-"\n"
+"你可以隨時在 選項/帳戶 中查看註冊狀態或者修改帳戶信息\n"
 "別稱:         %s\n"
 "伺服器:       %s\n"
 "使用者名稱:   %s\n"
-"密碼:         %s"
 
-#: ../sflphone-gtk/src/assistant.c:154
+#: ../../sflphone-client-gnome/src/assistant.c:160
 msgid "SFLphone account configuration wizard"
 msgstr "SFLphone 帳戶設置向導"
 
-#: ../sflphone-gtk/src/assistant.c:180
+#: ../../sflphone-client-gnome/src/assistant.c:186
 msgid "Welcome to SFLphone!"
 msgstr "歡迎使用SFLphone!"
 
-#: ../sflphone-gtk/src/assistant.c:181
+#: ../../sflphone-client-gnome/src/assistant.c:187
 msgid "This installation wizard will help you configure an account."
 msgstr "安裝向導將幫助您配置帳戶"
 
-#: ../sflphone-gtk/src/assistant.c:195
+#: ../../sflphone-client-gnome/src/assistant.c:201
 msgid "VoIP Protocols"
 msgstr "VoIP協議"
 
-#: ../sflphone-gtk/src/assistant.c:195
+#: ../../sflphone-client-gnome/src/assistant.c:201
 msgid "Select an account type:"
 msgstr "選擇帳戶類型:"
 
-#: ../sflphone-gtk/src/assistant.c:213
+#: ../../sflphone-client-gnome/src/assistant.c:219
 msgid "Account"
 msgstr "帳戶"
 
-#: ../sflphone-gtk/src/assistant.c:213
+#: ../../sflphone-client-gnome/src/assistant.c:219
 msgid "Please select one of the following option:"
 msgstr "請選擇以下選項中的一個:"
 
-#: ../sflphone-gtk/src/assistant.c:215
+#: ../../sflphone-client-gnome/src/assistant.c:221
 msgid "Create a free SIP/IAX2 account on sflphone.org"
 msgstr "在sflphone.org上創建免費的SIP/IAX2帳戶"
 
-#: ../sflphone-gtk/src/assistant.c:217
+#: ../../sflphone-client-gnome/src/assistant.c:223
 msgid "Register an existing SIP or IAX2 account"
 msgstr "註冊已存在的SIP或IAX2帳戶"
 
-#: ../sflphone-gtk/src/assistant.c:230
+#: ../../sflphone-client-gnome/src/assistant.c:236
 msgid "SIP account configuration"
 msgstr "SIP帳戶配置"
 
-#: ../sflphone-gtk/src/assistant.c:230 ../sflphone-gtk/src/assistant.c:305
+#: ../../sflphone-client-gnome/src/assistant.c:236
+#: ../../sflphone-client-gnome/src/assistant.c:332
 msgid "Please fill the following information:"
 msgstr "請填寫如下信息:"
 
-#: ../sflphone-gtk/src/assistant.c:238 ../sflphone-gtk/src/assistant.c:313
-#: ../sflphone-gtk/src/config/accountwindow.c:143
+#: ../../sflphone-client-gnome/src/assistant.c:244
+#: ../../sflphone-client-gnome/src/assistant.c:340
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:148
 msgid "_Alias"
 msgstr "別稱(A)"
 
-#: ../sflphone-gtk/src/assistant.c:246 ../sflphone-gtk/src/assistant.c:321
-#: ../sflphone-gtk/src/config/accountwindow.c:179
+#: ../../sflphone-client-gnome/src/assistant.c:252
+#: ../../sflphone-client-gnome/src/assistant.c:348
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:184
 msgid "_Host name"
 msgstr "主机名稱(H)"
 
-#: ../sflphone-gtk/src/assistant.c:254 ../sflphone-gtk/src/assistant.c:329
-#: ../sflphone-gtk/src/config/accountwindow.c:187
+#: ../../sflphone-client-gnome/src/assistant.c:260
+#: ../../sflphone-client-gnome/src/assistant.c:356
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:192
 msgid "_User name"
 msgstr "使用者名稱(U)"
 
-#: ../sflphone-gtk/src/assistant.c:264 ../sflphone-gtk/src/assistant.c:339
-#: ../sflphone-gtk/src/config/accountwindow.c:198
+#: ../../sflphone-client-gnome/src/assistant.c:276
+#: ../../sflphone-client-gnome/src/assistant.c:371
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:207
 msgid "_Password"
 msgstr "密碼(P)"
 
-#: ../sflphone-gtk/src/assistant.c:282
+#: ../../sflphone-client-gnome/src/assistant.c:294
+#: ../../sflphone-client-gnome/src/assistant.c:387
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:223
+msgid "_Voicemail number"
+msgstr "語音郵箱(V)"
+
+#: ../../sflphone-client-gnome/src/assistant.c:309
 msgid "Optional Email Address "
 msgstr "可選郵件地址 "
 
-#: ../sflphone-gtk/src/assistant.c:282
+#: ../../sflphone-client-gnome/src/assistant.c:309
 msgid "This email address will be use to send your voicemail messages"
 msgstr "這個郵件地址將被用來發送您的語音郵箱消息"
 
-#: ../sflphone-gtk/src/assistant.c:290
+#: ../../sflphone-client-gnome/src/assistant.c:317
 msgid "_Email"
 msgstr "郵件(E)"
 
-#: ../sflphone-gtk/src/assistant.c:305
+#: ../../sflphone-client-gnome/src/assistant.c:332
 msgid "IAX2 account configuration"
 msgstr "IAX2帳戶配置"
 
-#: ../sflphone-gtk/src/assistant.c:360
-#: ../sflphone-gtk/src/config/configwindow.c:837
+#: ../../sflphone-client-gnome/src/assistant.c:405
+#: ../../sflphone-client-gnome/src/config/configwindow.c:863
 msgid "Network Address Translation"
 msgstr "網路地址分析"
 
-#: ../sflphone-gtk/src/assistant.c:360
+#: ../../sflphone-client-gnome/src/assistant.c:405
 msgid "You should probably enable this if you are behind a firewall."
 msgstr "如果你使用網路防火牆,你很有可能需要設定該項."
 
-#: ../sflphone-gtk/src/assistant.c:369
-#: ../sflphone-gtk/src/config/configwindow.c:499
+#: ../../sflphone-client-gnome/src/assistant.c:414
+#: ../../sflphone-client-gnome/src/config/configwindow.c:516
 msgid "E_nable STUN"
 msgstr "啟用STUN(n)"
 
-#: ../sflphone-gtk/src/assistant.c:376
+#: ../../sflphone-client-gnome/src/assistant.c:421
 msgid "_STUN server"
 msgstr "STUN伺服器(S)"
 
-#: ../sflphone-gtk/src/assistant.c:390
+#: ../../sflphone-client-gnome/src/assistant.c:435
 msgid "Account Registration"
 msgstr "帳戶註冊"
 
-#: ../sflphone-gtk/src/assistant.c:390
+#: ../../sflphone-client-gnome/src/assistant.c:435
 msgid "Congratulations!"
 msgstr "恭喜!"
 
-#: ../sflphone-gtk/src/context-menu.c:296 ../sflphone-gtk/src/menus.c:308
-#: ../sflphone-gtk/src/menus.c:791
-msgid "_Pick up"
-msgstr "撥出(P)"
-
-#: ../sflphone-gtk/src/context-menu.c:308 ../sflphone-gtk/src/menus.c:318
-#: ../sflphone-gtk/src/menus.c:803
-msgid "_Hang up"
-msgstr "放下(H)"
-
-#: ../sflphone-gtk/src/context-menu.c:320 ../sflphone-gtk/src/menus.c:328
-#: ../sflphone-gtk/src/menus.c:815
-msgid "On _Hold"
-msgstr "待机"
-
-#: ../sflphone-gtk/src/context-menu.c:332 ../sflphone-gtk/src/menus.c:340
-#: ../sflphone-gtk/src/menus.c:827
-msgid "_Record"
-msgstr "記錄(R)"
-
-#: ../sflphone-gtk/src/errors.c:28
+#: ../../sflphone-client-gnome/src/errors.c:28
 msgid ""
-"<b>ALSA notification</b>\n"
+"ALSA notification\n"
 "\n"
 "Error while opening playback device"
 msgstr ""
-"<b>ALSA提示</b>\n"
+"ALSA提示\n"
 "\n"
 "打開回放設備時出錯"
 
-#: ../sflphone-gtk/src/errors.c:31
+#: ../../sflphone-client-gnome/src/errors.c:31
 msgid ""
-"<b>ALSA notification</b>\n"
+"ALSA notification\n"
 "\n"
 "Error while opening capture device"
 msgstr ""
-"<b>ALSA提示</b>\n"
+"ALSA提示\n"
 "\n"
 "打開采集設備時出錯"
 
-#: ../sflphone-gtk/src/errors.c:34
+#: ../../sflphone-client-gnome/src/errors.c:34
 msgid ""
-"<b>Pulseaudio notification</b>\n"
+"Pulseaudio notification\n"
 "\n"
 "Pulseaudio is not running"
 msgstr ""
+"Pulseaudio提示\n"
+"\n"
+"Pulseaudio未運行"
 
-#: ../sflphone-gtk/src/mainwindow.c:70
+#: ../../sflphone-client-gnome/src/mainwindow.c:70
 msgid "There is one call in progress."
 msgstr "有一個電話正在處理中."
 
-#: ../sflphone-gtk/src/mainwindow.c:74
+#: ../../sflphone-client-gnome/src/mainwindow.c:74
 msgid "There are calls in progress."
 msgstr "有電話正在處理中."
 
-#: ../sflphone-gtk/src/mainwindow.c:83
+#: ../../sflphone-client-gnome/src/mainwindow.c:83
 msgid "Do you still want to quit?"
 msgstr "確認要退出?"
 
-#: ../sflphone-gtk/src/menus.c:131
+#: ../../sflphone-client-gnome/src/mainwindow.c:296
+msgid "SFLphone Error"
+msgstr "SFLphone 出錯"
+
+#: ../../sflphone-client-gnome/src/menus.c:134
 msgid "SFLphone is a VoIP client compatible with SIP and IAX2 protocols."
 msgstr "SFLphone是一個VoIP客戶端,它兼容SIP和IAX2协议."
 
-#: ../sflphone-gtk/src/menus.c:134
+#: ../../sflphone-client-gnome/src/menus.c:137
 msgid "About SFLphone"
 msgstr "有關SFLphone"
 
-#: ../sflphone-gtk/src/menus.c:157
+#: ../../sflphone-client-gnome/src/menus.c:161
 msgid "_Help"
 msgstr "幫助(H)"
 
-#: ../sflphone-gtk/src/menus.c:296 ../sflphone-gtk/src/menus.c:949
+#: ../../sflphone-client-gnome/src/menus.c:300
+#: ../../sflphone-client-gnome/src/menus.c:971
 msgid "_New call"
 msgstr "新電話(N)"
 
-#: ../sflphone-gtk/src/menus.c:354
-msgid "_Account Assistant"
-msgstr "帳戶向導(A)"
+#: ../../sflphone-client-gnome/src/menus.c:312
+#: ../../sflphone-client-gnome/src/menus.c:803
+msgid "_Pick up"
+msgstr "撥出(P)"
 
-#: ../sflphone-gtk/src/menus.c:384
+#: ../../sflphone-client-gnome/src/menus.c:322
+#: ../../sflphone-client-gnome/src/menus.c:815
+msgid "_Hang up"
+msgstr "放下(H)"
+
+#: ../../sflphone-client-gnome/src/menus.c:332
+#: ../../sflphone-client-gnome/src/menus.c:827
+msgid "On _Hold"
+msgstr "待机"
+
+#: ../../sflphone-client-gnome/src/menus.c:344
+#: ../../sflphone-client-gnome/src/menus.c:839
+msgid "_Record"
+msgstr "記錄(R)"
+
+#: ../../sflphone-client-gnome/src/menus.c:358
+msgid "_Account creation wizard"
+msgstr "帳戶創建向導(A)"
+
+#: ../../sflphone-client-gnome/src/menus.c:388
 msgid "_Call"
 msgstr "電話"
 
-#: ../sflphone-gtk/src/menus.c:557
+#: ../../sflphone-client-gnome/src/menus.c:561
 msgid "_Clear history"
 msgstr "清空曆史記錄(C)"
 
-#: ../sflphone-gtk/src/menus.c:569
+#: ../../sflphone-client-gnome/src/menus.c:573
 msgid "_Accounts"
 msgstr "帳戶(A)"
 
-#: ../sflphone-gtk/src/menus.c:584
+#: ../../sflphone-client-gnome/src/menus.c:588
 msgid "_Edit"
 msgstr "編輯(E)"
 
-#: ../sflphone-gtk/src/menus.c:644
+#: ../../sflphone-client-gnome/src/menus.c:649
 msgid "_Dialpad"
 msgstr "撥號面板"
 
-#: ../sflphone-gtk/src/menus.c:656
+#: ../../sflphone-client-gnome/src/menus.c:661
 msgid "_Volume controls"
 msgstr "音量控制(V)"
 
-#: ../sflphone-gtk/src/menus.c:665
-msgid "_Search contact"
-msgstr "搜尋歷史(S)"
-
-#: ../sflphone-gtk/src/menus.c:673
+#: ../../sflphone-client-gnome/src/menus.c:679
 msgid "_View"
 msgstr "查看(V)"
 
-#: ../sflphone-gtk/src/menus.c:885
+#: ../../sflphone-client-gnome/src/menus.c:899
 msgid "_Call back"
 msgstr "回叫(C)"
 
-#: ../sflphone-gtk/src/sflnotify.c:34 ../sflphone-gtk/src/sflnotify.c:100
+#: ../../sflphone-client-gnome/src/menus.c:1082
+msgid "Edit phone"
+msgstr "編輯電話"
+
+#: ../../sflphone-client-gnome/src/menus.c:1093
+msgid "Edit the phone number before making a call"
+msgstr "撥出電話前編輯電話號碼"
+
+#: ../../sflphone-client-gnome/src/sflnotify.c:38
+#: ../../sflphone-client-gnome/src/sflnotify.c:105
 #, c-format
 msgid "%s account: %s"
 msgstr "%s 帳戶: %s"
 
-#: ../sflphone-gtk/src/sflnotify.c:37
+#: ../../sflphone-client-gnome/src/sflnotify.c:42
 #, c-format
 msgid "<i>From:</i> %s"
 msgstr "<i>撥入方:</i> %s"
 
-#: ../sflphone-gtk/src/sflnotify.c:52
+#: ../../sflphone-client-gnome/src/sflnotify.c:57
 msgid "Accept"
 msgstr "接受"
 
-#: ../sflphone-gtk/src/sflnotify.c:53
+#: ../../sflphone-client-gnome/src/sflnotify.c:58
 msgid "Refuse"
 msgstr "拒絕"
 
-#: ../sflphone-gtk/src/sflnotify.c:54 ../sflphone-gtk/src/sflnotify.c:117
-#: ../sflphone-gtk/src/sflnotify.c:154
+#: ../../sflphone-client-gnome/src/sflnotify.c:59
+#: ../../sflphone-client-gnome/src/sflnotify.c:122
+#: ../../sflphone-client-gnome/src/sflnotify.c:159
 msgid "Ignore"
 msgstr "忽略"
 
-#: ../sflphone-gtk/src/sflnotify.c:136
+#: ../../sflphone-client-gnome/src/sflnotify.c:141
 #, c-format
 msgid "Calling with %s account <i>%s</i>"
 msgstr "使用%s帳戶<i>%s</i>呼叫"
 
-#: ../sflphone-gtk/src/sflnotify.c:140
+#: ../../sflphone-client-gnome/src/sflnotify.c:145
 msgid "Current account"
 msgstr "當前帳戶"
 
-#: ../sflphone-gtk/src/sflnotify.c:169
+#: ../../sflphone-client-gnome/src/sflnotify.c:174
 msgid "You haven't setup any accounts"
 msgstr "你沒有設置任何帳戶"
 
-#: ../sflphone-gtk/src/sflnotify.c:209
+#: ../../sflphone-client-gnome/src/sflnotify.c:214
 msgid "You have no registered accounts"
 msgstr "未發現已註冊帳戶"
 
-#: ../sflphone-gtk/src/sliders.c:161
+#: ../../sflphone-client-gnome/src/sliders.c:161
 msgid "Speakers volume"
 msgstr "揚聲器音量"
 
-#: ../sflphone-gtk/src/sliders.c:163
+#: ../../sflphone-client-gnome/src/sliders.c:163
 msgid "Mic volume"
 msgstr "話筒音量"
 
-#: ../sflphone-gtk/src/statusicon.c:91
+#: ../../sflphone-client-gnome/src/statusicon.c:91
 msgid "_Show main window"
 msgstr "顯示主窗口(S)"
 
-#: ../sflphone-gtk/src/statusicon.c:124
+#: ../../sflphone-client-gnome/src/statusicon.c:124
 #, c-format
-msgid "SFLphone - %i accounts registered"
-msgstr "SFLphone - %i 個帳戶已註冊"
+msgid "SFLphone - %i accounts configured"
+msgstr "SFLphone - %i 個帳戶已配置"
 
-#: ../sflphone-gtk/src/timestamp.c:46
+#: ../../sflphone-client-gnome/src/timestamp.c:46
 msgid "<small>Missed call</small>"
 msgstr "<small>未接電話</small>"
 
-#: ../sflphone-gtk/src/timestamp.c:64
+#: ../../sflphone-client-gnome/src/timestamp.c:64
 #, c-format
 msgid "<small>Duration:</small> %s"
 msgstr "<small>時長:</small> %s"
 
-#: ../sflphone-gtk/src/toolbar.c:49
+#: ../../sflphone-client-gnome/src/toolbar.c:50
 #, c-format
 msgid "\"Voicemail\" <%s>"
 msgstr "\"語音郵件\" <%s>"
 
-#: ../sflphone-gtk/src/toolbar.c:175 ../sflphone-gtk/src/toolbar.c:177
+#: ../../sflphone-client-gnome/src/toolbar.c:176
+#: ../../sflphone-client-gnome/src/toolbar.c:178
 msgid "Place a call"
 msgstr "打電話"
 
-#: ../sflphone-gtk/src/toolbar.c:184 ../sflphone-gtk/src/toolbar.c:186
+#: ../../sflphone-client-gnome/src/toolbar.c:185
+#: ../../sflphone-client-gnome/src/toolbar.c:187
 msgid "Pick up"
 msgstr "接電話"
 
-#: ../sflphone-gtk/src/toolbar.c:194 ../sflphone-gtk/src/toolbar.c:196
+#: ../../sflphone-client-gnome/src/toolbar.c:195
+#: ../../sflphone-client-gnome/src/toolbar.c:197
 msgid "Hang up"
 msgstr "放電話"
 
-#: ../sflphone-gtk/src/toolbar.c:204 ../sflphone-gtk/src/toolbar.c:206
+#: ../../sflphone-client-gnome/src/toolbar.c:205
+#: ../../sflphone-client-gnome/src/toolbar.c:207
 msgid "Off Hold"
 msgstr "恢复通話"
 
-#: ../sflphone-gtk/src/toolbar.c:215 ../sflphone-gtk/src/toolbar.c:217
+#: ../../sflphone-client-gnome/src/toolbar.c:216
+#: ../../sflphone-client-gnome/src/toolbar.c:218
 msgid "On Hold"
 msgstr "待机"
 
-#: ../sflphone-gtk/src/toolbar.c:228 ../sflphone-gtk/src/toolbar.c:230
+#: ../../sflphone-client-gnome/src/toolbar.c:229
+#: ../../sflphone-client-gnome/src/toolbar.c:231
 msgid "Transfer"
 msgstr "轉接"
 
-#: ../sflphone-gtk/src/toolbar.c:240 ../sflphone-gtk/src/toolbar.c:242
+#: ../../sflphone-client-gnome/src/toolbar.c:241
+#: ../../sflphone-client-gnome/src/toolbar.c:243
 msgid "History"
 msgstr "歷史"
 
-#: ../sflphone-gtk/src/toolbar.c:251 ../sflphone-gtk/src/toolbar.c:253
+#: ../../sflphone-client-gnome/src/toolbar.c:252
+#: ../../sflphone-client-gnome/src/toolbar.c:254
 msgid "Address book"
 msgstr "地址簿"
 
-#: ../sflphone-gtk/src/toolbar.c:258 ../sflphone-gtk/src/toolbar.c:262
+#: ../../sflphone-client-gnome/src/toolbar.c:260
+#: ../../sflphone-client-gnome/src/toolbar.c:264
 msgid "Voicemail"
 msgstr "語音郵件"
 
-#: ../sflphone-gtk/src/toolbar.c:270
+#: ../../sflphone-client-gnome/src/toolbar.c:272
 msgid "Record a call"
 msgstr "記錄通話"
 
-#: ../sflphone-gtk/src/contacts/history.c:75
-#: ../sflphone-gtk/src/contacts/searchbar.c:39
-#: ../sflphone-gtk/src/contacts/searchbar.c:65
-msgid "Search"
-msgstr "搜尋"
-
-#: ../sflphone-gtk/src/config/accountwindow.c:103
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:108
 msgid "Account settings"
 msgstr "帳戶設置"
 
-#: ../sflphone-gtk/src/config/accountwindow.c:115
-msgid "Account parameters"
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:120
+msgid "Account Parameters"
 msgstr "帳戶相關參數"
 
-#: ../sflphone-gtk/src/config/accountwindow.c:137
-msgid "_Enabled"
-msgstr "啟用(E)"
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:142
+msgid "_Enable this account"
+msgstr "啟用該賬戶(E)"
 
-#: ../sflphone-gtk/src/config/accountwindow.c:151
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:156
 msgid "_Protocol"
 msgstr "協議(P)"
 
-#: ../sflphone-gtk/src/config/accountwindow.c:169
+#: ../../sflphone-client-gnome/src/config/accountwindow.c:174
 msgid "Unknown"
 msgstr "未知"
 
-#: ../sflphone-gtk/src/config/accountwindow.c:209
-msgid "_Voicemail box #"
-msgstr "語音郵箱(V)"
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:265
+#: ../../sflphone-client-gnome/src/config/configwindow.c:732
+msgid "General"
+msgstr "常用配置"
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:105
-msgid "Search Parameters"
-msgstr "搜尋相關參數"
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:276
+msgid "_Use Evolution address books"
+msgstr "使用Evolution地址薄(U)"
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:116
-msgid "Maximum result number for a request: "
-msgstr "最大打出電話數目"
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:283
+msgid "Download limit:"
+msgstr "下載上限:"
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:127
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:294
 msgid "_Display contact photo if available"
 msgstr "如果可以則顯示聯繫人照片(D)"
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:132
-msgid "Search for and display: "
-msgstr "搜尋並顯示:"
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:301
+msgid "Fields"
+msgstr "字段"
+
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:311
+msgid "Use the following fields from Evolution's address books:"
+msgstr "使用Evolution地址薄中的如下字段:"
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:135
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:316
 msgid "_Business phone"
 msgstr "商務電話(B)"
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:140
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:321
 msgid "_Home phone"
 msgstr "家庭電話(H)"
 
-#: ../sflphone-gtk/src/config/addressbook-config.c:145
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:326
 msgid "_Mobile phone"
 msgstr "移動電話(M)"
 
-#: ../sflphone-gtk/src/config/audioconf.c:154
-#, c-format
-msgid "audio device index for output = %d\n"
-msgstr "音訊設備索引輸出 = %d\n"
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:333
+msgid "Address Books"
+msgstr "地址簿"
+
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:343
+msgid "Select which Evolution address books to use:"
+msgstr "選擇使用如下Evolution地址薄:"
 
-#: ../sflphone-gtk/src/config/audioconf.c:562
+#: ../../sflphone-client-gnome/src/config/addressbook-config.c:377
+#: ../../sflphone-client-gnome/src/config/audioconf.c:574
 msgid "Name"
 msgstr "名稱"
 
-#: ../sflphone-gtk/src/config/audioconf.c:567
+#: ../../sflphone-client-gnome/src/config/audioconf.c:155
+#, c-format
+msgid "audio device index for output = %d"
+msgstr "音訊設備輸出索引 = %d"
+
+#: ../../sflphone-client-gnome/src/config/audioconf.c:579
 msgid "Frequency"
 msgstr "顰律"
 
-#: ../sflphone-gtk/src/config/audioconf.c:572
+#: ../../sflphone-client-gnome/src/config/audioconf.c:584
 msgid "Bitrate"
 msgstr "比率"
 
-#: ../sflphone-gtk/src/config/audioconf.c:577
+#: ../../sflphone-client-gnome/src/config/audioconf.c:589
 msgid "Bandwidth"
 msgstr "顰寬"
 
-#: ../sflphone-gtk/src/config/audioconf.c:637
+#: ../../sflphone-client-gnome/src/config/audioconf.c:652
 msgid "Pulseaudio"
 msgstr "Pulseaudio"
 
-#: ../sflphone-gtk/src/config/audioconf.c:640
+#: ../../sflphone-client-gnome/src/config/audioconf.c:655
 msgid "ALSA"
 msgstr "ALSA"
 
-#: ../sflphone-gtk/src/config/audioconf.c:666
+#: ../../sflphone-client-gnome/src/config/audioconf.c:681
 msgid "ALSA plugin"
 msgstr "ALSA插件"
 
-#: ../sflphone-gtk/src/config/audioconf.c:688
+#: ../../sflphone-client-gnome/src/config/audioconf.c:703
 msgid "Output"
 msgstr "輸出"
 
-#: ../sflphone-gtk/src/config/audioconf.c:710
+#: ../../sflphone-client-gnome/src/config/audioconf.c:725
 msgid "Input"
 msgstr "輸入"
 
-#: ../sflphone-gtk/src/config/audioconf.c:743
+#: ../../sflphone-client-gnome/src/config/audioconf.c:758
 msgid "_Enable ringtones"
 msgstr "啟動鈴聲(E)"
 
-#: ../sflphone-gtk/src/config/audioconf.c:748
+#: ../../sflphone-client-gnome/src/config/audioconf.c:764
 msgid "Choose a ringtone"
 msgstr "鈴聲選擇"
 
-#: ../sflphone-gtk/src/config/audioconf.c:753
+#: ../../sflphone-client-gnome/src/config/audioconf.c:769
 msgid "Audio Files"
 msgstr "音訊檔案"
 
-#: ../sflphone-gtk/src/config/audioconf.c:770
-msgid "_Activate silence detection"
-msgstr "啟用靜音檢測(A)"
+#: ../../sflphone-client-gnome/src/config/audioconf.c:788
+msgid "_Voice Activity Detection"
+msgstr "聲音狀態檢測(V)"
+
+#: ../../sflphone-client-gnome/src/config/audioconf.c:798
+msgid "_Noise Reduction (Narrow-Band Companding)"
+msgstr "降噪處理-窄頻壓縮(N)"
 
-#: ../sflphone-gtk/src/config/audioconf.c:798
+#: ../../sflphone-client-gnome/src/config/audioconf.c:826
 msgid "Sound Manager"
 msgstr "聲音管理器"
 
-#: ../sflphone-gtk/src/config/audioconf.c:805
+#: ../../sflphone-client-gnome/src/config/audioconf.c:833
 msgid "ALSA configuration"
 msgstr "ALSA 配置"
 
-#: ../sflphone-gtk/src/config/audioconf.c:815
+#: ../../sflphone-client-gnome/src/config/audioconf.c:850
 msgid "Codecs"
 msgstr "編碼"
 
-#: ../sflphone-gtk/src/config/audioconf.c:823
-msgid "Noise reduction"
-msgstr "降噪"
-
-#: ../sflphone-gtk/src/config/audioconf.c:830
+#: ../../sflphone-client-gnome/src/config/audioconf.c:873
 msgid "Ringtones"
 msgstr "鈴聲"
 
-#: ../sflphone-gtk/src/config/configwindow.c:385
+#: ../../sflphone-client-gnome/src/config/configwindow.c:402
 msgid "Protocol"
 msgstr "協議"
 
-#: ../sflphone-gtk/src/config/configwindow.c:392
+#: ../../sflphone-client-gnome/src/config/configwindow.c:409
 msgid "Status"
 msgstr "狀態"
 
-#: ../sflphone-gtk/src/config/configwindow.c:495
+#: ../../sflphone-client-gnome/src/config/configwindow.c:512
 msgid "Stun parameters will apply to each SIP account created."
 msgstr "Stun參數將應用於每一個註冊的SIP帳戶"
 
-#: ../sflphone-gtk/src/config/configwindow.c:503
+#: ../../sflphone-client-gnome/src/config/configwindow.c:520
 msgid "Enable it if you are behind a firewall"
 msgstr "當使用防火牆時,需要設定此項"
 
-#: ../sflphone-gtk/src/config/configwindow.c:511
+#: ../../sflphone-client-gnome/src/config/configwindow.c:528
 msgid "Format: name.server:port"
 msgstr "格式:name.server:port"
 
-#: ../sflphone-gtk/src/config/configwindow.c:561
-msgid "Desktop Notification"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:579
+msgid "Desktop Notifications"
 msgstr "桌面提示"
 
-#: ../sflphone-gtk/src/config/configwindow.c:569
-msgid "_Enable"
-msgstr "啟用(E)"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:588
+msgid "_Enable notifications"
+msgstr "啟動提示(E)"
 
-#: ../sflphone-gtk/src/config/configwindow.c:574
-msgid "_Notify voice mails"
-msgstr "語音郵件通知(N)"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:594
+msgid "Enable voicemail _notifications"
+msgstr "啟用語音郵箱提示(n)"
 
-#: ../sflphone-gtk/src/config/configwindow.c:580
+#: ../../sflphone-client-gnome/src/config/configwindow.c:605
 msgid "System Tray Icon"
 msgstr "系統托盤圖標"
 
-#: ../sflphone-gtk/src/config/configwindow.c:588
+#: ../../sflphone-client-gnome/src/config/configwindow.c:613
 msgid "_Popup main window on incoming call"
 msgstr "來電話時彈出主視窗(P)"
 
-#: ../sflphone-gtk/src/config/configwindow.c:593
+#: ../../sflphone-client-gnome/src/config/configwindow.c:618
 msgid "Ne_ver popup main window"
 msgstr "從不彈出主視窗(v)"
 
-#: ../sflphone-gtk/src/config/configwindow.c:597
-msgid "_Start hidden"
-msgstr "啟動時隱藏(S)"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:622
+msgid "Hide SFLphone window on _startup"
+msgstr "在啟動時隱藏SFLphone主窗口"
 
-#: ../sflphone-gtk/src/config/configwindow.c:603
+#: ../../sflphone-client-gnome/src/config/configwindow.c:628
 msgid "Calls History"
 msgstr "打電話歷史"
 
-#: ../sflphone-gtk/src/config/configwindow.c:611
-msgid "_Maximum number of calls"
-msgstr "最大打出電話數目(M)"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:636
+msgid "_History size limit"
+msgstr "歷史記錄上限(H)"
 
-#: ../sflphone-gtk/src/config/configwindow.c:627
+#: ../../sflphone-client-gnome/src/config/configwindow.c:653
 msgid "PulseAudio sound server"
 msgstr "PulseAudio聲音伺服器"
 
-#: ../sflphone-gtk/src/config/configwindow.c:635
-msgid "_Control running applications volume"
-msgstr "控制正在運行中的應用程式的音量(C)"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:661
+msgid "Mute other applications during a _call"
+msgstr "當有來電時靜音其它應用程序(c)"
 
-#: ../sflphone-gtk/src/config/configwindow.c:648
+#: ../../sflphone-client-gnome/src/config/configwindow.c:674
 msgid "SIP Port"
 msgstr "SIP端口"
 
-#: ../sflphone-gtk/src/config/configwindow.c:661
+#: ../../sflphone-client-gnome/src/config/configwindow.c:687
 msgid "Port:"
 msgstr "端口:"
 
-#: ../sflphone-gtk/src/config/configwindow.c:706
-msgid "General"
-msgstr "常用配置"
-
-#: ../sflphone-gtk/src/config/configwindow.c:717
-msgid "_Destination folder"
-msgstr "目標文件夾(D)"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:742
+msgid "_Recordings folder"
+msgstr "記錄文件夾(R)"
 
-#: ../sflphone-gtk/src/config/configwindow.c:723
+#: ../../sflphone-client-gnome/src/config/configwindow.c:748
 msgid "Select a folder"
 msgstr "選擇文件夾"
 
-#: ../sflphone-gtk/src/config/configwindow.c:748
+#: ../../sflphone-client-gnome/src/config/configwindow.c:773
 msgid "Preferences"
 msgstr "屬性"
 
-#: ../sflphone-gtk/src/config/configwindow.c:768
+#: ../../sflphone-client-gnome/src/config/configwindow.c:793
 msgid "General Settings"
 msgstr "常用配置"
 
-#: ../sflphone-gtk/src/config/configwindow.c:773
+#: ../../sflphone-client-gnome/src/config/configwindow.c:798
 msgid "Audio Settings"
 msgstr "音訊配置"
 
-#: ../sflphone-gtk/src/config/configwindow.c:778
-msgid "Record"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:803
+msgid "Recordings"
 msgstr "記錄"
 
-#: ../sflphone-gtk/src/config/configwindow.c:783
+#: ../../sflphone-client-gnome/src/config/configwindow.c:808
 msgid "Address Book"
 msgstr "地址簿"
 
-#: ../sflphone-gtk/src/config/configwindow.c:788
+#: ../../sflphone-client-gnome/src/config/configwindow.c:813
 msgid "Hooks"
 msgstr "鉤鍵"
 
-#: ../sflphone-gtk/src/config/configwindow.c:814
+#: ../../sflphone-client-gnome/src/config/configwindow.c:840
 msgid "Accounts"
 msgstr "帳戶"
 
-#: ../sflphone-gtk/src/config/configwindow.c:826
-msgid "Accounts previously setup"
-msgstr "以前帳戶設定"
+#: ../../sflphone-client-gnome/src/config/configwindow.c:852
+msgid "Configured Accounts"
+msgstr "已配置帳戶"
+
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:130
+msgid "URL Passing"
+msgstr "傳輸URL"
+
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:140
+#, c-format
+msgid ""
+"SFLphone can run custom commands if incoming calls come with an URL "
+"attached.\n"
+"In this case, %s will be replaced with the passed URL."
+msgstr ""
+"當來電有附加的URL時,SFLphone可運行客戶命令.\n"
+"在此情況下,傳輸的URL會被替換成%s."
+
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:143
+msgid "Trigger on specific _SIP header"
+msgstr "激活指定的SIP頭(S)"
+
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:155
+msgid "Trigger on _IAX2 URL"
+msgstr "激活IAX2 URL(I)"
+
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:160
+msgid "_Command to run: "
+msgstr "運行命令(C):"
 
-#: ../sflphone-gtk/src/config/hooks-config.c:92
-msgid "URL argument"
-msgstr "URL參數"
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:168
+msgid "Phone Number Rewriting"
+msgstr "重設電話號碼"
 
-#: ../sflphone-gtk/src/config/hooks-config.c:102
-msgid "_SIP protocol"
-msgstr "SIP 協議(S)"
+#: ../../sflphone-client-gnome/src/config/hooks-config.c:178
+msgid "_Prefix dialed numbers with:"
+msgstr "號碼前綴:"
 
-#: ../sflphone-gtk/src/config/hooks-config.c:107
-msgid "_IAX2 protocol"
-msgstr "IAX2 協議(I)"
+#: ../../sflphone-client-gnome/src/contacts/history.c:83
+#: ../../sflphone-client-gnome/src/contacts/searchbar.c:123
+msgid "Search history"
+msgstr "搜尋歷史記錄"
 
-#: ../sflphone-gtk/src/config/hooks-config.c:113
-msgid "_SIP Header: "
-msgstr "SIP消息頭(S):"
+#: ../../sflphone-client-gnome/src/contacts/history.c:83
+#: ../../sflphone-client-gnome/src/contacts/searchbar.c:110
+msgid "Search contact"
+msgstr "搜尋聯繫人(S)"
 
-#: ../sflphone-gtk/src/config/hooks-config.c:120
-msgid "_Command: "
-msgstr "命令(C):"
+#~ msgid "Registered to %s (%s)"
+#~ msgstr "註冊到 %s (%s)"
 
+#~ msgid "%s account- %s             %s"
+#~ msgstr "%s 帳戶- %s\t\t%s"
 
-#~ msgid "SFLphone 0.9.3"
-#~ msgstr "SFLphone 0.9.2"
+#~ msgid "Books"
+#~ msgstr "鉤鍵"
+
+#~ msgid "_Enable"
+#~ msgstr "啟用(E)"
+
+#~ msgid "_Notify voice mails"
+#~ msgstr "語音郵件通知(N)"
+
+#~ msgid "_Start hidden"
+#~ msgstr "啟動時隱藏(S)"
+
+#~ msgid "_Maximum number of calls"
+#~ msgstr "最大打出電話數目(M)"
+
+#~ msgid "_Control running applications volume"
+#~ msgstr "控制正在運行中的應用程式的音量(C)"
+
+#~ msgid "Account previously setup"
+#~ msgstr "帳戶以前設定"
+
+#~ msgid "URL argument"
+#~ msgstr "URL參數"
+
+#~ msgid "_SIP protocol"
+#~ msgstr "SIP 協議(S)"
+
+#~ msgid "_SIP Header: "
+#~ msgstr "SIP消息頭(S):"
+
+#~ msgid "_IAX2 protocol"
+#~ msgstr "IAX2 協議(I)"
+
+#~ msgid "Search"
+#~ msgstr "搜尋"
+
+#~ msgid "_Enabled"
+#~ msgstr "啟用(E)"
+
+#~ msgid "%s account- %s"
+#~ msgstr "%s 帳戶- %s"
+
+#~ msgid "Noise reduction"
+#~ msgstr "降噪"
+
+#~ msgid "_Destination folder"
+#~ msgstr "目標文件夾(D)"
+
+#~ msgid "_Account Assistant"
+#~ msgstr "帳戶向導(A)"
 
 #~ msgid "Setup Accounts"
 #~ msgstr "設定帳戶"
 
+#~ msgid "Search Parameters"
+#~ msgstr "搜尋相關參數"
+
+#~ msgid "Maximum result number for a request: "
+#~ msgstr "最大打出電話數目"
+
+#~ msgid "Search for and display: "
+#~ msgstr "搜尋並顯示:"
+
 #~ msgid "_STUN Server"
 #~ msgstr "STUN伺服器(S)"
 
 #~ msgid "Apply"
 #~ msgstr "套用"
-
-#~ msgid "History empty"
-#~ msgstr "無曆史記錄"
-
diff --git a/sflphone-common/src/audio/alsalayer.cpp b/sflphone-common/src/audio/alsalayer.cpp
index 2d2811b363722e41d4a2d774182eec2ef21681e4..2a3939bfc37fd012bb27fb36ef56b3ba9a705786 100644
--- a/sflphone-common/src/audio/alsalayer.cpp
+++ b/sflphone-common/src/audio/alsalayer.cpp
@@ -50,7 +50,7 @@ AlsaLayer::~AlsaLayer (void)
     closeLayer();
 }
 
-    void
+bool
 AlsaLayer::closeLayer()
 {
     _debugAlsa("Close ALSA streams\n");
@@ -73,6 +73,8 @@ AlsaLayer::closeLayer()
     
     _CaptureHandle = 0;
     _PlaybackHandle = 0;
+
+    return true;
 }
 
     bool 
diff --git a/sflphone-common/src/audio/alsalayer.h b/sflphone-common/src/audio/alsalayer.h
index 1a392f691e0534eeff24ce80b20c2b8bc5c6768a..27259dd0c4f707dbaba833d929dab3c44d496c57 100644
--- a/sflphone-common/src/audio/alsalayer.h
+++ b/sflphone-common/src/audio/alsalayer.h
@@ -48,7 +48,7 @@ class AlsaLayer : public AudioLayer {
      */
     ~AlsaLayer(void);
 
-    void closeLayer( void );
+    bool closeLayer( void );
 
     /**
      * Check if no devices are opened, otherwise close them.
diff --git a/sflphone-common/src/audio/audiolayer.h b/sflphone-common/src/audio/audiolayer.h
index 679738b68c7fc15242eff85fd5e52c6068687f2f..f7d5404ef44218de97f5e3f4ae2233b29bd82a34 100644
--- a/sflphone-common/src/audio/audiolayer.h
+++ b/sflphone-common/src/audio/audiolayer.h
@@ -76,7 +76,7 @@ class AudioLayer {
          */
         virtual ~AudioLayer(void) {} 
 
-        virtual void closeLayer( void ) = 0;
+        virtual bool closeLayer( void ) = 0;
 
         /**
          * Check if no devices are opened, otherwise close them.
diff --git a/sflphone-common/src/audio/audiortp.cpp b/sflphone-common/src/audio/audiortp.cpp
index fb35df75d1097f42e86df5326cfa4f1d40cfeefd..72e640e93f3105c1352cc770e40146119268f5ba 100644
--- a/sflphone-common/src/audio/audiortp.cpp
+++ b/sflphone-common/src/audio/audiortp.cpp
@@ -81,7 +81,7 @@ AudioRtp::createNewSession (SIPCall *ca) {
 }
 
 
-void
+bool
 AudioRtp::closeRtpSession () {
 
     ost::MutexLock m(_threadMutex);
@@ -96,6 +96,8 @@ AudioRtp::closeRtpSession () {
     }
     AudioLayer* audiolayer = Manager::instance().getAudioDriver();
     audiolayer->stopStream();
+
+    return true;
 }
 
 
@@ -186,7 +188,6 @@ AudioRtpRTX::initBuffers()
     void
 AudioRtpRTX::initAudioRtpSession (void) 
 {
-    _debug("************* initAudioRtpSession *******************\n");
 
     try {
         if (_ca == 0) { return; }
@@ -194,11 +195,8 @@ AudioRtpRTX::initAudioRtpSession (void)
 
         if (_audiocodec == NULL) { return; }
 
-        _debug("************* get codec info *******************\n");
         _codecSampleRate = _audiocodec->getClockRate();
         _codecFrameSize = _audiocodec->getFrameSize();
-        _debug("_codecFrameSize: %i\n", _codecFrameSize);
-        _debug("_codecSampleRate: %i\n", _codecSampleRate);
         
 
         ost::InetHostAddress remote_ip(_ca->getLocalSDP()->get_remote_ip().c_str());
@@ -242,8 +240,6 @@ AudioRtpRTX::initAudioRtpSession (void)
             _sessionSend->setMark(true);
         } else {
 
-            //_debug("AudioRTP Thread: Added session destination %s\n", remote_ip.getHostname() );
-
             if (!_session->addDestination (remote_ip, (unsigned short)_ca->getLocalSDP()->get_remote_audio_port() )) {
                 return;
             }
@@ -416,7 +412,7 @@ AudioRtpRTX::sendSessionFromMic(int timestamp)
 
     // encode divise by two
     // Send encoded audio sample over the network
-    if (compSize > nbSamplesMax) { _debug("! ARTP: %d should be %d\n", compSize, nbSamplesMax);}
+    // if (compSize > nbSamplesMax) { _debug("! ARTP: %d should be %d\n", compSize, nbSamplesMax);}
     if (!_sym) {
         _sessionSend->putData(timestamp, micDataEncoded, compSize);
     } else {
@@ -578,8 +574,13 @@ AudioRtpRTX::run () {
     step = _codecFrameSize;
 
     int countTime = 0; // for receive
- 
-    int threadSleep = (_codecFrameSize * 1000) / _codecSampleRate;
+    
+    int threadSleep = 0;
+    if (_codecSampleRate != 0)
+        threadSleep = (_codecFrameSize * 1000) / _codecSampleRate;
+    else
+      threadSleep = _layerFrameSize;
+
     TimerPort::setTimer(threadSleep);
 
     audiolayer->startStream();
@@ -610,11 +611,11 @@ AudioRtpRTX::run () {
 
       
       if(sessionWaiting == 1){
-        // _debug("Record TWO buffer \n");
-        _ca->recAudio.recData(spkrDataDecoded,micData,_nSamplesSpkr,_nSamplesMic);
+        // Record mic and speaker during conversation
+        _ca->recAudio.recData(spkrDataConverted,micData,_nSamplesSpkr,_nSamplesMic);
       }
       else {
-        // _debug("Record ONE buffer \n");
+        // Record mic only while leaving a message
         _ca->recAudio.recData(micData,_nSamplesMic);
       }
 
diff --git a/sflphone-common/src/audio/audiortp.h b/sflphone-common/src/audio/audiortp.h
index 377da181a17c6642044f99e20b152781c81c3555..34d8b3ee1e7c982e029aeb7e35e81b367218c56f 100644
--- a/sflphone-common/src/audio/audiortp.h
+++ b/sflphone-common/src/audio/audiortp.h
@@ -200,7 +200,7 @@ class AudioRtp {
     /**
      * Close a RTP session and kills the remaining threads
      */
-    void closeRtpSession( void );
+    bool closeRtpSession( void );
 
     /**
      * Start recording
diff --git a/sflphone-common/src/audio/audiostream.cpp b/sflphone-common/src/audio/audiostream.cpp
index 01a56c974a63f160cb7cb1f8db1ebf3bd33c0690..08587fdb310803fe561ae208c025869f6b7ab86b 100644
--- a/sflphone-common/src/audio/audiostream.cpp
+++ b/sflphone-common/src/audio/audiostream.cpp
@@ -32,27 +32,52 @@ AudioStream::AudioStream( pa_context* context, int type, std::string desc, doubl
   channel_map.channels = 1; 
   pa_cvolume_set( &_volume , 1 , PA_VOLUME_NORM ) ; // * vol / 100 ;
   
-  _audiostream =  createStream( context );
+  _context = context;
+
+  // connectStream();
 } 
 
 AudioStream::~AudioStream()
 { 
-  _debug("Destroy audio streams\n");
-  pa_stream_disconnect( pulseStream() );
-  pa_stream_unref( pulseStream() );
-} 
+  disconnectStream();
+}
+
+bool
+AudioStream::connectStream()
+{
+  ost::MutexLock guard(_mutex);
+
+  if(!_audiostream)
+    _audiostream = createStream( _context );
+  else {
+    disconnectStream();
+    _audiostream = createStream( _context );
+  }
+
+  return true;
+}
 
-void
-AudioStream::disconnect( void )
+bool
+AudioStream::disconnectStream( void )
 { 
+  ost::MutexLock guard(_mutex);
+
   _debug("Destroy audio streams\n");
-  pa_stream_disconnect( pulseStream() );
-  pa_stream_unref( pulseStream() );
+  pa_stream_disconnect( _audiostream );
+  pa_stream_unref( _audiostream );
+
+  _audiostream = NULL;
+
+  return true;
 } 
 
+
+
 void 
 AudioStream::stream_state_callback( pa_stream* s, void* user_data UNUSED )
 {
+  
+  
   _debug("AudioStream::stream_state_callback :: The state of the stream changed\n");
   assert(s);
   switch(pa_stream_get_state(s)){
@@ -79,12 +104,20 @@ AudioStream::stream_state_callback( pa_stream* s, void* user_data UNUSED )
   }
 }
 
+pa_stream_state_t 
+AudioStream::getStreamState(void) {
+
+  ost::MutexLock guard(_mutex);
+  return pa_stream_get_state(_audiostream);
+}
 
 
 
   pa_stream*
 AudioStream::createStream( pa_context* c )
 {
+  ost::MutexLock guard(_mutex);
+
   pa_stream* s;
   //pa_cvolume cv;
 
diff --git a/sflphone-common/src/audio/audiostream.h b/sflphone-common/src/audio/audiostream.h
index 121b87ad9c70a4f5ef09c7865a9af2ac166c06d3..f21e4b0d27654a5efa5f28e919de6817de075d0b 100644
--- a/sflphone-common/src/audio/audiostream.h
+++ b/sflphone-common/src/audio/audiostream.h
@@ -27,6 +27,8 @@
 #include "ringbuffer.h"
 #include "audioloop.h"
 
+#include <cc++/thread.h>
+
 /**
  * This data structure contains the different king of audio streams available
  */
@@ -68,10 +70,15 @@ class AudioStream {
      */
     int putUrgent( void* buffer , int toCopy );
 
+    /**
+     * Connect the pulse audio stream
+     */
+    bool connectStream();
+
     /**
      * Disconnect the pulseaudio stream
      */
-    void disconnect();
+    bool disconnectStream();
     
     /**
      * Accessor: Get the pulseaudio stream object
@@ -94,6 +101,14 @@ class AudioStream {
     void setVolume( double pc ) { _volume.values[0] *= pc/100; }
     pa_cvolume getVolume( void ) { return _volume; }
 
+    /**
+     * Accessor
+     * @return stream state
+     */
+    pa_stream_state_t getStreamState(void);
+
+    
+
   private:
   
     // Copy Constructor
@@ -124,6 +139,11 @@ class AudioStream {
      */
     void write( void );
 
+    /**
+     * The pulse audio context
+     */
+    pa_context* _context;
+
     /**
      * The pulse audio object
      */
@@ -146,6 +166,8 @@ class AudioStream {
     pa_sample_spec sample_spec ;
     pa_cvolume _volume;
 
+    ost::Mutex _mutex;
+
 };
 
 #endif // _AUDIO_STREAM_H
diff --git a/sflphone-common/src/audio/pulselayer.cpp b/sflphone-common/src/audio/pulselayer.cpp
index 02c107ea976fd5ac17cc30a6363637a894be5ebb..fd71c8473568e414169c5be2eb3cd498f71fb2e9 100644
--- a/sflphone-common/src/audio/pulselayer.cpp
+++ b/sflphone-common/src/audio/pulselayer.cpp
@@ -41,6 +41,7 @@ static  void audioCallback ( pa_stream* s, size_t bytes, void* userdata )
 {
     PulseLayer::streamState = 0;
     _debug("PulseLayer::Pulse audio constructor: Create context\n");
+    
 }
 
 // Destructor
@@ -48,27 +49,31 @@ PulseLayer::~PulseLayer (void)
 { 
     closeLayer ();
 
-    pa_context_disconnect( context );  
-    pa_context_unref( context );
+    // pa_context_disconnect( context );  
+    // pa_context_unref( context );
 }
 
-    void
+bool
 PulseLayer::closeLayer( void )
 { 
     _debug("PulseLayer::closeLayer :: Destroy pulselayer\n");
 
-    playback->disconnect(); 
-    record->disconnect();
+    playback->disconnectStream(); 
+    record->disconnectStream();
 
-    while(PulseLayer::streamState != 2)
-        ;
+    while(PulseLayer::streamState != 2);
     PulseLayer::streamState = 0; 
 
     //TODO  Remove this ugly hack
     sleep(2);
+
+    pa_context_disconnect( context );  
+    pa_context_unref( context );
+
+    return true;
 }
 
-    void
+void
 PulseLayer::connectPulseAudioServer( void )
 {
     _debug("PulseLayer::connectPulseAudioServer \n");
@@ -123,33 +128,45 @@ void PulseLayer::context_state_callback( pa_context* c, void* user_data )
     }
 }
 
-void PulseLayer::disconnectPulseAudioServer( void )
+bool PulseLayer::disconnectPulseAudioServer( void )
 {
-  _debug(" PulseLayer::disconnectPulseAudioServer( void ) \n");
-    if( playback )
-        delete playback; playback=NULL;
+    _debug(" PulseLayer::disconnectPulseAudioServer( void ) \n");
 
-    if( record )
+    if( playback ){
+      // playback->disconnectStream();
+        delete playback; playback=NULL;
+    }
+    if( record ){
+      // record->disconnectStream();
         delete record; record=NULL;
+    }
+    if (!playback && !record)
+      return true;
+    else
+      return false;
 }
 
 
-void PulseLayer::createStreams( pa_context* c )
+bool PulseLayer::createStreams( pa_context* c )
 {
     _debug("PulseLayer::createStreams \n");
     
     playback = new AudioStream(c, PLAYBACK_STREAM, PLAYBACK_STREAM_NAME, _manager->getSpkrVolume());
+    playback->connectStream();
     pa_stream_set_write_callback( playback->pulseStream(), audioCallback, this);
     // pa_stream_set_overflow_callback( playback->pulseStream() , overflow , this);
     // pa_stream_set_suspended_callback( playback->pulseStream(), stream_suspended_callback, this);
     
     record = new AudioStream(c, CAPTURE_STREAM, CAPTURE_STREAM_NAME , _manager->getMicVolume());
+    record->connectStream();
     pa_stream_set_read_callback( record->pulseStream() , audioCallback, this);
     // pa_stream_set_underflow_callback( record->pulseStream() , underflow , this);
     // pa_stream_set_suspended_callback(record->pulseStream(), stream_suspended_callback, this);
 
 
     pa_threaded_mainloop_signal(m , 0);
+
+    return true;
 }
 
 
@@ -177,7 +194,7 @@ bool PulseLayer::openDevice(int indexIn UNUSED, int indexOut UNUSED, int sampleR
     // startStream();
 
     _debug("Connection Done!! \n");
-    return true;
+
 }
 
 void PulseLayer::closeCaptureStream( void )
diff --git a/sflphone-common/src/audio/pulselayer.h b/sflphone-common/src/audio/pulselayer.h
index ce2bc2e6af79d49dd5d049f952896c2b03956c44..beae9eacc2b5b7400aca9ccd6d25a79b98dcd1c8 100644
--- a/sflphone-common/src/audio/pulselayer.h
+++ b/sflphone-common/src/audio/pulselayer.h
@@ -37,7 +37,7 @@ class PulseLayer : public AudioLayer {
     PulseLayer(ManagerImpl* manager);
     ~PulseLayer(void);
 
-    void closeLayer( void );
+    bool closeLayer( void );
 
     /**
      * Check if no devices are opened, otherwise close them.
@@ -153,7 +153,7 @@ class PulseLayer : public AudioLayer {
      * Create the audio streams into the given context
      * @param c	The pulseaudio context
      */ 
-    void createStreams( pa_context* c );
+    bool createStreams( pa_context* c );
 
     /**
      * Drop the pending frames and close the playback device
@@ -168,7 +168,7 @@ class PulseLayer : public AudioLayer {
     /**
      * Close the connection with the local pulseaudio server
      */
-    void disconnectPulseAudioServer( void );
+    bool disconnectPulseAudioServer( void );
 
     /**
      * Get some information about the pulseaudio server
@@ -192,9 +192,12 @@ class PulseLayer : public AudioLayer {
     int spkrVolume;
     int micVolume;
 
+    // private:
 
 public: 
     static int streamState;
+
+    friend class AudioLayerTest;
 };
 
 #endif // _PULSE_LAYER_H_
diff --git a/sflphone-common/src/call.h b/sflphone-common/src/call.h
index 836ee3daa6cf444ee65e1531d9f5ac6d8a7d89a8..1480ca94328452966ba009f84170d9f0c7b8efb3 100644
--- a/sflphone-common/src/call.h
+++ b/sflphone-common/src/call.h
@@ -26,7 +26,7 @@
 
 #include "plug-in/audiorecorder/audiorecord.h"
 
-#define IP_TO_IP_PATTERN       "ip:"
+#define IP_TO_IP_PATTERN       "sip:"
 
 #define CallConfigNULL          NULL
 /* 
diff --git a/sflphone-common/src/dbus/configurationmanager.cpp b/sflphone-common/src/dbus/configurationmanager.cpp
index 91f76a3ad4c1cbda12a377cf14c4195347a70018..510d97419acfa1e7fba26271586f9cfadcc531da 100644
--- a/sflphone-common/src/dbus/configurationmanager.cpp
+++ b/sflphone-common/src/dbus/configurationmanager.cpp
@@ -36,6 +36,7 @@ const char* ConfigurationManager::SERVER_PATH = "/org/sflphone/SFLphone/Configur
 	std::map< std::string, std::string >
 ConfigurationManager::getAccountDetails( const std::string& accountID )
 {
+        _debug("ConfigurationManager::getAccountDetails\n");
 	return Manager::instance().getAccountDetails(accountID);
 }
 
@@ -50,6 +51,7 @@ ConfigurationManager::setAccountDetails( const std::string& accountID,
 	void
 ConfigurationManager::sendRegister( const std::string& accountID, const int32_t& expire )
 {
+  _debug("ConfigurationManager::sendRegister received\n");
 	Manager::instance().sendRegister(accountID, expire);
 }
 
@@ -109,12 +111,14 @@ ConfigurationManager::getRingtoneList(  )
 	std::vector< std::string  >
 ConfigurationManager::getCodecList(  )
 {
+        _debug("ConfigurationManager::getRingtoneList received\n");
 	return Manager::instance().getCodecList();
 }
 
 	std::vector< std::string >
 ConfigurationManager::getCodecDetails( const int32_t& payload )
 {
+        _debug("ConfigurationManager::getRingtoneList received\n");
 	return Manager::instance().getCodecDetails( payload );
 }
 
diff --git a/sflphone-common/src/managerimpl.cpp b/sflphone-common/src/managerimpl.cpp
index 994d60541b9c4db7ca61639a2c8205bd3523a0c4..1dce0670c722c6944db39deef445d3054a83e5af 100644
--- a/sflphone-common/src/managerimpl.cpp
+++ b/sflphone-common/src/managerimpl.cpp
@@ -307,21 +307,25 @@ ManagerImpl::answerCall(const CallID& id)
   bool
 ManagerImpl::hangupCall(const CallID& id)
 {
-    _debug("ManagerImpl::hangupCall(): This function is called when user hangup \n");
+    _debug("ManagerImpl::hangupCall()\n");
     PulseLayer *pulselayer;
     AccountID accountid;
     bool returnValue;
+    AudioLayer *audiolayer;
 
     stopTone(false);
 
     /* Broadcast a signal over DBus */
     if (_dbus) _dbus->getCallManager()->callStateChanged(id, "HUNGUP");
 
+    _debug("Stop audio stream\n");
+    audiolayer = getAudioDriver();
+    audiolayer->stopStream();
+
     /* Direct IP to IP call */
     if (getConfigFromCall (id) == Call::IPtoIP) {
         returnValue = SIPVoIPLink::instance (AccountNULL)->hangup (id);
     }
-
     /* Classic call, attached to an account */
     else {
         accountid = getAccountFromCall( id );
@@ -340,6 +344,8 @@ ManagerImpl::hangupCall(const CallID& id)
         if(pulselayer)  pulselayer->restorePulseAppsVolume();
     }
 
+    
+
     return returnValue;
 }
 
@@ -810,10 +816,19 @@ ManagerImpl::peerHungupCall(const CallID& id)
     AccountID accountid;
     bool returnValue;
 
-    accountid = getAccountFromCall( id );
-    if (accountid == AccountNULL) {
-        _debug("peerHungupCall: Call doesn't exists\n");
-        return;
+    /* Direct IP to IP call */
+    if (getConfigFromCall (id) == Call::IPtoIP) {
+        SIPVoIPLink::instance (AccountNULL)->hangup (id);
+    }
+
+    else
+    {
+        accountid = getAccountFromCall( id );
+        if (accountid == AccountNULL) {
+            _debug("peerHungupCall: Call doesn't exists\n");
+            return;
+        }
+        returnValue = getAccountLink(accountid)->peerHungup(id);
     }
 
     /* Broadcast a signal over DBus */
@@ -824,8 +839,6 @@ ManagerImpl::peerHungupCall(const CallID& id)
         switchCall("");
     }
 
-    returnValue = getAccountLink(accountid)->peerHungup(id);
-
     removeWaitingCall(id);
     removeCallAccount(id);
 
@@ -1040,6 +1053,7 @@ ManagerImpl::ringtone()
   AudioLoop*
 ManagerImpl::getTelephoneTone()
 {
+  // _debug("ManagerImpl::getTelephoneTone()\n");
   if(_telephoneTone != 0) {
     ost::MutexLock m(_toneMutex);
     return _telephoneTone->getCurrentTone();
@@ -1052,6 +1066,7 @@ ManagerImpl::getTelephoneTone()
   AudioLoop*
 ManagerImpl::getTelephoneFile()
 {
+  // _debug("ManagerImpl::getTelephoneFile()\n");
   ost::MutexLock m(_toneMutex);
   if(_audiofile.isStarted()) {
     return &_audiofile;
@@ -1209,6 +1224,7 @@ ManagerImpl::initConfigFile ( bool load_user_value )
   fill_config_str(CONFIG_ACCOUNTS_ORDER, "");
 
   section = ADDRESSBOOK;
+  fill_config_int (ADDRESSBOOK_ENABLE, YES_STR);
   fill_config_int (ADDRESSBOOK_MAX_RESULTS, "25");
   fill_config_int (ADDRESSBOOK_DISPLAY_CONTACT_PHOTO, NO_STR);
   fill_config_int (ADDRESSBOOK_DISPLAY_PHONE_BUSINESS, YES_STR);
@@ -1861,7 +1877,7 @@ int ManagerImpl::app_is_running( std::string process )
 /**
  * Initialization: Main Thread
  */
-  void
+bool
 ManagerImpl::initAudioDriver(void)
 {
 
@@ -1889,13 +1905,17 @@ ManagerImpl::initAudioDriver(void)
 
   if (_audiodriver == 0) {
     _debug("Init audio driver error\n");
+    return false;
   } else {
     error = getAudioDriver()->getErrorMessage();
     if (error == -1) {
       _debug("Init audio driver: %i\n", error);
+      return false;
     }
   }
 
+  return true;
+
 }
 
 /**
@@ -1992,7 +2012,7 @@ void ManagerImpl::switchAudioManager (void)
 
     // need to stop audio streams if there is currently no call
     if( (type != PULSEAUDIO) && (!hasCurrentCall())) {
-        _debug("There is currently a call!!\n");
+      // _debug("There is currently a call!!\n");
         _audiodriver->stopStream();
 
     }
@@ -2522,11 +2542,11 @@ ManagerImpl::getAccountIdFromNameAndServer(const std::string& userName, const st
     }
   }
 
-  // We failed! Then only match the username
+  // We failed! Then only match the hostname
   for(iter = _accountMap.begin(); iter != _accountMap.end(); ++iter) {
     account = dynamic_cast<SIPAccount *>(iter->second);
     if ( account != NULL ) {
-    	if(account->userMatch(userName))
+    	if(account->hostnameMatch(server))
       		return iter->first;
     }
   }
@@ -2654,6 +2674,7 @@ std::map<std::string, int32_t> ManagerImpl::getAddressbookSettings () {
 
     std::map<std::string, int32_t> settings;
 
+    settings.insert (std::pair<std::string, int32_t> ("ADDRESSBOOK_ENABLE", getConfigInt (ADDRESSBOOK, ADDRESSBOOK_ENABLE)) );
     settings.insert (std::pair<std::string, int32_t> ("ADDRESSBOOK_MAX_RESULTS", getConfigInt (ADDRESSBOOK, ADDRESSBOOK_MAX_RESULTS)) );
     settings.insert (std::pair<std::string, int32_t> ("ADDRESSBOOK_DISPLAY_CONTACT_PHOTO", getConfigInt (ADDRESSBOOK, ADDRESSBOOK_DISPLAY_CONTACT_PHOTO)));
     settings.insert (std::pair<std::string, int32_t> ("ADDRESSBOOK_DISPLAY_PHONE_BUSINESS", getConfigInt (ADDRESSBOOK, ADDRESSBOOK_DISPLAY_PHONE_BUSINESS)));
@@ -2665,6 +2686,7 @@ std::map<std::string, int32_t> ManagerImpl::getAddressbookSettings () {
 
 void ManagerImpl::setAddressbookSettings (const std::map<std::string, int32_t>& settings){
 
+    setConfig(ADDRESSBOOK, ADDRESSBOOK_ENABLE, (*settings.find("ADDRESSBOOK_ENABLE")).second);
     setConfig(ADDRESSBOOK, ADDRESSBOOK_MAX_RESULTS, (*settings.find("ADDRESSBOOK_MAX_RESULTS")).second);
     setConfig(ADDRESSBOOK, ADDRESSBOOK_DISPLAY_CONTACT_PHOTO , (*settings.find("ADDRESSBOOK_DISPLAY_CONTACT_PHOTO")).second);
     setConfig(ADDRESSBOOK, ADDRESSBOOK_DISPLAY_PHONE_BUSINESS , (*settings.find("ADDRESSBOOK_DISPLAY_PHONE_BUSINESS")).second);
@@ -2726,8 +2748,9 @@ void ManagerImpl::check_call_configuration (const CallID& id, const std::string
     /* Check if the call is an IP-to-IP call */
     /* For an IP-to-IP call, we don't need any account */
     /* Pattern looked for : ip:xxx.xxx.xxx.xxx */
-    pattern = to.substr (0,3);
+    pattern = to.substr (0,4);
     if (pattern==IP_TO_IP_PATTERN) {
+        _debug("Sending Sip Call \n");
         config = Call::IPtoIP;
     } else {
         config = Call::Classic;
diff --git a/sflphone-common/src/managerimpl.h b/sflphone-common/src/managerimpl.h
index 2337cc4bbf86889bc37095554ddcaacb53078920..10caf62b48c5e85df232aa12820e1398424bb9ae 100644
--- a/sflphone-common/src/managerimpl.h
+++ b/sflphone-common/src/managerimpl.h
@@ -881,6 +881,11 @@ class ManagerImpl {
      */
     AccountMap getSipAccountMap( void );
 
+    /*
+     * Initialize audiodriver
+     */
+    bool initAudioDriver(void);
+
   private:
 
     /**
@@ -906,11 +911,7 @@ class ManagerImpl {
      */
     void initAudioCodec(void);
 
-    /*
-     * Initialize audiodriver
-     */
-    void initAudioDriver(void);
-
+    
     /*
      * Initialize zeroconf module and scanning
      */
diff --git a/sflphone-common/src/sipaccount.cpp b/sflphone-common/src/sipaccount.cpp
index b72eb15e0f9bcbb78c60230b0ecddf2b18af0467..31502460a398788f81478dd451fd3f99ea2718f8 100644
--- a/sflphone-common/src/sipaccount.cpp
+++ b/sflphone-common/src/sipaccount.cpp
@@ -87,7 +87,7 @@ void SIPAccount::loadConfig()
 
 bool SIPAccount::fullMatch(const std::string& username, const std::string& hostname)
 {
-  return (username == getUsername() && hostname == getHostname());
+  return (userMatch (username) && hostnameMatch (hostname));
 }
 
 bool SIPAccount::userMatch(const std::string& username)
@@ -95,3 +95,8 @@ bool SIPAccount::userMatch(const std::string& username)
   return (username == getUsername());
 }
 
+bool SIPAccount::hostnameMatch(const std::string& hostname)
+{
+  return (hostname == getHostname());
+}
+
diff --git a/sflphone-common/src/sipaccount.h b/sflphone-common/src/sipaccount.h
index a49af2d00864a29c674a2ac152dcd2663d75620c..a9925d734f8d67a46c4d438fdfd3154a9046594a 100644
--- a/sflphone-common/src/sipaccount.h
+++ b/sflphone-common/src/sipaccount.h
@@ -76,6 +76,7 @@ class SIPAccount : public Account
 
         bool fullMatch(const std::string& username, const std::string& hostname);
         bool userMatch(const std::string& username);
+        bool hostnameMatch(const std::string& hostname);
 
         pjsip_regc* getRegistrationInfo( void ) { return _regc; }
         void setRegistrationInfo( pjsip_regc *regc ) { _regc = regc; }
diff --git a/sflphone-common/src/sipvoiplink.cpp b/sflphone-common/src/sipvoiplink.cpp
index c1820b60cd438d69d494a82d3daf526e6e2c856b..9cc3d9ca8b5bd9fb2c9a5030bc40504fd0551f5e 100644
--- a/sflphone-common/src/sipvoiplink.cpp
+++ b/sflphone-common/src/sipvoiplink.cpp
@@ -578,19 +578,23 @@ SIPVoIPLink::hangup(const CallID& id)
     call = getSIPCall(id);
 
     if (call==0) { _debug("! SIP Error: Call doesn't exist\n"); return false; }  
-
+    
     // User hangup current call. Notify peer
     status = pjsip_inv_end_session(call->getInvSession(), 404, NULL, &tdata);
     if(status != PJ_SUCCESS)
         return false;
+    
 
     if(tdata == NULL)
         return true;
+    // _debug("Some tdata info: %",);
 
+    
     status = pjsip_inv_send_msg(call->getInvSession(), tdata);
     if(status != PJ_SUCCESS)
         return false;
 
+
     call->getInvSession()->mod_data[getModId()] = NULL;
 
 
@@ -807,6 +811,8 @@ SIPVoIPLink::transfer(const CallID& id, const std::string& to)
      * voiplink from the call any more. But the voiplink is useful!
      */
     pjsip_evsub_set_mod_data(sub, getModId(), this);
+ 
+    _debug ("SIP port listener = %i ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++", _localExternPort);
 
     /*
      * Create REFER request.
@@ -840,7 +846,7 @@ SIPVoIPLink::refuse (const CallID& id)
     pj_status_t status;
     pjsip_tx_data *tdata;
 
-    _debug("SIPVoIPLink::refuse() : the call is refused \n");
+    
     call = getSIPCall(id);
 
     if (call==0) { 
@@ -1098,7 +1104,7 @@ std::string SIPVoIPLink::getSipTo(const std::string& to_url, std::string hostnam
         SIPVoIPLink::SIPCallClosed(SIPCall *call) 
         {
 
-            _debug("SIPVoIPLink::SIPCallClosed():: function called when peer hangup");
+            
             // it was without did before
             //SIPCall* call = findSIPCallWithCid(event->cid);
             if (!call) { return; }
@@ -1198,7 +1204,6 @@ std::string SIPVoIPLink::getSipTo(const std::string& to_url, std::string hostnam
     }
 
     bool SIPVoIPLink::new_ip_to_ip_call (const CallID& id, const std::string& to) {
-
         SIPCall *call;
         pj_status_t status;
         std::string uri_from, uri_to, hostname;
@@ -1221,8 +1226,9 @@ std::string SIPVoIPLink::getSipTo(const std::string& to_url, std::string hostnam
             uri_from = "sip:" + hostname + "@" + getLocalIPAddress() ;
 
             // Generate the from URI
-            uri_to = "sip:" + to.substr (3, to.length());
+            uri_to = "sip:" + to.substr (4, to.length());
 
+            _debug("get local ip address: %s \n", getLocalIPAddress().c_str());
             // Generate the to URI
             setCallAudioLocal(call, getLocalIPAddress(), useStun(), getStunServer());
 
@@ -1233,7 +1239,8 @@ std::string SIPVoIPLink::getSipTo(const std::string& to_url, std::string hostnam
             call->getLocalSDP()->create_initial_offer();
 
             // Generate the contact URI
-            uri_contact << "<" << uri_from << ":" << call->getLocalSDP()->get_local_extern_audio_port() << ">";
+            // uri_contact << "<" << uri_from << ":" << call->getLocalSDP()->get_local_extern_audio_port() << ">";
+            uri_contact << "<" << uri_from << ":" << _localExternPort << ">";
 
             // pjsip need the from and to information in pj_str_t format
             pj_strdup2(_pool, &from, uri_from.data());
@@ -1490,8 +1497,8 @@ std::string SIPVoIPLink::getSipTo(const std::string& to_url, std::string hostnam
         status = pjsip_xfer_init_module(_endpt);
         PJ_ASSERT_RETURN( status == PJ_SUCCESS, 1 );
 
-        status = enable_dns_srv_resolver (_endpt, &p_resv);
-        PJ_ASSERT_RETURN( status == PJ_SUCCESS, 1 );
+        //status = enable_dns_srv_resolver (_endpt, &p_resv);
+        //PJ_ASSERT_RETURN( status == PJ_SUCCESS, 1 );
 
         // Init the callback for INVITE session: 
         pj_bzero(&inv_cb, sizeof (inv_cb));
@@ -1848,6 +1855,7 @@ std::string SIPVoIPLink::getSipTo(const std::string& to_url, std::string hostnam
                     case PJSIP_SC_OK:
                     case PJSIP_SC_DECLINE:
                     case PJSIP_SC_REQUEST_TERMINATED: 
+                        
                         accId = Manager::instance().getAccountFromCall(call->getCallId());
                         link = dynamic_cast<SIPVoIPLink *> (Manager::instance().getAccountLink(accId));
                         if (link) {
@@ -1903,6 +1911,13 @@ std::string SIPVoIPLink::getSipTo(const std::string& to_url, std::string hostnam
     }
 
 void call_on_tsx_changed(pjsip_inv_session *inv, pjsip_transaction *tsx, pjsip_event *e){
+
+	if (tsx->role==PJSIP_ROLE_UAS && tsx->state==PJSIP_TSX_STATE_TRYING &&
+        	pjsip_method_cmp(&tsx->method, &pjsip_refer_method)==0)
+    	{
+		/** Handle the refer method **/
+		onCallTransfered (inv, e->body.tsx_state.src.rdata);
+    	}
     }
 
     void regc_cb(struct pjsip_regc_cbparam *param){
@@ -1990,7 +2005,7 @@ void call_on_tsx_changed(pjsip_inv_session *inv, pjsip_transaction *tsx, pjsip_e
             sip_uri = (pjsip_sip_uri *) pjsip_uri_get_uri(uri);
 
             userName = std::string(sip_uri->user.ptr, sip_uri->user.slen);
-            server = std::string(sip_uri->host.ptr, sip_uri->host.slen) ;
+            server = std::string(sip_uri->host.ptr, sip_uri->host.slen);
 
             std::cout << userName << " ------------------ " << server << std::endl;
 
@@ -2021,6 +2036,7 @@ void call_on_tsx_changed(pjsip_inv_session *inv, pjsip_transaction *tsx, pjsip_e
             uri = rdata->msg_info.from->uri;
             sip_uri = (pjsip_sip_uri *) pjsip_uri_get_uri(uri);
 
+
             /* Retrieve only the fisrt characters */
             caller = std::string(sip_uri->user.ptr, sip_uri->user.slen);
             callerServer = std::string(sip_uri->host.ptr, sip_uri->host.slen);
@@ -2376,7 +2392,7 @@ void call_on_tsx_changed(pjsip_inv_session *inv, pjsip_transaction *tsx, pjsip_e
         // _debug(" %s \n", event->body.rx_msg.rdata->msg_info.msg_buf);
             
 
-        _debug("UserAgent: Transfer callback is involved!\n");
+        
         // _debug("UserAgent: pjsip_evsub_get_state_name: %s \n", pjsip_evsub_get_state_name(sub));
 
         /*
@@ -2450,34 +2466,42 @@ void call_on_tsx_changed(pjsip_inv_session *inv, pjsip_transaction *tsx, pjsip_e
             /* When subscription is terminated, clear the xfer_sub member of 
              * the inv_data.
              */
+            
             if (pjsip_evsub_get_state(sub) == PJSIP_EVSUB_STATE_TERMINATED) {
                 pjsip_evsub_set_mod_data(sub, _mod_ua.id, NULL);
                 _debug("UserAgent: Xfer client subscription terminated\n");
 
             }
-
+            
             if (!link || !event) {
                 /* Application is not interested with call progress status */
                 _debug("UserAgent: Either link or event is empty!\n");
                 return;
             }
             
+            
 
             /* This better be a NOTIFY request */
             if (event->type == PJSIP_EVENT_TSX_STATE &&
                     event->body.tsx_state.type == PJSIP_EVENT_RX_MSG)
             {
-
+                
                 pjsip_rx_data *rdata;
 
                 rdata = event->body.tsx_state.src.rdata;
 
+            
                 /* Check if there's body */
                 msg = rdata->msg_info.msg;
                 body = msg->body;
                 if (!body) {
-                    _debug("UserAgent: Warning! Received NOTIFY without message body\n");
-                    return;
+                  // if (call->getCallConfiguration () == Call::IPtoIP) {
+                  //   _debug("UserAgent: IptoIp NOTIFY without message body\n");
+                  // }
+                  // else{
+                      _debug("UserAgent: Warning! Received NOTIFY without message body\n");
+                      return;
+                      // }
                 }
 
                 
@@ -2503,7 +2527,7 @@ void call_on_tsx_changed(pjsip_inv_session *inv, pjsip_transaction *tsx, pjsip_e
                 status_line.code = 500;
                 status_line.reason = *pjsip_get_status_text(500);
             }
-
+            
             
             if(event->body.rx_msg.rdata->msg_info.msg_buf != NULL) {
                 request = event->body.rx_msg.rdata->msg_info.msg_buf;
@@ -2522,7 +2546,7 @@ void call_on_tsx_changed(pjsip_inv_session *inv, pjsip_transaction *tsx, pjsip_e
                 }
             }
 
-
+            
             // Get current call
             SIPCall *call = dynamic_cast<SIPCall *>(link->getCall(Manager::instance().getCurrentCallId()));
             if(!call) {
diff --git a/sflphone-common/src/sipvoiplink.h b/sflphone-common/src/sipvoiplink.h
index 028fcd8a2fd6173135816df5c1682348813daaa4..56d17b4b979dc98b20090f316c66fcdae83da380 100644
--- a/sflphone-common/src/sipvoiplink.h
+++ b/sflphone-common/src/sipvoiplink.h
@@ -42,7 +42,7 @@ class AudioRtp;
 #define RANDOM_SIP_PORT   rand() % 64000 + 1024
 
 // To set the verbosity. From 0 (min) to 6 (max)
-#define PJ_LOG_LEVEL 0
+#define PJ_LOG_LEVEL 6
 
 /**
  * @file sipvoiplink.h
diff --git a/sflphone-common/src/user_cfg.h b/sflphone-common/src/user_cfg.h
index d0522277ea45fa17b22d0f732f00f82a20bb9e78..ee708017505aac2ce43a148e89b77db15dcb8401 100644
--- a/sflphone-common/src/user_cfg.h
+++ b/sflphone-common/src/user_cfg.h
@@ -73,6 +73,7 @@
 #define STUN_SERVER     "STUN.server"
 
 #define ADDRESSBOOK                 "Addressbook"               /** Address book section */
+#define ADDRESSBOOK_ENABLE           "Addressbook.enable"               /** Enable address book */
 #define ADDRESSBOOK_MAX_RESULTS      "Addressbook.max_results"
 #define ADDRESSBOOK_DISPLAY_CONTACT_PHOTO   "Addressbook.contact_photo"
 #define ADDRESSBOOK_DISPLAY_PHONE_BUSINESS   "Addressbook.phone_business"
@@ -89,7 +90,7 @@
 #define PHONE_NUMBER_HOOK_ADD_PREFIX                      "Hooks.phone_number_add_prefix"
 
 #define EMPTY_FIELD		""			/** Default value for empty field */
-#define DFT_STUN_SERVER 	"stun.ekiga.net"	/** Default STUN server address */
+#define DFT_STUN_SERVER 	"stun.sflphone.org"	/** Default STUN server address */
 #define	YES_STR			"1"			/** Default YES value */
 #define	NO_STR			"0"			/** Default NO value */
 #define DFT_PULSE_LENGTH_STR	"250"			/** Default DTMF lenght */
diff --git a/sflphone-common/test/Makefile.am b/sflphone-common/test/Makefile.am
index 8f3003587d6e748791b0407c6465ad85d2d6343d..d44914c98b8eef43b4bb2b4357622c146660b20d 100644
--- a/sflphone-common/test/Makefile.am
+++ b/sflphone-common/test/Makefile.am
@@ -1,6 +1,6 @@
 include ../globals.mak
 
-bin_PROGRAMS = numbercleanerTester pluginmanagerTester hookmanagerTester
+bin_PROGRAMS = numbercleanerTester pluginmanagerTester hookmanagerTester audiolayerTester rtpTester
 
 OBJECT_FILES= \
 	../src/sflphoned-managerimpl.o \
@@ -78,3 +78,41 @@ hookmanagerTester_LDADD = \
 		-luuid \
 		$(OBJECT_FILES)
 
+audiolayerTester_SOURCES = \
+		audiolayerTest.h \
+		audiolayerTest.cpp \
+		TestMain.cpp
+
+audiolayerTester_LDADD = \
+		../src/libsflphone.la  \
+		$(SFLPHONE_LIBS) $(ZEROCONFLIB) $(LIB_DNSSD) \
+		@ALSA_LIBS@ \
+		@PULSEAUDIO_LIBS@ \
+		@CPPUNIT_LIBS@ \
+		@CCEXT2_LIBS@ \
+		@CCGNU2_LIBS@ \
+		@CCRTP_LIBS@ \
+		@SAMPLERATE_LIBS@ \
+		$(PJSIP_LIBS) \
+		-luuid \
+		$(OBJECT_FILES)
+
+rtpTester_SOURCES = \
+		rtpTest.h \
+		rtpTest.cpp \
+		TestMain.cpp
+
+rtpTester_LDADD = \
+		../src/libsflphone.la  \
+		$(SFLPHONE_LIBS) $(ZEROCONFLIB) $(LIB_DNSSD) \
+		@ALSA_LIBS@ \
+		@PULSEAUDIO_LIBS@ \
+		@CPPUNIT_LIBS@ \
+		@CCEXT2_LIBS@ \
+		@CCGNU2_LIBS@ \
+		@CCRTP_LIBS@ \
+		@SAMPLERATE_LIBS@ \
+		$(PJSIP_LIBS) \
+		-luuid \
+		$(OBJECT_FILES)
+
diff --git a/sflphone-common/test/audiolayerTest.cpp b/sflphone-common/test/audiolayerTest.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..4a4b6396f32bc50f9f9a036a9455d139dbb8dad1
--- /dev/null
+++ b/sflphone-common/test/audiolayerTest.cpp
@@ -0,0 +1,206 @@
+/*
+ *  Copyright (C) 2009 Savoir-Faire Linux inc.
+ *  Author: Emmanuel Milou <emmanuel.milou@savoirfairelinux.com>
+ *
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 3 of the License, or
+ *  (at your option) any later version.
+ *
+ *  This program is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *  GNU General Public License for more details.
+ *
+ *  You should have received a copy of the GNU General Public License
+ *  along with this program; if not, write to the Free Software
+ *   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+
+#include <stdio.h>
+#include <sstream>
+
+#include "audiolayerTest.h"
+
+#include <unistd.h>
+
+
+using std::cout;
+using std::endl;
+
+
+
+void AudioLayerTest::setUp(){
+
+    // Instanciate the manager
+    Manager::instance().initConfigFile();
+    Manager::instance().init();
+
+    // _audiodriver = Manager::instance().getAudioDriver();
+
+    // std::string alsaPlugin;
+    // AlsaLayer *alsalayer;
+
+    // int numCardIn, numCardOut, sampleRate, frameSize;
+    // layer = _audiodriver->getLayerType();
+
+    /*
+    alsaPlugin = Manager::instance().getConfigString( AUDIO , ALSA_PLUGIN );
+    numCardIn  = Manager::instance().getConfigInt( AUDIO , ALSA_CARD_ID_IN );
+    numCardOut = Manager::instance().getConfigInt( AUDIO , ALSA_CARD_ID_OUT );
+    sampleRate = Manager::instance().getConfigInt( AUDIO , ALSA_SAMPLE_RATE );
+    if (sampleRate <=0 || sampleRate > 48000) {
+        sampleRate = 44100;
+    }
+    frameSize = Manager::instance().getConfigInt(AUDIO, ALSA_FRAME_SIZE );
+    */
+
+    // get a pointer to the audio layer
+    // _audiodriver = Manager::instance().getAudioDriver();
+   
+}
+
+void AudioLayerTest::testAudioLayerConfig(){
+  int sampling_rate = Manager::instance().getConfigInt(AUDIO, ALSA_SAMPLE_RATE);
+  int frame_size = Manager::instance().getConfigInt(AUDIO, ALSA_FRAME_SIZE);
+
+  CPPUNIT_ASSERT(Manager::instance().getAudioDriver()->getSampleRate() == sampling_rate);
+  CPPUNIT_ASSERT(Manager::instance().getAudioDriver()->getFrameSize() == frame_size);
+}
+
+void AudioLayerTest::testAudioLayerSwitch(){
+
+  _debug("---------- AudioLayerTest::testAudioLayerSwitch ---------------------------\n");
+
+  
+  int previous_layer = Manager::instance().getAudioDriver()->getLayerType();
+  
+  for(int i = 0; i < 2; i++) {
+    _debug("---------- AudioLayerTest::testAudioLayerSwitch - %i -------------\n",i);
+    Manager::instance().switchAudioManager();
+    if(previous_layer == ALSA) {
+      CPPUNIT_ASSERT(Manager::instance().getAudioDriver()->getLayerType() == PULSEAUDIO);
+    } 
+    else {
+      CPPUNIT_ASSERT(Manager::instance().getAudioDriver()->getLayerType() == ALSA);
+    }
+    previous_layer = Manager::instance().getAudioDriver()->getLayerType();
+    usleep(100000);
+  }    
+}
+
+
+
+void AudioLayerTest::testPulseConnect(){
+
+  _debug("---------- AudioLayerTest::testPulseConnect ---------------------------\n");
+
+  ManagerImpl* manager;
+  manager = &Manager::instance();
+
+  _pulselayer = new PulseLayer(manager);
+
+  CPPUNIT_ASSERT(_pulselayer->getLayerType() == PULSEAUDIO);
+
+  std::string alsaPlugin;
+  int numCardIn, numCardOut, sampleRate, frameSize;
+    
+  alsaPlugin = manager->getConfigString( AUDIO , ALSA_PLUGIN );
+  numCardIn  = manager->getConfigInt( AUDIO , ALSA_CARD_ID_IN );
+  numCardOut = manager->getConfigInt( AUDIO , ALSA_CARD_ID_OUT );
+  sampleRate = manager->getConfigInt( AUDIO , ALSA_SAMPLE_RATE );
+  frameSize = manager->getConfigInt(AUDIO, ALSA_FRAME_SIZE );
+   
+  CPPUNIT_ASSERT(_pulselayer->getPlaybackStream() == NULL);
+  CPPUNIT_ASSERT(_pulselayer->getRecordStream() == NULL);
+
+  _pulselayer->setErrorMessage(-1);
+  try {
+    CPPUNIT_ASSERT(_pulselayer->openDevice(numCardIn, numCardOut, sampleRate, frameSize, SFL_PCM_BOTH, alsaPlugin) == true);
+  }
+  catch (...) {
+    _debug("Exception occured wile opening device! \n");
+  }
+
+  usleep(100000);
+
+  CPPUNIT_ASSERT(_pulselayer->getPlaybackStream() != NULL);
+  CPPUNIT_ASSERT(_pulselayer->getRecordStream() != NULL);
+
+  CPPUNIT_ASSERT(_pulselayer->getPlaybackStream()->pulseStream() != NULL);
+  CPPUNIT_ASSERT(_pulselayer->getRecordStream()->pulseStream() != NULL);
+
+  // Must return Access failure "PA_ERR_ACCESS" == 2
+  CPPUNIT_ASSERT(_pulselayer->getPlaybackStream()->getStreamState() == 2);
+  CPPUNIT_ASSERT(_pulselayer->getRecordStream()->getStreamState() == 2);
+
+  CPPUNIT_ASSERT(_pulselayer->createStreams(_pulselayer->context) == true);
+
+  // usleep(1000000);
+
+  CPPUNIT_ASSERT(_pulselayer->getPlaybackStream()->pulseStream() != NULL);
+  CPPUNIT_ASSERT(_pulselayer->getPlaybackStream()->pulseStream() != NULL);
+
+  // Must return No error "PA_OK" == 1
+  CPPUNIT_ASSERT(_pulselayer->getPlaybackStream()->getStreamState() == 1);
+  CPPUNIT_ASSERT(_pulselayer->getRecordStream()->getStreamState() == 1);
+
+  CPPUNIT_ASSERT(_pulselayer->getPlaybackStream()->disconnectStream() == true);
+  CPPUNIT_ASSERT(_pulselayer->getRecordStream()->disconnectStream() == true);
+
+  // _debug("%i\n",_pulselayer->getPlaybackStream()->getStreamState());
+
+  CPPUNIT_ASSERT(_pulselayer->getPlaybackStream()->connectStream() == true);
+  CPPUNIT_ASSERT(_pulselayer->getRecordStream()->connectStream() == true);
+
+  CPPUNIT_ASSERT(_pulselayer->getPlaybackStream()->getStreamState() == 1);
+  CPPUNIT_ASSERT(_pulselayer->getRecordStream()->getStreamState() == 1);
+
+  CPPUNIT_ASSERT(_pulselayer->getPlaybackStream()->connectStream() == true);
+  CPPUNIT_ASSERT(_pulselayer->getRecordStream()->connectStream() == true);
+
+  CPPUNIT_ASSERT(_pulselayer->getPlaybackStream()->getStreamState() == 1);
+  CPPUNIT_ASSERT(_pulselayer->getRecordStream()->getStreamState() == 1);
+
+  // usleep(1000000);
+  CPPUNIT_ASSERT(_pulselayer->disconnectPulseAudioServer() == true);
+}
+
+
+void AudioLayerTest::testAlsaConnect(){
+
+  _debug("---------- AudioLayerTest::testAlsaConnect ---------------------------\n");
+
+  int layer = Manager::instance().getAudioDriver()->getLayerType();
+
+  int type, samplerate, framesize, numCardIn, numCardOut;
+  std::string alsaPlugin;
+
+  if (layer != ALSA) {
+      Manager::instance().switchAudioManager();
+      usleep(100000);
+  }
+
+  // _audiolayer = Manager::instance().getAudioDriver();
+  
+  // CPPUNIT_ASSERT(_audiolayer->closeLayer() == true);
+  // usleep(100000);
+
+  // delete _audiolayer; _audiolayer == NULL;
+
+  Manager::instance().setConfig( PREFERENCES, CONFIG_AUDIO, ALSA);
+
+  
+  // _audiolayer->setErrorMessage(-1);
+  // CPPUNIT_ASSERT(Manager::instance().initAudioDriver() == true);
+
+  // _audiolayer = Manager::instance().getAudioDriver();
+ 
+  // CPPUNIT_ASSERT(_audiolayer->getLayerType() == ALSA);
+
+}
+
+void AudioLayerTest::tearDown(){
+    // Delete the audio recorder module
+    // delete _ar; _ar = NULL;
+}
diff --git a/sflphone-common/test/audiolayerTest.h b/sflphone-common/test/audiolayerTest.h
new file mode 100644
index 0000000000000000000000000000000000000000..87c13a7a8503513d630042b24481ec71e68801e9
--- /dev/null
+++ b/sflphone-common/test/audiolayerTest.h
@@ -0,0 +1,92 @@
+/*
+ *  Copyright (C) 2009 Savoir-Faire Linux inc.
+ *  Author: Emmanuel Milou <emmanuel.milou@savoirfairelinux.com>
+ *
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 3 of the License, or
+ *  (at your option) any later version.
+ *
+ *  This program is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *  GNU General Public License for more details.
+ *
+ *  You should have received a copy of the GNU General Public License
+ *  along with this program; if not, write to the Free Software
+ *   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+
+// Cppunit import
+#include <cppunit/extensions/HelperMacros.h>
+#include <cppunit/TestCaller.h>
+#include <cppunit/TestCase.h>
+#include <cppunit/TestSuite.h>
+
+#include <assert.h>
+
+// Application import
+#include "manager.h"
+
+#include "config/config.h"
+#include "user_cfg.h"
+
+#include "audio/audiolayer.h"
+#include "audio/alsalayer.h"
+#include "audio/pulselayer.h"
+
+/*
+ * @file audiorecorderTest.cpp  
+ * @brief       Regroups unitary tests related to the plugin manager.
+ */
+
+#ifndef _AUDIOLAYER_TEST_
+#define _AUDIOLAYER_TEST_
+
+
+
+class AudioLayerTest : public CppUnit::TestCase {
+
+    /*
+     * Use cppunit library macros to add unit test the factory
+     */
+    CPPUNIT_TEST_SUITE( AudioLayerTest );
+        CPPUNIT_TEST( testAudioLayerConfig );
+        // CPPUNIT_TEST( testAudioLayerSwitch );
+        CPPUNIT_TEST( testPulseConnect );
+        // CPPUNIT_TEST( testAlsaConnect );
+    CPPUNIT_TEST_SUITE_END();
+
+    public:
+        AudioLayerTest() : CppUnit::TestCase("Audio Layer Tests") {}
+        
+        /*
+         * Code factoring - Common resources can be initialized here.
+         * This method is called by unitcpp before each test
+         */
+        void setUp();
+
+        /*
+         * Code factoring - Common resources can be released here.
+         * This method is called by unitcpp after each test
+         */
+        inline void tearDown();
+
+        void testAudioLayerConfig();
+        void testAudioLayerSwitch();
+        void testPulseConnect();
+        void testAlsaConnect();
+
+    private:
+
+        ManagerImpl* manager;
+        
+        PulseLayer* _pulselayer;
+       
+        int layer;
+};
+
+/* Register our test module */
+CPPUNIT_TEST_SUITE_REGISTRATION( AudioLayerTest );
+
+#endif
diff --git a/sflphone-common/test/audiorecorderTest.cpp b/sflphone-common/test/audiorecorderTest.cpp
index 30650f9d0ee2c5d36fa45d8d40e02552de8a8481..9c0bf863edb284f29fcd5f7361c6ede3da6b68a8 100644
--- a/sflphone-common/test/audiorecorderTest.cpp
+++ b/sflphone-common/test/audiorecorderTest.cpp
@@ -13,7 +13,7 @@
  *  GNU General Public License for more details.
  *
  *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
+ *  along with this program; if not, write to the Free Software-
  *   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  */
 
diff --git a/sflphone-common/test/audiorecorderTest.h b/sflphone-common/test/audiorecorderTest.h
index 1748bda1db973fd4063dda0872a90bf9c09af5e8..216b657079562007a1eb04955f390e3263ef1c87 100644
--- a/sflphone-common/test/audiorecorderTest.h
+++ b/sflphone-common/test/audiorecorderTest.h
@@ -1,4 +1,4 @@
-x/*
+/*
  *  Copyright (C) 2009 Savoir-Faire Linux inc.
  *  Author: Emmanuel Milou <emmanuel.milou@savoirfairelinux.com>
  *
diff --git a/sflphone-common/test/rtpTest.cpp b/sflphone-common/test/rtpTest.cpp
new file mode 100644
index 0000000000000000000000000000000000000000..335bb0a40bed53f92411265d2f66a9306bae03a1
--- /dev/null
+++ b/sflphone-common/test/rtpTest.cpp
@@ -0,0 +1,85 @@
+/*
+ *  Copyright (C) 2009 Savoir-Faire Linux inc.
+ *  Author: Alexandre Savarda <emmanuel.milou@savoirfairelinux.com>
+ *
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 3 of the License, or
+ *  (at your option) any later version.
+ *
+ *  This program is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *  GNU General Public License for more details.
+ *
+ *  You should have received a copy of the GNU General Public License
+ *  along with this program; if not, write to the Free Software
+ *   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+
+#include <stdio.h>
+#include <sstream>
+#include <ccrtp/rtp.h>
+
+
+#include "rtpTest.h"
+
+#include <unistd.h>
+
+
+using std::cout;
+using std::endl;
+
+
+void RtpTest::setUp(){
+
+    Manager::instance().initConfigFile();
+    Manager::instance().init();
+
+    CallID cid = "123456";
+        
+    audiortp = new AudioRtp();
+
+    sipcall = new SIPCall(cid, Call::Incoming, NULL);
+}
+
+void RtpTest::testRtpInit()
+{
+
+    _debug("------ void RtpTest::testRtpInit() ------\n");
+    try {
+
+        _debug("-------- Open Rtp Session ----------\n");
+        CPPUNIT_ASSERT(audiortp->createNewSession(sipcall) == 0);
+
+    } catch(...) {
+        
+        _debug("!!! Exception occured while Oppenning Rtp \n");
+	
+    }
+
+}
+    
+
+void RtpTest::testRtpClose()
+{
+
+  _debug("------ RtpTest::testRtpClose() ------");
+
+    try {
+      _debug("------ Close Rtp Session -------\n");  
+        CPPUNIT_ASSERT(audiortp->closeRtpSession());
+
+    } catch(...) {
+
+        _debug("!!! Exception occured while closing Rtp \n");
+
+    }
+
+}
+
+
+void RtpTest::tearDown(){
+
+    delete audiortp;  audiortp = NULL;
+}
diff --git a/sflphone-common/test/rtpTest.h b/sflphone-common/test/rtpTest.h
new file mode 100644
index 0000000000000000000000000000000000000000..b2d314a1c2968f2e1aa082bc3018ae7eb5158f09
--- /dev/null
+++ b/sflphone-common/test/rtpTest.h
@@ -0,0 +1,93 @@
+/*
+ *  Copyright (C) 2009 Savoir-Faire Linux inc.
+ *  Author: Emmanuel Milou <emmanuel.milou@savoirfairelinux.com>
+ *
+ *  This program is free software; you can redistribute it and/or modify
+ *  it under the terms of the GNU General Public License as published by
+ *  the Free Software Foundation; either version 3 of the License, or
+ *  (at your option) any later version.
+ *
+ *  This program is distributed in the hope that it will be useful,
+ *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *  GNU General Public License for more details.
+ *
+ *  You should have received a copy of the GNU General Public License
+ *  along with this program; if not, write to the Free Software
+ *   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+
+// Cppunit import
+#include <cppunit/extensions/HelperMacros.h>
+#include <cppunit/TestCaller.h>
+#include <cppunit/TestCase.h>
+#include <cppunit/TestSuite.h>
+
+#include <assert.h>
+
+// Application import
+#include "manager.h"
+#include "audio/audiortp.h"
+#include "../src/call.h"
+#include "../src/sipcall.h"
+
+#include "config/config.h"
+#include "user_cfg.h"
+
+
+
+/*
+ * @file audiorecorderTest.cpp  
+ * @brief       Regroups unitary tests related to the plugin manager.
+ */
+
+#ifndef _RTP_TEST_
+#define _RTP_TEST_
+
+
+
+class RtpTest : public CppUnit::TestCase {
+
+    /*
+     * Use cppunit library macros to add unit test the factory
+     */
+    CPPUNIT_TEST_SUITE( RtpTest );
+        CPPUNIT_TEST( testRtpInit );
+	CPPUNIT_TEST( testRtpClose );
+    CPPUNIT_TEST_SUITE_END();
+
+    public:
+        RtpTest() : CppUnit::TestCase("Audio Layer Tests") {}
+        
+        /*
+         * Code factoring - Common resources can be initialized here.
+         * This method is called by unitcpp before each test
+         */
+        void setUp();
+
+        /*
+         * Code factoring - Common resources can be released here.
+         * This method is called by unitcpp after each test
+         */
+        inline void tearDown();
+
+        void testRtpInit();
+
+	void testRtpClose();
+
+    private:
+
+	enum CallType {Incoming, Outgoing};
+
+        ManagerImpl* manager;
+
+        AudioRtp *audiortp;
+
+	SIPCall *sipcall;
+
+};
+
+/* Register our test module */
+CPPUNIT_TEST_SUITE_REGISTRATION( RtpTest );
+
+#endif
diff --git a/src/audio/codecs/celtcodec.cpp b/src/audio/codecs/celtcodec.cpp
deleted file mode 100644
index 3dc61c7c2b9a09b4b70302da013d269c3d773501..0000000000000000000000000000000000000000
--- a/src/audio/codecs/celtcodec.cpp
+++ /dev/null
@@ -1,112 +0,0 @@
-/*
- *  Copyright (C) 2007-2009 Savoir-Faire Linux inc.
- *  Author: Alexandre Savard <alexandre.savard@savoirfairelinux.com>
- *  Author: Emmanuel Milou <emmanuel.milou@savoirfairelinux.com>
- *
- *  This program is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License as published by
- *  the Free Software Foundation; either version 3 of the License, or
- *  (at your option) any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- */
-
-#include "audiocodec.h"
-#include <cstdio>
-#include <celt/celt.h>
-
-
-class Celt : public AudioCodec{
-    public:
-        Celt(int payload=0)
-            : AudioCodec(payload, "celt"),
-              _celt_frame_size(128)
-    {
-        _clockRate = 44100;
-        _channel = 1;
-        _bitrate = 0;
-        _bandwidth = 0;
-        initCelt();
-    }
-
-        Celt( const Celt& );
-        Celt& operator=(const Celt&);
-
-        void initCelt() {
-            printf("init celt");
-            
-            mode = celt_mode_create(_clockRate, _channel, _celt_frame_size, NULL);
-            // celt_mode_info(mode, CELT_GET_LOOKAHEAD, &skip);
-
-            if (mode == NULL)
-            {
-                printf("failed to create a mode\n");
-            }
-
-            // bytes_per_packet = 1024;
-            // if (bytes_per_packet < 0 || bytes_per_packet > MAX_PACKET)
-            // {
-            //     printf ("bytes per packet must be between 0 and %d\n");
-            // }
-
-            // celt_mode_info(mode, CELT_GET_FRAME_SIZE, &frame_size);
-            // celt_mode_info(mode, CELT_GET_NB_CHANNELS, &_channel);
-
-            enc = celt_encoder_create(mode);
-            dec = celt_decoder_create(mode);
- 
-        }
-
-        ~Celt() 
-        {
-            terminateCelt();
-        }
-
-        void terminateCelt() {
-           
-            celt_encoder_destroy(enc);
-            celt_decoder_destroy(dec);
-        }
-
-        virtual int codecDecode (short *dst, unsigned char *src, unsigned int size) 
-        {
-            int len = 0;
-            len = celt_decode(dec, src, size, (celt_int16_t*)dst);
-            return len;
-        }
-
-        virtual int codecEncode (unsigned char *dst, short *src, unsigned int size) 
-        {
-            int len = 0;
-            len = celt_encode(enc, (celt_int16_t *)src, NULL, dst, size);
-            return len;
-        }
-
-    private:
-
-        CELTMode *mode;
-        
-        CELTEncoder *enc;
-        CELTDecoder *dec;
-
-        celt_int32_t _celt_frame_size;
-        celt_int32_t skip;
-       
-};
-
-// the class factories
-extern "C" AudioCodec* create() {
-    return new Celt(115);
-}
-
-extern "C" void destroy(AudioCodec* a) {
-    delete a;
-}
-
diff --git a/src/audio/codecs/speexcodec_nb.cpp b/src/audio/codecs/speexcodec_nb.cpp
deleted file mode 100644
index 72b3c36d0dadff319f236358b05be1e389f49ca4..0000000000000000000000000000000000000000
--- a/src/audio/codecs/speexcodec_nb.cpp
+++ /dev/null
@@ -1,154 +0,0 @@
-/*
- *  Copyright (C) 2007-2009 Savoir-Faire Linux inc.
- *  Author: Alexandre Savard <alexandre.savard@savoirfairelinux.com>
- *  Author: Emmanuel Milou <emmanuel.milou@savoirfairelinux.com>
- *
- *  This program is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License as published by
- *  the Free Software Foundation; either version 3 of the License, or
- *  (at your option) any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- */
-
-#include "audiocodec.h"
-#include <cstdio>
-#include <speex/speex.h>
-#include <speex/speex_preprocess.h>
-
-class Speex : public AudioCodec{
-    public:
-        Speex(int payload=0)
-            : AudioCodec(payload, "speex"),
-            _speexModePtr(NULL),
-            _speex_dec_bits(),
-            _speex_enc_bits(),
-            _speex_dec_state(),
-            _speex_enc_state(),
-            _speex_frame_size(),
-            _preprocess_state()
-    {
-        _clockRate = 8000;
-        _channel = 1;
-        _bitrate = 0;
-        _bandwidth = 0; 
-        initSpeex();
-    }
-
-        Speex( const Speex& );
-        Speex& operator=(const Speex&);
-
-        void initSpeex() { 
-
-            int _samplingRate = 8000; 
-
-            // 8000 HZ --> Narrow-band mode
-            // TODO Manage the other modes
-            _speexModePtr = &speex_nb_mode; 
-            // _speexModePtr = &speex_wb_mode; 
-
-            // Init the decoder struct
-            speex_bits_init(&_speex_dec_bits);
-            _speex_dec_state = speex_decoder_init(_speexModePtr);      
-
-            // Init the encoder struct
-            speex_bits_init(&_speex_enc_bits);
-            _speex_enc_state = speex_encoder_init(_speexModePtr);
-
-            speex_encoder_ctl(_speex_enc_state,SPEEX_SET_SAMPLING_RATE,&_clockRate);
-
-            speex_decoder_ctl(_speex_dec_state, SPEEX_GET_FRAME_SIZE, &_speex_frame_size);
-            
-#ifdef HAVE_SPEEXDSP_LIB
-
-            int enable = 1;
-            int quality = 10;
-            int complex = 10;
-            int attenuation = -10;
-
-            speex_encoder_ctl(_speex_enc_state, SPEEX_SET_VAD, &enable);
-            speex_encoder_ctl(_speex_enc_state, SPEEX_SET_DTX, &enable);
-            speex_encoder_ctl(_speex_enc_state, SPEEX_SET_VBR_QUALITY, &quality);
-            speex_encoder_ctl(_speex_enc_state, SPEEX_SET_COMPLEXITY, &complex);
-
-            // Init the decoder struct
-            speex_decoder_ctl(_speex_dec_state, SPEEX_GET_FRAME_SIZE, &_speex_frame_size);
-
-            // Init the preprocess struct
-            _preprocess_state = speex_preprocess_state_init(_speex_frame_size,_clockRate);
-            speex_preprocess_ctl(_preprocess_state, SPEEX_PREPROCESS_SET_DENOISE, &enable);
-            speex_preprocess_ctl(_preprocess_state, SPEEX_PREPROCESS_SET_NOISE_SUPPRESS, &attenuation);
-            speex_preprocess_ctl(_preprocess_state, SPEEX_PREPROCESS_SET_VAD, &enable);
-            speex_preprocess_ctl(_preprocess_state, SPEEX_PREPROCESS_SET_AGC, &enable);
-#endif
-            
-        }
-
-        ~Speex() 
-        {
-            terminateSpeex();
-        }
-
-        void terminateSpeex() {
-            // Destroy the decoder struct
-            speex_bits_destroy(&_speex_dec_bits);
-            speex_decoder_destroy(_speex_dec_state);
-            _speex_dec_state = 0;
-
-            // Destroy the encoder struct
-            speex_bits_destroy(&_speex_enc_bits);
-            speex_encoder_destroy(_speex_enc_state);
-            _speex_enc_state = 0;
-        }
-
-        virtual int codecDecode (short *dst, unsigned char *src, unsigned int size) 
-        {   
-            
-            int ratio = 320 / _speex_frame_size;
-            speex_bits_read_from(&_speex_dec_bits, (char*)src, size);
-            speex_decode_int(_speex_dec_state, &_speex_dec_bits, dst);
-
-            return _speex_frame_size * ratio; 
-        }
-
-        virtual int codecEncode (unsigned char *dst, short *src, unsigned int size) 
-        {
-            speex_bits_reset(&_speex_enc_bits);
-
-#ifdef HAVE_SPEEXDSP_LIB
-            
-            speex_preprocess_run(_preprocess_state, src);
-#endif 
-
-            speex_encode_int(_speex_enc_state, src, &_speex_enc_bits);
-            int nbBytes = speex_bits_write(&_speex_enc_bits, (char*)dst, size);
-            printf("Codec::codecEncode() nbBytes: %i \n",nbBytes);
-            return nbBytes;
-        }
-
-    private:
-        const SpeexMode* _speexModePtr;
-        SpeexBits  _speex_dec_bits;
-        SpeexBits  _speex_enc_bits;
-        void *_speex_dec_state;
-        void *_speex_enc_state;
-        int _speex_frame_size;
-        SpeexPreprocessState *_preprocess_state;
-};
-
-// the class factories
-extern "C" AudioCodec* create() {
-    return new Speex(110);
-}
-
-extern "C" void destroy(AudioCodec* a) {
-    delete a;
-}
-
diff --git a/src/audio/codecs/speexcodec_wb.cpp b/src/audio/codecs/speexcodec_wb.cpp
deleted file mode 100644
index e86b3d724ef7b21040f7da61af96461fbd899685..0000000000000000000000000000000000000000
--- a/src/audio/codecs/speexcodec_wb.cpp
+++ /dev/null
@@ -1,154 +0,0 @@
-/*
- *  Copyright (C) 2007-2009 Savoir-Faire Linux inc.
- *  Author: Alexandre Savard <alexandre.savard@savoirfairelinux.com>
- *  Author: Emmanuel Milou <emmanuel.milou@savoirfairelinux.com>
- *
- *  This program is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License as published by
- *  the Free Software Foundation; either version 3 of the License, or
- *  (at your option) any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- */
-
-#include "audiocodec.h"
-#include <cstdio>
-#include <speex/speex.h>
-#include <speex/speex_preprocess.h>
-
-class Speex : public AudioCodec{
-    public:
-        Speex(int payload=0)
-            : AudioCodec(payload, "speex"),
-            _speexModePtr(NULL),
-            _speex_dec_bits(),
-            _speex_enc_bits(),
-            _speex_dec_state(),
-            _speex_enc_state(),
-            _speex_frame_size(),
-            _preprocess_state()
-    {
-        _clockRate = 16000;
-        _channel = 1;
-        _bitrate = 0;
-        _bandwidth = 0; 
-        initSpeex();
-    }
-
-        Speex( const Speex& );
-        Speex& operator=(const Speex&);
-
-        void initSpeex() { 
-
-            int _samplingRate = 16000; 
-
-            // 8000 HZ --> Narrow-band mode
-            // TODO Manage the other modes
-            _speexModePtr = &speex_wb_mode; 
-            // _speexModePtr = &speex_wb_mode; 
-
-            // Init the decoder struct
-            speex_bits_init(&_speex_dec_bits);
-            _speex_dec_state = speex_decoder_init(_speexModePtr);      
-
-            // Init the encoder struct
-            speex_bits_init(&_speex_enc_bits);
-            _speex_enc_state = speex_encoder_init(_speexModePtr);
-
-            speex_encoder_ctl(_speex_enc_state,SPEEX_SET_SAMPLING_RATE,&_clockRate);
-
-            speex_decoder_ctl(_speex_dec_state, SPEEX_GET_FRAME_SIZE, &_speex_frame_size);
-            
-#ifdef HAVE_SPEEXDSP_LIB
-
-            int enable = 1;
-            int quality = 10;
-            int complex = 10;
-            int attenuation = -10;
-
-            speex_encoder_ctl(_speex_enc_state, SPEEX_SET_VAD, &enable);
-            speex_encoder_ctl(_speex_enc_state, SPEEX_SET_DTX, &enable);
-            speex_encoder_ctl(_speex_enc_state, SPEEX_SET_VBR_QUALITY, &quality);
-            speex_encoder_ctl(_speex_enc_state, SPEEX_SET_COMPLEXITY, &complex);
-
-            // Init the decoder struct
-            speex_decoder_ctl(_speex_dec_state, SPEEX_GET_FRAME_SIZE, &_speex_frame_size);
-
-            // Init the preprocess struct
-            _preprocess_state = speex_preprocess_state_init(_speex_frame_size,_clockRate);
-            speex_preprocess_ctl(_preprocess_state, SPEEX_PREPROCESS_SET_DENOISE, &enable);
-            speex_preprocess_ctl(_preprocess_state, SPEEX_PREPROCESS_SET_NOISE_SUPPRESS, &attenuation);
-            speex_preprocess_ctl(_preprocess_state, SPEEX_PREPROCESS_SET_VAD, &enable);
-            speex_preprocess_ctl(_preprocess_state, SPEEX_PREPROCESS_SET_AGC, &enable);
-#endif
-            
-        }
-
-        ~Speex() 
-        {
-            terminateSpeex();
-        }
-
-        void terminateSpeex() {
-            // Destroy the decoder struct
-            speex_bits_destroy(&_speex_dec_bits);
-            speex_decoder_destroy(_speex_dec_state);
-            _speex_dec_state = 0;
-
-            // Destroy the encoder struct
-            speex_bits_destroy(&_speex_enc_bits);
-            speex_encoder_destroy(_speex_enc_state);
-            _speex_enc_state = 0;
-        }
-
-        virtual int codecDecode (short *dst, unsigned char *src, unsigned int size) 
-        {   
-            
-            int ratio = 320 / _speex_frame_size;
-            speex_bits_read_from(&_speex_dec_bits, (char*)src, size);
-            speex_decode_int(_speex_dec_state, &_speex_dec_bits, dst);
-
-            return 2 * _speex_frame_size * ratio; 
-        }
-
-        virtual int codecEncode (unsigned char *dst, short *src, unsigned int size) 
-        {
-            speex_bits_reset(&_speex_enc_bits);
-
-#ifdef HAVE_SPEEXDSP_LIB
-            
-            speex_preprocess_run(_preprocess_state, src);
-#endif 
-
-            speex_encode_int(_speex_enc_state, src, &_speex_enc_bits);
-            int nbBytes = speex_bits_write(&_speex_enc_bits, (char*)dst, size);
-            printf("Codec::codecEncode() nbBytes: %i \n",nbBytes);
-            return nbBytes;
-        }
-
-    private:
-        const SpeexMode* _speexModePtr;
-        SpeexBits  _speex_dec_bits;
-        SpeexBits  _speex_enc_bits;
-        void *_speex_dec_state;
-        void *_speex_enc_state;
-        int _speex_frame_size;
-        SpeexPreprocessState *_preprocess_state;
-};
-
-// the class factories
-extern "C" AudioCodec* create() {
-    return new Speex(111);
-}
-
-extern "C" void destroy(AudioCodec* a) {
-    delete a;
-}
-
diff --git a/src/audio/codecs/vorbiscodec.cpp b/src/audio/codecs/vorbiscodec.cpp
deleted file mode 100644
index 2395fa2d200bd958c6997a7db60f05741be336bd..0000000000000000000000000000000000000000
--- a/src/audio/codecs/vorbiscodec.cpp
+++ /dev/null
@@ -1,118 +0,0 @@
-/*
- *  Copyright (C) 2007-2009 Savoir-Faire Linux inc.
- *  Author: Alexandre Savard <alexandre.savard@savoirfairelinux.com>
- *  Author: Emmanuel Milou <emmanuel.milou@savoirfairelinux.com>
- *
- *  This program is free software; you can redistribute it and/or modify
- *  it under the terms of the GNU General Public License as published by
- *  the Free Software Foundation; either version 3 of the License, or
- *  (at your option) any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- */
-
-#include "audiocodec.h"
-#include <cstdio>
-#include <math.h>
-#include <vorbis/vorbis.h>
-#include <vorbis/codec.h>
-#include <vorbis/vorbisenc.h>
-
-class Vorbis : public AudioCodec{
-    public:
-        Vorbis(int payload=0)
-            : AudioCodec(payload, "vorbis"),
-              _ogg_stream_state(),
-              _ogg_packet(),
-              _vorbis_info(),
-              _vorbis_comment(),
-              _vorbis_dsp_state(),
-              _vorbis_block()
-    {
-        _clockRate = 8000;
-        _channel = 1;
-        _bitrate = 0;
-        _bandwidth = 0; 
-        initVorbis();
-    }
-
-        Vorbis( const Vorbis& );
-        Vorbis& operator=(const Vorbis&);
-
-        void initVorbis() { 
-
-            // init the encoder
-            vorbis_info_init(&_vorbis_info); 
-            vorbis_encode_init_vbr(&_vorbis_info,0.5);
-
-            vorbis_comment_init(&_vorbis_comment);
-
-            vorbis_analysis_init(&_vorbis_dsp_state, &_vorbis_info);
-
-            // random number for ogg serial number
-            srand(time(NULL));
-
-        }
-
-        ~Vorbis() 
-        {
-            terminateVorbis();
-        }
-
-        void terminateVorbis() {
-
-            vorbis_block_clear(&_vorbis_block);
-            vorbis_dsp_clear(&_vorbis_dsp_state);
-            vorbis_comment_clear(&_vorbis_comment);
-            vorbis_info_clear(&_vorbis_info);
-        }
-
-        virtual int codecDecode (short *dst, unsigned char *src, unsigned int size) 
-        {
-            
-
-            return 1;
-        }
-
-        virtual int codecEncode (unsigned char *dst, short *src, unsigned int size) 
-        {
-           
-            return 1;
-        }
-
-    private:
-
-        // ogg-vorbis specific variables
-	ogg_sync_state oy;
-
-	ogg_stream_state _ogg_stream_state;
-
-	ogg_packet _ogg_packet;
-
-	vorbis_info _vorbis_info;
-
-	vorbis_comment _vorbis_comment;
-
-        vorbis_dsp_state _vorbis_dsp_state;
-
-	vorbis_block _vorbis_block;
-
-        
-};
-
-// the class factories
-extern "C" AudioCodec* create() {
-    return new Vorbis(117);
-}
-
-extern "C" void destroy(AudioCodec* a) {
-    delete a;
-}
-
diff --git a/tools/build-system/README b/tools/build-system/README
new file mode 100644
index 0000000000000000000000000000000000000000..c12a4bbfc40c9996c34d27a21e82deb5588f7720
--- /dev/null
+++ b/tools/build-system/README
@@ -0,0 +1,42 @@
+# register image
+VBoxManage registerimage disk VDI/ubuntu-9.04.vdi -type normal
+
+# check registration
+VBoxManage showvdiinfo VDI/ubuntu-9.04.vdi
+
+# create VM
+VBoxManage createvm -name "ubuntu-9.04" -register
+
+# check vm creation
+VBoxManage list vms
+
+# update configuration
+VBoxManage modifyvm "ubuntu-9.04" -hda "VDI/ubuntu-9.04.vdi" -memory "1024MB" -acpi on -nic1 nat
+
+#si 64 bits
+# VBoxManage modifyvm ubuntu-9.04-64 --ostype Ubuntu_64
+# VBoxManage modifyvm ubuntu-9.04-64 --hwvirtex on
+
+VBoxManage setextradata "ubuntu-9.04" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/ssh/Protocol" TCP
+VBoxManage setextradata "ubuntu-9.04" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/ssh/HostPort" 50001
+VBoxManage setextradata "ubuntu-9.04" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/ssh/GuestPort" 22
+
+# start vm
+VBoxHeadless -startvm "ubuntu-9.04" -p 50000
+
+# install ssh support
+sudo apt-get install openssh-server
+
+# add office-srv-01 sflphone user ssh key in authorized_keys of vm
+ssh -o LogLevel=ERROR -o CheckHostIP=no -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -p 50001 sflphone@127.0.0.1 "mkdir ~/.ssh/"
+scp -o LogLevel=ERROR -o CheckHostIP=no -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -P 50001 /home/projects/sflphone/.ssh/id_dsa.pub sflphone@127.0.0.1:~/.ssh/authorized_keys
+ssh -o LogLevel=ERROR -o CheckHostIP=no -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -p 50001 sflphone@127.0.0.1 "chmod 0600 ~/.ssh/authorized_keys"
+
+# si nécessaire
+# scp -o LogLevel=ERROR -o CheckHostIP=no -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -P 50001 /home/projects/sflphone/build-system/git-buildpackage_0.4.45_all.deb sflphone@127.0.0.1:
+
+# update /etc/sudoers
+sflphone ALL = NOPASSWD: /sbin/shutdown, /usr/bin/apt-get, /usr/bin/dpkg
+
+# stop vm
+VBoxManage controlvm "ubuntu-9-04" poweroff
diff --git a/tools/build-system/automatic-build-machine.sh b/tools/build-system/automatic-build-machine.sh
new file mode 100755
index 0000000000000000000000000000000000000000..66882c356977e9059e8951ef54ac15520486c3da
--- /dev/null
+++ b/tools/build-system/automatic-build-machine.sh
@@ -0,0 +1,24 @@
+#!/bin/bash
+#####################################################
+# File Name: send-emails.sh
+#
+# Purpose :
+#
+# Author: Julien Bonjean (julien@bonjean.info) 
+#
+# Creation Date: 2009-04-20
+# Last Modified:
+#####################################################
+
+TAG=`date +%Y-%m-%d`
+ROOT_DIR="/home/projects/sflphone"
+SCRIPTS_DIR="${ROOT_DIR}/build-system"
+
+cd ${SCRIPTS_DIR}
+
+${SCRIPTS_DIR}/launch-build-machine.sh $*
+
+${SCRIPTS_DIR}/send-emails.sh $?
+
+exit 0
+
diff --git a/tools/build-system/gpg/setup-gpg.sh b/tools/build-system/gpg/setup-gpg.sh
new file mode 100755
index 0000000000000000000000000000000000000000..1a12793003d9f521f582e4535b7e97df1ee47179
--- /dev/null
+++ b/tools/build-system/gpg/setup-gpg.sh
@@ -0,0 +1,56 @@
+#!/bin/bash
+#####################################################
+# File Name: setup-gpg.sh
+#
+# Purpose :
+#
+# Author: Julien Bonjean (julien@bonjean.info) 
+#
+# Creation Date: 2009-04-20
+# Last Modified:
+#####################################################
+
+# pkill gpg-agent
+
+export LANG=en_CA.UTF-8
+export LC_ALL=en_CA.UTF-8
+
+echo "Check if GPG key is present"
+gpg --list-secret-keys | grep "Savoir-Faire Linux Inc." >/dev/null
+
+if [ "$?" -ne "0" ]; then
+       echo "!! GPG private key is not present"
+       exit -1
+fi
+
+echo  "Check GPG agent"
+pgrep -u "sflphone-package-manager" gpg-agent > /dev/null
+if [ "$?" -ne "0" ]; then
+	echo "Not running, launching it"
+        EVAL=`/usr/bin/gpg-agent --daemon --write-env-file $HOME/.gpg-agent-info --default-cache-ttl 2000000000 --max-cache-ttl 2000000000 --pinentry-program /usr/bin/pinentry`
+	eval ${EVAL}
+fi
+
+if [ "$?" -ne "0" ]; then
+       echo "!! Error with GPG agent"
+       exit -1
+fi
+
+GPG_AGENT_INFO=`cat $HOME/.gpg-agent-info 2> /dev/null`
+export ${GPG_AGENT_INFO}
+
+if [ "${GPG_AGENT_INFO}" == "" ]; then
+	echo "!! Cannot get GPG agent info"
+	exit -1
+fi
+
+GPG_TTY=`tty`
+export GPG_TTY
+
+touch ./test-gpg
+gpg -v --clearsign --use-agent ./test-gpg
+rm -f ./test-gpg
+rm -f ./test-gpg.asc
+
+exit 0
+
diff --git a/tools/build-system/launch-build-machine.sh b/tools/build-system/launch-build-machine.sh
new file mode 100755
index 0000000000000000000000000000000000000000..9144928eb82e8519c12960c251ede3081f3cd80d
--- /dev/null
+++ b/tools/build-system/launch-build-machine.sh
@@ -0,0 +1,428 @@
+#!/bin/bash
+#####################################################
+# File Name: launch-build-machine.sh
+#
+# Purpose :
+#
+# Author: Julien Bonjean (julien@bonjean.info) 
+#
+# Creation Date: 2009-04-20
+# Last Modified: 2009-05-15 12:23:31 -0400
+#####################################################
+
+#
+# Not working with git 1.5.4.3
+#
+#
+#
+#
+
+
+TAG=`date +%Y-%m-%d`
+
+# wait delay after startup and shutdown of VMs
+STARTUP_WAIT=40
+SHUTDOWN_WAIT=30
+
+# ssh stuff
+SSH_OPTIONS="-o LogLevel=ERROR -o CheckHostIP=no -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null"
+SSH_HOST="sflphone@127.0.0.1"
+SSH_REPOSITORY_HOST="sflphone-package-manager@dev.savoirfairelinux.net"
+SSH_BASE="ssh ${SSH_OPTIONS} -p 50001 ${SSH_HOST}"
+SCP_BASE="scp ${SSH_OPTIONS} -r -P 50001"
+
+# home directory
+ROOT_DIR="/home/projects/sflphone"
+
+# vbox config directory
+export VBOX_USER_HOME="${ROOT_DIR}/vbox"
+
+# remote home directory
+REMOTE_ROOT_DIR="/home/sflphone"
+
+# scripts
+SCRIPTS_DIR="${ROOT_DIR}/build-system"
+PACKAGING_SCRIPTS_DIR="${SCRIPTS_DIR}/remote"
+BIN_DIR="${SCRIPTS_DIR}/bin"
+
+# directory that will be deployed to remote machine
+TODEPLOY_DIR="${ROOT_DIR}/sflphone-packaging"
+TODEPLOY_BUILD_DIR="${TODEPLOY_DIR}/build"
+
+# remote deployment dir
+REMOTE_DEPLOY_DIR="/home/sflphone/sflphone-packaging"
+
+# cloned repository and archive
+REPOSITORY_DIR="${TODEPLOY_BUILD_DIR}/sflphone"
+REPOSITORY_ARCHIVE="`dirname ${REPOSITORY_DIR}`/sflphone.tar.gz"
+REPOSITORY_SFLPHONE_COMMON_DIR="${REPOSITORY_DIR}/sflphone-common"
+REPOSITORY_SFLPHONE_CLIENT_KDE_DIR="${REPOSITORY_DIR}/sflphone-client-kde"
+REPOSITORY_SFLPHONE_CLIENT_GNOME_DIR="${REPOSITORY_DIR}/sflphone-client-gnome"
+
+# where results go
+PACKAGING_RESULT_DIR=${ROOT_DIR}/packages-${TAG}
+
+USER="sflphone"
+
+RELEASE_MODE=
+VERSION_APPEND=
+
+DO_PREPARE=1
+DO_MAIN_LOOP=1
+DO_SIGNATURES=1
+DO_UPLOAD=1
+DO_LOGGING=1
+DO_SEND_EMAIL=1
+
+EDITOR=echo
+export EDITOR
+
+NON_FATAL_ERRORS=
+
+MACHINES=( "ubuntu-8.04" "ubuntu-8.04-64" "ubuntu-8.10" "ubuntu-8.10-64" "ubuntu-9.04" "ubuntu-9.04-64" )
+
+#########################
+# BEGIN
+#########################
+
+echo
+echo "    /***********************\\"
+echo "    | SFLPhone build system |"
+echo "    \\***********************/"
+echo
+
+for PARAMETER in $*
+do
+	case ${PARAMETER} in
+	--help)
+		echo
+		echo "Options :"
+		echo " --skip-prepare"
+		echo " --skip-main-loop"
+		echo " --skip-signatures"
+		echo " --skip-upload"
+		echo " --no-logging"
+		echo " --machine=MACHINE"
+		echo " --release-mode=[beta|rc|release]"
+		echo " --list-machines"
+		echo
+		exit 0;;
+	--skip-prepare)
+		unset DO_PREPARE;;
+	--skip-main-loop)
+		unset DO_MAIN_LOOP;;
+	--skip-signatures)
+		unset DO_SIGNATURES;;
+	--skip-upload)
+		unset DO_UPLOAD;;
+	--no-logging)
+		unset DO_LOGGING;;
+	--machine=*)
+		MACHINES=(${PARAMETER##*=});;
+	--release-mode=*)
+		RELEASE_MODE=(${PARAMETER##*=});;
+	--list-machines)
+		echo "Available machines :"
+		for MACHINE in ${MACHINES}; do
+			echo " "${MACHINE}
+		done
+		exit 0;;
+	*)
+		echo "Unknown parameter : ${PARAMETER}"
+		exit -1;;
+	esac
+done
+
+# if more than one VM will be launched, automatically stop running VMs
+if [ "${#MACHINES[@]}" -gt "1" ]; then
+	VBoxManage list runningvms | tail -n +5 | awk '{print $1}' | xargs -i VBoxManage controlvm {} poweroff
+fi
+
+# change to working directory
+cd ${SCRIPTS_DIR}
+
+if [ "$?" -ne "0" ]; then
+        echo " !! Cannot cd to working directory"
+        exit -1
+fi
+
+WHO=`whoami`
+
+if [ "${WHO}" != "${USER}" ]; then
+        echo "!! Please use user ${USER} to run this script"
+        exit -1;
+fi
+
+# logging
+mkdir ${PACKAGING_RESULT_DIR} 2>/dev/null
+if [ ${DO_LOGGING} ]; then
+
+	# open file descriptor
+	rm -f ${PACKAGING_RESULT_DIR}/packaging.log
+	exec 3<> ${PACKAGING_RESULT_DIR}/packaging.log
+
+	# redirect outputs (stdout & stderr)
+	exec 1>&3
+	exec 2>&3
+fi
+
+# check release
+if [ ${RELEASE_MODE} ]; then
+	case ${RELEASE_MODE} in
+		beta);;
+		rc[1-9]);;
+		release);;
+		*)
+			echo "Bad release mode"
+			exit -1;;
+	esac
+fi
+
+# check machines list
+if [ -z "${MACHINES}" ]; then
+	echo "Need at least a machine name to launch"
+	exit -1
+fi
+
+echo
+echo "Launching build system with the following machines :"
+for MACHINE in ${MACHINES[*]}
+do
+	echo " "${MACHINE}
+done
+echo
+
+if [ ${RELEASE_MODE} ]; then
+	echo "Release mode : ${RELEASE_MODE}"
+	if [ "${RELEASE_MODE}" != "release" ];then
+		VERSION_APPEND="~${RELEASE_MODE}"
+	fi
+else
+	echo "Snapshot mode"
+fi
+
+#########################
+# COMMON PART
+#########################
+
+if [ ${DO_PREPARE} ]; then
+
+	echo
+	echo "Cleaning old deploy dir"
+	rm -rf ${TODEPLOY_DIR}
+	mkdir ${TODEPLOY_DIR}
+	mkdir ${TODEPLOY_BUILD_DIR}
+
+	echo "Clone repository"
+	git clone ssh://repos-sflphone-git@sflphone.org/~/sflphone.git ${REPOSITORY_DIR} >/dev/null 2>&1
+
+	if [ "$?" -ne "0" ]; then
+		echo " !! Cannot clone repository"
+		exit -1
+	fi
+
+	FULL_VER=`cd ${REPOSITORY_DIR} && git describe --tag HEAD  | cut -d "/" -f2 | cut -d "-" -f1-2 | sed 's/\.rc.*//' | sed 's/\.beta.*//'`
+	
+	# change current branch if needed
+        if [ ${RELEASE_MODE} ]; then
+                cd ${REPOSITORY_DIR}
+                echo "Using release branch"
+                git checkout origin/release -b release
+        else
+                echo "Using master branch"
+        fi
+
+	# generate the changelog, according to the distribution and the git commit messages
+	echo "Update changelogs"
+
+	${SCRIPTS_DIR}/sfl-git-dch.sh ${RELEASE_MODE}
+	
+	if [ "$?" -ne "0" ]; then
+		echo "!! Cannot update changelogs"
+		exit -1
+	fi
+
+	cd ${REPOSITORY_DIR}	
+	echo "Update repository with new changelog"
+	echo " Switch to master branch to commit"
+	if [ ${RELEASE_MODE} ]; then
+                
+                echo "Switch to master branch for commit"
+                git checkout master
+        fi
+
+	echo " Doing commit"
+	VERSION_COMMIT=${FULL_VER}${VERSION_APPEND}
+	if [ ! ${RELEASE_MODE} ]; then
+		VERSION_COMMIT=${FULL_VER}" Snapshot ${TAG}"
+	fi
+	git commit -m "[#1262] Updated changelogs for version ${VERSION_COMMIT}" . >/dev/null
+	echo " Pushing commit"
+	git push origin master >/dev/null
+
+	# change back current branch if needed
+	if [ ${RELEASE_MODE} ]; then
+		echo "Switch back to release branch"
+		git checkout release
+		git merge master
+	fi
+	
+	echo "Archiving repository"
+	tar czf ${REPOSITORY_ARCHIVE} --exclude .git -C `dirname ${REPOSITORY_DIR}` sflphone 
+
+	if [ "$?" -ne "0" ]; then
+		echo " !! Cannot archive repository"
+		exit -1
+	fi
+
+	echo  "Removing repository"
+	rm -rf ${REPOSITORY_DIR}
+
+	echo "Finish preparing deploy directory"
+	cp -r ${PACKAGING_SCRIPTS_DIR}/* ${TODEPLOY_DIR}
+
+	if [ "$?" -ne "0" ]; then
+		echo " !! Cannot prepare scripts for deployment"
+		exit -1
+	fi
+fi
+
+#########################
+# MAIN LOOP
+#########################
+
+if [ ${DO_MAIN_LOOP} ]; then
+
+	echo
+	echo "Entering main loop"
+	echo
+
+	for MACHINE in ${MACHINES[*]}
+	do
+
+		echo "Launch machine ${MACHINE}"
+		VM_STATE=`VBoxManage showvminfo ${MACHINE} | grep State | awk '{print $2}'`
+		if [ "${VM_STATE}" = "running" ]; then
+			echo "Not needed, already running"
+		else
+			cd ${VBOX_USER_HOME} && VBoxHeadless -startvm "${MACHINE}" -p 50000 &
+			echo "Wait ${STARTUP_WAIT} s"
+			sleep ${STARTUP_WAIT}
+		fi
+	
+		echo "Clean remote directory"
+		${SSH_BASE} "rm -rf ${REMOTE_DEPLOY_DIR} 2>/dev/null"
+
+		echo "Deploy packaging system"
+		${SCP_BASE} ${TODEPLOY_DIR} ${SSH_HOST}:
+
+		if [ "$?" -ne "0" ]; then
+	                echo " !! Cannot deploy packaging system"
+			NON_FATAL_ERRORS="${NON_FATAL_ERRORS} !! Error when packaging for ${MACHINE}\n"
+	        fi
+
+		echo "Launch remote build"
+		${SSH_BASE} "${REMOTE_DEPLOY_DIR}/build-package-ubuntu.sh ${RELEASE_MODE}"
+
+		if [ "$?" -ne "0" ]; then
+	                echo " !! Error during remote packaging process"
+			NON_FATAL_ERRORS="${NON_FATAL_ERRORS} !! Error when packaging for ${MACHINE}\n"
+	        fi
+
+		echo "Retrieve dists and log files (current tag is ${TAG})"
+		${SCP_BASE} ${SSH_HOST}:${REMOTE_DEPLOY_DIR}/dists ${PACKAGING_RESULT_DIR}/
+		${SCP_BASE} ${SSH_HOST}:${REMOTE_DEPLOY_DIR}"/*.log" ${PACKAGING_RESULT_DIR}/
+
+		if [ "$?" -ne "0" ]; then
+	                echo " !! Cannot retrieve remote files"
+	                NON_FATAL_ERRORS="${NON_FATAL_ERRORS} !! Error when packaging for ${MACHINE}\n"
+	        fi
+
+		if [ "${VM_STATE}" = "running" ]; then
+			echo "Leave machine running"
+		else
+			echo "Shut down machine ${MACHINE}"
+			${SSH_BASE} 'sudo shutdown -h now'
+			echo "Wait ${SHUTDOWN_WAIT} s"
+			sleep ${SHUTDOWN_WAIT}
+			# hard shut down (just to be sure)
+			cd "${VBOX_USER_HOME}" && VBoxManage controlvm ${MACHINE} poweroff >/dev/null 2>&1
+		fi
+	done
+fi
+
+#########################
+# SIGNATURES
+#########################
+
+if [ ${DO_SIGNATURES} ]; then
+	
+	echo
+	echo "Sign packages"
+	echo
+
+	echo  "Check GPG agent"
+	pgrep -u "sflphone" gpg-agent > /dev/null
+	if [ "$?" -ne "0" ]; then
+	        echo "!! GPG agent is not running"
+		exit -1
+	fi
+	GPG_AGENT_INFO=`cat $HOME/.gpg-agent-info 2> /dev/null`
+	export ${GPG_AGENT_INFO}
+
+	if [ "${GPG_AGENT_INFO}" == "" ]; then
+        	echo "!! Cannot get GPG agent info"
+	        exit -1
+	fi	
+
+	echo "Sign packages"
+	find ${PACKAGING_RESULT_DIR} -name "*.deb" -exec dpkg-sig -k 'Savoir-Faire Linux Inc.' --sign builder --sign-changes full {} \; >/dev/null 2>&1
+	find ${PACKAGING_RESULT_DIR} -name "*.changes" -printf "debsign -k'Savoir-Faire Linux Inc.' %p\n" | sh >/dev/null 2>&1
+fi
+
+#########################
+# UPLOAD FILES
+#########################
+
+if [ ${DO_UPLOAD} ]; then
+	
+	echo
+	echo "Upload packages"
+	echo
+
+	echo "Prepare packages upload"
+	scp ${SSH_OPTIONS} ${PACKAGING_SCRIPTS_DIR}/update-repository.sh ${SSH_REPOSITORY_HOST}: 
+
+	if [ "$?" -ne "0" ]; then
+                echo " !! Cannot deploy repository scripts"
+        fi
+	
+	echo "Upload packages"
+	echo "Install dists files to repository"
+	scp -r ${SSH_OPTIONS} ${PACKAGING_RESULT_DIR}/dists ${SSH_REPOSITORY_HOST}:
+
+	if [ "$?" -ne "0" ]; then
+		echo " !! Cannot upload packages"
+		exit -1
+	fi
+
+	echo "Update repository"
+	ssh ${SSH_OPTIONS} ${SSH_REPOSITORY_HOST} "./update-repository.sh"
+
+	if [ "$?" -ne "0" ]; then
+		echo " !! Cannot update repository"
+		exit -1
+	fi
+fi
+
+if [ ${NON_FATAL_ERRORS} ]; then
+	echo "Non fatal errors :"
+	echo ${NON_FATAL_ERRORS}
+	exit -1
+fi
+
+# close file descriptor
+exec 3>&-
+
+exit 0
+
diff --git a/tools/build-system/packages/git-buildpackage_0.4.45_all.deb b/tools/build-system/packages/git-buildpackage_0.4.45_all.deb
new file mode 100644
index 0000000000000000000000000000000000000000..cf62358c48f1a5ce054c997b8b87ef9dac677028
Binary files /dev/null and b/tools/build-system/packages/git-buildpackage_0.4.45_all.deb differ
diff --git a/tools/build-system/remote/build-package-ubuntu.sh b/tools/build-system/remote/build-package-ubuntu.sh
new file mode 100755
index 0000000000000000000000000000000000000000..e975f6833e22b863a2c35787bd21422bacd819c4
--- /dev/null
+++ b/tools/build-system/remote/build-package-ubuntu.sh
@@ -0,0 +1,183 @@
+#!/bin/bash
+#
+# @author: Yun Liu <yun.liu@savoirfairelinux.com>, Julien Bonjean <julien.bonjean@savoirfairelinux.com>
+#
+# Refer to http://www.sflphone.org for futher information
+#
+
+PLATFORM="ubuntu"
+
+ROOT_DIR="/home/sflphone/sflphone-packaging"
+BUILD_DIR="${ROOT_DIR}/build"
+DIST_DIR="${ROOT_DIR}/dists"
+REPOSITORY_ARCHIVE="${BUILD_DIR}/sflphone.tar.gz"
+REPOSITORY_DIR="${BUILD_DIR}/sflphone"
+REPOSITORY_SFLPHONE_COMMON_DIR="${REPOSITORY_DIR}/sflphone-common"
+REPOSITORY_SFLPHONE_CLIENT_KDE_DIR="${REPOSITORY_DIR}/sflphone-client-kde"
+REPOSITORY_SFLPHONE_CLIENT_GNOME_DIR="${REPOSITORY_DIR}/sflphone-client-gnome"
+USER="sflphone"
+DIST_APPEND="-daily"
+RELEASE_MODE=$1
+VERSION_APPEND=
+EDITOR=echo
+export EDITOR
+
+#########################
+# BEGIN
+#########################
+
+WHO=`whoami`
+
+if [ "${WHO}" != "${USER}" ]; then
+        echo "!! Please use user ${USER} to run this script"
+        exit -1;
+fi
+
+if [ ${RELEASE_MODE} ]; then
+        echo "Release mode : ${RELEASE_MODE}"
+	if [ "${RELEASE_MODE}" = "release" ]; then
+		DIST_APPEND=""
+	else
+		DIST_APPEND="-testing"
+		VERSION_APPEND="~${RELEASE_MODE}"
+	fi
+else
+        echo "Snapshot mode"
+fi
+
+cd ${ROOT_DIR}
+
+if [ "$?" -ne "0" ]; then
+        echo " !! Cannot cd to working directory"
+        exit -1
+fi
+
+# decompress repository
+echo "Untar repository"
+cd ${BUILD_DIR} && tar xf ${REPOSITORY_ARCHIVE}
+
+if [ "$?" -ne "0" ]; then
+        echo " !! Cannot untar repository"
+        exit -1
+fi
+
+echo "Switch to internal logging"
+
+# get system parameters
+ARCH_FLAG=`getconf -a|grep LONG_BIT | sed -e 's/LONG_BIT\s*//'`
+OS_VERSION=`lsb_release -d -s -c | sed -e '1d'`
+PACKAGE_SYSVER="0ubuntu1"
+VERSION=`cd ${REPOSITORY_DIR} && head -n 1 ./sflphone-client-gnome/debian/changelog | awk '{print $2}' | sed -e 's/(//g' -e 's/)//g' | cut -d "-" -f1` 
+FULL_VERSION=`cd ${REPOSITORY_DIR} && head -n 1 ./sflphone-client-gnome/debian/changelog | awk '{print $2}' | sed -e 's/(//g' -e 's/)//g' -e 's/SYSVER/'${PACKAGE_SYSVER}'/g'`
+
+# define log files
+GLOBAL_LOG=${ROOT_DIR}/sflphone-${OS_VERSION}-${ARCH_FLAG}.log
+PACKAGING_LOG=${ROOT_DIR}/sflphone-debuild-${OS_VERSION}-${ARCH_FLAG}.log
+
+# open log file
+exec 3<>${GLOBAL_LOG}
+
+# redirect outputs (stdout & stderr)
+exec 1>&3
+exec 2>&3
+
+echo "SFLPhone version is ${VERSION}"
+
+echo "Do updates"
+sudo apt-get update >/dev/null
+sudo apt-get upgrade -y >/dev/null
+
+# generate the changelog, according to the distribution
+echo "Generate changelogs"
+sed -i 's/SYSTEM/'${OS_VERSION}'/g' ${REPOSITORY_SFLPHONE_COMMON_DIR}/debian/changelog && \
+sed -i 's/SYSVER/'${PACKAGE_SYSVER}'/g' ${REPOSITORY_SFLPHONE_COMMON_DIR}/debian/changelog && \
+ # sed -i 's/SYSTEM/'${OS_VERSION}'/g' ${REPOSITORY_SFLPHONE_CLIENT_KDE_DIR}/debian/changelog && \
+ # sed -i 's/SYSVER/'${PACKAGE_SYSVER}'/g' ${REPOSITORY_SFLPHONE_CLIENT_KDE_DIR}/debian/changelog && \
+ sed -i 's/SYSTEM/'${OS_VERSION}'/g' ${REPOSITORY_SFLPHONE_CLIENT_GNOME_DIR}/debian/changelog && \
+ sed -i 's/SYSVER/'${PACKAGE_SYSVER}'/g' ${REPOSITORY_SFLPHONE_CLIENT_GNOME_DIR}/debian/changelog
+
+if [ "$?" -ne "0" ]; then
+	echo "!! Cannot generate changelogs"
+	exit -1
+fi
+
+# copy the appropriate control file based on different archtecture
+echo "Generate control files"
+cp ${REPOSITORY_SFLPHONE_COMMON_DIR}/debian/control.$OS_VERSION ${REPOSITORY_SFLPHONE_COMMON_DIR}/debian/control && \
+ # cp ${REPOSITORY_SFLPHONE_CLIENT_KDE_DIR}/debian/control.$OS_VERSION ${REPOSITORY_SFLPHONE_CLIENT_KDE_DIR}/debian/control && \
+ cp ${REPOSITORY_SFLPHONE_CLIENT_GNOME_DIR}/debian/control.$OS_VERSION ${REPOSITORY_SFLPHONE_CLIENT_GNOME_DIR}/debian/control
+
+if [ "$?" -ne "0" ]; then
+        echo "!! Cannot generate control files"
+        exit -1
+fi
+
+# provide prerequisite directories used by debuild
+echo "Build sflphone packages on Ubuntu $OS_VERSION $ARCH_FLAG bit architecture...."
+cp -r ${REPOSITORY_SFLPHONE_COMMON_DIR} ${BUILD_DIR}/sflphone-common && \
+cp -r ${REPOSITORY_SFLPHONE_COMMON_DIR} ${BUILD_DIR}/sflphone-common-${FULL_VERSION}.orig && \
+ # cp -r ${REPOSITORY_SFLPHONE_CLIENT_KDE_DIR} ${BUILD_DIR}/sflphone-client-kde-${FULL_VERSION}.orig && \
+ cp -r ${REPOSITORY_SFLPHONE_CLIENT_GNOME_DIR} ${BUILD_DIR}/sflphone-client-gnome-${FULL_VERSION}.orig && \
+# do a cp to because path must remain for client compilation
+mv ${REPOSITORY_SFLPHONE_COMMON_DIR} ${BUILD_DIR}/sflphone-common-${FULL_VERSION} && \
+ # mv ${REPOSITORY_SFLPHONE_CLIENT_KDE_DIR} ${BUILD_DIR}/sflphone-client-kde-${FULL_VERSION} && \
+ mv ${REPOSITORY_SFLPHONE_CLIENT_GNOME_DIR} ${BUILD_DIR}/sflphone-client-gnome-${FULL_VERSION}
+
+# build package sflphone-common
+cd ${BUILD_DIR}/sflphone-common-${FULL_VERSION}/debian && \
+debuild -us -uc >${PACKAGING_LOG} 2>&1
+
+if [ "$?" -ne "0" ]; then
+        echo "!! Cannot generate package sflphone-common"
+        exit -1
+fi
+
+# build package sflphone-client-gnome
+cd ${BUILD_DIR}/sflphone-client-gnome-${FULL_VERSION}/debian && \
+debuild -us -uc >>${PACKAGING_LOG} 2>&1
+
+if [ "$?" -ne "0" ]; then
+        echo "!! Cannot generate package sflphone-client-gnome"
+        exit -1
+fi
+
+# build package sflphone-client-kde
+# cd ${BUILD_DIR}/sflphone-client-kde-${FULL_VERSION}/debian && \
+# debuild -us -uc >>${PACKAGING_LOG} 2>&1
+
+# if [ "$?" -ne "0" ]; then
+#         echo "!! Cannot generate package sflphone-client-kde"
+#         exit -1
+# fi
+
+# move to dist
+echo "Deploy files in dist directories"
+BINARY_DIR=""
+if [ "${ARCH_FLAG}" -eq "32" ]; then
+	BINARY_DIR="binary-i386"
+else
+	BINARY_DIR="binary-amd64"
+fi
+
+mkdir -p ${DIST_DIR}/${OS_VERSION}${DIST_APPEND}/universe/source
+mkdir -p ${DIST_DIR}/${OS_VERSION}${DIST_APPEND}/universe/${BINARY_DIR}
+
+mv ${BUILD_DIR}/sflphone*.deb ${DIST_DIR}/${OS_VERSION}${DIST_APPEND}/universe/${BINARY_DIR} && \
+mv ${BUILD_DIR}/sflphone*.dsc ${DIST_DIR}/${OS_VERSION}${DIST_APPEND}/universe/source/ && \
+mv ${BUILD_DIR}/sflphone*.build ${DIST_DIR}/${OS_VERSION}${DIST_APPEND}/universe/source/ && \
+mv ${BUILD_DIR}/sflphone*.changes ${DIST_DIR}/${OS_VERSION}${DIST_APPEND}/universe/source/ && \
+mv ${BUILD_DIR}/sflphone*.orig.tar.gz ${DIST_DIR}/${OS_VERSION}${DIST_APPEND}/universe/source/ && \
+mv ${BUILD_DIR}/sflphone*.diff.gz ${DIST_DIR}/${OS_VERSION}${DIST_APPEND}/universe/source/
+
+if [ "$?" -ne "0" ]; then
+        echo "!! Cannot copy dist files"
+        exit -1
+fi
+
+echo "All done"
+
+# close file descriptor
+exec 3>&-
+
+exit 0
+
diff --git a/tools/build-system/remote/update-repository.sh b/tools/build-system/remote/update-repository.sh
new file mode 100755
index 0000000000000000000000000000000000000000..f03e3b232e6e52166a6d4d38b83930f716324864
--- /dev/null
+++ b/tools/build-system/remote/update-repository.sh
@@ -0,0 +1,74 @@
+#!/bin/bash
+
+# Script to update the debian repository description files (Release, Packages, Sources)
+#
+# @author: Emmanuel Milou <emmanuel.milou@savoirfairelinux.com>
+# @date: 2008 Jan 16  
+
+ROOT_DIR="/var/repos/sflphone/debian"
+USER="sflphone-package-manager"
+
+export LANG=en_CA.UTF-8
+export LC_ALL=en_CA.UTF-8
+
+WHO=`whoami`
+
+if [ "${WHO}" != "${USER}" ]; then
+	echo "!! Please use user ${USER} to run this script"
+	exit -1;
+fi
+
+echo  "Check GPG agent"
+pgrep -u "sflphone-package-manager" gpg-agent > /dev/null
+if [ "$?" -ne "0" ]; then
+	echo "!! GPG agent is not running"
+        exit -1
+fi
+GPG_AGENT_INFO=`cat $HOME/.gpg-agent-info 2> /dev/null`
+export ${GPG_AGENT_INFO}
+
+if [ "${GPG_AGENT_INFO}" == "" ]; then
+	echo "!! Cannot get GPG agent info"
+	exit -1
+fi
+
+apt-ftparchive generate conf/apt-ftparchive.conf
+
+echo "Generate the description file for each distribution"
+apt-ftparchive -c conf/apt-hardy-release.conf release dists/hardy > dists/hardy/Release
+apt-ftparchive -c conf/apt-hardy-testing.conf release dists/hardy-testing > dists/hardy-testing/Release
+apt-ftparchive -c conf/apt-hardy-daily.conf release dists/hardy-daily > dists/hardy-daily/Release
+
+apt-ftparchive -c conf/apt-intrepid-release.conf release dists/intrepid > dists/intrepid/Release
+apt-ftparchive -c conf/apt-intrepid-testing.conf release dists/intrepid-testing > dists/intrepid-testing/Release
+apt-ftparchive -c conf/apt-intrepid-daily.conf release dists/intrepid-daily > dists/intrepid-daily/Release
+
+apt-ftparchive -c conf/apt-jaunty-release.conf release dists/jaunty > dists/jaunty/Release
+apt-ftparchive -c conf/apt-jaunty-testing.conf release dists/jaunty-testing > dists/jaunty-testing/Release
+apt-ftparchive -c conf/apt-jaunty-daily.conf release dists/jaunty-daily > dists/jaunty-daily/Release
+
+echo "Sign the Release files"
+
+rm -f dists/intrepid/Release.gpg
+rm -f dists/intrepid-testing/Release.gpg
+rm -f dists/intrepid-daily/Release.gpg
+gpg --no-tty -u C842D122 --output dists/intrepid/Release.gpg -ba dists/intrepid/Release
+gpg --no-tty -u C842D122 --output dists/intrepid-testing/Release.gpg -ba dists/intrepid-testing/Release
+gpg --no-tty -u C842D122 --output dists/intrepid-daily/Release.gpg -ba dists/intrepid-daily/Release
+
+rm -f dists/hardy/Release.gpg
+rm -f dists/hardy-testing/Release.gpg
+rm -f dists/hardy-daily/Release.gpg
+gpg --no-tty -u C842D122 --output dists/hardy/Release.gpg -ba dists/hardy/Release
+gpg --no-tty -u C842D122 --output dists/hardy-testing/Release.gpg -ba dists/hardy-testing/Release
+gpg --no-tty -u C842D122 --output dists/hardy-daily/Release.gpg -ba dists/hardy-daily/Release
+
+rm -f dists/jaunty/Release.gpg
+rm -f dists/jaunty-testing/Release.gpg
+rm -f dists/jaunty-daily/Release.gpg
+gpg --no-tty -u C842D122 --output dists/jaunty/Release.gpg -ba dists/jaunty/Release
+gpg --no-tty -u C842D122 --output dists/jaunty-testing/Release.gpg -ba dists/jaunty-testing/Release
+gpg --no-tty -u C842D122 --output dists/jaunty-daily/Release.gpg -ba dists/jaunty-daily/Release
+
+echo "All done"
+exit 0
diff --git a/tools/build-system/send-emails.sh b/tools/build-system/send-emails.sh
new file mode 100755
index 0000000000000000000000000000000000000000..065e9c691a071a48b0f10f5206972b9abf9ad49f
--- /dev/null
+++ b/tools/build-system/send-emails.sh
@@ -0,0 +1,40 @@
+#!/bin/bash
+#####################################################
+# File Name: send-emails.sh
+#
+# Purpose :
+#
+# Author: Julien Bonjean (julien@bonjean.info) 
+#
+# Creation Date: 2009-04-20
+# Last Modified:
+#####################################################
+
+TAG=`date +%Y-%m-%d`
+ROOT_DIR="/home/projects/sflphone"
+PACKAGING_RESULT_DIR=${ROOT_DIR}/packages-${TAG}
+STATUS="OK"
+
+if [ "$1" -ne 0 ]; then
+	STATUS="ERROR"
+fi
+
+echo
+echo "Send notification emails"
+echo
+
+MAIL_SUBJECT="[ ${TAG} ] SFLphone Automatic Build System : ${STATUS}"
+
+if [ "$1" -eq 0 ]; then
+	echo | mail -s "${MAIL_SUBJECT}" -c emmanuel.milou@savoirfairelinux.com julien.bonjean@savoirfairelinux.com
+else
+	(
+	for i in ${PACKAGING_RESULT_DIR}/*.log
+	do
+		uuencode $i $(basename $i)
+	done
+	) | mail -s "${MAIL_SUBJECT}" -c emmanuel.milou@savoirfairelinux.com julien.bonjean@savoirfairelinux.com 
+fi
+
+exit 0
+
diff --git a/tools/build-system/sfl-git-dch.sh b/tools/build-system/sfl-git-dch.sh
new file mode 100755
index 0000000000000000000000000000000000000000..986da2bdaa57ceec96343b2f19911f0476bfdac7
--- /dev/null
+++ b/tools/build-system/sfl-git-dch.sh
@@ -0,0 +1,165 @@
+#!/bin/bash
+#####################################################
+# File Name: sfl-git-dch.sh
+#
+# Purpose :
+#
+# Author: Julien Bonjean (julien@bonjean.info) 
+#
+# Creation Date: 2009-05-13
+# Last Modified: 2009-05-14 17:22:48 -0400
+#####################################################
+
+# set -x
+
+RELEASE_MODE=$1
+
+ROOT_DIR="/home/projects/sflphone"
+TODEPLOY_DIR="${ROOT_DIR}/sflphone-packaging"
+TODEPLOY_BUILD_DIR="${TODEPLOY_DIR}/build"
+REPOSITORY_DIR="${TODEPLOY_BUILD_DIR}/sflphone"
+SCRIPTS_DIR="${ROOT_DIR}/build-system"
+
+CHANGELOG_FILES=( "sflphone-common/debian/changelog" "sflphone-client-gnome/debian/changelog" )
+
+SNAPSHOT_TAG=`date +%s`
+
+export DEBFULLNAME="SFLphone Automatic Build System"
+export DEBEMAIL="team@sflphone.org"
+export EDITOR="echo"
+
+cd ${REPOSITORY_DIR}
+
+if [ "$?" -ne "0" ]; then
+        echo " !! Cannot cd to working directory"
+        exit -1
+fi
+
+# get last release tag
+LAST_RELEASE_TAG_NAME=`git describe --tag HEAD --match "debian/*" --abbrev=40 | cut -d "-" -f1-2`
+
+if [ "$?" -ne "0" ]; then
+	echo " !! Error when retrieving last tag"
+	exit -1
+fi
+
+# get last release commit hash
+LAST_RELEASE_COMMIT_HASH=`git show --pretty=format:"%H" -s ${LAST_RELEASE_TAG_NAME=} | tail -n 1`
+
+if [ "$?" -ne "0" ]; then
+	echo " !! Error when retrieving last release commit hash"
+	exit -1
+fi
+
+echo "Last release tag is : ${LAST_RELEASE_TAG_NAME} (commit ${LAST_RELEASE_COMMIT_HASH})"
+echo
+
+
+# use git log to retrieve changelog content
+CHANGELOG_CONTENT=`git log --no-merges --pretty=format:"%s" ${LAST_RELEASE_COMMIT_HASH}.. | grep -v "\[\#1262\]"`
+
+if [ "$?" -ne "0" ]; then
+        echo " !! Error when retrieving changelog content"
+        exit -1
+fi
+
+# get version
+SOFTWARE_VERSION=`echo ${LAST_RELEASE_TAG_NAME} | cut -d "/" -f2- | cut -d "-" -f1`
+
+if [ "$?" -ne "0" ]; then
+        echo " !! Error when retrieving software version"
+        exit -1
+fi
+
+# add version info
+SOFTWARE_VERSION_APPEND=
+if [ ${RELEASE_MODE} ]
+then
+	if [ "${RELEASE_MODE}" != "release" ]; then
+		SOFTWARE_VERSION_APPEND="~${RELEASE_MODE}"
+	fi
+else
+	SOFTWARE_VERSION_APPEND="~snapshot${SNAPSHOT_TAG}"
+fi
+	
+	
+
+
+# iterate throw changelog files
+for CHANGELOG_FILE in ${CHANGELOG_FILES[@]}
+do
+	echo "Changelog : ${CHANGELOG_FILE}"
+	echo
+	rm -f ${CHANGELOG_FILE}.dch >/dev/null 2>&1	
+
+	# if previous entry is a snapshot, remove it
+	sed -n 's/ //g;3p;3q' ${CHANGELOG_FILE} | grep "**SNAPSHOT" >/dev/null 2>&1
+	if [ $? -eq 0 ]; then
+		echo "Previous entry is a snapshot, removing it"
+
+		# detect first section length
+		FIRST_SECTION_LENGTH=`tail -n +2 ${CHANGELOG_FILE} | nl -ba | grep -m 1 "sflphone-.* SYSTEM; urgency=.*" | awk '{print $1}'`
+
+		if [ "$?" -ne "0" ] || [ ! ${FIRST_SECTION_LENGTH} ]; then
+	        	echo " !! Error when retrieving snapshot entry length"
+		        exit -1
+		fi
+
+		# remove first section
+		sed -i "1,${FIRST_SECTION_LENGTH}d" ${CHANGELOG_FILE}
+
+		if [ "$?" -ne "0" ]; then
+	                echo " !! Error when removing snapshot section"
+	                exit -1
+        	fi
+	fi
+
+	echo -n "Generate changelog "
+	IS_FIRST=1
+	echo "${CHANGELOG_CONTENT}" | while read line
+	do
+
+		if [ ${IS_FIRST} ]
+		then
+			yes | dch --changelog ${CHANGELOG_FILE}  -b --allow-lower-version --no-auto-nmu --distribution SYSTEM --newversion ${SOFTWARE_VERSION}-SYSVER${SOFTWARE_VERSION_APPEND} "$line" >/dev/null 2>&1
+		
+			if [ "$?" -ne "0" ]; then
+				echo
+	                	echo " !! Error with new version"
+		                exit -1
+	        	fi
+
+			IS_FIRST=
+		else
+			dch --changelog ${CHANGELOG_FILE} --no-auto-nmu "$line"
+			if [ "$?" -ne "0" ]; then
+	                        echo
+	                        echo " !! Error when adding changelog entry"
+	                        exit -1
+	                fi
+		fi
+		echo -n .
+	done
+
+	# add snapshot or release flag if needed
+	echo
+	if [ ${RELEASE_MODE} ]; then
+		sed -i "3i\    ** ${SOFTWARE_VERSION} ${RELEASE_MODE} **\n" ${CHANGELOG_FILE}
+                if [ "$?" -ne "0" ]; then
+                        echo " !! Error when adding snapshot flag"
+                        exit -1
+                fi
+	else
+		sed -i "3i\    ** SNAPSHOT ${SNAPSHOT_TAG} **\n" ${CHANGELOG_FILE}
+		if [ "$?" -ne "0" ]; then
+	                echo " !! Error when adding snapshot flag"
+			exit -1
+		fi
+	fi
+	echo
+done
+
+echo "All done !"
+
+exit 0
+
diff --git a/tools/pysflphone/Errors.py b/tools/pysflphone/Errors.py
new file mode 100644
index 0000000000000000000000000000000000000000..2a1e6b38693f22073d4073edb11d9656ecaa06af
--- /dev/null
+++ b/tools/pysflphone/Errors.py
@@ -0,0 +1,40 @@
+# Copyright (C) 2008 by the Free Software Foundation, Inc.
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+
+"""Our own Errors exceptions"""
+
+class SflPhoneError(Exception):
+    """Base class for all SflPhone exceptions."""
+    def __init__(self, help=None):
+        self.help=help
+    def __str__(self):
+        return repr(self.help)
+
+
+class SPdbusError(SflPhoneError):
+    """General error for dbus communication"""
+
+class SPdaemonError(SflPhoneError):
+    """General error for daemon communication"""
+
+class SPserverError(SflPhoneError):
+    """General error for server communication"""
+
+class SPconfigurationError(SflPhoneError):
+    """General error for configuration"""
+
+class SPaccountError(SflPhoneError):
+    """General error for account handling"""
diff --git a/tools/pysflphone/__init__.py b/tools/pysflphone/__init__.py
new file mode 100644
index 0000000000000000000000000000000000000000..94ffb667d0fe679dc40c0db3b26216748a8ea362
--- /dev/null
+++ b/tools/pysflphone/__init__.py
@@ -0,0 +1,17 @@
+# Copyright (C) 2008 by the Free Software Foundation, Inc.
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+
+
diff --git a/tools/pysflphone/pysflphone.py b/tools/pysflphone/pysflphone.py
new file mode 100644
index 0000000000000000000000000000000000000000..d100b6b8167eed92decf0b40e0c0c10b3b218d3b
--- /dev/null
+++ b/tools/pysflphone/pysflphone.py
@@ -0,0 +1,269 @@
+#!/usr/bin/env python
+#
+# Copyright (C) 2009 by the Free Software Foundation, Inc.
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+
+
+
+import sys
+import os
+import random
+from traceback import print_exc
+
+import gobject
+from gobject import GObject
+
+import getopt
+
+import time
+
+from threading import Thread
+
+from Errors import *
+
+try:
+	import dbus
+	from dbus.mainloop.glib import DBusGMainLoop
+except ImportError, e:
+	raise SflPhoneError("No python-dbus module found")
+
+
+from sflphonectrlsimple import SflPhoneCtrlSimple
+
+#
+# Main application
+#
+
+
+def printHelp():
+	"""Print help"""
+	print sys.argv[0] + " usage:\n\
+\n\
+	--help                             Print this help.\n\
+\n\
+	--gaa                              Get all accounts.\n\
+	--gara                             Get all registered accounts.  \n\
+	--gaea                             Get all enabled accounts.     \n\
+	--gasa                             Get all SIP accounts.         \n\
+	--gaia                             Get all IAX accounts.         \n\
+	--gcc                              Get current callid.           \n\
+	--gacl                             Get active codec list.        \n\
+                                                                     \n\
+	--gad        <account>             Get account details .         \n\
+	--enable     <account>             Enable the account.           \n\
+	--disable    <account>             Disable the account.          \n\
+	--register   <account>             Register the account.         \n\
+	--unregister <account>             Unregister the account.       \n\
+	                                                                 \n\
+	--call       <destination>         Call to number                \n\
+	--transfer   <destination>         Transfer active call          \n\
+\n\
+	--gcd        <callid|\"current\">    Get call details.           \n\
+	--accept     <callid|\"current\">    Accept the call             \n\
+	--hangup     <callid|\"current\">    Hangup the call             \n\
+	--refuse     <callid|\"current\">    Refuse the call             \n\
+	--hold       <callid|\"current\">    Hold the call               \n\
+	--unhold     <callid|\"current\">    Unhold the call             \n\
+	--dtmf       <key>                 Send DTMF\n"
+	
+
+
+# Option definition
+try:
+    opts, args =  getopt.getopt(sys.argv[1:],"", [  "help", "gaa", "gal", "gara", "gaea", "gasa", "gaia", "gacl", "gac", "gcc", 
+                                                    "hangup=", "refuse=", "hold", "unhold=", "transfer=","dtmf=", "accept=",
+                                                    "gcd=", "gad=", "register=", "unregister=", "enable=", "disable=", "call=" ])
+except getopt.GetoptError,err:
+    print str(err)
+    sys.exit(2)
+
+
+# SFLPhone instance.
+sflphone = SflPhoneCtrlSimple() 
+
+# If no arguments, run the d-bus event loop.
+if len(sys.argv) == 1:
+	loop = gobject.MainLoop()
+	loop.run()
+
+# Parse all arguments
+else:
+	for opt, arg in opts:	
+
+		if opt == "--help": 
+			printHelp()
+
+		#
+		# info options
+		#
+
+		# Get all accounts
+		elif opt == "--gaa": 
+			for account in sflphone.getAllAccounts():
+				print account
+
+		# Get all registered accounts
+		elif opt == "--gara": 
+			for account in sflphone.getAllRegisteredAccounts():
+				print account
+
+		# Get all enabled accounts
+		elif opt == "--gaea": 
+			for account in sflphone.getAllEnabledAccounts():
+				print account
+
+		# Get all SIP accounts
+		elif opt == "--gasa": 
+			for account in sflphone.getAllSipAccounts():
+				print account
+
+		# Get all IAX accounts
+		elif opt == "--gaia": 
+			for account in sflphone.getAllIaxAccounts():
+				print account
+
+		# Get current call
+		elif opt == "--gcc": 
+			call = sflphone.getCurrentCallID()
+			if call:
+				print call
+			else:
+				print "No current call."
+
+		# Get account details
+		elif opt == "--gad": 
+			if sflphone.checkAccountExists(arg):
+				details = sflphone.getAccountDetails(arg)
+				for var in details:
+					print var + ": " + details[var]
+			else:
+				print "No such account: " + arg
+
+		# Get active codec list
+		elif opt == "--gacl": 
+			print "Not implemented."
+
+		# Get call details
+		elif opt == "--gcd": 
+			if arg == "current": arg = sflphone.getCurrentCallID()
+
+			details = sflphone.getCallDetails(arg)
+			if details:
+				print "Call: " + arg
+				print "Account: " + details['ACCOUNTID']
+				print "Peer: " + details['PEER_NAME'] + "<" + details['PEER_NUMBER'] + ">"
+
+
+		#
+		# call options
+		#
+
+		# Make a call
+		elif opt == "--call": 
+			sflphone.Call(arg)
+
+		# Hangup a call
+		elif opt == "--hangup": 
+			if arg == "current": 
+				arg = sflphone.getCurrentCallID()
+
+			if arg: 
+				sflphone.HangUp(arg)
+
+		# Refuse a call
+		elif opt == "--refuse": 
+			if arg == "current": arg = sflphone.getCurrentCallID()
+			sflphone.Refuse(arg)
+
+		# Hold a call
+		elif opt == "--hold": 
+			if arg == "current": arg = sflphone.getCurrentCallID()
+			sflphone.Hold(arg)
+
+		# Unhold a call
+		elif opt == "--unhold": 
+			if arg == "current": arg = sflphone.getCurrentCallID()
+			sflphone.UnHold(arg)
+
+		# Transfer the current call
+		elif opt == "--transfer": 
+			call = sflphone.callmanager.getCurrentCallID()
+			sflphone.Transfert(call, arg)
+
+		# Send DTMF 
+		elif opt == "--dtmf": 
+			sflphone.Dtmf(arg)
+
+		# Accept a call
+		elif opt == "--accept": 
+			if arg == "current": arg = sflphone.getCurrentCallID()
+			sflphone.Accept(arg)
+
+
+		#
+		# account options
+		#
+
+		# Register an account
+		elif opt == "--register": 
+			if not sflphone.checkAccountExists(arg):
+				print "Account " + arg + ": no such account."
+
+			elif arg  in sflphone.getAllRegisteredAccounts():
+				print "Account " + arg + ": already registered."
+
+			else:
+				sflphone.setAccountRegistered(arg, True)
+				print arg + ": Sent register request."
+
+		# Unregister an account
+		elif opt == "--unregister": 
+			if not sflphone.checkAccountExists(arg):
+				print "Account " + arg + ": no such account."
+
+			elif arg not in sflphone.getAllRegisteredAccounts():
+				print "Account " + arg + ": is not registered."
+
+			else:
+				sflphone.setAccountRegistered(arg, False)
+				print arg + ": Sent unregister request."
+
+		# Enable an account
+		elif opt == "--enable":
+			if not sflphone.checkAccountExists(arg):
+				print "Account " + arg + ": no such account."
+
+			elif sflphone.isAccountEnable(arg):
+				print "Account " + arg + ": already enabled."
+
+			else:
+				sflphone.setAccountEnable(arg, True)
+				print arg + ": Account enabled."
+
+		# Disable an account
+		elif opt == "--disable":
+			if not sflphone.checkAccountExists(arg):
+				print "Account " + arg + ": no such account."
+
+			elif not sflphone.isAccountEnable(arg):
+				print "Account " + arg + ": already disabled."
+
+			else:
+				sflphone.setAccountRegistered(arg, False)
+				sflphone.setAccountEnable(arg, False)
+				print arg + ": Account disabled."
+
+
diff --git a/tools/pysflphone/pysflphone_testdbus.py b/tools/pysflphone/pysflphone_testdbus.py
new file mode 100644
index 0000000000000000000000000000000000000000..52f58ba132bc940815836cc344ea286132d55d4d
--- /dev/null
+++ b/tools/pysflphone/pysflphone_testdbus.py
@@ -0,0 +1,46 @@
+#!/usr/bin/env python
+
+from sflphonectrlsimple import SflPhoneCtrlSimple
+
+
+class SflPhoneTests(SflPhoneCtrlSimple):
+
+    def test_get_allaccounts_methods(self):
+
+        print "--- getAllAccounts() ---"
+        for account in self.getAllAccounts():
+            print "  " + account
+        print "\n"
+
+        print "--- getAllRegisteredAccounts() ---"
+        for account in self.getAllRegisteredAccounts():
+            print "  " + account
+        print "\n"
+
+        print "--- getAllSipAccounts() ---"
+        for account in self.getAllSipAccounts():
+            print "  " + account
+        print "\n"
+
+        print "--- getAllIaxAccounts() ---"
+        for account in self.getAllIaxAccounts():
+            print "  " + account
+        print "\n"
+
+ #   def test_codecs_methods(self):
+
+#        print "--- getCodecList() ---"
+#        for codec int self.getCodecList():
+#            print "  " + codec
+#        print "\n"
+
+
+sfl = SflPhoneTests()
+
+sfl.test_get_allaccounts_methods()
+
+
+
+
+		
+			
diff --git a/tools/pysflphone/sflphonectrlsimple.py b/tools/pysflphone/sflphonectrlsimple.py
new file mode 100755
index 0000000000000000000000000000000000000000..a7d0a5ee2a7bad04adcb6f09b80ff6d4fadae411
--- /dev/null
+++ b/tools/pysflphone/sflphonectrlsimple.py
@@ -0,0 +1,512 @@
+#!/usr/bin/env python
+#
+# Copyright (C) 2009 by the Free Software Foundation, Inc.
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+
+"""Simple class for controlling SflPhoned through DBUS"""
+
+import sys
+import os
+import random
+from traceback import print_exc
+
+import gobject
+from gobject import GObject
+
+import getopt
+
+import time
+import md5
+
+from threading import Thread
+
+from Errors import *
+
+try:
+	import dbus
+	from dbus.mainloop.glib import DBusGMainLoop
+except ImportError, e:
+	raise SflPhoneError("No python-dbus module found")
+
+
+class SflPhoneCtrlSimple(object):
+    """Simple class for controlling SflPhoned through DBUS"""
+
+    # list of active calls (known by the client)
+    activeCalls = {}
+
+    def __init__(self, name=sys.argv[0]):
+       	# current active account
+        self.account = None
+        # client name
+        self.name = name
+        # client registered to sflphoned ?
+        self.registered = False
+
+        self.register()
+
+
+    def __del__(self):
+        if self.registered:
+            self.unregister()
+
+
+    def register(self):
+        if self.registered:
+            return
+
+        try:
+            # register the main loop for d-bus events
+            DBusGMainLoop(set_as_default=True)
+            self.bus = dbus.SessionBus()
+        except dbus.DBusException, e:
+            raise SPdbusError("Unable to connect DBUS session bus")
+
+        dbus_objects = dbus.Interface(self.bus.get_object(
+              'org.freedesktop.DBus', '/org/freedesktop/DBus'), 
+                      'org.freedesktop.DBus').ListNames()
+
+        if not "org.sflphone.SFLphone" in dbus_objects:
+            raise SPdbusError("Unable to find org.sflphone.SFLphone in DBUS. Check if sflphoned is running")
+
+        try:
+            proxy_instance = self.bus.get_object("org.sflphone.SFLphone",
+		 "/org/sflphone/SFLphone/Instance", introspect=False)
+            proxy_callmgr = self.bus.get_object("org.sflphone.SFLphone",
+		 "/org/sflphone/SFLphone/CallManager", introspect=False)
+            proxy_confmgr = self.bus.get_object("org.sflphone.SFLphone", 
+                 "/org/sflphone/SFLphone/ConfigurationManager", 
+                        introspect=False)
+
+            self.instance = dbus.Interface(proxy_instance,
+                          "org.sflphone.SFLphone.Instance")
+            self.callmanager = dbus.Interface(proxy_callmgr,
+		          "org.sflphone.SFLphone.CallManager")
+            self.configurationmanager = dbus.Interface(proxy_confmgr,
+			  "org.sflphone.SFLphone.ConfigurationManager")
+
+        except dbus.DBusException, e:
+            
+            raise SPdbusError("Unable to bind to sflphoned api, ask core-dev team to implement getVersion method and start to pray.")
+
+        try:
+            self.instance.Register(os.getpid(), self.name)
+            self.registered = True
+        except:
+            raise SPdaemonError("Client registration failed")
+
+        try:
+            proxy_callmgr.connect_to_signal('incomingCall', self.onIncomingCall)
+            proxy_callmgr.connect_to_signal('callStateChanged', self.onCallStateChanged)
+        except dbus.DBusException, e:
+            print e
+			
+
+    def unregister(self):
+
+        if not self.registered:
+            return
+            #raise SflPhoneError("Not registered !")
+        try:
+            self.instance.Unregister(os.getpid())
+            self.registered = False
+        except:
+            raise SPdaemonError("Client unregistration failed")
+
+
+    def isRegistered(self):
+        return self.registered
+
+
+    #
+    # Signal handling
+    #
+
+    # On incoming call event, add the call to the list of active calls
+    def onIncomingCall(self, account, callid, to):
+        print "Incoming call: " + account + ", " + callid + ", " + to
+        self.activeCalls[callid] = {'Account': account, 'To': to, 'State': '' }
+
+    # On call state changed event, set the values for new calls, 
+    # or delete the call from the list of active calls
+    def onCallStateChanged(self, callid, state):
+        print "Call state changed: " + callid + ", " + state
+        if state == "HUNGUP":
+            try:
+                del self.activeCalls[callid]
+            except KeyError:
+                print "Call " + callid + " didn't exist. Cannot delete."
+
+        elif state in [ "RINGING", "CURRENT", "INCOMING", "HOLD" ]:
+            try:
+                self.activeCalls[callid]['State'] = state 
+            except KeyError, e:
+                print "This call didn't exist!: " + callid + ". Adding it to the list."
+                callDetails = self.getCallDetails(callid)
+                self.activeCalls[callid] = {'Account': callDetails['ACCOUNTID'], 'To': callDetails['PEER_NUMBER'], 'State': state }
+        elif state in [ "BUSY", "FAILURE" ]:
+            try:
+                del self.activeCalls[callid]
+            except KeyError, e:
+                print "This call didn't exist!: " + callid
+
+#		elif state == "UNHOLD_CURRENT":
+#			self.activeCalls[callid]['State'] = "UNHOLD_CURRENT"
+
+
+    #
+    # Account management
+    #
+    def getAllAccounts(self):
+        """ Return a list with all accounts"""
+        return self.configurationmanager.getAccountList()
+
+
+    def getAllEnabledAccounts(self):
+        """ Return a list with all enabled accounts"""
+        accounts = self.getAllAccounts()
+        activeaccounts = []
+        for testedaccount in accounts:
+            if self.isAccountEnable(testedaccount):
+                activeaccounts.append(testedaccount)
+        return activeaccounts
+
+
+    def getAccountDetails(self, account=None):
+        """Return a list of string. If no account is provided, active account is used"""
+
+        if account is None:
+            if self.account is None:
+                raise SflPhoneError("No provided or current account !")
+                if checkAccountExists(self.account):
+                    return self.configurationmanager.getAccountDetails(self.account)
+        else:
+            if self.checkAccountExists(account):
+
+                return self.configurationmanager.getAccountDetails(account)
+
+
+    def setAccountByAlias(self, alias):
+        """Define as active the first account who match with the alias"""
+
+        for testedaccount in self.getAllAccounts():
+            details = self.getAccountDetails(testedaccount)
+            if ( details['Account.enable'] == "TRUE" and 
+                              details['Account.alias'] == alias ):
+                self.account = testedaccount
+                return
+        raise SPaccountError("No enabled account matched with alias")
+
+
+    def getAccountByAlias(self, alias):
+        """Get account name having its alias"""
+
+        for account in self.getAllAccounts():
+            details = self.getAccountDetails(account)
+            if details['Account.alias'] == alias:
+                return account
+
+        raise SPaccountError("No account matched with alias")
+
+    def setAccount(self, account):
+        """Define the active account"""
+
+        if account in self.getAllAccounts():
+            self.account = account
+        else:
+            raise SflPhoneError("Not a valid account")
+
+    def setFirstRegisteredAccount(self):
+        """Find the first enabled account and define it as active"""
+
+        rAccounts = self.getAllRegisteredAccounts()
+        if 0 == len(rAccounts):
+            raise SflPhoneError("No registered account !")
+        self.account = rAccounts[0]
+
+    def setFirstActiveAccount(self):
+        """Find the first enabled account and define it as active"""
+
+        aAccounts = self.getAllEnabledAccounts()
+        if 0 == len(aAccounts):
+            raise SflPhoneError("No active account !")
+        self.account = aAccounts[0]
+
+
+    def getAccount(self):
+        """Return the active account"""
+
+        return self.account
+
+
+    def isAccountRegistered(self, account=None):
+        """Return True if the account is registered. If no account is provided, active account is used"""
+
+        if account is None:
+                if self.account is None:
+                        raise SflPhoneError("No provided or current account !")
+                account = self.account
+        return self.getAccountDetails(account)['Status'] == "REGISTERED"
+
+
+    def isAccountEnable(self, account=None):
+        """Return True if the account is enabled. If no account is provided, active account is used"""
+
+        if account is None:
+	       	if self.account is None:
+		       	raise SflPhoneError("No provided or current account !")
+                account = self.account
+        return self.getAccountDetails(account)['Account.enable'] == "TRUE"
+
+    def setAccountEnable(self, account=None, enable=False):
+       	"""Set account enabled"""
+        if account is None:
+	       	if self.account is None:
+		       	raise SflPhoneError("No provided or current account !")
+                account = self.account
+
+       	if enable == True:
+	       	details = self.getAccountDetails(account)
+                details['Account.enable'] = "TRUE"
+                self.configurationmanager.setAccountDetails(account, details)
+        else:
+	       	details = self.getAccountDetails(account)
+                details['Account.enable'] = "FALSE"
+                self.configurationmanager.setAccountDetails(account, details)
+
+    def checkAccountExists(self, account=None):
+        """ Checks if the account exists """
+        if account is None:
+            raise SflPhoneError("No provided or current account !")
+        return account in self.getAllAccounts()
+			
+    def getAllRegisteredAccounts(self):
+        """Return a list of registered accounts"""
+
+        registeredAccountsList = []
+        for account in self.getAllAccounts():
+            if self.isAccountRegistered(account):
+                registeredAccountsList.append(account)
+
+        return registeredAccountsList
+
+    def getAllEnabledAccounts(self):
+        """Return a list of enabled accounts"""
+
+        enabledAccountsList = []
+        for accountName in self.getAllAccounts():
+            if self.getAccountDetails(accountName)['Account.enable'] == "TRUE":
+                 enabledAccountsList.append(accountName)
+
+        return enabledAccountsList
+
+    def getAllSipAccounts(self):
+        """Return a list of SIP accounts"""
+
+        sipAccountsList = []
+        for accountName in self.getAllAccounts(): 
+            if  self.getAccountDetails(accountName)['Account.type'] == "SIP":
+                sipAccountsList.append(accountName)
+
+        return sipAccountsList
+
+    def getAllIaxAccounts(self):
+        """Return a list of IAX accounts"""
+
+        iaxAccountsList = []
+        for accountName in self.getAllAccounts():
+            if  self.getAccountDetails(accountName)['Account.type'] == "IAX":
+                iaxAccountsList.append(accountName)
+
+        return iaxAccountsList
+
+    def setAccountRegistered(self, account=None, register=False):
+       	""" Tries to register the account """
+
+       	if account is None:
+       		if self.account is None:
+       			raise SflPhoneError("No provided or current account !")
+       		account = self.account
+
+       	try:
+       		if register:
+       			self.configurationmanager.sendRegister(account, int(1))
+       			#self.setAccount(account)
+       		else:
+       			self.configurationmanager.sendRegister(account, int(0))
+       			#self.setFirstRegisteredAccount()
+        except SflPhoneError, e:
+       		print e
+
+    #
+    # Codec manager
+    #
+                        
+    def getCodecList(self):
+        """ Return the codec list """
+        return self.configurationmanager.getCodecList()
+
+    def getActiveCodecList(self):
+        """ Return the active codec list """
+        return self.configurationmanager.getActiveCodecList()
+
+
+
+    #
+    # Call management
+    #
+
+    def getCurrentCallID(self):
+        """Return the callID of the current call if any"""
+
+        return self.callmanager.getCurrentCallID()
+
+
+    def getCurrentCallDetails(self):
+        """Return informations on the current call if any"""
+
+        return self.callmanager.getCallDetails(self.getCurrentCallID())
+
+    def getCallDetails(self, callid):
+        """Return informations on this call if exists"""
+
+        return self.callmanager.getCallDetails(callid)
+
+    def printClientCallList(self):
+        print "Client active call list:"
+        print "------------------------"
+        for call in self.activeCalls:
+            print "\t" + call
+
+    #
+    # Action
+    #
+    def Call(self, dest):
+        """Start a call and return a CallID"""
+        if not self.account:
+            self.setFirstRegisteredAccount()
+
+        if not self.isAccountRegistered():
+            raise SflPhoneError("Can't place a call without a registered account")
+
+        if dest is None or dest == "":
+            raise SflPhoneError("Invalid call destination")
+
+        # callid = str(random.randrange(2**32-1))
+        t = long( time.time() * 1000 )
+        r = long( random.random()*100000000000000000L )
+        data = str(t) + str(r)
+        callid = md5.md5(data).hexdigest()
+
+        # Add the call to the list of active calls and set status to SENT
+        self.activeCalls[callid] = {'Account': self.account, 'To': dest, 'State': 'SENT' }
+        # Send the request to the CallManager
+        self.callmanager.placeCall(self.account, callid, dest)
+
+        return callid
+
+
+    def HangUp(self, callid):
+        """End a call identified by a CallID"""
+        if not self.account:
+            self.setFirstRegisteredAccount()
+
+        if not self.isAccountRegistered():
+            raise SflPhoneError("Can't hangup a call without a registered account")
+
+        if callid is None or callid == "":
+            pass # just to see
+            #raise SflPhoneError("Invalid callID")
+
+            self.callmanager.hangUp(callid)
+
+
+    def Transfert(self, callid, to):
+        """Transfert a call identified by a CallID"""
+        if not self.account:
+            self.setFirstRegisteredAccount()
+
+        if not self.isAccountRegistered():
+            raise SflPhoneError("Can't transfert a call without a registered account")
+
+        if callid is None or callid == "":
+            raise SflPhoneError("Invalid callID")
+
+        self.callmanager.transfert(callid, to)
+
+
+    def Refuse(self, callid):
+        """Refuse an incoming call identified by a CallID"""
+        if not self.account:
+            self.setFirstRegisteredAccount()
+
+        if not self.isAccountRegistered():
+            raise SflPhoneError("Can't refuse a call without a registered account")
+
+        if callid is None or callid == "":
+            raise SflPhoneError("Invalid callID")
+
+        self.callmanager.refuse(callid)
+
+
+    def Accept(self, callid):
+        """Accept an incoming call identified by a CallID"""
+        if not self.account:
+            self.setFirstRegisteredAccount()
+
+       	if not self.isAccountRegistered():
+            raise SflPhoneError("Can't accept a call without a registered account")
+
+        if callid is None or callid == "":
+            raise SflPhoneError("Invalid callID")
+
+        self.callmanager.accept(callid)
+
+
+    def Hold(self, callid):
+        """Hold a call identified by a CallID"""
+        if not self.account:
+            self.setFirstRegisteredAccount()
+
+        if not self.isAccountRegistered():
+            raise SflPhoneError("Can't hold a call without a registered account")
+
+        if callid is None or callid == "":
+            raise SflPhoneError("Invalid callID")
+
+        self.callmanager.hold(callid)
+
+
+    def UnHold(self, callid):
+        """Unhold an incoming call identified by a CallID"""
+        if not self.account:
+            self.setFirstRegisteredAccount()
+
+        if not self.isAccountRegistered():
+            raise SflPhoneError("Can't unhold a call without a registered account")
+
+        if callid is None or callid == "":
+            raise SflPhoneError("Invalid callID")
+
+        self.callmanager.unhold(callid)
+
+
+    def Dtmf(self, key):
+        """Send a DTMF"""
+        self.callmanager.playDTMF(key)
+
+
+
diff --git a/www/contact.php b/www/contact.php
deleted file mode 100644
index 1649ffc79a831948346a8739f301480a392ae0a1..0000000000000000000000000000000000000000
--- a/www/contact.php
+++ /dev/null
@@ -1,55 +0,0 @@
-<?php
-$name = 'contact';
-$javascript = array('jquery','animated-menu');
-
-include('include/header.php');
-
-?>
-
-<div id="content">
-                				<table class="pourcentWidth contactTabs" cellpadding="0" cellspacing="0">
-                                    <tbody>
-                                    <tr>
-                                    	<td >
-                                            <h5>SAVOIR-FAIRE LINUX - IN MONTREAL</h5>                 	
-                                            <p>7275 Saint Urbain Bureau 306</p>
-                                            <p>Montréal (Québec) H2R 2Y5</p>
-                                            <p>Tél. (514) 276-5468</p>
-                                            <p>Fax: (514) 276-5465 </p>
-                                            <p class="previewGoogle"><a href="http://maps.google.com/maps?f=q&amp;hl=fr&amp;q=151+Slater+Street,+ottawa&amp;ie=UTF8&amp;z=15&amp;ll=45.420684,-75.701895&amp;spn=0.013706,0.043259&amp;om=1&amp;iwloc=addr" title="Opens external link in new window" target="_blank" class="external-link-new-window" >
-                                            <img src="img/mtl.png" width="400" height="347" class="perso" alt="" /></a>
-                                            </p>
-
-                                    	</td >
-                                        <td >  
-                                    	    <h5>IN QUEBEC :</h5>
-                                            <p>275, rue du Parvis </p>
-                                            <p>Bureau 310 </p>
-                                            <p>Québec (Québec) G1K 6G7 </p>
-                                            <p>Tél / Fax : (418) 525-7354 </p> 
-                                            <p class="previewGoogle"><a href="http://maps.google.com/maps?f=q&amp;hl=fr&amp;q=151+Slater+Street,+ottawa&amp;ie=UTF8&amp;z=15&amp;ll=45.420684,-75.701895&amp;spn=0.013706,0.043259&amp;om=1&amp;iwloc=addr" title="Opens external link in new window" target="_blank" class="external-link-new-window" >
-                                            <img src="img/qc.png" width="400" height="347" class="perso" alt="" /></a>
-                                            </p>
-										</td >
-                                    </tr> 
-                                    <tr> 
-                                        <td > 
-                                            <h5>IN OTTAWA / Gatineau :</h5>
-                                            <p>151, rue Slater</p>
-                                            <p>Bureau 504</p>
-                                            <p>Ottawa, ON, K1P 5H3</p>
-                                            <p>Tél / Fax : 613-688-8081 </p>
-                                            <p class="previewGoogle"><a href="http://maps.google.com/maps?f=q&amp;hl=fr&amp;q=151+Slater+Street,+ottawa&amp;ie=UTF8&amp;z=15&amp;ll=45.420684,-75.701895&amp;spn=0.013706,0.043259&amp;om=1&amp;iwloc=addr" title="Opens external link in new window" target="_blank" class="external-link-new-window" >
-                                            <img src="img/ott.png" width="400" height="347" class="perso" alt="" /></a>
-                                            </p>
-                                    	</td>
-                                    </tr> 
-                                    </tbody>     
-                                </table>   
-            </div>
-        
-<?php
-
-include('include/footer.php');
-
-?>
diff --git a/www/css/galleria.css b/www/css/galleria.css
deleted file mode 100644
index 73ca0d9700d4ce9cb5820c2db5e4083f007fd811..0000000000000000000000000000000000000000
--- a/www/css/galleria.css
+++ /dev/null
@@ -1,24 +0,0 @@
-.galleria{list-style:none;width:100%}
-.galleria li{display:block;width:80px;height:80px;overflow:hidden;float:left;margin:0 10px 10px 0}
-.galleria li a{display:none}
-.galleria li div{position:absolute;display:none;top:0;left:180px}
-.galleria li div img{cursor:pointer}
-.galleria li.active div img,.galleria li.active div{display:block}
-.galleria li img.thumb{cursor:pointer;top:auto;left:auto;display:block;width:auto;height:auto}
-.galleria li .caption{display:block;padding-top:.5em}
-* html .galleria li div span{width:400px} /* MSIE bug */
-
-.galleria_wrapper img {
-  height: 400px;
-  outline: 4px solid #bcf;
-  margin-bottom: 10px;
-}
-
-div.galleria_container{
-  height: 450px;
-  text-align: center;
-}
-
-.hover {
-  outline: 3px solid #acf;
-}
diff --git a/www/css/reset.css b/www/css/reset.css
deleted file mode 100644
index d7c9809743ba3e2354e1dc4c17401adb87044d44..0000000000000000000000000000000000000000
--- a/www/css/reset.css
+++ /dev/null
@@ -1,90 +0,0 @@
-/*  ----------------------------------------
-
-	1. Basic
-
- ---------------------------------------- */
-
-#slider {
-    width: 328px; /*important to be same as image width */
-    /* height: 300px; important to be same as image height */
-    position: relative; /* important */
-	overflow: hidden; /* important */
-}
-
-#slider li{
-	list-style:none;
-}
-
-#slider1, #slider2 {
-    width: 260px; /* important to be same as image width */
-     /*height: 300px; important to be same as image height */
-    position: relative; /* important */
-	overflow: hidden; /* important */
-}
-
-#sliderContent, #slider1Content, #slider2Content {
-   /* width: 720px;
-    position: absolute;
-	top: 0;
-	margin-left: 0;*/
-}
-.sliderImage, .slider1Image, .slider2Image {
-    float: left;
-    position: relative;
-	display: none;
-	padding:5px;
-}
-.sliderImage span {
-    position: absolute;
-	font: 10px/15px Arial, Helvetica, sans-serif;
-    padding: 10px 13px;
-    width: 100%;
-    background-color: #ddfabb;
-    filter: alpha(opacity=80);
-    -moz-opacity: 0.8;
-	-khtml-opacity: 0.8;
-    opacity: 0.8;
-    color: #000;
-    display: none;
-	border:1px solid #ddd;
-}
-
-.slider1Image span, .slider2Image span {
-    position: absolute;
-	font: 10px/15px Arial, Helvetica, sans-serif;
-    padding: 10px 13px;
-    width: 694px;
-    background-color: #000;
-    filter: alpha(opacity=70);
-    -moz-opacity: 0.7;
-	-khtml-opacity: 0.7;
-    opacity: 0.7;
-    color: #fff;
-    display: none;
-}
-.clear {
-	clear: both;
-}
-.sliderImage span strong, .slider1Image span strong, .slider2Image span strong {
-    font-size: 14px;
-}
-.top {
-	top: 0;
-	left: 0;
-}
-.bottom {
-	bottom: 0;
-    left: 5px;
-}
-.left {
-	top: 0;
-    left: 0;
-	width: 110px !important;
-	height: 280px;
-}
-.right {
-	right: 0;
-	bottom: 0;
-	width: 90px !important;
-	height: 290px;
-}
diff --git a/www/css/s3Slider.css b/www/css/s3Slider.css
deleted file mode 100644
index a4b21841390ad79ebde978cf60f26fdaa6eb829c..0000000000000000000000000000000000000000
--- a/www/css/s3Slider.css
+++ /dev/null
@@ -1,7 +0,0 @@
-/*  ----------------------------------------
-
-	Import CSS files
-
- ---------------------------------------- */
-
-@import url("reset.css");
\ No newline at end of file
diff --git a/www/css/style1.css b/www/css/style1.css
deleted file mode 100644
index 93ccea13258a9902b8f3dcf15f97519be21f06b6..0000000000000000000000000000000000000000
--- a/www/css/style1.css
+++ /dev/null
@@ -1,555 +0,0 @@
-@charset "UTF-8";
-
-/* CSS Document 
-	Auteur : Espérance Guerson noël
-	Date   : 2009-01-23 (23 janvier 2009)
- 	- sfl-phone
-*/
-
-
-* {
-	margin: 0 ;
-	padding: 0;
-} 
-
-
-a:link {
-	text-decoration:none;
-	color: #009cc9;
-}
-
-a:Hover {
-	text-decoration:none;
-	color:#a47944;
-}
-a:visited {
-	text-decoration:none;
-}
-
-p {
-	color : #555555; 
-}
-
-h5 {
-	color : #555555;
-	margin-bottom : 10px;
-	padding : 2px; 
-}
-
-img {
-	border: none;
-}
-
-img.logo {
-  margin: 5px;
-}
-
-img.perso {
-	border: 1px dashed #ccc;
-	padding: 3px;
-}
-
-.clear {
-	clear: both;
-}
-
-.float_it_left {
-	float: left;
-}
-
-.float_it_right {
-	float: right;
-}
-
-.float_it_middle {
-	text-align: center;
-}
-
-.fntBleu {
-	color: #009cc9;
-}
-
-.fntBrun {
-	color: #a47944;
-}
-
-.title {
-	font: normal 15pt Georgia, "Times New Roman", Times, serif;
-	letter-spacing: 1px;
-	padding: 16px 20px 16px 0;
-}
-
-.alignCenter{
-	text-align: center;
-}
-.leftAlign{
-	text-align: left;
-}
-
-.rightAlign{
-	text-align: right;
-}
-
-.previewGoogle{
-	padding: 8px 0px 8px 0px;
-}
-
-.highlight {
-	color: #a47944;
-}
-
-.highlight:hover {
-	color: #a47944;
-	text-decoration:underline;
-}
-
-.list {
-	padding: 10px 0 10px 0;
-}
-
-
-
-
-
-
-
-
-
-/* enveloppe - page*/
-body {
-	font-family: verdana, Arial, Helvetica, sans-serif;
-	font-size: 10pt;
-	color: #111111;
-	background-color: #cde5ed;  
-}
-
-#global{
-	background: #fff url('../img/content_bg.jpg') repeat-x;
-}
-
-#controller {
-	margin: 0 auto;
-	/* min-width: 1000px; */
-	width: 92%;
-}
-
-#header {
-	width: 100%;
-	height: 159px;
-	/*background: #a47a48 url('../img/head_bg_a.jpg') no-repeat; */
-	background: #0f5787 url('../img/head_bg_a.jpg') no-repeat; 
-}
-
-
-.navigation {
-	clear: both;
-}
-
-.option {
-	clear: both;
-}
-
-.underOption {
-	padding: 5px 0 5px 0;
-}
-
-
-
-#content {
-	padding: 10px 0px 0px 0px;
-	clear:both;
-}
-.pourcentWidth {
-	width: 100%;
-}
-
-
-
-/* index content */
-.imgSliderTd {
-	height:420px;
-}
-.tabsIndex td{
-}
-.tabsIndex ul.list li{
-	font-weight: normal;
-	font-size: 13pt;
-	margin-bottom: 5px;
-	margin-left: 15px;
-	min-width:270px;
-	list-style-type:circle;
-	/*list-style-image:url(../img/puces.png);*/
-}
-
-#index_td_gauche {
-	padding: 10px;
-	width: 49.5%;
-	background-color: #fff;
-	border: 1px solid #ededed;
-	border-bottom:none;
-}
-
-#index_td_separator {
-	background-color: transparent;
-}
-
-#index_td_droite {
-	padding: 50px;
-	width: 49.5%;
-	background: #fff url(../img/corner_a.png) no-repeat left top;
-	border: 1px solid #ededed;
-	border-bottom:none;
-}
-
-
-/* fonction */
-.fonctionTabs {
-	padding: 20px 20px 20px 20px;
-	background-color: #fff;
-	border: 1px solid #ededed;
-	border-bottom:none;
-}
-.fonctionTabs td {
-	padding:5px;
-}
-
-
-
-/* download */
-.downloadTabs {
-	padding: 20px 20px 20px 20px;
-	background-color: #fff;
-	border: 1px solid #ededed;
-	border-bottom:none;
-}
-.downloadTabs td {
-	padding:5px;
-}
-
-
-
-/* contact */
-.contactTabs {
-	padding: 20px 20px 20px 20px;
-	background-color: #fff;
-	border: 1px solid #ededed;
-	border-bottom:none;
-}
-.contactTabs td {
-	padding:5px;
-}
-
-
-
-
-
-/* foot */
-
-#botDescr {
-	font-size: 9pt;
-	background-color: #fafafa;
-	border: 1px dashed #ddd;
-	padding: 5px;
-	margin-top:15px;
-	clear: both;
-}
-
-#foot {
-	font-size: 9pt;
-	
-}
-
-.footTabStyle {
-	width: 100%;
-}
-
-.leftfoot {
-	padding-top: 15px;
-	padding-right:10px;
-}
-
-.rightfoot {	
-	padding-top: 15px;
-	width: 90%;
-}
-
-#bottomLink {
-	padding: 0px 11px 0px 11px;
-	height: 100%;
-}
-
-.footBlock {
-	width:200px;
-	margin-left:20px;
-	border-right:1px solid #dddddd;
-	float:left;
-}
-
-.rightfootBlock {
-	width:200px;
-	margin-left:20px;
-	float:right;
-}
-
-.rightfootBlock li {
-	color:#bdbdbd;
-	text-decoration:none;
-	list-style-type:none;
-	text-align: right;
-}
-
-
-.footBlock ul {
-	list-style:none;
-}
-
-.footBlock li {
-	margin-bottom:1px;
-}
-
-.footBlock li a {
-	text-decoration:none;
-	color:#58abd4;
-}
-
-.footBlock li a:Hover {
-	text-decoration:none;
-	color:#a47944;
-}
-
-#bottomPage {
-	margin-top: 10px;
-	width: 100%;
-	height: 125px;
-	background : transparent url('../img/bot_bg_a.jpg') repeat-x;
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-/* create several round corner */
-.cadre{
-	background-color: #f0f0f0;
-	width: 100%;
-}
-
-.cadre_hg, .cadre_hd,
-.cadre_bg, .cadre_bd{
-	width: 11px;
-	height: 11px;
-	background-repeat: no-repeat;
-	font-size: 1px;
-}
-
-.cadre_hg{
-	background: url('../img/cadre_rounded.png') 0 0;
-}
-.cadre_hd{
-	background: url('../img/cadre_rounded.png') 11px 0;
-	float: right;
-}
-.cadre_bg{
-	background: url('../img/cadre_rounded.png') 0 11px;
-}
-.cadre_bd{
-	background: url('../img/cadre_rounded.png') 11px 11px;
-	float: right;
-}
-
-
-
-
-
-
-/* Navigation */
-
-/* NAV */
-.navTabs{
-	background-color: #fff;
-	border: 1px solid #ddd;
-	min-height: 26px;
-	width: 100%; 
-	padding: 8px 8px 0px 8px;
-}
-
-
-#navigation li {
-	float:right;
-	padding:0 1px 0 0;
-	position:relative;
-	list-style:none;
-}
-
-#navigation a {
-	float:left;
-	color:#58abd4;
-	text-decoration:none;
-	width:145px;
-	text-align:center;
-	line-height:25px;
-	font-size:13pt;
-	font-weight:normal;
-	white-space: nowrap;
-	overflow: hidden;
-}
-#navigation span {
-	padding:0 12px 0 6px;
-}
-
-#navigation a:hover {
-	color:#a47944;
-}
-
-#navigation .active a {
-	background-position:0 0;
-	background-color:#ededed;
-}	
-#navigation div {
-	width:100%;
-	position:absolute;
-	top:22px;
-	left:-1px;
-	display:none;
-}
-#navigation li:hover div,
-#navigation li.hover div {display:block;}
-#navigation div ul {
-	padding:5px;
-	margin:0;
-	width:145px;
-	list-style:none;
-	z-index: 110;
-}
-#navigation div ul li {
-	float:left;
-	position:relative;
-	z-index:999;
-}
-#navigation div ul a {
-	float:none;
-	color:#000;
-	font-size:11px;
-	text-align:left;
-	display:block;
-	width:145px;
-	padding:4px 4px 4px 10px;
-	border-bottom:1px solid #d6d6d6;
-	background:#ececec;
-}
-
-
-
-#navigation div ul a:hover {
-	color:#fff;
-	background:#105786;
-}
-
-/* Download tables */
-/*
-table.download-table > thead > th {
-  background: #CEF;
-}
-
-table.download-table {
-  width: 100%;
-  border: 0;
-  background: #DDD;
-  border-spacing: 1px;
-}
-
-table.download-table > thead > th + th {
-  width: 80%;
-}
-
-table.download-table > thead > th {
-  padding: 2px 5px;
-  background: #CEF;
-}
-
-table.download-table > tbody > tr > td {
-  background: #FAFAFA;
-  vertical-align: top;
-}
-
-table.download-table > tbody > tr > td:first-child {
-  vertical-align: middle;
-}
-
-table.download-table > tbody > tr > td {
-   padding: 5px;
-}
- */
-table.download-table th {
-  background: #CEF;
-}
-
-table.download-table {
-  width: 100%;
-  border: 0;
-  background: #DDD;
-  border-spacing: 1px;
-}
-
-table.download-table th + th {
-  width: 80%;
-}
-
-table.download-table th {
-  padding: 2px 5px;
-  background: #CEF;
-}
-
-table.download-table td {
-  background: #FAFAFA;
-  vertical-align: top;
-}
-
-table.download-table  td:first-child {
-  vertical-align: middle;
-}
-
-table.download-table  td {
-   padding: 5px;
-}
-code {
-  border: 1px solid #ddd;
-  background: #eee;
-  line-height: 30px;
-  padding: 3px;
-}
-
-.discover-image {
-  bottom: -50px;
-  left: -50px;
-  position: relative;
-}
-
-.thumbnails li {
-    list-style: none;
-    /*display: table-cell;*/
-    opacity: 0.5;
-}
-
-.thumbnails li img {
-    outline: 4px solid;
-    margin: 0.5em;
-}
-
-.thumbnails li:hover {
-    opacity: 1;
-}
-
diff --git a/www/data/.DS_Store b/www/data/.DS_Store
deleted file mode 100755
index 5008ddfcf53c02e82d7eee2e57c38e5672ef89f6..0000000000000000000000000000000000000000
Binary files a/www/data/.DS_Store and /dev/null differ
diff --git a/www/data/Picasa.ini b/www/data/Picasa.ini
deleted file mode 100644
index 64b46d1da36fc687770329f8c3f57e8400a621e6..0000000000000000000000000000000000000000
--- a/www/data/Picasa.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-
-[Picasa]
-name=data
diff --git a/www/data/bot_bg_a.psd b/www/data/bot_bg_a.psd
deleted file mode 100755
index 6d1003ffb60d7bec269a8d00c4795d8938bf43d8..0000000000000000000000000000000000000000
Binary files a/www/data/bot_bg_a.psd and /dev/null differ
diff --git a/www/data/bot_bg_b.psd b/www/data/bot_bg_b.psd
deleted file mode 100755
index 4f7c178d9f0752cffe8617d2c5c9a457db14137e..0000000000000000000000000000000000000000
Binary files a/www/data/bot_bg_b.psd and /dev/null differ
diff --git a/www/data/cadre_rounded.psd b/www/data/cadre_rounded.psd
deleted file mode 100755
index 17b5de4559d8d2c36652efee84f7c4e28d6e76b6..0000000000000000000000000000000000000000
Binary files a/www/data/cadre_rounded.psd and /dev/null differ
diff --git a/www/data/comm.psd b/www/data/comm.psd
deleted file mode 100755
index b725dacb2537dcc32ef74b99eaf9c119425d9a2d..0000000000000000000000000000000000000000
Binary files a/www/data/comm.psd and /dev/null differ
diff --git a/www/data/download_icon.psd b/www/data/download_icon.psd
deleted file mode 100755
index 9301e53450a52e442c81a09d758f31f6b91c8979..0000000000000000000000000000000000000000
Binary files a/www/data/download_icon.psd and /dev/null differ
diff --git a/www/data/logo.psd b/www/data/logo.psd
deleted file mode 100755
index 8952f7556331694fdaf31cd396a1be1a4a07597c..0000000000000000000000000000000000000000
Binary files a/www/data/logo.psd and /dev/null differ
diff --git a/www/data/sflPhone_a.psd b/www/data/sflPhone_a.psd
deleted file mode 100755
index 257ac5cf0517d2b9b0f943fa5e5be4620edffb6b..0000000000000000000000000000000000000000
Binary files a/www/data/sflPhone_a.psd and /dev/null differ
diff --git a/www/download.php b/www/download.php
deleted file mode 100644
index 986eda0ef830c505093d36c745f6e00fe20ff994..0000000000000000000000000000000000000000
--- a/www/download.php
+++ /dev/null
@@ -1,120 +0,0 @@
-<?php
-$name = 'download';
-$javascript = array('jquery','animated-menu');
-
-include_once('utils.php');
-
-include('include/header.php');
-
-?>
-    <div id="content">
-      <h1 class="title alignLeft fntBleu" style="margin:10px; padding:10px;">Binaries download</h1>
-      <h4 class= "alignLeft fntBleu" style="margin:10px; padding:10px;">
-      Latest version: <? echo $GLOBALS['SFLPHONE_LATEST_VERSION']; ?>
-      <br>Release Date: 
-      <? echo $GLOBALS['SFLPHONE_RELEASE_DATE']; ?>
-      </h4>
-      <table class="download-table" >
-        <thead>
-          <th>System</th>
-          <th>Notes</th>
-          <th>Maintainer</th>
-        </thead>
-        <tbody>
-          <tr>
-            <td><img class="logo" src="img/logos/small/ubuntu.png" alt="Ubuntu downloads" /></td>
-            <td>
-            <!-- UBUNTU SECTION -->
-                <ul style="margin:10px; padding:5px;">
-                    <li>Ubuntu 9.04 "Jaunty Jackalope" 
-                        <a href="http://sflphone.org/debian/dists/jaunty/universe/binary-i386/sflphone_0.9.3-0ubuntu2_i386.deb">i386</a> 
-                    </li>
-                
-
-                    <li>Ubuntu 8.10 "Intrepid Ibex" 
-                        <a href="http://sflphone.org/debian/dists/intrepid/universe/binary-i386/sflphone_0.9.3-0ubuntu3_i386.deb">i386</a> 
-                        | <a href="http://sflphone.org/debian/dists/intrepid/universe/binary-amd64/sflphone_0.9.3-0ubuntu3_amd64.deb" >amd64</a>
-                    </li>
-                
-                    <li>Ubuntu 8.04 LTS "Hardy Heron" 
-                        <a href="http://sflphone.org/debian/dists/hardy/universe/binary-i386/sflphone_0.9.3-0ubuntu3_i386.deb" >i386</a> 
-                        | <a href="http://sflphone.org/debian/dists/hardy/universe/binary-amd64/sflphone_0.9.3-0ubuntu3_amd64.deb" >amd64</a>
-                    </li>
-                </ul>
-                <i>Before installing the latest version 0.9.3-3, please remove the following packages: <b>dbus-c++-1</b> and <b>sflphone-iax2</b>. 
-                    The both libraries are now provided with sflphone package.</i>
-              <br/><br/>
-              <a href="http://projects.savoirfairelinux.net/wiki/sflphone/DebianPackaging">add our repository</a>
-               | <a href="http://projects.savoirfairelinux.net/wiki/sflphone/093">release note and changelog</a>  
-            </td>
-            <td><a href="mailto:emmanuel.milou@savoirfairelinux.com">Emmanuel Milou</a></td>
-          </tr>
-
-        <!-- END UBUNTU SECTION -->
-
-        <!-- FEDORA SECTION -->
-          <tr>
-            <td><img class="logo" src="img/logos/small/fedora.png" alt="Fedora downloads" /></td>
-            <td>
-            <ul style="margin:10px; padding:5px;">
-              <li>
-              Fedora 9 "Sulphur" <a href="http://sflphone.org/downloads/sflphone-0.9.2-2.i386.rpm" >i386</a>
-              </li>
-              <li>
-              Fedora 10 : <i>Soon</i><br />
-              </li>
-            </ul>
-              <br/>
-              <a href="http://projects.savoirfairelinux.net/wiki/sflphone/YumRepository">add our repository</a> 
-               | <a href="http://projects.savoirfairelinux.net/wiki/sflphone/093">release note and changelog</a>  
-            </td>
-            <td><a href="mailto:emmanuel.milou@savoirfairelinux.com">Emmanuel Milou</a></td>
-          </tr>
-          <tr>
-            <td><img  class="logo"src="img/logos/small/suse.png" alt="Suse downloads" /></td>
-            <td>
-            <ul style="margin:10px; padding:5px;">
-                <li>OpenSUSE 11: <a href="http://sflphone.org/yum/suse/11/i586/sflphone-0.9.3-2suse.i586.rpm">i586</a>
-                </li>
-            </ul>
-            <br/>
-              <a href="http://projects.savoirfairelinux.net/wiki/sflphone/YumRepository">add our repository</a>
-               | <a href="http://projects.savoirfairelinux.net/wiki/sflphone/093">release note and changelog</a>  
-            </td>
-            <td><a href="mailto:emmanuel.milou@savoirfairelinux.com">Emmanuel Milou</a></td>
-          </tr>
-            <tr>
-            <td><img class="logo" src="img/logos/small/debian.png" alt="Debian downloads" /></td>
-            <td>
-              <i>Soon available</i>  </td>
-            <td></td>
-          </tr>
-
-        </tbody>
-      </table>
-      <h1 class="title alignLeft fntBleu"  style="margin:10px; padding:10px;">Sources download</h1>
-      <table class="download-table" >
-        <thead>
-          <th>Sources</th> 
-          <th>Notes</th>
-        </thead>
-        <tbody>
-          <tr>
-            <td><a href="http://projects.savoirfairelinux.net/attachments/download/98/sflphone-0.9.3.tar.gz">sflphone_0.9.3.orig.tar.gz</a></td>
-            <td>Compressed code source</td>
-          </tr>
-          <tr>
-            <td><a href="http://projects.savoirfairelinux.net/repositories/show/sflphone">GIT Repository</a></td>
-            <td>Fetch the latest code with git: <br/><i>git clone http://sflphone.org/git/sflphone.git</i></td>
-          </tr>
-          <tr>
-            <td>apt-get</td>
-            <td><i>apt-get source sflphone</i></td>
-          </tr>
-        </tbody>
-      </table>
-    </div>
-
-<?php
-
-include('include/footer.php');
diff --git a/www/favicon.ico b/www/favicon.ico
deleted file mode 100644
index db2b83c36d7dee6f3e48b16c55ac2501c20fe24c..0000000000000000000000000000000000000000
Binary files a/www/favicon.ico and /dev/null differ
diff --git a/www/features.php b/www/features.php
deleted file mode 100644
index 14c4de67e0b92aeea3da07c0183356c630a54b0e..0000000000000000000000000000000000000000
--- a/www/features.php
+++ /dev/null
@@ -1,64 +0,0 @@
-<?php
-$name = 'feature';
-$javascript = array('jquery','animated-menu');
-include('include/header.php');
-
-?>
-            
-<div id="content">
-    <table class="pourcentWidth fonctionTabs" cellpadding="0" cellspacing="0">
-        <tbody valign="top">
-            <tr>
-                <td>
-                    <img src="img/package.jpg" width="124" height="93" alt=""  />
-                </td>
-                <td>
-                    <p class="title alignLeft fntBleu">
-                    Great User Experience
-                    </p>
-                    <p>
-                    SFLphone now fully supports 
-                    <a href="http://www.pulseaudio.org">PulseAudio</a>  
-                    sound server so you could experience the great possibilities it offers (sound mixing, per application volume control, ...).
-                    <br/> 
-                    The GTK+ graphical user interface provides you an intuitive and easy way to phone, and, thanks to the integration of the GNOME desktop notification, you will never miss a call.
-                    <br/>
-                    </p>
-                </td>
-            </tr>
-            <tr>
-                <td>
-                    <img src="img/robust.jpg" width="120" height="140" alt="" />
-                </td>
-                <td>
-                    <p class="title alignLeft fntBleu">
-                    Enterprise-class Features
-                    </p>
-                    <p>
-                    SFLphone provides a great audio quality, supports G711a, G711u, GSM and speex audio codecs, audio conversation recording, voicemail notification, non-persistent call history and an account assistant manager.
-                    <br/>
-                    More than a simple softphone, SFLphone supports advanced enterprise-class call features: unlimited number of calls, call transfer and on/off hold option. 
-                    <br/>
-                    Connect it to 
-                    <a href="http://www.asterisk.org">Asterisk</a> 
-                    PBX to get the best of it. 
-                    <br/>
-                    </p>
-                </td>
-            </tr>
-            <tr>
-                <td>
-                </td>
-                <td>
-                    <br/><br/>
-                    <a href="http://projects.savoirfairelinux.net/wiki/sflphone/AboutSFLphone#Features">complete list of features ...</a> | 
-                    <a href="download.php"> download</a>  
-                </td>
-            </tr>
-        </tbody>
-    </table>
-</div>
-            
-<?php
-
-include('include/footer.php');
diff --git a/www/img/.DS_Store b/www/img/.DS_Store
deleted file mode 100755
index 5008ddfcf53c02e82d7eee2e57c38e5672ef89f6..0000000000000000000000000000000000000000
Binary files a/www/img/.DS_Store and /dev/null differ
diff --git a/www/img/Picasa.ini b/www/img/Picasa.ini
deleted file mode 100644
index 6f363522307a33a891a7efba8536d37668a30376..0000000000000000000000000000000000000000
--- a/www/img/Picasa.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-
-[Picasa]
-name=img
diff --git a/www/img/bot_bg_a.jpg b/www/img/bot_bg_a.jpg
deleted file mode 100755
index d4e2c1f4a6302f94d40438e72a21264a2946236f..0000000000000000000000000000000000000000
Binary files a/www/img/bot_bg_a.jpg and /dev/null differ
diff --git a/www/img/bot_bg_b.jpg b/www/img/bot_bg_b.jpg
deleted file mode 100755
index a8e79c0588daa4fa38d2c60dbe28a983627d5f58..0000000000000000000000000000000000000000
Binary files a/www/img/bot_bg_b.jpg and /dev/null differ
diff --git a/www/img/cadre_rounded.png b/www/img/cadre_rounded.png
deleted file mode 100755
index 0571a882f58c0c9a5aa451792539a75956630f16..0000000000000000000000000000000000000000
Binary files a/www/img/cadre_rounded.png and /dev/null differ
diff --git a/www/img/comm.jpg b/www/img/comm.jpg
deleted file mode 100755
index 34dc37ee9a89583fe0a2baeeecf116cec26d2ee4..0000000000000000000000000000000000000000
Binary files a/www/img/comm.jpg and /dev/null differ
diff --git a/www/img/content_bg.jpg b/www/img/content_bg.jpg
deleted file mode 100755
index 3eac006940265f6402afe7298e9d66b4b14f8d4d..0000000000000000000000000000000000000000
Binary files a/www/img/content_bg.jpg and /dev/null differ
diff --git a/www/img/corner_a.png b/www/img/corner_a.png
deleted file mode 100755
index 625806dbfc4d47a16203e6268c3dac5b7d77d58a..0000000000000000000000000000000000000000
Binary files a/www/img/corner_a.png and /dev/null differ
diff --git a/www/img/corner_b.png b/www/img/corner_b.png
deleted file mode 100755
index 4dcafd02f7980b70693b2b3327b33ce09a34ea2a..0000000000000000000000000000000000000000
Binary files a/www/img/corner_b.png and /dev/null differ
diff --git a/www/img/download-up.png b/www/img/download-up.png
deleted file mode 100644
index f319ae842ea08fe0ac9858aaf966021197921805..0000000000000000000000000000000000000000
Binary files a/www/img/download-up.png and /dev/null differ
diff --git a/www/img/download.png b/www/img/download.png
deleted file mode 100644
index 242d4a24513d8e165108b260dd0ee4ac7ba3f817..0000000000000000000000000000000000000000
Binary files a/www/img/download.png and /dev/null differ
diff --git a/www/img/download_icon.png b/www/img/download_icon.png
deleted file mode 100755
index 3fcd9f0a44ae6fb063f060678a22a9d249dd2498..0000000000000000000000000000000000000000
Binary files a/www/img/download_icon.png and /dev/null differ
diff --git a/www/img/face.jpg b/www/img/face.jpg
deleted file mode 100755
index 1dd5e419a92fd9b47e8c4145f437b86d2e9759fa..0000000000000000000000000000000000000000
Binary files a/www/img/face.jpg and /dev/null differ
diff --git a/www/img/gallery/account-add.png b/www/img/gallery/account-add.png
deleted file mode 100644
index 6740507261ae070a456a38925e1a0fbe0d74847a..0000000000000000000000000000000000000000
Binary files a/www/img/gallery/account-add.png and /dev/null differ
diff --git a/www/img/gallery/account-edit.png b/www/img/gallery/account-edit.png
deleted file mode 100644
index 006880381306effaf01954f9115a705bba9f2fb8..0000000000000000000000000000000000000000
Binary files a/www/img/gallery/account-edit.png and /dev/null differ
diff --git a/www/img/gallery/assistant-1.png b/www/img/gallery/assistant-1.png
deleted file mode 100644
index ef66cca9c39f56ef7c9533649fbe34596b31de26..0000000000000000000000000000000000000000
Binary files a/www/img/gallery/assistant-1.png and /dev/null differ
diff --git a/www/img/gallery/assistant-2-.png b/www/img/gallery/assistant-2-.png
deleted file mode 100644
index 4d6c1207e5919cd7b28c9348372e0dc06f381aef..0000000000000000000000000000000000000000
Binary files a/www/img/gallery/assistant-2-.png and /dev/null differ
diff --git a/www/img/gallery/assistant-3-.png b/www/img/gallery/assistant-3-.png
deleted file mode 100644
index 48b5406ecf00fb546b45c96dd2dff4414e1b07f2..0000000000000000000000000000000000000000
Binary files a/www/img/gallery/assistant-3-.png and /dev/null differ
diff --git a/www/img/gallery/assistant-4-.png b/www/img/gallery/assistant-4-.png
deleted file mode 100644
index 3399a8b73c6022638c326227256004de2365ea2c..0000000000000000000000000000000000000000
Binary files a/www/img/gallery/assistant-4-.png and /dev/null differ
diff --git a/www/img/gallery/assistant-5-.png b/www/img/gallery/assistant-5-.png
deleted file mode 100644
index 846dad53a19ad0a04aebf0ca69b9a2bb47b033b8..0000000000000000000000000000000000000000
Binary files a/www/img/gallery/assistant-5-.png and /dev/null differ
diff --git a/www/img/gallery/edit-account.png b/www/img/gallery/edit-account.png
deleted file mode 100644
index 240a3c0bfb15ba4675b437b8a19dc876a42c6381..0000000000000000000000000000000000000000
Binary files a/www/img/gallery/edit-account.png and /dev/null differ
diff --git a/www/img/gallery/edit-pref-audio.png b/www/img/gallery/edit-pref-audio.png
deleted file mode 100644
index 18efedc7dc4c9e3dd7e84a6767262255ef6e428a..0000000000000000000000000000000000000000
Binary files a/www/img/gallery/edit-pref-audio.png and /dev/null differ
diff --git a/www/img/gallery/edit-pref-gen.png b/www/img/gallery/edit-pref-gen.png
deleted file mode 100644
index 793c46d92325411d6600b3b254df75dcc233a534..0000000000000000000000000000000000000000
Binary files a/www/img/gallery/edit-pref-gen.png and /dev/null differ
diff --git a/www/img/gallery/edit-pref-rec.png b/www/img/gallery/edit-pref-rec.png
deleted file mode 100644
index 3d66726b22968946d010e9c67e67e1b620c452a8..0000000000000000000000000000000000000000
Binary files a/www/img/gallery/edit-pref-rec.png and /dev/null differ
diff --git a/www/img/gallery/incoming-call.png b/www/img/gallery/incoming-call.png
deleted file mode 100644
index 6fed4adab0b909c783599fa130bacdbc9c1591e6..0000000000000000000000000000000000000000
Binary files a/www/img/gallery/incoming-call.png and /dev/null differ
diff --git a/www/img/gallery/main-edit.png b/www/img/gallery/main-edit.png
deleted file mode 100644
index f84684c9dde1c064074fbbb001f4626e954cee52..0000000000000000000000000000000000000000
Binary files a/www/img/gallery/main-edit.png and /dev/null differ
diff --git a/www/img/gallery/main-help.png b/www/img/gallery/main-help.png
deleted file mode 100644
index 0b48555e4b32686e4760bcf35af6d1279140630a..0000000000000000000000000000000000000000
Binary files a/www/img/gallery/main-help.png and /dev/null differ
diff --git a/www/img/gallery/main-history-opt.png b/www/img/gallery/main-history-opt.png
deleted file mode 100644
index cd1180fe44480ad48152aec99eac2afed34842d7..0000000000000000000000000000000000000000
Binary files a/www/img/gallery/main-history-opt.png and /dev/null differ
diff --git a/www/img/gallery/main-history.png b/www/img/gallery/main-history.png
deleted file mode 100644
index 703b3d4d97258694ef078346475ec8e217da7099..0000000000000000000000000000000000000000
Binary files a/www/img/gallery/main-history.png and /dev/null differ
diff --git a/www/img/gallery/main-transfer.png b/www/img/gallery/main-transfer.png
deleted file mode 100644
index 4cede2ac37f934685c2ab24de505480a30b7e808..0000000000000000000000000000000000000000
Binary files a/www/img/gallery/main-transfer.png and /dev/null differ
diff --git a/www/img/gallery/main-view.png b/www/img/gallery/main-view.png
deleted file mode 100644
index 8aab33216591bbce79d9c5b8e0acd3d7c2f171da..0000000000000000000000000000000000000000
Binary files a/www/img/gallery/main-view.png and /dev/null differ
diff --git a/www/img/gallery/thumbs/account-add.png b/www/img/gallery/thumbs/account-add.png
deleted file mode 100644
index 3f912d6a8894ce4cb6dba0b8d9005da068b2e2aa..0000000000000000000000000000000000000000
Binary files a/www/img/gallery/thumbs/account-add.png and /dev/null differ
diff --git a/www/img/gallery/thumbs/account-edit.png b/www/img/gallery/thumbs/account-edit.png
deleted file mode 100644
index b59a120b5aa70ac7278bf0b25eebb29ebcc0bdf7..0000000000000000000000000000000000000000
Binary files a/www/img/gallery/thumbs/account-edit.png and /dev/null differ
diff --git a/www/img/gallery/thumbs/assistant-1.png b/www/img/gallery/thumbs/assistant-1.png
deleted file mode 100644
index 21756a97adbe157810e9427e1e6b29977e38235c..0000000000000000000000000000000000000000
Binary files a/www/img/gallery/thumbs/assistant-1.png and /dev/null differ
diff --git a/www/img/gallery/thumbs/assistant-2-.png b/www/img/gallery/thumbs/assistant-2-.png
deleted file mode 100644
index 36a034660fb6544947bbe98b00bb0c811f825f38..0000000000000000000000000000000000000000
Binary files a/www/img/gallery/thumbs/assistant-2-.png and /dev/null differ
diff --git a/www/img/gallery/thumbs/assistant-3-.png b/www/img/gallery/thumbs/assistant-3-.png
deleted file mode 100644
index e32bed15c015fd890d830ffca5a6e34904f773e9..0000000000000000000000000000000000000000
Binary files a/www/img/gallery/thumbs/assistant-3-.png and /dev/null differ
diff --git a/www/img/gallery/thumbs/assistant-4-.png b/www/img/gallery/thumbs/assistant-4-.png
deleted file mode 100644
index fcc025100f989c77123f41b864f4faf2fbcc8cbb..0000000000000000000000000000000000000000
Binary files a/www/img/gallery/thumbs/assistant-4-.png and /dev/null differ
diff --git a/www/img/gallery/thumbs/assistant-5-.png b/www/img/gallery/thumbs/assistant-5-.png
deleted file mode 100644
index b9fc5894d5893fb95d10876e61b1a75c15dfe0ff..0000000000000000000000000000000000000000
Binary files a/www/img/gallery/thumbs/assistant-5-.png and /dev/null differ
diff --git a/www/img/gallery/thumbs/edit-account.png b/www/img/gallery/thumbs/edit-account.png
deleted file mode 100644
index 75a19d1de98af5a94ae0a07aad9d1eff7495a3d9..0000000000000000000000000000000000000000
Binary files a/www/img/gallery/thumbs/edit-account.png and /dev/null differ
diff --git a/www/img/gallery/thumbs/edit-pref-audio.png b/www/img/gallery/thumbs/edit-pref-audio.png
deleted file mode 100644
index 446ae4e8bf7471b8ae758e5ff6de7fe7ea420245..0000000000000000000000000000000000000000
Binary files a/www/img/gallery/thumbs/edit-pref-audio.png and /dev/null differ
diff --git a/www/img/gallery/thumbs/edit-pref-gen.png b/www/img/gallery/thumbs/edit-pref-gen.png
deleted file mode 100644
index ab9c0a350ef4f69a3b946aab653bfece9a9b6c60..0000000000000000000000000000000000000000
Binary files a/www/img/gallery/thumbs/edit-pref-gen.png and /dev/null differ
diff --git a/www/img/gallery/thumbs/edit-pref-rec.png b/www/img/gallery/thumbs/edit-pref-rec.png
deleted file mode 100644
index 1296f5e8baf15f5ccfdd41baf8d02ae4ef1d041e..0000000000000000000000000000000000000000
Binary files a/www/img/gallery/thumbs/edit-pref-rec.png and /dev/null differ
diff --git a/www/img/gallery/thumbs/incoming-call.png b/www/img/gallery/thumbs/incoming-call.png
deleted file mode 100644
index 8f9efd9206ed450db2b443379c42d0babd73cf05..0000000000000000000000000000000000000000
Binary files a/www/img/gallery/thumbs/incoming-call.png and /dev/null differ
diff --git a/www/img/gallery/thumbs/main-edit.png b/www/img/gallery/thumbs/main-edit.png
deleted file mode 100644
index 142a8c691e21d524668815971e92cb4ad5120524..0000000000000000000000000000000000000000
Binary files a/www/img/gallery/thumbs/main-edit.png and /dev/null differ
diff --git a/www/img/gallery/thumbs/main-help.png b/www/img/gallery/thumbs/main-help.png
deleted file mode 100644
index 3902c63c84ee7a588791c47fe98bb7a648417e82..0000000000000000000000000000000000000000
Binary files a/www/img/gallery/thumbs/main-help.png and /dev/null differ
diff --git a/www/img/gallery/thumbs/main-history-opt.png b/www/img/gallery/thumbs/main-history-opt.png
deleted file mode 100644
index 3886a85fc05ef8a6d54bce4b3483d674bb0f8e12..0000000000000000000000000000000000000000
Binary files a/www/img/gallery/thumbs/main-history-opt.png and /dev/null differ
diff --git a/www/img/gallery/thumbs/main-history.png b/www/img/gallery/thumbs/main-history.png
deleted file mode 100644
index 27d894906f1f1d4435f092513b72d864e90a7551..0000000000000000000000000000000000000000
Binary files a/www/img/gallery/thumbs/main-history.png and /dev/null differ
diff --git a/www/img/gallery/thumbs/main-transfer.png b/www/img/gallery/thumbs/main-transfer.png
deleted file mode 100644
index ad2891394a94e023cf588408002136e8d8e6f6b4..0000000000000000000000000000000000000000
Binary files a/www/img/gallery/thumbs/main-transfer.png and /dev/null differ
diff --git a/www/img/gallery/thumbs/main-view.png b/www/img/gallery/thumbs/main-view.png
deleted file mode 100644
index 1ce26fd1513842db5907b0be8974c6a88b3b17c5..0000000000000000000000000000000000000000
Binary files a/www/img/gallery/thumbs/main-view.png and /dev/null differ
diff --git a/www/img/head_bg_a.jpg b/www/img/head_bg_a.jpg
deleted file mode 100755
index be0248958abbc86fc5d263493511bd3358b6dc4d..0000000000000000000000000000000000000000
Binary files a/www/img/head_bg_a.jpg and /dev/null differ
diff --git a/www/img/head_bg_b.jpg b/www/img/head_bg_b.jpg
deleted file mode 100755
index e693f5d88f57da24431de8e00ed4f8d13460c025..0000000000000000000000000000000000000000
Binary files a/www/img/head_bg_b.jpg and /dev/null differ
diff --git a/www/img/icon.jpg b/www/img/icon.jpg
deleted file mode 100755
index 5c1463da719f3bd866d17df7d1c70428e943583d..0000000000000000000000000000000000000000
Binary files a/www/img/icon.jpg and /dev/null differ
diff --git a/www/img/level_2.gif b/www/img/level_2.gif
deleted file mode 100755
index 200269edc708aa0705aa3771343e85b0f53f1504..0000000000000000000000000000000000000000
Binary files a/www/img/level_2.gif and /dev/null differ
diff --git a/www/img/logos/custom/gpl3.png b/www/img/logos/custom/gpl3.png
deleted file mode 100644
index 1643642eba04468cdd8beb43ea0cdf23c380d664..0000000000000000000000000000000000000000
Binary files a/www/img/logos/custom/gpl3.png and /dev/null differ
diff --git a/www/img/logos/medium/Picasa.ini b/www/img/logos/medium/Picasa.ini
deleted file mode 100644
index d78d28d3bd4b90171ba1f1dfdfcb8a0e15dca622..0000000000000000000000000000000000000000
--- a/www/img/logos/medium/Picasa.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-
-[Picasa]
-name=medium
diff --git a/www/img/logos/medium/debian.png b/www/img/logos/medium/debian.png
deleted file mode 100755
index 69b8763c1fe21b84467db21d1bfeb2dc6d7746ee..0000000000000000000000000000000000000000
Binary files a/www/img/logos/medium/debian.png and /dev/null differ
diff --git a/www/img/logos/medium/fedora.png b/www/img/logos/medium/fedora.png
deleted file mode 100755
index b09f66c5201de1bb4c7db56714b9963001fd6b74..0000000000000000000000000000000000000000
Binary files a/www/img/logos/medium/fedora.png and /dev/null differ
diff --git a/www/img/logos/medium/suse.png b/www/img/logos/medium/suse.png
deleted file mode 100755
index 087b59fe18678eaf154c371da46e33d32f39aa36..0000000000000000000000000000000000000000
Binary files a/www/img/logos/medium/suse.png and /dev/null differ
diff --git a/www/img/logos/medium/ubuntu.png b/www/img/logos/medium/ubuntu.png
deleted file mode 100755
index abb622e6ed8e3b4099f873fe2bd19a61e27575cf..0000000000000000000000000000000000000000
Binary files a/www/img/logos/medium/ubuntu.png and /dev/null differ
diff --git a/www/img/logos/small/Picasa.ini b/www/img/logos/small/Picasa.ini
deleted file mode 100644
index 052edae564aec30b9d6a76cdea67211d9b18401b..0000000000000000000000000000000000000000
--- a/www/img/logos/small/Picasa.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-
-[Picasa]
-name=small
diff --git a/www/img/logos/small/debian.png b/www/img/logos/small/debian.png
deleted file mode 100755
index 69b8763c1fe21b84467db21d1bfeb2dc6d7746ee..0000000000000000000000000000000000000000
Binary files a/www/img/logos/small/debian.png and /dev/null differ
diff --git a/www/img/logos/small/fedora.png b/www/img/logos/small/fedora.png
deleted file mode 100755
index b09f66c5201de1bb4c7db56714b9963001fd6b74..0000000000000000000000000000000000000000
Binary files a/www/img/logos/small/fedora.png and /dev/null differ
diff --git a/www/img/logos/small/suse.png b/www/img/logos/small/suse.png
deleted file mode 100755
index 087b59fe18678eaf154c371da46e33d32f39aa36..0000000000000000000000000000000000000000
Binary files a/www/img/logos/small/suse.png and /dev/null differ
diff --git a/www/img/logos/small/ubuntu.png b/www/img/logos/small/ubuntu.png
deleted file mode 100755
index abb622e6ed8e3b4099f873fe2bd19a61e27575cf..0000000000000000000000000000000000000000
Binary files a/www/img/logos/small/ubuntu.png and /dev/null differ
diff --git a/www/img/map-ottawa.png b/www/img/map-ottawa.png
deleted file mode 100755
index 2e53f35ea56c9d376cff0045b209d8bdd63ebd60..0000000000000000000000000000000000000000
Binary files a/www/img/map-ottawa.png and /dev/null differ
diff --git a/www/img/mtl.png b/www/img/mtl.png
deleted file mode 100755
index 3dd36deeadfbd3e21f549c91466fa7e850e3eeae..0000000000000000000000000000000000000000
Binary files a/www/img/mtl.png and /dev/null differ
diff --git a/www/img/ott.png b/www/img/ott.png
deleted file mode 100644
index d8241e01c4db5bd59a3d3c1a8444217bfe5197fb..0000000000000000000000000000000000000000
Binary files a/www/img/ott.png and /dev/null differ
diff --git a/www/img/package.jpg b/www/img/package.jpg
deleted file mode 100755
index 0a628b5f9204576c168a9c4af66895589775d038..0000000000000000000000000000000000000000
Binary files a/www/img/package.jpg and /dev/null differ
diff --git a/www/img/puces.png b/www/img/puces.png
deleted file mode 100755
index aaf75203ab03962eb676c3c49a3c30de0f7590c8..0000000000000000000000000000000000000000
Binary files a/www/img/puces.png and /dev/null differ
diff --git a/www/img/qc.png b/www/img/qc.png
deleted file mode 100755
index 7a9c2d9d67a058b6db6ccb181708d6bd51b76c4d..0000000000000000000000000000000000000000
Binary files a/www/img/qc.png and /dev/null differ
diff --git a/www/img/robust.jpg b/www/img/robust.jpg
deleted file mode 100755
index d43702731e297d50def75a655822d78e3707da53..0000000000000000000000000000000000000000
Binary files a/www/img/robust.jpg and /dev/null differ
diff --git a/www/img/sflPhone_a.png b/www/img/sflPhone_a.png
deleted file mode 100755
index 72027907b4b196dd329b7c709fd6159bd0f984db..0000000000000000000000000000000000000000
Binary files a/www/img/sflPhone_a.png and /dev/null differ
diff --git a/www/img/sflPhone_b.png b/www/img/sflPhone_b.png
deleted file mode 100755
index ad740e20889b9c411542cb00de9693435d7df1df..0000000000000000000000000000000000000000
Binary files a/www/img/sflPhone_b.png and /dev/null differ
diff --git a/www/img/slider/homepage.png b/www/img/slider/homepage.png
deleted file mode 100644
index 8974efa5b8ff00b3677ec2c389e4fa3983b205ec..0000000000000000000000000000000000000000
Binary files a/www/img/slider/homepage.png and /dev/null differ
diff --git a/www/img/slider/lady-discover.jpg b/www/img/slider/lady-discover.jpg
deleted file mode 100644
index 0058e469cd7049c45581da7ef6017357e1e47307..0000000000000000000000000000000000000000
Binary files a/www/img/slider/lady-discover.jpg and /dev/null differ
diff --git a/www/img/slider/lady-wise.jpg b/www/img/slider/lady-wise.jpg
deleted file mode 100644
index e71acfdd83af8051ad3dd20c668bd2fd2f27f5f1..0000000000000000000000000000000000000000
Binary files a/www/img/slider/lady-wise.jpg and /dev/null differ
diff --git a/www/img/slider/mrbad.jpg b/www/img/slider/mrbad.jpg
deleted file mode 100644
index 6cd63f5608a030284447aa7cb58cb38cf40f2b44..0000000000000000000000000000000000000000
Binary files a/www/img/slider/mrbad.jpg and /dev/null differ
diff --git a/www/img/switch_B.png b/www/img/switch_B.png
deleted file mode 100755
index 6344ea7f5471fc001603695b4d7e366e9ae92a4e..0000000000000000000000000000000000000000
Binary files a/www/img/switch_B.png and /dev/null differ
diff --git a/www/img/switch_a.png b/www/img/switch_a.png
deleted file mode 100755
index cf5af6758a9c2d4ecf811c1d9aa44b4a94e9f2b5..0000000000000000000000000000000000000000
Binary files a/www/img/switch_a.png and /dev/null differ
diff --git a/www/include/footer.php b/www/include/footer.php
deleted file mode 100644
index 64f336dbbdf709a37c2548bdde281792c8e34893..0000000000000000000000000000000000000000
--- a/www/include/footer.php
+++ /dev/null
@@ -1,61 +0,0 @@
-
-            <div id="botDescr">
-                <p>We provide you for a free SIP/IAX account. Simply start up SFLphone and register to our Asterisk server.</p>
-            </div>
-            
-<!-- foot -->
-            <div id="foot">
-                <table class="footTabStyle" cellpadding="0" cellspacing="0">
-                    <tbody valign="top">
-                        <tr>
-                            <td class="leftfoot" style="padding:20px;"><img src="img/face.jpg" width="150" height="100" alt="" class="perso" /></td>
-                            <td class="rightfoot">        
-                            <div id="bottomLink">
-                                <div id="footer_nav">
-                                    <div class="footBlock">
-                                    <ul style="padding:15px;">
-                                        <li><a href="index.html">Home</a></li>
-                                        <li><a href="features.php">Features</a></li>
-                                        <li><a href="download.php">Download</a></li>
-                                            
-                                        <li><a href="http://projects.savoirfairelinux.net/wiki/sflphone">Wiki</a></li>
-                                        <li><a href="contact.php">Contact</a></li>
-                                        </ul>
-                                    </div>
-                                        
-                                    <div class="footBlock">
-                                        <ul>
-                                        <li>Technical support</li>
-                                        <li><a href="mailto:sflphone@lists.savoirfairelinux.net">sflphone@lists.savoirfairelinux.net</a></li>
-                                        <li>Commercial Support</li>
-                                        <li><a href="mailto:support@savoirfairelinux.com">support@savoirfairelinux.com</a></li>
-                                        <li>General Information</li>
-                                        <li><a href="mailto:contact@savoirfairelinux.com">contact@savoirfairelinux.com</a></li>
-                                        <br>
-                                        <li>1-877-SFLINUX (735-4689)</li>
-                                        </ul>
-                                    </div>
-                                    <div class="rightfootBlock">
-                                        <ul>
-                                        <li>
-                                    		© Savoir-Faire Linux Inc 2009<img src="img/logos/custom/gpl3.png" /></li>
-                                        </ul>
-                                    </div>
-                                    <div class="clear">&nbsp;
-                                    </div>
-                                </div>
-                            </div>
-                            </td>
-                        </tr>
-                    </tbody>
-                </table>
-            </div>
-            
-        </div>
-        <div id="bottomPage">
-         	<!--//Background image -->
-        </div>
-    </div>
-</body>
-</html>
-
diff --git a/www/include/header.php b/www/include/header.php
deleted file mode 100644
index 636721174ee9340582082c0be5d0be5315d1306a..0000000000000000000000000000000000000000
--- a/www/include/header.php
+++ /dev/null
@@ -1,62 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-
-<head>
-    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
-    <title>SFLphone - Official Website</title>
-    <link rel="stylesheet" type="text/css" id="style1" href="css/style1.css" />
-    <link rel="stylesheet" type="text/css"  href="css/s3Slider.css" media="screen"/>
-    <link rel="shortcut icon" href="favicon.ico" /> 
-    <!--  jquery  -->
-  <?php
-    //Inlucde javascript
-    $javascript = array_merge(array(),(array)$javascript);
-    foreach($javascript as $script){
-      echo "<script type='text/javascript' src='js/$script.js'></script>";
-    }
-    $css = array_merge(array(),(array)$css);
-    foreach($css as $style){
-      echo "<link rel='stylesheet' type='text/css' href='css/$style.css' />";
-    }
-  //<script type="text/javascript" src="js/jquery.js"></script>
-	//<script type="text/javascript" src="js/s3Slider.js"></script>
-	//<script type="text/javascript" src="js/script.js"> </script>
-	//<script type="text/javascript" src="js/animated-menu.js"></script>
-  ?>
-</head>
-
-<body>
-    <div id="header">
-        <!--//Background image -->
-    </div>
- 
-    <div id="global">
-
-        <div id="controller">
-        <!-- Taille fixe ou Dynamique -->
-
-        <!-- Nav -->
-        <table class="navTabs" cellpadding="0" cellspacing="0">
-            <tbody valign="top">
-                <tr>
-                    <td  class="option">
-                    <div id="option">
-                    </div>
-                </td>
-
-                <td  class="navigation">
-                    <div id="navigation">
-                        <div class="dynamic-nav" style="background: #CDCDCD;" >&nbsp;</div>
-                            <ul>
-                                <li <?php echo ($name == 'contact')?'class="active"':"" ?>><a href='contact.php'><span>Contact</span></a></li>
-                                <li <?php echo ($name == 'wiki')?'class="active"':"" ?>><a href='http://projects.savoirfairelinux.net/wiki/sflphone'><span>Wiki</span></a></li>
-                                <li <?php echo ($name == 'download')?'class="active"':"" ?>><a href='download.php'><span>Download</span></a></li>
-                                <li <?php echo ($name == 'screenshot')?'class="active"':"" ?>><a href='screenshot.php'><span>Screenshots</span></a></li>
-                                <li <?php echo ($name == 'feature')?'class="active"':"" ?>><a href='features.php'><span>Features</span></a></li>
-                                <li <?php echo ($name == 'home')?'class="active"':"" ?>><a href='index.php'><span>Home</span></a></li>
-                            </ul>
-                        </div>
-                </td>
-            </tr>
-        </tbody>
-    </table>
diff --git a/www/index.php b/www/index.php
deleted file mode 100644
index ae4af2b780dcb40e33d28cd7340f63ad33b261fa..0000000000000000000000000000000000000000
--- a/www/index.php
+++ /dev/null
@@ -1,73 +0,0 @@
-<?php
-$name = 'home';
-$javascript = array(
-                'jquery',/*'s3Slider','script',*/
-                'animated-menu'
-            );
-
-include_once('include/header.php');
-?>
-
-<div id="content">
-    <table class="pourcentWidth" cellpadding="0" cellspacing="0">
-        <tbody valign="top">
-            <tr>
-                <td id="index_td_gauche">
-                    <table class="tabsIndex" cellpadding="0" cellspacing="0">
-                        <tbody valign="top">
-                            <tr>
-                                <td>
-                                    <ul class="thumbnails">
-                                        <li><a href="/screenshot.php#img/gallery/main-view.png"><img class="thumb" src="img/gallery/thumbs/main-view.png" /></a></li>
-                                        <li><a href="/screenshot.php#img/gallery/main-history-opt.png"><img class="thumb" src="img/gallery/thumbs/main-history-opt.png" /></a></li>
-                                        <li><a href="/screenshot.php#img/gallery/main-transer.png"><img class="thumb" src="img/gallery/thumbs/main-transfer.png" /></a></li>
-                                        <!--<li><a href="/screenshot.php#img/gallery/incoming-call.png"><img class="thumb" src="img/gallery/thumbs/incoming-call.png" /></a></li>-->
-                                    </ul>
-                                </td>
-                                <td>
-                                    <ul class="fntBleu list" style="padding:10px;">
-                                        <li>SIP and IAX2 compatible softphone</li>
-                                        <li>Robust enterprise-class desktop phone for Linux</li>
-                                        <li>Provide support of unlimited number of calls, multi-accounts, call transfer and hold.</li>
-                                        <li>Enjoy perfect audio quality</li>
-                                        <li>Gnome integration</li>
-                                    </ul> 
-                                    <div class="float_it_middle">
-                                        <a href="download.php" ><img src="img/download_icon.png" width="61" height="68" alt=""/></a>
-                                    </div> 
-                                    <div class="float_it_middle">
-                                        <p class="highlight"><a href="download.php" >Download now!</a></p>
-                                    </div>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td>
-                                </td>
-                            </tr>
-                        </tbody>
-                    </table>  
-                </td>
-                <td id="index_td_separator">&nbsp;</td>
-                <td id="index_td_droite">
-                    <p class="title alignCenter fntBleu">
-                    Discover SFLphone	
-                    </p>
-                    <p>
-                    SFLphone is a SIP/IAX2 compatible softphone for Linux. 
-                    The SFLphone project's goal is to create a robust enterprise-class desktop phone. 
-                    While it can serve home users very well, it is designed with a hundred-calls-a-day receptionist in mind.
-                    <br/><br/>
-                    SFLphone is free software and is distributed under the <b>GNU General Public License version 3</b>. 
-                    It is developed by <a href="http://www.savoirfairelinux.com">Savoir-Faire Linux</a>, 
-                    a Canadian Linux consulting company, in partnership with the global community. 
-                    Savoir-Faire Linux provides to users easy-to-install packages for most of the main Linux distributions.  
-                    </p>
-                    <img class="discover-image" src="img/slider/lady-discover.jpg" />
-                </td>
-            </tr>
-        </tbody>
-    </table>
-</div>
-<?php
-include_once ('include/footer.php');
-?>
diff --git a/www/js/animated-menu.js b/www/js/animated-menu.js
deleted file mode 100644
index 714d12aa39bf847e2b544b0bfb4691410f339e83..0000000000000000000000000000000000000000
--- a/www/js/animated-menu.js
+++ /dev/null
@@ -1,52 +0,0 @@
-
-(function($){
-
-$.fn.animatedMenu = function(){
-
-  var element = this;
-
-  
-      $(element).before("<div class='dynamic-nav' style='background: #CDCDCD;' >&nbsp;</div>");
-      
-      var activePos;
-      $(element).children('li.active:first').each(
-              function(){
-                this.opacity = 0;
-                activePos = { left: this.offsetLeft, top: this.offsetTop, width: this.offsetWidth, height: this.offsetHeight, opacity: 0}
-              }
-            );
-      $('div.dynamic-nav').hide(1,function(){$(this).animate(activePos,1);});
-      
-      $(element).children('li').hover(
-        function(){
-          var liPos = { 
-              left: this.offsetLeft, 
-              top: this.offsetTop, 
-              width: this.offsetWidth, 
-              height: this.offsetHeight,
-              opacity: 1
-          }
-     
-          $('div.dynamic-nav').stop().show().animate(liPos,500);
-        },
-        function(){
-          $('div.dynamic-nav').hide();
-        }
-      );
-      
-      $(element).children('li.active').hover(
-        function(){
-          $(this).removeClass('active');
-        },
-        function(){
-          $(this).addClass('active');
-        }
-      );
-};
-
-})(jQuery);
-
-$(document).ready(function(){
-  $('#navigation > ul').animatedMenu();
-  }
-);
diff --git a/www/js/jquery.galleria.js b/www/js/jquery.galleria.js
deleted file mode 100644
index ce5df975a18586d5ba6a018afda6044659c7fde1..0000000000000000000000000000000000000000
--- a/www/js/jquery.galleria.js
+++ /dev/null
@@ -1 +0,0 @@
-eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('(5($){4 q;q=$.2l.7=5(k){6(!q.1U()){R N}$.1A(q.1e);4 l={Z:\'.22\',P:E,13:E,1i:5(a,b,c){},1C:5(a){}};4 m=$.11(l,k);1d(4 i 28 m){6(i){$.7[i]=m[i]}}4 n=($(m.Z).X(m.Z))?$(m.Z):3(D.16(\'1m\')).2x(r);4 o=$(D.16(\'1m\')).x(\'1L\');4 p=$(D.16(\'1g\')).x(\'1f\');n.x(\'22\').12(o).12(p);R r.1G(5(){$(r).x(\'7\');$(r).1F(\'K\').1G(5(i){4 b=$(r);4 c=$.2j?$.11({},m,b.2i()):m;c.13=$(r).X(\':2h-T\')?N:c.13;4 d=$(r).Q(\'a\').X(\'a\')?$(r).Q(\'a\'):N;4 e=$(r).1F(\'G\').C(\'O\',\'V\');4 f=d?d.9(\'1o\'):e.9(\'1c\');4 g=d?d.9(\'19\'):e.9(\'19\');4 j=20 1Z();6(c.P&&(M.8.t&&M.8.t.Y(/\\#/,\'\')==f)){b.I(\'.B\').U(\'B\');b.x(\'B\')}$(j).2s(5(){$(r).9(\'1O\',e.9(\'1O\'));4 a=d?d.Q(\'G\').x(\'1N 1M\').C(\'O\',\'V\'):e.2m(E).x(\'1N\').C(\'O\',\'V\');6(d){d.2k(a)}6(!a.1K(\'1M\')){4 w=1h.1J(e.v()/e.A()*b.A());4 h=1h.1J(e.A()/e.v()*b.v());6(w<h){a.C({A:\'1I\',v:b.v(),1H:-(h-b.A())/2})}s{a.C({v:\'1I\',A:b.A(),1E:-(w-b.v())/2})}}s{M.1D(5(){a.C({1E:-(a.v()-b.v())/2,1H:-(a.A()-b.A())/2})},1)}a.9(\'J\',f);a.9(\'19\',g);a.1B(5(){$.7.S(f)});a.L(5(){$(r).x(\'L\')},5(){$(r).U(\'L\')});b.L(5(){b.x(\'L\')},5(){b.U(\'L\')});b.1z(a);a.C(\'O\',\'2g\');c.1C(3(a));6(b.1K(\'B\')){$.7.S(f)}e.1y()}).1x(5(){b.2f(\'<1g 2e="1x" 1w="2d:2c">2b 2a 29: \'+f+\'</1g>\')}).9(\'1c\',f)})})};q.1v=5(a){R $(a).X(\':1u-T\')?$(a).I(\':1t-T\'):$(a).1k()};q.1s=5(a){R $(a).X(\':1t-T\')?$(a).I(\':1u-T\'):$(a).1r()};q.1U=5(){$(\'1R\').12($(D.16(\'1m\')).9(\'1q\',\'1l\').C({v:\'1p\',A:\'1p\',O:\'V\'}));4 a=($(\'#1l\').v()!=1)?N:E;$(\'#1l\').1y();R a};q.1e=5(a){4 b=$(\'.1L\');4 c=$(\'.7 G[@J="\'+a+\'"]\');6(a){6($.7.P){M.8=M.8.1o.Y(/\\#.*/,\'\')+\'#\'+a}c.14(\'K\').I(\'.B\').U(\'B\');c.14(\'K\').x(\'B\');4 d=$(20 1Z()).9(\'1c\',a).x(\'27\');b.1X().12(d);b.I(\'.1f\').26(c.9(\'19\'));$.7.1i(d,b.I(\'.1f\'),c);6($.7.13){d.C(\'25\',\'24\').1B(5(){$.7.1k()})}}s{b.I().23().1X();$(\'.7 K.B\').U(\'B\')}$.7.1a=a};$.11({7:{1a:\'\',1i:5(){},S:5(a){6($.7.P){$.21(a)}s{q.1e(a)}},1k:5(){4 a=$(q.1v($(\'.7 G[@J="\'+$.7.1a+\'"]\').14(\'K\'))).Q(\'G\').9(\'J\');$.7.S(a)},1r:5(){4 a=$(q.1s($(\'.7 G[@J="\'+$.7.1a+\'"]\').14(\'K\'))).Q(\'G\').9(\'J\');$.7.S(a)}}})})(3);3.11({z:18,u:18,1A:5(a){3.u=a;4 b=8.t;3.z=b;6(3.H.1b){6(3.z===\'\'){3.z=\'#\'}$("1R").1z(\'<1Y 1q="17" 1w="O: V;"></1Y>\');4 c=$("#17")[0];4 d=c.1n.D;d.1W();d.1V();d.8.t=b}s 6($.H.10){3.y=[];3.y.F=P.F;3.15=[];3.W=E}3.u(b.Y(/^#/,\'\'));2u(3.1T,2t)},1Q:5(a){3.y.1P(a);3.15.F=0;r.W=E},1T:5(){6(3.H.1b){4 a=$("#17")[0];4 b=a.2r||a.1n.D;4 c=b.8.t;6(c!=3.z){8.t=c;3.z=c;3.u(c.Y(/^#/,\'\'))}}s 6($.H.10){6(!3.1j){4 d=P.F-3.y.F;6(d){3.W=N;4 i;6(d<0){1d(i=0;i<1h.2q(d);i++){3.15.2p(3.y.2o())}}s{1d(i=0;i<d;i++){3.y.1P(3.15.2n())}}4 e=3.y[3.y.F-1];6(e!==18){3.z=8.t;3.u(e)}}s 6(3.y[3.y.F-1]===18&&!3.W){6(D.1S.2v(\'#\')>=0){3.u(D.1S.2w(\'#\')[1])}s{c=8.t;3.u(\'\')}3.W=E}}}s{c=8.t;6(c!=3.z){3.z=c;3.u(c.Y(/^#/,\'\'))}}},21:5(a){4 b;6(3.H.10){b=a}s{b=\'#\'+a;8.t=b}3.z=b;6(3.H.1b){4 c=$("#17")[0];4 d=c.1n.D;d.1W();d.1V();d.8.t=b;3.u(a)}s 6(3.H.10){3.1j=E;r.1Q(a);4 e=5(){3.1j=N};M.1D(e,2y);3.u(a);8.t=b}s{3.u(a)}}});',62,159,'|||jQuery|var|function|if|galleria|location|attr||||||||||||||||||this|else|hash|historyCallback|width||addClass|historyBackStack|historyCurrentHash|height|active|css|document|true|length|img|browser|siblings|rel|li|hover|window|false|display|history|find|return|activate|child|removeClass|none|isFirst|is|replace|insert|safari|extend|append|clickNext|parents|historyForwardStack|createElement|jQuery_history|undefined|title|current|msie|src|for|onPageLoad|caption|span|Math|onImage|dontCheck|next|css_test|div|contentWindow|href|1px|id|prev|previousSelector|first|last|nextSelector|style|error|remove|prepend|historyInit|click|onThumb|setTimeout|marginLeft|children|each|marginTop|auto|ceil|hasClass|galleria_wrapper|noscale|thumb|alt|push|historyAddHistory|body|URL|historyCheck|hasCSS|close|open|empty|iframe|Image|new|historyLoad|galleria_container|andSelf|pointer|cursor|text|replaced|in|image|loading|Error|red|color|class|html|block|only|data|meta|replaceWith|fn|clone|shift|pop|unshift|abs|contentDocument|load|100|setInterval|indexOf|split|insertBefore|200'.split('|'),0,{}))
\ No newline at end of file
diff --git a/www/js/jquery.js b/www/js/jquery.js
deleted file mode 100755
index 3747929d8bf80f238139443a5032a606d726e5f0..0000000000000000000000000000000000000000
--- a/www/js/jquery.js
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * jQuery 1.2.3 - New Wave Javascript
- *
- * Copyright (c) 2008 John Resig (jquery.com)
- * Dual licensed under the MIT (MIT-LICENSE.txt)
- * and GPL (GPL-LICENSE.txt) licenses.
- *
- * $Date: 2008-02-06 00:21:25 -0500 (Wed, 06 Feb 2008) $
- * $Rev: 4663 $
- */
-(function(){if(window.jQuery)var _jQuery=window.jQuery;var jQuery=window.jQuery=function(selector,context){return new jQuery.prototype.init(selector,context);};if(window.$)var _$=window.$;window.$=jQuery;var quickExpr=/^[^<]*(<(.|\s)+>)[^>]*$|^#(\w+)$/;var isSimple=/^.[^:#\[\.]*$/;jQuery.fn=jQuery.prototype={init:function(selector,context){selector=selector||document;if(selector.nodeType){this[0]=selector;this.length=1;return this;}else if(typeof selector=="string"){var match=quickExpr.exec(selector);if(match&&(match[1]||!context)){if(match[1])selector=jQuery.clean([match[1]],context);else{var elem=document.getElementById(match[3]);if(elem)if(elem.id!=match[3])return jQuery().find(selector);else{this[0]=elem;this.length=1;return this;}else
-selector=[];}}else
-return new jQuery(context).find(selector);}else if(jQuery.isFunction(selector))return new jQuery(document)[jQuery.fn.ready?"ready":"load"](selector);return this.setArray(selector.constructor==Array&&selector||(selector.jquery||selector.length&&selector!=window&&!selector.nodeType&&selector[0]!=undefined&&selector[0].nodeType)&&jQuery.makeArray(selector)||[selector]);},jquery:"1.2.3",size:function(){return this.length;},length:0,get:function(num){return num==undefined?jQuery.makeArray(this):this[num];},pushStack:function(elems){var ret=jQuery(elems);ret.prevObject=this;return ret;},setArray:function(elems){this.length=0;Array.prototype.push.apply(this,elems);return this;},each:function(callback,args){return jQuery.each(this,callback,args);},index:function(elem){var ret=-1;this.each(function(i){if(this==elem)ret=i;});return ret;},attr:function(name,value,type){var options=name;if(name.constructor==String)if(value==undefined)return this.length&&jQuery[type||"attr"](this[0],name)||undefined;else{options={};options[name]=value;}return this.each(function(i){for(name in options)jQuery.attr(type?this.style:this,name,jQuery.prop(this,options[name],type,i,name));});},css:function(key,value){if((key=='width'||key=='height')&&parseFloat(value)<0)value=undefined;return this.attr(key,value,"curCSS");},text:function(text){if(typeof text!="object"&&text!=null)return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(text));var ret="";jQuery.each(text||this,function(){jQuery.each(this.childNodes,function(){if(this.nodeType!=8)ret+=this.nodeType!=1?this.nodeValue:jQuery.fn.text([this]);});});return ret;},wrapAll:function(html){if(this[0])jQuery(html,this[0].ownerDocument).clone().insertBefore(this[0]).map(function(){var elem=this;while(elem.firstChild)elem=elem.firstChild;return elem;}).append(this);return this;},wrapInner:function(html){return this.each(function(){jQuery(this).contents().wrapAll(html);});},wrap:function(html){return this.each(function(){jQuery(this).wrapAll(html);});},append:function(){return this.domManip(arguments,true,false,function(elem){if(this.nodeType==1)this.appendChild(elem);});},prepend:function(){return this.domManip(arguments,true,true,function(elem){if(this.nodeType==1)this.insertBefore(elem,this.firstChild);});},before:function(){return this.domManip(arguments,false,false,function(elem){this.parentNode.insertBefore(elem,this);});},after:function(){return this.domManip(arguments,false,true,function(elem){this.parentNode.insertBefore(elem,this.nextSibling);});},end:function(){return this.prevObject||jQuery([]);},find:function(selector){var elems=jQuery.map(this,function(elem){return jQuery.find(selector,elem);});return this.pushStack(/[^+>] [^+>]/.test(selector)||selector.indexOf("..")>-1?jQuery.unique(elems):elems);},clone:function(events){var ret=this.map(function(){if(jQuery.browser.msie&&!jQuery.isXMLDoc(this)){var clone=this.cloneNode(true),container=document.createElement("div");container.appendChild(clone);return jQuery.clean([container.innerHTML])[0];}else
-return this.cloneNode(true);});var clone=ret.find("*").andSelf().each(function(){if(this[expando]!=undefined)this[expando]=null;});if(events===true)this.find("*").andSelf().each(function(i){if(this.nodeType==3)return;var events=jQuery.data(this,"events");for(var type in events)for(var handler in events[type])jQuery.event.add(clone[i],type,events[type][handler],events[type][handler].data);});return ret;},filter:function(selector){return this.pushStack(jQuery.isFunction(selector)&&jQuery.grep(this,function(elem,i){return selector.call(elem,i);})||jQuery.multiFilter(selector,this));},not:function(selector){if(selector.constructor==String)if(isSimple.test(selector))return this.pushStack(jQuery.multiFilter(selector,this,true));else
-selector=jQuery.multiFilter(selector,this);var isArrayLike=selector.length&&selector[selector.length-1]!==undefined&&!selector.nodeType;return this.filter(function(){return isArrayLike?jQuery.inArray(this,selector)<0:this!=selector;});},add:function(selector){return!selector?this:this.pushStack(jQuery.merge(this.get(),selector.constructor==String?jQuery(selector).get():selector.length!=undefined&&(!selector.nodeName||jQuery.nodeName(selector,"form"))?selector:[selector]));},is:function(selector){return selector?jQuery.multiFilter(selector,this).length>0:false;},hasClass:function(selector){return this.is("."+selector);},val:function(value){if(value==undefined){if(this.length){var elem=this[0];if(jQuery.nodeName(elem,"select")){var index=elem.selectedIndex,values=[],options=elem.options,one=elem.type=="select-one";if(index<0)return null;for(var i=one?index:0,max=one?index+1:options.length;i<max;i++){var option=options[i];if(option.selected){value=jQuery.browser.msie&&!option.attributes.value.specified?option.text:option.value;if(one)return value;values.push(value);}}return values;}else
-return(this[0].value||"").replace(/\r/g,"");}return undefined;}return this.each(function(){if(this.nodeType!=1)return;if(value.constructor==Array&&/radio|checkbox/.test(this.type))this.checked=(jQuery.inArray(this.value,value)>=0||jQuery.inArray(this.name,value)>=0);else if(jQuery.nodeName(this,"select")){var values=value.constructor==Array?value:[value];jQuery("option",this).each(function(){this.selected=(jQuery.inArray(this.value,values)>=0||jQuery.inArray(this.text,values)>=0);});if(!values.length)this.selectedIndex=-1;}else
-this.value=value;});},html:function(value){return value==undefined?(this.length?this[0].innerHTML:null):this.empty().append(value);},replaceWith:function(value){return this.after(value).remove();},eq:function(i){return this.slice(i,i+1);},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments));},map:function(callback){return this.pushStack(jQuery.map(this,function(elem,i){return callback.call(elem,i,elem);}));},andSelf:function(){return this.add(this.prevObject);},data:function(key,value){var parts=key.split(".");parts[1]=parts[1]?"."+parts[1]:"";if(value==null){var data=this.triggerHandler("getData"+parts[1]+"!",[parts[0]]);if(data==undefined&&this.length)data=jQuery.data(this[0],key);return data==null&&parts[1]?this.data(parts[0]):data;}else
-return this.trigger("setData"+parts[1]+"!",[parts[0],value]).each(function(){jQuery.data(this,key,value);});},removeData:function(key){return this.each(function(){jQuery.removeData(this,key);});},domManip:function(args,table,reverse,callback){var clone=this.length>1,elems;return this.each(function(){if(!elems){elems=jQuery.clean(args,this.ownerDocument);if(reverse)elems.reverse();}var obj=this;if(table&&jQuery.nodeName(this,"table")&&jQuery.nodeName(elems[0],"tr"))obj=this.getElementsByTagName("tbody")[0]||this.appendChild(this.ownerDocument.createElement("tbody"));var scripts=jQuery([]);jQuery.each(elems,function(){var elem=clone?jQuery(this).clone(true)[0]:this;if(jQuery.nodeName(elem,"script")){scripts=scripts.add(elem);}else{if(elem.nodeType==1)scripts=scripts.add(jQuery("script",elem).remove());callback.call(obj,elem);}});scripts.each(evalScript);});}};jQuery.prototype.init.prototype=jQuery.prototype;function evalScript(i,elem){if(elem.src)jQuery.ajax({url:elem.src,async:false,dataType:"script"});else
-jQuery.globalEval(elem.text||elem.textContent||elem.innerHTML||"");if(elem.parentNode)elem.parentNode.removeChild(elem);}jQuery.extend=jQuery.fn.extend=function(){var target=arguments[0]||{},i=1,length=arguments.length,deep=false,options;if(target.constructor==Boolean){deep=target;target=arguments[1]||{};i=2;}if(typeof target!="object"&&typeof target!="function")target={};if(length==1){target=this;i=0;}for(;i<length;i++)if((options=arguments[i])!=null)for(var name in options){if(target===options[name])continue;if(deep&&options[name]&&typeof options[name]=="object"&&target[name]&&!options[name].nodeType)target[name]=jQuery.extend(target[name],options[name]);else if(options[name]!=undefined)target[name]=options[name];}return target;};var expando="jQuery"+(new Date()).getTime(),uuid=0,windowData={};var exclude=/z-?index|font-?weight|opacity|zoom|line-?height/i;jQuery.extend({noConflict:function(deep){window.$=_$;if(deep)window.jQuery=_jQuery;return jQuery;},isFunction:function(fn){return!!fn&&typeof fn!="string"&&!fn.nodeName&&fn.constructor!=Array&&/function/i.test(fn+"");},isXMLDoc:function(elem){return elem.documentElement&&!elem.body||elem.tagName&&elem.ownerDocument&&!elem.ownerDocument.body;},globalEval:function(data){data=jQuery.trim(data);if(data){var head=document.getElementsByTagName("head")[0]||document.documentElement,script=document.createElement("script");script.type="text/javascript";if(jQuery.browser.msie)script.text=data;else
-script.appendChild(document.createTextNode(data));head.appendChild(script);head.removeChild(script);}},nodeName:function(elem,name){return elem.nodeName&&elem.nodeName.toUpperCase()==name.toUpperCase();},cache:{},data:function(elem,name,data){elem=elem==window?windowData:elem;var id=elem[expando];if(!id)id=elem[expando]=++uuid;if(name&&!jQuery.cache[id])jQuery.cache[id]={};if(data!=undefined)jQuery.cache[id][name]=data;return name?jQuery.cache[id][name]:id;},removeData:function(elem,name){elem=elem==window?windowData:elem;var id=elem[expando];if(name){if(jQuery.cache[id]){delete jQuery.cache[id][name];name="";for(name in jQuery.cache[id])break;if(!name)jQuery.removeData(elem);}}else{try{delete elem[expando];}catch(e){if(elem.removeAttribute)elem.removeAttribute(expando);}delete jQuery.cache[id];}},each:function(object,callback,args){if(args){if(object.length==undefined){for(var name in object)if(callback.apply(object[name],args)===false)break;}else
-for(var i=0,length=object.length;i<length;i++)if(callback.apply(object[i],args)===false)break;}else{if(object.length==undefined){for(var name in object)if(callback.call(object[name],name,object[name])===false)break;}else
-for(var i=0,length=object.length,value=object[0];i<length&&callback.call(value,i,value)!==false;value=object[++i]){}}return object;},prop:function(elem,value,type,i,name){if(jQuery.isFunction(value))value=value.call(elem,i);return value&&value.constructor==Number&&type=="curCSS"&&!exclude.test(name)?value+"px":value;},className:{add:function(elem,classNames){jQuery.each((classNames||"").split(/\s+/),function(i,className){if(elem.nodeType==1&&!jQuery.className.has(elem.className,className))elem.className+=(elem.className?" ":"")+className;});},remove:function(elem,classNames){if(elem.nodeType==1)elem.className=classNames!=undefined?jQuery.grep(elem.className.split(/\s+/),function(className){return!jQuery.className.has(classNames,className);}).join(" "):"";},has:function(elem,className){return jQuery.inArray(className,(elem.className||elem).toString().split(/\s+/))>-1;}},swap:function(elem,options,callback){var old={};for(var name in options){old[name]=elem.style[name];elem.style[name]=options[name];}callback.call(elem);for(var name in options)elem.style[name]=old[name];},css:function(elem,name,force){if(name=="width"||name=="height"){var val,props={position:"absolute",visibility:"hidden",display:"block"},which=name=="width"?["Left","Right"]:["Top","Bottom"];function getWH(){val=name=="width"?elem.offsetWidth:elem.offsetHeight;var padding=0,border=0;jQuery.each(which,function(){padding+=parseFloat(jQuery.curCSS(elem,"padding"+this,true))||0;border+=parseFloat(jQuery.curCSS(elem,"border"+this+"Width",true))||0;});val-=Math.round(padding+border);}if(jQuery(elem).is(":visible"))getWH();else
-jQuery.swap(elem,props,getWH);return Math.max(0,val);}return jQuery.curCSS(elem,name,force);},curCSS:function(elem,name,force){var ret;function color(elem){if(!jQuery.browser.safari)return false;var ret=document.defaultView.getComputedStyle(elem,null);return!ret||ret.getPropertyValue("color")=="";}if(name=="opacity"&&jQuery.browser.msie){ret=jQuery.attr(elem.style,"opacity");return ret==""?"1":ret;}if(jQuery.browser.opera&&name=="display"){var save=elem.style.outline;elem.style.outline="0 solid black";elem.style.outline=save;}if(name.match(/float/i))name=styleFloat;if(!force&&elem.style&&elem.style[name])ret=elem.style[name];else if(document.defaultView&&document.defaultView.getComputedStyle){if(name.match(/float/i))name="float";name=name.replace(/([A-Z])/g,"-$1").toLowerCase();var getComputedStyle=document.defaultView.getComputedStyle(elem,null);if(getComputedStyle&&!color(elem))ret=getComputedStyle.getPropertyValue(name);else{var swap=[],stack=[];for(var a=elem;a&&color(a);a=a.parentNode)stack.unshift(a);for(var i=0;i<stack.length;i++)if(color(stack[i])){swap[i]=stack[i].style.display;stack[i].style.display="block";}ret=name=="display"&&swap[stack.length-1]!=null?"none":(getComputedStyle&&getComputedStyle.getPropertyValue(name))||"";for(var i=0;i<swap.length;i++)if(swap[i]!=null)stack[i].style.display=swap[i];}if(name=="opacity"&&ret=="")ret="1";}else if(elem.currentStyle){var camelCase=name.replace(/\-(\w)/g,function(all,letter){return letter.toUpperCase();});ret=elem.currentStyle[name]||elem.currentStyle[camelCase];if(!/^\d+(px)?$/i.test(ret)&&/^\d/.test(ret)){var style=elem.style.left,runtimeStyle=elem.runtimeStyle.left;elem.runtimeStyle.left=elem.currentStyle.left;elem.style.left=ret||0;ret=elem.style.pixelLeft+"px";elem.style.left=style;elem.runtimeStyle.left=runtimeStyle;}}return ret;},clean:function(elems,context){var ret=[];context=context||document;if(typeof context.createElement=='undefined')context=context.ownerDocument||context[0]&&context[0].ownerDocument||document;jQuery.each(elems,function(i,elem){if(!elem)return;if(elem.constructor==Number)elem=elem.toString();if(typeof elem=="string"){elem=elem.replace(/(<(\w+)[^>]*?)\/>/g,function(all,front,tag){return tag.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?all:front+"></"+tag+">";});var tags=jQuery.trim(elem).toLowerCase(),div=context.createElement("div");var wrap=!tags.indexOf("<opt")&&[1,"<select multiple='multiple'>","</select>"]||!tags.indexOf("<leg")&&[1,"<fieldset>","</fieldset>"]||tags.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"<table>","</table>"]||!tags.indexOf("<tr")&&[2,"<table><tbody>","</tbody></table>"]||(!tags.indexOf("<td")||!tags.indexOf("<th"))&&[3,"<table><tbody><tr>","</tr></tbody></table>"]||!tags.indexOf("<col")&&[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"]||jQuery.browser.msie&&[1,"div<div>","</div>"]||[0,"",""];div.innerHTML=wrap[1]+elem+wrap[2];while(wrap[0]--)div=div.lastChild;if(jQuery.browser.msie){var tbody=!tags.indexOf("<table")&&tags.indexOf("<tbody")<0?div.firstChild&&div.firstChild.childNodes:wrap[1]=="<table>"&&tags.indexOf("<tbody")<0?div.childNodes:[];for(var j=tbody.length-1;j>=0;--j)if(jQuery.nodeName(tbody[j],"tbody")&&!tbody[j].childNodes.length)tbody[j].parentNode.removeChild(tbody[j]);if(/^\s/.test(elem))div.insertBefore(context.createTextNode(elem.match(/^\s*/)[0]),div.firstChild);}elem=jQuery.makeArray(div.childNodes);}if(elem.length===0&&(!jQuery.nodeName(elem,"form")&&!jQuery.nodeName(elem,"select")))return;if(elem[0]==undefined||jQuery.nodeName(elem,"form")||elem.options)ret.push(elem);else
-ret=jQuery.merge(ret,elem);});return ret;},attr:function(elem,name,value){if(!elem||elem.nodeType==3||elem.nodeType==8)return undefined;var fix=jQuery.isXMLDoc(elem)?{}:jQuery.props;if(name=="selected"&&jQuery.browser.safari)elem.parentNode.selectedIndex;if(fix[name]){if(value!=undefined)elem[fix[name]]=value;return elem[fix[name]];}else if(jQuery.browser.msie&&name=="style")return jQuery.attr(elem.style,"cssText",value);else if(value==undefined&&jQuery.browser.msie&&jQuery.nodeName(elem,"form")&&(name=="action"||name=="method"))return elem.getAttributeNode(name).nodeValue;else if(elem.tagName){if(value!=undefined){if(name=="type"&&jQuery.nodeName(elem,"input")&&elem.parentNode)throw"type property can't be changed";elem.setAttribute(name,""+value);}if(jQuery.browser.msie&&/href|src/.test(name)&&!jQuery.isXMLDoc(elem))return elem.getAttribute(name,2);return elem.getAttribute(name);}else{if(name=="opacity"&&jQuery.browser.msie){if(value!=undefined){elem.zoom=1;elem.filter=(elem.filter||"").replace(/alpha\([^)]*\)/,"")+(parseFloat(value).toString()=="NaN"?"":"alpha(opacity="+value*100+")");}return elem.filter&&elem.filter.indexOf("opacity=")>=0?(parseFloat(elem.filter.match(/opacity=([^)]*)/)[1])/100).toString():"";}name=name.replace(/-([a-z])/ig,function(all,letter){return letter.toUpperCase();});if(value!=undefined)elem[name]=value;return elem[name];}},trim:function(text){return(text||"").replace(/^\s+|\s+$/g,"");},makeArray:function(array){var ret=[];if(typeof array!="array")for(var i=0,length=array.length;i<length;i++)ret.push(array[i]);else
-ret=array.slice(0);return ret;},inArray:function(elem,array){for(var i=0,length=array.length;i<length;i++)if(array[i]==elem)return i;return-1;},merge:function(first,second){if(jQuery.browser.msie){for(var i=0;second[i];i++)if(second[i].nodeType!=8)first.push(second[i]);}else
-for(var i=0;second[i];i++)first.push(second[i]);return first;},unique:function(array){var ret=[],done={};try{for(var i=0,length=array.length;i<length;i++){var id=jQuery.data(array[i]);if(!done[id]){done[id]=true;ret.push(array[i]);}}}catch(e){ret=array;}return ret;},grep:function(elems,callback,inv){var ret=[];for(var i=0,length=elems.length;i<length;i++)if(!inv&&callback(elems[i],i)||inv&&!callback(elems[i],i))ret.push(elems[i]);return ret;},map:function(elems,callback){var ret=[];for(var i=0,length=elems.length;i<length;i++){var value=callback(elems[i],i);if(value!==null&&value!=undefined){if(value.constructor!=Array)value=[value];ret=ret.concat(value);}}return ret;}});var userAgent=navigator.userAgent.toLowerCase();jQuery.browser={version:(userAgent.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/)||[])[1],safari:/webkit/.test(userAgent),opera:/opera/.test(userAgent),msie:/msie/.test(userAgent)&&!/opera/.test(userAgent),mozilla:/mozilla/.test(userAgent)&&!/(compatible|webkit)/.test(userAgent)};var styleFloat=jQuery.browser.msie?"styleFloat":"cssFloat";jQuery.extend({boxModel:!jQuery.browser.msie||document.compatMode=="CSS1Compat",props:{"for":"htmlFor","class":"className","float":styleFloat,cssFloat:styleFloat,styleFloat:styleFloat,innerHTML:"innerHTML",className:"className",value:"value",disabled:"disabled",checked:"checked",readonly:"readOnly",selected:"selected",maxlength:"maxLength",selectedIndex:"selectedIndex",defaultValue:"defaultValue",tagName:"tagName",nodeName:"nodeName"}});jQuery.each({parent:function(elem){return elem.parentNode;},parents:function(elem){return jQuery.dir(elem,"parentNode");},next:function(elem){return jQuery.nth(elem,2,"nextSibling");},prev:function(elem){return jQuery.nth(elem,2,"previousSibling");},nextAll:function(elem){return jQuery.dir(elem,"nextSibling");},prevAll:function(elem){return jQuery.dir(elem,"previousSibling");},siblings:function(elem){return jQuery.sibling(elem.parentNode.firstChild,elem);},children:function(elem){return jQuery.sibling(elem.firstChild);},contents:function(elem){return jQuery.nodeName(elem,"iframe")?elem.contentDocument||elem.contentWindow.document:jQuery.makeArray(elem.childNodes);}},function(name,fn){jQuery.fn[name]=function(selector){var ret=jQuery.map(this,fn);if(selector&&typeof selector=="string")ret=jQuery.multiFilter(selector,ret);return this.pushStack(jQuery.unique(ret));};});jQuery.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(name,original){jQuery.fn[name]=function(){var args=arguments;return this.each(function(){for(var i=0,length=args.length;i<length;i++)jQuery(args[i])[original](this);});};});jQuery.each({removeAttr:function(name){jQuery.attr(this,name,"");if(this.nodeType==1)this.removeAttribute(name);},addClass:function(classNames){jQuery.className.add(this,classNames);},removeClass:function(classNames){jQuery.className.remove(this,classNames);},toggleClass:function(classNames){jQuery.className[jQuery.className.has(this,classNames)?"remove":"add"](this,classNames);},remove:function(selector){if(!selector||jQuery.filter(selector,[this]).r.length){jQuery("*",this).add(this).each(function(){jQuery.event.remove(this);jQuery.removeData(this);});if(this.parentNode)this.parentNode.removeChild(this);}},empty:function(){jQuery(">*",this).remove();while(this.firstChild)this.removeChild(this.firstChild);}},function(name,fn){jQuery.fn[name]=function(){return this.each(fn,arguments);};});jQuery.each(["Height","Width"],function(i,name){var type=name.toLowerCase();jQuery.fn[type]=function(size){return this[0]==window?jQuery.browser.opera&&document.body["client"+name]||jQuery.browser.safari&&window["inner"+name]||document.compatMode=="CSS1Compat"&&document.documentElement["client"+name]||document.body["client"+name]:this[0]==document?Math.max(Math.max(document.body["scroll"+name],document.documentElement["scroll"+name]),Math.max(document.body["offset"+name],document.documentElement["offset"+name])):size==undefined?(this.length?jQuery.css(this[0],type):null):this.css(type,size.constructor==String?size:size+"px");};});var chars=jQuery.browser.safari&&parseInt(jQuery.browser.version)<417?"(?:[\\w*_-]|\\\\.)":"(?:[\\w\u0128-\uFFFF*_-]|\\\\.)",quickChild=new RegExp("^>\\s*("+chars+"+)"),quickID=new RegExp("^("+chars+"+)(#)("+chars+"+)"),quickClass=new RegExp("^([#.]?)("+chars+"*)");jQuery.extend({expr:{"":function(a,i,m){return m[2]=="*"||jQuery.nodeName(a,m[2]);},"#":function(a,i,m){return a.getAttribute("id")==m[2];},":":{lt:function(a,i,m){return i<m[3]-0;},gt:function(a,i,m){return i>m[3]-0;},nth:function(a,i,m){return m[3]-0==i;},eq:function(a,i,m){return m[3]-0==i;},first:function(a,i){return i==0;},last:function(a,i,m,r){return i==r.length-1;},even:function(a,i){return i%2==0;},odd:function(a,i){return i%2;},"first-child":function(a){return a.parentNode.getElementsByTagName("*")[0]==a;},"last-child":function(a){return jQuery.nth(a.parentNode.lastChild,1,"previousSibling")==a;},"only-child":function(a){return!jQuery.nth(a.parentNode.lastChild,2,"previousSibling");},parent:function(a){return a.firstChild;},empty:function(a){return!a.firstChild;},contains:function(a,i,m){return(a.textContent||a.innerText||jQuery(a).text()||"").indexOf(m[3])>=0;},visible:function(a){return"hidden"!=a.type&&jQuery.css(a,"display")!="none"&&jQuery.css(a,"visibility")!="hidden";},hidden:function(a){return"hidden"==a.type||jQuery.css(a,"display")=="none"||jQuery.css(a,"visibility")=="hidden";},enabled:function(a){return!a.disabled;},disabled:function(a){return a.disabled;},checked:function(a){return a.checked;},selected:function(a){return a.selected||jQuery.attr(a,"selected");},text:function(a){return"text"==a.type;},radio:function(a){return"radio"==a.type;},checkbox:function(a){return"checkbox"==a.type;},file:function(a){return"file"==a.type;},password:function(a){return"password"==a.type;},submit:function(a){return"submit"==a.type;},image:function(a){return"image"==a.type;},reset:function(a){return"reset"==a.type;},button:function(a){return"button"==a.type||jQuery.nodeName(a,"button");},input:function(a){return/input|select|textarea|button/i.test(a.nodeName);},has:function(a,i,m){return jQuery.find(m[3],a).length;},header:function(a){return/h\d/i.test(a.nodeName);},animated:function(a){return jQuery.grep(jQuery.timers,function(fn){return a==fn.elem;}).length;}}},parse:[/^(\[) *@?([\w-]+) *([!*$^~=]*) *('?"?)(.*?)\4 *\]/,/^(:)([\w-]+)\("?'?(.*?(\(.*?\))?[^(]*?)"?'?\)/,new RegExp("^([:.#]*)("+chars+"+)")],multiFilter:function(expr,elems,not){var old,cur=[];while(expr&&expr!=old){old=expr;var f=jQuery.filter(expr,elems,not);expr=f.t.replace(/^\s*,\s*/,"");cur=not?elems=f.r:jQuery.merge(cur,f.r);}return cur;},find:function(t,context){if(typeof t!="string")return[t];if(context&&context.nodeType!=1&&context.nodeType!=9)return[];context=context||document;var ret=[context],done=[],last,nodeName;while(t&&last!=t){var r=[];last=t;t=jQuery.trim(t);var foundToken=false;var re=quickChild;var m=re.exec(t);if(m){nodeName=m[1].toUpperCase();for(var i=0;ret[i];i++)for(var c=ret[i].firstChild;c;c=c.nextSibling)if(c.nodeType==1&&(nodeName=="*"||c.nodeName.toUpperCase()==nodeName))r.push(c);ret=r;t=t.replace(re,"");if(t.indexOf(" ")==0)continue;foundToken=true;}else{re=/^([>+~])\s*(\w*)/i;if((m=re.exec(t))!=null){r=[];var merge={};nodeName=m[2].toUpperCase();m=m[1];for(var j=0,rl=ret.length;j<rl;j++){var n=m=="~"||m=="+"?ret[j].nextSibling:ret[j].firstChild;for(;n;n=n.nextSibling)if(n.nodeType==1){var id=jQuery.data(n);if(m=="~"&&merge[id])break;if(!nodeName||n.nodeName.toUpperCase()==nodeName){if(m=="~")merge[id]=true;r.push(n);}if(m=="+")break;}}ret=r;t=jQuery.trim(t.replace(re,""));foundToken=true;}}if(t&&!foundToken){if(!t.indexOf(",")){if(context==ret[0])ret.shift();done=jQuery.merge(done,ret);r=ret=[context];t=" "+t.substr(1,t.length);}else{var re2=quickID;var m=re2.exec(t);if(m){m=[0,m[2],m[3],m[1]];}else{re2=quickClass;m=re2.exec(t);}m[2]=m[2].replace(/\\/g,"");var elem=ret[ret.length-1];if(m[1]=="#"&&elem&&elem.getElementById&&!jQuery.isXMLDoc(elem)){var oid=elem.getElementById(m[2]);if((jQuery.browser.msie||jQuery.browser.opera)&&oid&&typeof oid.id=="string"&&oid.id!=m[2])oid=jQuery('[@id="'+m[2]+'"]',elem)[0];ret=r=oid&&(!m[3]||jQuery.nodeName(oid,m[3]))?[oid]:[];}else{for(var i=0;ret[i];i++){var tag=m[1]=="#"&&m[3]?m[3]:m[1]!=""||m[0]==""?"*":m[2];if(tag=="*"&&ret[i].nodeName.toLowerCase()=="object")tag="param";r=jQuery.merge(r,ret[i].getElementsByTagName(tag));}if(m[1]==".")r=jQuery.classFilter(r,m[2]);if(m[1]=="#"){var tmp=[];for(var i=0;r[i];i++)if(r[i].getAttribute("id")==m[2]){tmp=[r[i]];break;}r=tmp;}ret=r;}t=t.replace(re2,"");}}if(t){var val=jQuery.filter(t,r);ret=r=val.r;t=jQuery.trim(val.t);}}if(t)ret=[];if(ret&&context==ret[0])ret.shift();done=jQuery.merge(done,ret);return done;},classFilter:function(r,m,not){m=" "+m+" ";var tmp=[];for(var i=0;r[i];i++){var pass=(" "+r[i].className+" ").indexOf(m)>=0;if(!not&&pass||not&&!pass)tmp.push(r[i]);}return tmp;},filter:function(t,r,not){var last;while(t&&t!=last){last=t;var p=jQuery.parse,m;for(var i=0;p[i];i++){m=p[i].exec(t);if(m){t=t.substring(m[0].length);m[2]=m[2].replace(/\\/g,"");break;}}if(!m)break;if(m[1]==":"&&m[2]=="not")r=isSimple.test(m[3])?jQuery.filter(m[3],r,true).r:jQuery(r).not(m[3]);else if(m[1]==".")r=jQuery.classFilter(r,m[2],not);else if(m[1]=="["){var tmp=[],type=m[3];for(var i=0,rl=r.length;i<rl;i++){var a=r[i],z=a[jQuery.props[m[2]]||m[2]];if(z==null||/href|src|selected/.test(m[2]))z=jQuery.attr(a,m[2])||'';if((type==""&&!!z||type=="="&&z==m[5]||type=="!="&&z!=m[5]||type=="^="&&z&&!z.indexOf(m[5])||type=="$="&&z.substr(z.length-m[5].length)==m[5]||(type=="*="||type=="~=")&&z.indexOf(m[5])>=0)^not)tmp.push(a);}r=tmp;}else if(m[1]==":"&&m[2]=="nth-child"){var merge={},tmp=[],test=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(m[3]=="even"&&"2n"||m[3]=="odd"&&"2n+1"||!/\D/.test(m[3])&&"0n+"+m[3]||m[3]),first=(test[1]+(test[2]||1))-0,last=test[3]-0;for(var i=0,rl=r.length;i<rl;i++){var node=r[i],parentNode=node.parentNode,id=jQuery.data(parentNode);if(!merge[id]){var c=1;for(var n=parentNode.firstChild;n;n=n.nextSibling)if(n.nodeType==1)n.nodeIndex=c++;merge[id]=true;}var add=false;if(first==0){if(node.nodeIndex==last)add=true;}else if((node.nodeIndex-last)%first==0&&(node.nodeIndex-last)/first>=0)add=true;if(add^not)tmp.push(node);}r=tmp;}else{var fn=jQuery.expr[m[1]];if(typeof fn=="object")fn=fn[m[2]];if(typeof fn=="string")fn=eval("false||function(a,i){return "+fn+";}");r=jQuery.grep(r,function(elem,i){return fn(elem,i,m,r);},not);}}return{r:r,t:t};},dir:function(elem,dir){var matched=[];var cur=elem[dir];while(cur&&cur!=document){if(cur.nodeType==1)matched.push(cur);cur=cur[dir];}return matched;},nth:function(cur,result,dir,elem){result=result||1;var num=0;for(;cur;cur=cur[dir])if(cur.nodeType==1&&++num==result)break;return cur;},sibling:function(n,elem){var r=[];for(;n;n=n.nextSibling){if(n.nodeType==1&&(!elem||n!=elem))r.push(n);}return r;}});jQuery.event={add:function(elem,types,handler,data){if(elem.nodeType==3||elem.nodeType==8)return;if(jQuery.browser.msie&&elem.setInterval!=undefined)elem=window;if(!handler.guid)handler.guid=this.guid++;if(data!=undefined){var fn=handler;handler=function(){return fn.apply(this,arguments);};handler.data=data;handler.guid=fn.guid;}var events=jQuery.data(elem,"events")||jQuery.data(elem,"events",{}),handle=jQuery.data(elem,"handle")||jQuery.data(elem,"handle",function(){var val;if(typeof jQuery=="undefined"||jQuery.event.triggered)return val;val=jQuery.event.handle.apply(arguments.callee.elem,arguments);return val;});handle.elem=elem;jQuery.each(types.split(/\s+/),function(index,type){var parts=type.split(".");type=parts[0];handler.type=parts[1];var handlers=events[type];if(!handlers){handlers=events[type]={};if(!jQuery.event.special[type]||jQuery.event.special[type].setup.call(elem)===false){if(elem.addEventListener)elem.addEventListener(type,handle,false);else if(elem.attachEvent)elem.attachEvent("on"+type,handle);}}handlers[handler.guid]=handler;jQuery.event.global[type]=true;});elem=null;},guid:1,global:{},remove:function(elem,types,handler){if(elem.nodeType==3||elem.nodeType==8)return;var events=jQuery.data(elem,"events"),ret,index;if(events){if(types==undefined||(typeof types=="string"&&types.charAt(0)=="."))for(var type in events)this.remove(elem,type+(types||""));else{if(types.type){handler=types.handler;types=types.type;}jQuery.each(types.split(/\s+/),function(index,type){var parts=type.split(".");type=parts[0];if(events[type]){if(handler)delete events[type][handler.guid];else
-for(handler in events[type])if(!parts[1]||events[type][handler].type==parts[1])delete events[type][handler];for(ret in events[type])break;if(!ret){if(!jQuery.event.special[type]||jQuery.event.special[type].teardown.call(elem)===false){if(elem.removeEventListener)elem.removeEventListener(type,jQuery.data(elem,"handle"),false);else if(elem.detachEvent)elem.detachEvent("on"+type,jQuery.data(elem,"handle"));}ret=null;delete events[type];}}});}for(ret in events)break;if(!ret){var handle=jQuery.data(elem,"handle");if(handle)handle.elem=null;jQuery.removeData(elem,"events");jQuery.removeData(elem,"handle");}}},trigger:function(type,data,elem,donative,extra){data=jQuery.makeArray(data||[]);if(type.indexOf("!")>=0){type=type.slice(0,-1);var exclusive=true;}if(!elem){if(this.global[type])jQuery("*").add([window,document]).trigger(type,data);}else{if(elem.nodeType==3||elem.nodeType==8)return undefined;var val,ret,fn=jQuery.isFunction(elem[type]||null),event=!data[0]||!data[0].preventDefault;if(event)data.unshift(this.fix({type:type,target:elem}));data[0].type=type;if(exclusive)data[0].exclusive=true;if(jQuery.isFunction(jQuery.data(elem,"handle")))val=jQuery.data(elem,"handle").apply(elem,data);if(!fn&&elem["on"+type]&&elem["on"+type].apply(elem,data)===false)val=false;if(event)data.shift();if(extra&&jQuery.isFunction(extra)){ret=extra.apply(elem,val==null?data:data.concat(val));if(ret!==undefined)val=ret;}if(fn&&donative!==false&&val!==false&&!(jQuery.nodeName(elem,'a')&&type=="click")){this.triggered=true;try{elem[type]();}catch(e){}}this.triggered=false;}return val;},handle:function(event){var val;event=jQuery.event.fix(event||window.event||{});var parts=event.type.split(".");event.type=parts[0];var handlers=jQuery.data(this,"events")&&jQuery.data(this,"events")[event.type],args=Array.prototype.slice.call(arguments,1);args.unshift(event);for(var j in handlers){var handler=handlers[j];args[0].handler=handler;args[0].data=handler.data;if(!parts[1]&&!event.exclusive||handler.type==parts[1]){var ret=handler.apply(this,args);if(val!==false)val=ret;if(ret===false){event.preventDefault();event.stopPropagation();}}}if(jQuery.browser.msie)event.target=event.preventDefault=event.stopPropagation=event.handler=event.data=null;return val;},fix:function(event){var originalEvent=event;event=jQuery.extend({},originalEvent);event.preventDefault=function(){if(originalEvent.preventDefault)originalEvent.preventDefault();originalEvent.returnValue=false;};event.stopPropagation=function(){if(originalEvent.stopPropagation)originalEvent.stopPropagation();originalEvent.cancelBubble=true;};if(!event.target)event.target=event.srcElement||document;if(event.target.nodeType==3)event.target=originalEvent.target.parentNode;if(!event.relatedTarget&&event.fromElement)event.relatedTarget=event.fromElement==event.target?event.toElement:event.fromElement;if(event.pageX==null&&event.clientX!=null){var doc=document.documentElement,body=document.body;event.pageX=event.clientX+(doc&&doc.scrollLeft||body&&body.scrollLeft||0)-(doc.clientLeft||0);event.pageY=event.clientY+(doc&&doc.scrollTop||body&&body.scrollTop||0)-(doc.clientTop||0);}if(!event.which&&((event.charCode||event.charCode===0)?event.charCode:event.keyCode))event.which=event.charCode||event.keyCode;if(!event.metaKey&&event.ctrlKey)event.metaKey=event.ctrlKey;if(!event.which&&event.button)event.which=(event.button&1?1:(event.button&2?3:(event.button&4?2:0)));return event;},special:{ready:{setup:function(){bindReady();return;},teardown:function(){return;}},mouseenter:{setup:function(){if(jQuery.browser.msie)return false;jQuery(this).bind("mouseover",jQuery.event.special.mouseenter.handler);return true;},teardown:function(){if(jQuery.browser.msie)return false;jQuery(this).unbind("mouseover",jQuery.event.special.mouseenter.handler);return true;},handler:function(event){if(withinElement(event,this))return true;arguments[0].type="mouseenter";return jQuery.event.handle.apply(this,arguments);}},mouseleave:{setup:function(){if(jQuery.browser.msie)return false;jQuery(this).bind("mouseout",jQuery.event.special.mouseleave.handler);return true;},teardown:function(){if(jQuery.browser.msie)return false;jQuery(this).unbind("mouseout",jQuery.event.special.mouseleave.handler);return true;},handler:function(event){if(withinElement(event,this))return true;arguments[0].type="mouseleave";return jQuery.event.handle.apply(this,arguments);}}}};jQuery.fn.extend({bind:function(type,data,fn){return type=="unload"?this.one(type,data,fn):this.each(function(){jQuery.event.add(this,type,fn||data,fn&&data);});},one:function(type,data,fn){return this.each(function(){jQuery.event.add(this,type,function(event){jQuery(this).unbind(event);return(fn||data).apply(this,arguments);},fn&&data);});},unbind:function(type,fn){return this.each(function(){jQuery.event.remove(this,type,fn);});},trigger:function(type,data,fn){return this.each(function(){jQuery.event.trigger(type,data,this,true,fn);});},triggerHandler:function(type,data,fn){if(this[0])return jQuery.event.trigger(type,data,this[0],false,fn);return undefined;},toggle:function(){var args=arguments;return this.click(function(event){this.lastToggle=0==this.lastToggle?1:0;event.preventDefault();return args[this.lastToggle].apply(this,arguments)||false;});},hover:function(fnOver,fnOut){return this.bind('mouseenter',fnOver).bind('mouseleave',fnOut);},ready:function(fn){bindReady();if(jQuery.isReady)fn.call(document,jQuery);else
-jQuery.readyList.push(function(){return fn.call(this,jQuery);});return this;}});jQuery.extend({isReady:false,readyList:[],ready:function(){if(!jQuery.isReady){jQuery.isReady=true;if(jQuery.readyList){jQuery.each(jQuery.readyList,function(){this.apply(document);});jQuery.readyList=null;}jQuery(document).triggerHandler("ready");}}});var readyBound=false;function bindReady(){if(readyBound)return;readyBound=true;if(document.addEventListener&&!jQuery.browser.opera)document.addEventListener("DOMContentLoaded",jQuery.ready,false);if(jQuery.browser.msie&&window==top)(function(){if(jQuery.isReady)return;try{document.documentElement.doScroll("left");}catch(error){setTimeout(arguments.callee,0);return;}jQuery.ready();})();if(jQuery.browser.opera)document.addEventListener("DOMContentLoaded",function(){if(jQuery.isReady)return;for(var i=0;i<document.styleSheets.length;i++)if(document.styleSheets[i].disabled){setTimeout(arguments.callee,0);return;}jQuery.ready();},false);if(jQuery.browser.safari){var numStyles;(function(){if(jQuery.isReady)return;if(document.readyState!="loaded"&&document.readyState!="complete"){setTimeout(arguments.callee,0);return;}if(numStyles===undefined)numStyles=jQuery("style, link[rel=stylesheet]").length;if(document.styleSheets.length!=numStyles){setTimeout(arguments.callee,0);return;}jQuery.ready();})();}jQuery.event.add(window,"load",jQuery.ready);}jQuery.each(("blur,focus,load,resize,scroll,unload,click,dblclick,"+"mousedown,mouseup,mousemove,mouseover,mouseout,change,select,"+"submit,keydown,keypress,keyup,error").split(","),function(i,name){jQuery.fn[name]=function(fn){return fn?this.bind(name,fn):this.trigger(name);};});var withinElement=function(event,elem){var parent=event.relatedTarget;while(parent&&parent!=elem)try{parent=parent.parentNode;}catch(error){parent=elem;}return parent==elem;};jQuery(window).bind("unload",function(){jQuery("*").add(document).unbind();});jQuery.fn.extend({load:function(url,params,callback){if(jQuery.isFunction(url))return this.bind("load",url);var off=url.indexOf(" ");if(off>=0){var selector=url.slice(off,url.length);url=url.slice(0,off);}callback=callback||function(){};var type="GET";if(params)if(jQuery.isFunction(params)){callback=params;params=null;}else{params=jQuery.param(params);type="POST";}var self=this;jQuery.ajax({url:url,type:type,dataType:"html",data:params,complete:function(res,status){if(status=="success"||status=="notmodified")self.html(selector?jQuery("<div/>").append(res.responseText.replace(/<script(.|\s)*?\/script>/g,"")).find(selector):res.responseText);self.each(callback,[res.responseText,status,res]);}});return this;},serialize:function(){return jQuery.param(this.serializeArray());},serializeArray:function(){return this.map(function(){return jQuery.nodeName(this,"form")?jQuery.makeArray(this.elements):this;}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password/i.test(this.type));}).map(function(i,elem){var val=jQuery(this).val();return val==null?null:val.constructor==Array?jQuery.map(val,function(val,i){return{name:elem.name,value:val};}):{name:elem.name,value:val};}).get();}});jQuery.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(i,o){jQuery.fn[o]=function(f){return this.bind(o,f);};});var jsc=(new Date).getTime();jQuery.extend({get:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data=null;}return jQuery.ajax({type:"GET",url:url,data:data,success:callback,dataType:type});},getScript:function(url,callback){return jQuery.get(url,null,callback,"script");},getJSON:function(url,data,callback){return jQuery.get(url,data,callback,"json");},post:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data={};}return jQuery.ajax({type:"POST",url:url,data:data,success:callback,dataType:type});},ajaxSetup:function(settings){jQuery.extend(jQuery.ajaxSettings,settings);},ajaxSettings:{global:true,type:"GET",timeout:0,contentType:"application/x-www-form-urlencoded",processData:true,async:true,data:null,username:null,password:null,accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(s){var jsonp,jsre=/=\?(&|$)/g,status,data;s=jQuery.extend(true,s,jQuery.extend(true,{},jQuery.ajaxSettings,s));if(s.data&&s.processData&&typeof s.data!="string")s.data=jQuery.param(s.data);if(s.dataType=="jsonp"){if(s.type.toLowerCase()=="get"){if(!s.url.match(jsre))s.url+=(s.url.match(/\?/)?"&":"?")+(s.jsonp||"callback")+"=?";}else if(!s.data||!s.data.match(jsre))s.data=(s.data?s.data+"&":"")+(s.jsonp||"callback")+"=?";s.dataType="json";}if(s.dataType=="json"&&(s.data&&s.data.match(jsre)||s.url.match(jsre))){jsonp="jsonp"+jsc++;if(s.data)s.data=(s.data+"").replace(jsre,"="+jsonp+"$1");s.url=s.url.replace(jsre,"="+jsonp+"$1");s.dataType="script";window[jsonp]=function(tmp){data=tmp;success();complete();window[jsonp]=undefined;try{delete window[jsonp];}catch(e){}if(head)head.removeChild(script);};}if(s.dataType=="script"&&s.cache==null)s.cache=false;if(s.cache===false&&s.type.toLowerCase()=="get"){var ts=(new Date()).getTime();var ret=s.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+ts+"$2");s.url=ret+((ret==s.url)?(s.url.match(/\?/)?"&":"?")+"_="+ts:"");}if(s.data&&s.type.toLowerCase()=="get"){s.url+=(s.url.match(/\?/)?"&":"?")+s.data;s.data=null;}if(s.global&&!jQuery.active++)jQuery.event.trigger("ajaxStart");if((!s.url.indexOf("http")||!s.url.indexOf("//"))&&s.dataType=="script"&&s.type.toLowerCase()=="get"){var head=document.getElementsByTagName("head")[0];var script=document.createElement("script");script.src=s.url;if(s.scriptCharset)script.charset=s.scriptCharset;if(!jsonp){var done=false;script.onload=script.onreadystatechange=function(){if(!done&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){done=true;success();complete();head.removeChild(script);}};}head.appendChild(script);return undefined;}var requestDone=false;var xml=window.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest();xml.open(s.type,s.url,s.async,s.username,s.password);try{if(s.data)xml.setRequestHeader("Content-Type",s.contentType);if(s.ifModified)xml.setRequestHeader("If-Modified-Since",jQuery.lastModified[s.url]||"Thu, 01 Jan 1970 00:00:00 GMT");xml.setRequestHeader("X-Requested-With","XMLHttpRequest");xml.setRequestHeader("Accept",s.dataType&&s.accepts[s.dataType]?s.accepts[s.dataType]+", */*":s.accepts._default);}catch(e){}if(s.beforeSend)s.beforeSend(xml);if(s.global)jQuery.event.trigger("ajaxSend",[xml,s]);var onreadystatechange=function(isTimeout){if(!requestDone&&xml&&(xml.readyState==4||isTimeout=="timeout")){requestDone=true;if(ival){clearInterval(ival);ival=null;}status=isTimeout=="timeout"&&"timeout"||!jQuery.httpSuccess(xml)&&"error"||s.ifModified&&jQuery.httpNotModified(xml,s.url)&&"notmodified"||"success";if(status=="success"){try{data=jQuery.httpData(xml,s.dataType);}catch(e){status="parsererror";}}if(status=="success"){var modRes;try{modRes=xml.getResponseHeader("Last-Modified");}catch(e){}if(s.ifModified&&modRes)jQuery.lastModified[s.url]=modRes;if(!jsonp)success();}else
-jQuery.handleError(s,xml,status);complete();if(s.async)xml=null;}};if(s.async){var ival=setInterval(onreadystatechange,13);if(s.timeout>0)setTimeout(function(){if(xml){xml.abort();if(!requestDone)onreadystatechange("timeout");}},s.timeout);}try{xml.send(s.data);}catch(e){jQuery.handleError(s,xml,null,e);}if(!s.async)onreadystatechange();function success(){if(s.success)s.success(data,status);if(s.global)jQuery.event.trigger("ajaxSuccess",[xml,s]);}function complete(){if(s.complete)s.complete(xml,status);if(s.global)jQuery.event.trigger("ajaxComplete",[xml,s]);if(s.global&&!--jQuery.active)jQuery.event.trigger("ajaxStop");}return xml;},handleError:function(s,xml,status,e){if(s.error)s.error(xml,status,e);if(s.global)jQuery.event.trigger("ajaxError",[xml,s,e]);},active:0,httpSuccess:function(r){try{return!r.status&&location.protocol=="file:"||(r.status>=200&&r.status<300)||r.status==304||r.status==1223||jQuery.browser.safari&&r.status==undefined;}catch(e){}return false;},httpNotModified:function(xml,url){try{var xmlRes=xml.getResponseHeader("Last-Modified");return xml.status==304||xmlRes==jQuery.lastModified[url]||jQuery.browser.safari&&xml.status==undefined;}catch(e){}return false;},httpData:function(r,type){var ct=r.getResponseHeader("content-type");var xml=type=="xml"||!type&&ct&&ct.indexOf("xml")>=0;var data=xml?r.responseXML:r.responseText;if(xml&&data.documentElement.tagName=="parsererror")throw"parsererror";if(type=="script")jQuery.globalEval(data);if(type=="json")data=eval("("+data+")");return data;},param:function(a){var s=[];if(a.constructor==Array||a.jquery)jQuery.each(a,function(){s.push(encodeURIComponent(this.name)+"="+encodeURIComponent(this.value));});else
-for(var j in a)if(a[j]&&a[j].constructor==Array)jQuery.each(a[j],function(){s.push(encodeURIComponent(j)+"="+encodeURIComponent(this));});else
-s.push(encodeURIComponent(j)+"="+encodeURIComponent(a[j]));return s.join("&").replace(/%20/g,"+");}});jQuery.fn.extend({show:function(speed,callback){return speed?this.animate({height:"show",width:"show",opacity:"show"},speed,callback):this.filter(":hidden").each(function(){this.style.display=this.oldblock||"";if(jQuery.css(this,"display")=="none"){var elem=jQuery("<"+this.tagName+" />").appendTo("body");this.style.display=elem.css("display");if(this.style.display=="none")this.style.display="block";elem.remove();}}).end();},hide:function(speed,callback){return speed?this.animate({height:"hide",width:"hide",opacity:"hide"},speed,callback):this.filter(":visible").each(function(){this.oldblock=this.oldblock||jQuery.css(this,"display");this.style.display="none";}).end();},_toggle:jQuery.fn.toggle,toggle:function(fn,fn2){return jQuery.isFunction(fn)&&jQuery.isFunction(fn2)?this._toggle(fn,fn2):fn?this.animate({height:"toggle",width:"toggle",opacity:"toggle"},fn,fn2):this.each(function(){jQuery(this)[jQuery(this).is(":hidden")?"show":"hide"]();});},slideDown:function(speed,callback){return this.animate({height:"show"},speed,callback);},slideUp:function(speed,callback){return this.animate({height:"hide"},speed,callback);},slideToggle:function(speed,callback){return this.animate({height:"toggle"},speed,callback);},fadeIn:function(speed,callback){return this.animate({opacity:"show"},speed,callback);},fadeOut:function(speed,callback){return this.animate({opacity:"hide"},speed,callback);},fadeTo:function(speed,to,callback){return this.animate({opacity:to},speed,callback);},animate:function(prop,speed,easing,callback){var optall=jQuery.speed(speed,easing,callback);return this[optall.queue===false?"each":"queue"](function(){if(this.nodeType!=1)return false;var opt=jQuery.extend({},optall);var hidden=jQuery(this).is(":hidden"),self=this;for(var p in prop){if(prop[p]=="hide"&&hidden||prop[p]=="show"&&!hidden)return jQuery.isFunction(opt.complete)&&opt.complete.apply(this);if(p=="height"||p=="width"){opt.display=jQuery.css(this,"display");opt.overflow=this.style.overflow;}}if(opt.overflow!=null)this.style.overflow="hidden";opt.curAnim=jQuery.extend({},prop);jQuery.each(prop,function(name,val){var e=new jQuery.fx(self,opt,name);if(/toggle|show|hide/.test(val))e[val=="toggle"?hidden?"show":"hide":val](prop);else{var parts=val.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/),start=e.cur(true)||0;if(parts){var end=parseFloat(parts[2]),unit=parts[3]||"px";if(unit!="px"){self.style[name]=(end||1)+unit;start=((end||1)/e.cur(true))*start;self.style[name]=start+unit;}if(parts[1])end=((parts[1]=="-="?-1:1)*end)+start;e.custom(start,end,unit);}else
-e.custom(start,val,"");}});return true;});},queue:function(type,fn){if(jQuery.isFunction(type)||(type&&type.constructor==Array)){fn=type;type="fx";}if(!type||(typeof type=="string"&&!fn))return queue(this[0],type);return this.each(function(){if(fn.constructor==Array)queue(this,type,fn);else{queue(this,type).push(fn);if(queue(this,type).length==1)fn.apply(this);}});},stop:function(clearQueue,gotoEnd){var timers=jQuery.timers;if(clearQueue)this.queue([]);this.each(function(){for(var i=timers.length-1;i>=0;i--)if(timers[i].elem==this){if(gotoEnd)timers[i](true);timers.splice(i,1);}});if(!gotoEnd)this.dequeue();return this;}});var queue=function(elem,type,array){if(!elem)return undefined;type=type||"fx";var q=jQuery.data(elem,type+"queue");if(!q||array)q=jQuery.data(elem,type+"queue",array?jQuery.makeArray(array):[]);return q;};jQuery.fn.dequeue=function(type){type=type||"fx";return this.each(function(){var q=queue(this,type);q.shift();if(q.length)q[0].apply(this);});};jQuery.extend({speed:function(speed,easing,fn){var opt=speed&&speed.constructor==Object?speed:{complete:fn||!fn&&easing||jQuery.isFunction(speed)&&speed,duration:speed,easing:fn&&easing||easing&&easing.constructor!=Function&&easing};opt.duration=(opt.duration&&opt.duration.constructor==Number?opt.duration:{slow:600,fast:200}[opt.duration])||400;opt.old=opt.complete;opt.complete=function(){if(opt.queue!==false)jQuery(this).dequeue();if(jQuery.isFunction(opt.old))opt.old.apply(this);};return opt;},easing:{linear:function(p,n,firstNum,diff){return firstNum+diff*p;},swing:function(p,n,firstNum,diff){return((-Math.cos(p*Math.PI)/2)+0.5)*diff+firstNum;}},timers:[],timerId:null,fx:function(elem,options,prop){this.options=options;this.elem=elem;this.prop=prop;if(!options.orig)options.orig={};}});jQuery.fx.prototype={update:function(){if(this.options.step)this.options.step.apply(this.elem,[this.now,this]);(jQuery.fx.step[this.prop]||jQuery.fx.step._default)(this);if(this.prop=="height"||this.prop=="width")this.elem.style.display="block";},cur:function(force){if(this.elem[this.prop]!=null&&this.elem.style[this.prop]==null)return this.elem[this.prop];var r=parseFloat(jQuery.css(this.elem,this.prop,force));return r&&r>-10000?r:parseFloat(jQuery.curCSS(this.elem,this.prop))||0;},custom:function(from,to,unit){this.startTime=(new Date()).getTime();this.start=from;this.end=to;this.unit=unit||this.unit||"px";this.now=this.start;this.pos=this.state=0;this.update();var self=this;function t(gotoEnd){return self.step(gotoEnd);}t.elem=this.elem;jQuery.timers.push(t);if(jQuery.timerId==null){jQuery.timerId=setInterval(function(){var timers=jQuery.timers;for(var i=0;i<timers.length;i++)if(!timers[i]())timers.splice(i--,1);if(!timers.length){clearInterval(jQuery.timerId);jQuery.timerId=null;}},13);}},show:function(){this.options.orig[this.prop]=jQuery.attr(this.elem.style,this.prop);this.options.show=true;this.custom(0,this.cur());if(this.prop=="width"||this.prop=="height")this.elem.style[this.prop]="1px";jQuery(this.elem).show();},hide:function(){this.options.orig[this.prop]=jQuery.attr(this.elem.style,this.prop);this.options.hide=true;this.custom(this.cur(),0);},step:function(gotoEnd){var t=(new Date()).getTime();if(gotoEnd||t>this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var done=true;for(var i in this.options.curAnim)if(this.options.curAnim[i]!==true)done=false;if(done){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(jQuery.css(this.elem,"display")=="none")this.elem.style.display="block";}if(this.options.hide)this.elem.style.display="none";if(this.options.hide||this.options.show)for(var p in this.options.curAnim)jQuery.attr(this.elem.style,p,this.options.orig[p]);}if(done&&jQuery.isFunction(this.options.complete))this.options.complete.apply(this.elem);return false;}else{var n=t-this.startTime;this.state=n/this.options.duration;this.pos=jQuery.easing[this.options.easing||(jQuery.easing.swing?"swing":"linear")](this.state,n,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update();}return true;}};jQuery.fx.step={scrollLeft:function(fx){fx.elem.scrollLeft=fx.now;},scrollTop:function(fx){fx.elem.scrollTop=fx.now;},opacity:function(fx){jQuery.attr(fx.elem.style,"opacity",fx.now);},_default:function(fx){fx.elem.style[fx.prop]=fx.now+fx.unit;}};jQuery.fn.offset=function(){var left=0,top=0,elem=this[0],results;if(elem)with(jQuery.browser){var parent=elem.parentNode,offsetChild=elem,offsetParent=elem.offsetParent,doc=elem.ownerDocument,safari2=safari&&parseInt(version)<522&&!/adobeair/i.test(userAgent),fixed=jQuery.css(elem,"position")=="fixed";if(elem.getBoundingClientRect){var box=elem.getBoundingClientRect();add(box.left+Math.max(doc.documentElement.scrollLeft,doc.body.scrollLeft),box.top+Math.max(doc.documentElement.scrollTop,doc.body.scrollTop));add(-doc.documentElement.clientLeft,-doc.documentElement.clientTop);}else{add(elem.offsetLeft,elem.offsetTop);while(offsetParent){add(offsetParent.offsetLeft,offsetParent.offsetTop);if(mozilla&&!/^t(able|d|h)$/i.test(offsetParent.tagName)||safari&&!safari2)border(offsetParent);if(!fixed&&jQuery.css(offsetParent,"position")=="fixed")fixed=true;offsetChild=/^body$/i.test(offsetParent.tagName)?offsetChild:offsetParent;offsetParent=offsetParent.offsetParent;}while(parent&&parent.tagName&&!/^body|html$/i.test(parent.tagName)){if(!/^inline|table.*$/i.test(jQuery.css(parent,"display")))add(-parent.scrollLeft,-parent.scrollTop);if(mozilla&&jQuery.css(parent,"overflow")!="visible")border(parent);parent=parent.parentNode;}if((safari2&&(fixed||jQuery.css(offsetChild,"position")=="absolute"))||(mozilla&&jQuery.css(offsetChild,"position")!="absolute"))add(-doc.body.offsetLeft,-doc.body.offsetTop);if(fixed)add(Math.max(doc.documentElement.scrollLeft,doc.body.scrollLeft),Math.max(doc.documentElement.scrollTop,doc.body.scrollTop));}results={top:top,left:left};}function border(elem){add(jQuery.curCSS(elem,"borderLeftWidth",true),jQuery.curCSS(elem,"borderTopWidth",true));}function add(l,t){left+=parseInt(l)||0;top+=parseInt(t)||0;}return results;};})();
\ No newline at end of file
diff --git a/www/js/s3Slider.js b/www/js/s3Slider.js
deleted file mode 100755
index 7ec1d2072cb9f9481a1d77290a7df616703318da..0000000000000000000000000000000000000000
--- a/www/js/s3Slider.js
+++ /dev/null
@@ -1,107 +0,0 @@
-/* ------------------------------------------------------------------------
-	s3Slider
-	
-	Developped By: Boban Karišik -> http://www.serie3.info/
-        CSS Help: Mészáros Róbert -> http://www.perspectived.com/
-	Version: 1.0
-	
-	Copyright: Feel free to redistribute the script/modify it, as
-			   long as you leave my infos at the top.
-------------------------------------------------------------------------- */
-
-
-(function($){  
-
-    $.fn.s3Slider = function(vars) {       
-        
-        var element     = this;
-        var timeOut     = (vars.timeOut != undefined) ? vars.timeOut : 4000;
-        var current     = null;
-        var timeOutFn   = null;
-        var faderStat   = true;
-        var mOver       = false;
-        var items       = $("#" + element[0].id + "Content ." + element[0].id + "Image");
-        var itemsSpan   = $("#" + element[0].id + "Content ." + element[0].id + "Image span");
-            
-        items.each(function(i) {
-    
-            $(items[i]).mouseover(function() {
-               mOver = true;
-            });
-            
-            $(items[i]).mouseout(function() {
-                mOver   = false;
-                fadeElement(true);
-            });
-            
-        });
-        
-        var fadeElement = function(isMouseOut) {
-            var thisTimeOut = (isMouseOut) ? (timeOut/2) : timeOut;
-            thisTimeOut = (faderStat) ? 10 : thisTimeOut;
-            if(items.length > 0) {
-                timeOutFn = setTimeout(makeSlider, thisTimeOut);
-            } else {
-                console.log("Poof..");
-            }
-        }
-        
-        var makeSlider = function() {
-            current = (current != null) ? current : items[(items.length-1)];
-            var currNo      = jQuery.inArray(current, items) + 1
-            currNo = (currNo == items.length) ? 0 : (currNo - 1);
-            var newMargin   = $(element).width() * currNo;
-            if(faderStat == true) {
-                if(!mOver) {
-                    $(items[currNo]).fadeIn((timeOut/6), function() {
-                        if($(itemsSpan[currNo]).css('bottom') == 0) {
-                            $(itemsSpan[currNo]).slideUp((timeOut/6), function() {
-                                faderStat = false;
-                                current = items[currNo];
-                                if(!mOver) {
-                                    fadeElement(false);
-                                }
-                            });
-                        } else {
-                            $(itemsSpan[currNo]).slideDown((timeOut/6), function() {
-                                faderStat = false;
-                                current = items[currNo];
-                                if(!mOver) {
-                                    fadeElement(false);
-                                }
-                            });
-                        }
-                    });
-                }
-            } else {
-                if(!mOver) {
-                    if($(itemsSpan[currNo]).css('bottom') == 0) {
-                        $(itemsSpan[currNo]).slideDown((timeOut/6), function() {
-                            $(items[currNo]).fadeOut((timeOut/6), function() {
-                                faderStat = true;
-                                current = items[(currNo+1)];
-                                if(!mOver) {
-                                    fadeElement(false);
-                                }
-                            });
-                        });
-                    } else {
-                        $(itemsSpan[currNo]).slideUp((timeOut/6), function() {
-                        $(items[currNo]).fadeOut((timeOut/6), function() {
-                                faderStat = true;
-                                current = items[(currNo+1)];
-                                if(!mOver) {
-                                    fadeElement(false);
-                                }
-                            });
-                        });
-                    }
-                }
-            }
-        }
-        
-        makeSlider();
-
-    };  
-
-})(jQuery);  
\ No newline at end of file
diff --git a/www/js/script.js b/www/js/script.js
deleted file mode 100755
index 98c10087438ca0941054d57d1a3c34d434dce1e6..0000000000000000000000000000000000000000
--- a/www/js/script.js
+++ /dev/null
@@ -1,15 +0,0 @@
-// JavaScript Document
-
-
-$(document).ready(function(){
-	$('div.rounded').wrap('<div class="cadre"></div>');
-	$('div.cadre').prepend('<div class="cadre_hd"></div><div class="cadre_hg"></div>');
-	$('div.cadre').append('<div class="cadre_bd"></div><div class="cadre_bg"></div>');
-});
-
-
-$(document).ready(function() {
-	$('#slider').s3Slider({
-		timeOut: 4000
-	});
-});
diff --git a/www/screenshot.php b/www/screenshot.php
deleted file mode 100644
index d8ad97506e3d8ca9520948bd9f5fa4cd88dcc8fb..0000000000000000000000000000000000000000
--- a/www/screenshot.php
+++ /dev/null
@@ -1,111 +0,0 @@
-<?php
-$name = 'screenshot';
-$javascript = array('jquery','animated-menu','jquery.galleria');
-$css = array('galleria');
-
-include_once('utils.php');
-
-include('include/header.php');
-
-?>
-    <div id="content">
-      <div id="main-image">&nbsp;</div>
-      <ul class="gallery">
-        <?php
-
-        $images = array(
-          array('assistant-1.png','File menu', 'state' => 'active'),
-          array('main-edit.png','Edit menu'),
-          array('main-view.png','View menu'),
-          array('main-help.png','Help menu'),
-          array('assistant-2-.png','Installation wizard welcome'),
-          array('assistant-3-.png','Account type selector'),
-          array('assistant-4-.png','Account configuration'),
-          array('assistant-5-.png','Nat configuration'),
-          array('edit-account.png','General settings'),
-          array('edit-pref-gen.png','General settings'),
-          array('edit-pref-audio.png','Audio settings'),
-          array('edit-pref-rec.png','Record settings'),
-          array('incoming-call.png','Incoming call'),
-          array('main-history.png','Call history'),
-          array('main-history-opt.png','Call history options'),
-          array('main-transfer.png','Call transfer'),
-          array('account-edit.png','Account add dialog'),
-          array('account-add.png','Account edit dialog')          
-        );
-        
-        
-        foreach($images as $image){
-          $fileName    = $image[0];
-          $description = $image[1];
-          echo "<li ";
-          if($image['state'] != null)
-            echo 'class="active" > ';
-          echo "<a href='img/gallery/$fileName' title='$description'><img src='img/gallery/thumbs/$fileName' alt='$description'></a></li>";
-        }
-        
-        ?>
-      </ul>
-    </div>
-    <!--
-        Thanks to http://devkick.com/lab/galleria/ for doing the galleria plugin. 
-        The code snipet bellow is taken from the demo1. It probably saved many hours of work.
-        
-        I should thank all the jQuery team and users for making one of the most awesome javascript library out there.
-        http://jquery.org
-    -->
-    <script type="text/javascript">       	
-	    jQuery(function($) {
-		
-		    $('.gallery_demo_unstyled').addClass('gallery_demo'); // adds new class name to maintain degradability
-		
-		    $('ul.gallery').galleria({
-			    history   : true, // activates the history object for bookmarking, back-button etc.
-			    clickNext : true, // helper for making the image clickable
-			    insert : '#main-image', 
-			    onImage   : function(image,caption,thumb) { // let's add some image effects for demonstration purposes
-				
-				    // fade in the image & caption
-				    if(! ($.browser.mozilla && navigator.appVersion.indexOf("Win")!=-1) ) { // FF/Win fades large images terribly slow
-					    image.css('display','none').fadeIn(1000);
-				    }
-				    caption.css('display','none').fadeIn(1000);
-				
-				    // fetch the thumbnail container
-				    var _li = thumb.parents('li');
-				
-				    // fade out inactive thumbnail
-				    _li.siblings().children('img.selected').fadeTo(500,0.3);
-				
-				    // fade in active thumbnail
-				    thumb.fadeTo('fast',1).addClass('selected');
-				
-				    // add a title for the clickable image
-				    image.attr('title','Next image >>');
-			    },
-			    onThumb : function(thumb) { // thumbnail effects goes here
-				
-				    // fetch the thumbnail container
-				    var _li = thumb.parents('li');
-				
-				    // if thumbnail is active, fade all the way.
-				    var _fadeTo = _li.is('.active') ? '1' : '0.3';
-				
-				    // fade in the thumbnail when finnished loading
-				    thumb.css({display:'none',opacity:_fadeTo}).fadeIn(1500);
-				
-				    // hover effects
-				    thumb.hover(
-					    function() { thumb.fadeTo('fast',1); },
-					    function() { _li.not('.active').children('img').fadeTo('fast',0.3); } // don't fade out if the parent is active
-				    )
-			    }
-		    });
-
-	    });
-    </script>
-<?php
-
-include('include/footer.php');
-
-?>
diff --git a/www/utils.php b/www/utils.php
deleted file mode 100644
index 633d33aef11a93e65e8f13ef72f11c7963286c5d..0000000000000000000000000000000000000000
--- a/www/utils.php
+++ /dev/null
@@ -1,6 +0,0 @@
-<?php
-
-$GLOBALS['SFLPHONE_LATEST_VERSION'] = '0.9.3-3';
-$GLOBALS['SFLPHONE_RELEASE_DATE'] = '2009 Feb 28';
-
-?>