Added extension field to gateway. Create server object when a new connection is created
[ipypbx] / src / ipypbx / controllers.py
index 61fc6f9..5285e28 100644 (file)
@@ -160,6 +160,7 @@ class BaseController(QtCore.QObject):
         # Default signals handle row selection, Add and Save buttons.
         return [
             (getattr(self.views, self.basename + 'Add'), 'clicked()', self.add),
+            (self.model, 'primeInsert(int,QSqlRecord&)', self.objectAdded),
             (self.view_list.selectionModel(),
              'currentRowChanged(QModelIndex,QModelIndex)',
              self.view_display, 'setCurrentModelIndex(QModelIndex)'),
@@ -218,7 +219,7 @@ class ConnectionController(BaseController):
                 local_port = None
 
             server = http.FreeswitchConfigServer()
-            server.setSocket(local_ip_address, local_port)
+            server.setSocketData(local_ip_address, local_port)
             server.startServer()
             self.servers.append(server)
     
@@ -237,20 +238,18 @@ class ConnectionController(BaseController):
             #    self.add()
         
 
-    def connectionAdd(self):
+    def objectAdded(self, row, record):
         """
         New connection added.
         """
-        num_rows = self.model.rowCount()
-        
+        self.addServer(record.value('host'), record.value('port'))        
         
     def addServer(self, host, port):
         """
         Add a new config server.
         """
-
         server = http.FreeswitchConfigServer(self)
-        server.setSocket(host, port)
+        server.setSocketData(host, port)
         server.startServer()
         self.servers.append(server)
 
@@ -267,7 +266,6 @@ class ConnectionChangeListenerController(BaseController):
         connection_controller = self.parent().controllers['connection']
         
         signals = [
-            (self.model, 'primeInsert(int,QSqlRecord&)', self.setConnectionId),
             (connection_controller.view_list.selectionModel(),
              'currentRowChanged(QModelIndex,QModelIndex)',
              self.connectionChange)]
@@ -293,7 +291,7 @@ class ConnectionChangeListenerController(BaseController):
             if not self.model.rowCount():
                 self.add()
 
-    def setConnectionId(self, row, record):
+    def objectAdded(self, row, record):
         """
         Set connection_id from currently selected connection.
         """
@@ -346,6 +344,7 @@ class GatewayController(ConnectionChangeListenerController):
         QtCore.QT_TRANSLATE_NOOP('MainWindow', 'Password'),
         QtCore.QT_TRANSLATE_NOOP('MainWindow', 'Realm'),
         QtCore.QT_TRANSLATE_NOOP('MainWindow', 'From Domain'),
+        QtCore.QT_TRANSLATE_NOOP('MainWindow', 'Extension'),
         QtCore.QT_TRANSLATE_NOOP('MainWindow', 'Expire In Seconds'),
         QtCore.QT_TRANSLATE_NOOP('MainWindow', 'Retry In Seconds'),
         QtCore.QT_TRANSLATE_NOOP('MainWindow', 'Caller ID In From Field'),