gyrus r341 - in branches/gyrus-python: . src



Author: gpoo
Date: Tue Mar 25 03:15:07 2008
New Revision: 341
URL: http://svn.gnome.org/viewvc/gyrus?rev=341&view=rev

Log:
2008-03-24  German Poo-Caaman~o  <gpoo ubiobio cl>

        * src/*.py: Fixed the tabs/spaces to be PEP-8 compliant.


Modified:
   branches/gyrus-python/ChangeLog
   branches/gyrus-python/src/gyrus.py
   branches/gyrus-python/src/gyrus_acl.py
   branches/gyrus-python/src/gyrus_admin_mailbox.py
   branches/gyrus-python/src/gyrus_constant.py
   branches/gyrus-python/src/gyrus_find.py
   branches/gyrus-python/src/gyrus_print.py
   branches/gyrus-python/src/gyrus_session.py

Modified: branches/gyrus-python/src/gyrus.py
==============================================================================
--- branches/gyrus-python/src/gyrus.py	(original)
+++ branches/gyrus-python/src/gyrus.py	Tue Mar 25 03:15:07 2008
@@ -80,157 +80,157 @@
 LOGO = os.path.join (config.ARTDIR, "gyrus.png")
 
 perm = [None,
-	_("lookup"),
-	_("read"),
-	_("seen"),
-	_("write"),
-	_("insert"),
-	_("post"),
-	_("create"),
-	_("delete"),
-	_("admin")]
+    _("lookup"),
+    _("read"),
+    _("seen"),
+    _("write"),
+    _("insert"),
+    _("post"),
+    _("create"),
+    _("delete"),
+    _("admin")]
 
 class GyrusAdmin:
-	def __init__ (self):
-		table_page = None
-		label_host = None
-		label_port = None
-		label_user = None
-		entry_assigned = None
-		entry_free = None
-		entry_mailbox = None
-		button_connect = None
-		entry_quota_new = None
-		button_quota_apply = None
-		treeview_users = None
-		treeview_acl = None
-		image_cnx = None
-		label_cnx = None
-		cnx = None
-		newname = None		# temporal for validate name of new entry on acl
-		newnameok = None 	# temporal for validate name of new entry on acl
-		session_name = None
-		session_host = None
-		session_port = None
-		session_user = None
-		session_tls = None
+    def __init__ (self):
+        table_page = None
+        label_host = None
+        label_port = None
+        label_user = None
+        entry_assigned = None
+        entry_free = None
+        entry_mailbox = None
+        button_connect = None
+        entry_quota_new = None
+        button_quota_apply = None
+        treeview_users = None
+        treeview_acl = None
+        image_cnx = None
+        label_cnx = None
+        cnx = None
+        newname = None      # temporal for validate name of new entry on acl
+        newnameok = None    # temporal for validate name of new entry on acl
+        session_name = None
+        session_host = None
+        session_port = None
+        session_user = None
+        session_tls = None
 
 class Gyrus:
-	def __init__ (self):
-		# window dialog about
-		self.about = self.create_about_dialog()
-
-		# lists of server imaps connected
-		self.imap_server = {"page":"admin"}
-		
-		# get preferences
-		self.model_session = gyrus_session.get_model_treeview_sessions ()
-		gyrus_session.load_preferences(self)
-
-		# create man container
-		vbox = gtk.VBox(False,0)
-
-		# create main window
-		window = gtk.Window()
-		window.set_position(1)
-		window.set_default_size(DEFAULT_WIDTH,DEFAULT_HIGH)
-		window.set_title (config.PACKAGE)
-		window.set_icon (gtk.gdk.pixbuf_new_from_file(LOGO))
-		window.connect ("delete_event",self.quit_program)
-
-		window.add (vbox)
-
-		# create a UIManager instance
-		uimanager = gtk.UIManager()
-
-		# add the accelerator group to the toplevel window
-		accelgroup = uimanager.get_accel_group()
-		window.add_accel_group (accelgroup)
-
-		# create an ActionGroup
-		self.actiongroup_window = gtk.ActionGroup ('Window Actions')
-		self.actiongroup_server = gtk.ActionGroup ('Server Actions')
-		self.actiongroup_mailbox = gtk.ActionGroup ('Mailbox Actions')
-		self.actiongroup_acl = gtk.ActionGroup ('ACL Actions')
-
-		# change sensitive status
-		self.actiongroup_window.set_sensitive (True)
-		self.actiongroup_server.set_sensitive (False)
-		self.actiongroup_mailbox.set_sensitive (False)
-		self.actiongroup_acl.set_sensitive (False)
-
-		# creat actions
-	        self.actiongroup_window.add_actions([
-			 ('FileMenu', None, _('_File')),
-			 ('OpenSession', gtk.STOCK_DISCONNECT, _('Go to server...'),'<control>O', 
-			 _('Show the list of servers'), gyrus_session.load_interface),
-			 ('Quit', gtk.STOCK_QUIT, _('_Quit'), None, _('Quit the Program'), self.quit_program),
-			 ('EditMenu', None, _('_Edit')),
-			 ('AclMenu', None, _('_ACL')),
-			 ('ViewMenu', None, _('_View')),
-			 ('HelpMenu', None, _('_Help')),
-			 ('About', gtk.STOCK_ABOUT, None, None, None, self.show_about),
-			 ], user_data=self)
-
-		self.actiongroup_server.add_actions([
-			 ('AddMailbox', gtk.STOCK_ADD, _('Add mailbox'),None, _('Add a mailbox under the one selected'), self.on_addmailbox_action),
-			 ('Find', gtk.STOCK_FIND, _('Find mailbox'),None, _('Search for a mailbox in current server'), self.on_find_action),
-			 ('Refresh', gtk.STOCK_REFRESH, None,'<control>R', _('Refresh the mailbox list'), self.on_refresh_action),
-			 ('Report', gtk.STOCK_INDEX, _('Create report'),None, _('Create report of users with quota problems'), self.on_report_action),
-			])
-
-		self.actiongroup_mailbox.add_actions([
-			 ('RemoveMailbox', gtk.STOCK_REMOVE, _('Remove mailbox'), None, 
-			 _('Remove current mailbox from the server'), self.on_removemailbox_action),
-			 ('EntryNew', gtk.STOCK_ADD, _('New ACL'), '<control><shift>N', 
-			 _('Create a new ACL entry in current mailbox'), self.on_entryaclnew_action),
-			])
-
-		self.actiongroup_acl.add_actions([
-			 ('EntryRename', gtk.STOCK_EDIT, _('Rename ACL'), '<control><shift>R', 
-			 _('Rename selected ACL entry'), self.on_entryaclrename_action),
-			 ('EntryDelete', gtk.STOCK_REMOVE, _('Delete ACL'), '<control><shift>D', 
-			 _('Delete selected ACL entry'), self.on_entryacldelete_action),
-			])
-
-
-		# add the actiongroup to the uimanager
-		uimanager.insert_action_group (self.actiongroup_window,0)
-		uimanager.insert_action_group (self.actiongroup_server,0)
-		uimanager.insert_action_group (self.actiongroup_mailbox,0)
-		uimanager.insert_action_group (self.actiongroup_acl,0)
-
-		# ad a UI description
-		uimanager.add_ui_from_string (UI)
-
-		# create a MenuBar
-		menubar = uimanager.get_widget ('/MainMenu')
-		vbox.pack_start (menubar, False)
-
-		# create a Toolbar
-		toolbar = uimanager.get_widget ('/MainToolbar')
-		###toolbar.set_style(gtk.TOOLBAR_ICONS)
-
-		vbox.pack_start (toolbar, False)
-
-		# create notebook
-		self.notebook = gtk.Notebook()	
-		self.notebook.connect('switch-page',self.on_notebook_switch_page)		
-
-		vbox.pack_start (self.notebook, False)
-		vbox.set_child_packing (self.notebook,True,True,0,gtk.PACK_START)
-
-		window.show_all()
-		return
-	
-	def main(self):
-        	"Begin cicle main"
-		gtk.main()
-
-	def quit_program(self,data1=None,data2=None):
-		"Quit of program"
-		gtk.main_quit()
-	
+    def __init__ (self):
+        # window dialog about
+        self.about = self.create_about_dialog()
+
+        # lists of server imaps connected
+        self.imap_server = {"page":"admin"}
+
+        # get preferences
+        self.model_session = gyrus_session.get_model_treeview_sessions ()
+        gyrus_session.load_preferences(self)
+
+        # create man container
+        vbox = gtk.VBox(False,0)
+
+        # create main window
+        window = gtk.Window()
+        window.set_position(1)
+        window.set_default_size(DEFAULT_WIDTH,DEFAULT_HIGH)
+        window.set_title (config.PACKAGE)
+        window.set_icon (gtk.gdk.pixbuf_new_from_file(LOGO))
+        window.connect ("delete_event",self.quit_program)
+
+        window.add (vbox)
+
+        # create a UIManager instance
+        uimanager = gtk.UIManager()
+
+        # add the accelerator group to the toplevel window
+        accelgroup = uimanager.get_accel_group()
+        window.add_accel_group (accelgroup)
+
+        # create an ActionGroup
+        self.actiongroup_window = gtk.ActionGroup ('Window Actions')
+        self.actiongroup_server = gtk.ActionGroup ('Server Actions')
+        self.actiongroup_mailbox = gtk.ActionGroup ('Mailbox Actions')
+        self.actiongroup_acl = gtk.ActionGroup ('ACL Actions')
+
+        # change sensitive status
+        self.actiongroup_window.set_sensitive (True)
+        self.actiongroup_server.set_sensitive (False)
+        self.actiongroup_mailbox.set_sensitive (False)
+        self.actiongroup_acl.set_sensitive (False)
+
+        # creat actions
+            self.actiongroup_window.add_actions([
+             ('FileMenu', None, _('_File')),
+             ('OpenSession', gtk.STOCK_DISCONNECT, _('Go to server...'),'<control>O',
+             _('Show the list of servers'), gyrus_session.load_interface),
+             ('Quit', gtk.STOCK_QUIT, _('_Quit'), None, _('Quit the Program'), self.quit_program),
+             ('EditMenu', None, _('_Edit')),
+             ('AclMenu', None, _('_ACL')),
+             ('ViewMenu', None, _('_View')),
+             ('HelpMenu', None, _('_Help')),
+             ('About', gtk.STOCK_ABOUT, None, None, None, self.show_about),
+             ], user_data=self)
+
+        self.actiongroup_server.add_actions([
+             ('AddMailbox', gtk.STOCK_ADD, _('Add mailbox'),None, _('Add a mailbox under the one selected'), self.on_addmailbox_action),
+             ('Find', gtk.STOCK_FIND, _('Find mailbox'),None, _('Search for a mailbox in current server'), self.on_find_action),
+             ('Refresh', gtk.STOCK_REFRESH, None,'<control>R', _('Refresh the mailbox list'), self.on_refresh_action),
+             ('Report', gtk.STOCK_INDEX, _('Create report'),None, _('Create report of users with quota problems'), self.on_report_action),
+            ])
+
+        self.actiongroup_mailbox.add_actions([
+             ('RemoveMailbox', gtk.STOCK_REMOVE, _('Remove mailbox'), None,
+             _('Remove current mailbox from the server'), self.on_removemailbox_action),
+             ('EntryNew', gtk.STOCK_ADD, _('New ACL'), '<control><shift>N',
+             _('Create a new ACL entry in current mailbox'), self.on_entryaclnew_action),
+            ])
+
+        self.actiongroup_acl.add_actions([
+             ('EntryRename', gtk.STOCK_EDIT, _('Rename ACL'), '<control><shift>R',
+             _('Rename selected ACL entry'), self.on_entryaclrename_action),
+             ('EntryDelete', gtk.STOCK_REMOVE, _('Delete ACL'), '<control><shift>D',
+             _('Delete selected ACL entry'), self.on_entryacldelete_action),
+            ])
+
+
+        # add the actiongroup to the uimanager
+        uimanager.insert_action_group (self.actiongroup_window,0)
+        uimanager.insert_action_group (self.actiongroup_server,0)
+        uimanager.insert_action_group (self.actiongroup_mailbox,0)
+        uimanager.insert_action_group (self.actiongroup_acl,0)
+
+        # ad a UI description
+        uimanager.add_ui_from_string (UI)
+
+        # create a MenuBar
+        menubar = uimanager.get_widget ('/MainMenu')
+        vbox.pack_start (menubar, False)
+
+        # create a Toolbar
+        toolbar = uimanager.get_widget ('/MainToolbar')
+        ###toolbar.set_style(gtk.TOOLBAR_ICONS)
+
+        vbox.pack_start (toolbar, False)
+
+        # create notebook
+        self.notebook = gtk.Notebook()
+        self.notebook.connect('switch-page',self.on_notebook_switch_page)
+
+        vbox.pack_start (self.notebook, False)
+        vbox.set_child_packing (self.notebook,True,True,0,gtk.PACK_START)
+
+        window.show_all()
+        return
+
+    def main(self):
+            "Begin cicle main"
+        gtk.main()
+
+    def quit_program(self,data1=None,data2=None):
+        "Quit of program"
+        gtk.main_quit()
+
         def show_about (widget,data,self):
                 self.about.show()
 
@@ -251,20 +251,20 @@
 
                 return ad
 
-	def about_delete (self,about,event):
-		 about.hide ()
-		 return True
+    def about_delete (self,about,event):
+         about.hide ()
+         return True
 
-	def append_page_to_notebook(self,session):
-		# load a new instance of table_page
-		admin = self.load_table_page()
+    def append_page_to_notebook(self,session):
+        # load a new instance of table_page
+        admin = self.load_table_page()
 
-		admin.entry_quota_new.set_properties(editable=False)
+        admin.entry_quota_new.set_properties(editable=False)
 
-		admin.label_cnx.set_text(_("Connect"))
-		admin.image_cnx.set_from_stock (gtk.STOCK_DISCONNECT,gtk.ICON_SIZE_BUTTON)
+        admin.label_cnx.set_text(_("Connect"))
+        admin.image_cnx.set_from_stock (gtk.STOCK_DISCONNECT,gtk.ICON_SIZE_BUTTON)
 
-		# create a new page on notebook
+        # create a new page on notebook
                 hbox_image = gtk.HBox(False,0)
                 image = gtk.Image()
                 image.set_from_stock('gtk-close','GTK_ICON_SIZE_MENU')
@@ -273,168 +273,168 @@
                 button = gtk.Button()
                 button.set_relief('GTK_RELIEF_NONE')
                 button.add(hbox_image)
-		button.connect('clicked',self.on_button_page_clicked,admin)
+        button.connect('clicked',self.on_button_page_clicked,admin)
 
-		hbox_b = gtk.HBox(False,0)
+        hbox_b = gtk.HBox(False,0)
                 label = gtk.Label(session.name)
                 hbox_b.pack_start(label,True,False,False)
-		hbox_b.pack_start(button,True,False,False)
+        hbox_b.pack_start(button,True,False,False)
 
                 hbox_image.show()
                 image.show()
                 button.show()
-		label.show()
+        label.show()
+
+        # create treeview/treemodel for users
+        model = gtk.TreeStore(gtk.gdk.Pixbuf,
+                    gobject.TYPE_STRING)
+
+            col = gtk.TreeViewColumn (_("Mailboxs"))
+            col.set_resizable (True)
+        admin.treeview_users.append_column (col)
+        cell = gtk.CellRendererPixbuf()
+        col.pack_start (cell,False)
+        col.add_attribute (cell,"pixbuf",COLUMN_MAILBOX_ICON)
+        cell =  gtk.CellRendererText()
+        col.pack_start (cell,True)
+        col.add_attribute (cell,"text",COLUMN_MAILBOX)
+
+        admin.treeview_users.set_rules_hint (True)
+        admin.treeview_users.set_model (model)
+        admin.treeview_users.set_reorderable(False)
+
+        # create treeview/treemodel for acls
+        model_acl = gtk.ListStore(gobject.TYPE_STRING,
+                    gobject.TYPE_BOOLEAN,
+                    gobject.TYPE_BOOLEAN,
+                    gobject.TYPE_BOOLEAN,
+                    gobject.TYPE_BOOLEAN,
+                    gobject.TYPE_BOOLEAN,
+                    gobject.TYPE_BOOLEAN,
+                    gobject.TYPE_BOOLEAN,
+                    gobject.TYPE_BOOLEAN,
+                    gobject.TYPE_BOOLEAN)
+
+
+        cell = gtk.CellRendererText()
+        cell.set_property('editable',True)
+        cell.connect ('edited',gyrus_acl.on_identifier_edited,admin,self)
+
+        col = gtk.TreeViewColumn (_("identifier"),cell,text=0)
+        col.set_resizable (True)
+        admin.treeview_acl.append_column (col)
+
+        for ncol in range(1,10):
+
+            cell = gtk.CellRendererToggle()
+            cell.set_property('activatable',True)
+            cell.connect ('toggled',gyrus_acl.on_toggled_acl,admin,ncol)
+
+            colp = gtk.TreeViewColumn (perm[ncol],cell)
+            colp.set_resizable (True)
+            colp.add_attribute(cell,"active",ncol)
+            admin.treeview_acl.append_column (colp)
+
+        admin.treeview_acl.set_model (model_acl)
+        admin.treeview_acl.set_reorderable(False)
+
+        admin.label_host.set_label(session.host)
+        admin.label_port.set_label(str(session.port))
+        admin.label_user.set_label(session.user)
+
+        admin.session_name = session.name
+        admin.session_host = session.host
+        admin.session_port = session.port
+        admin.session_user = session.user
+        admin.session_tls = session.tls
+        admin.cnx = None
+
+        admin.button_connect.connect ("clicked", self.on_button_connect_clicked,admin)
+        admin.button_quota_apply.connect ("clicked", self.on_button_quota_apply_clicked,admin)
+
+        selection = admin.treeview_users.get_selection()
+        selection.connect("changed",self.on_users_selection_changed,admin)
+
+        selection = admin.treeview_acl.get_selection()
+        selection.connect("changed",self.on_acl_selection_changed,admin)
+
+        admin.treeview_users.show()
+        admin.treeview_acl.show()
+        admin.table_page.show()
+
+        if admin.session_tls:
+            admin.image_secure.set_from_stock (gtk.STOCK_DIALOG_AUTHENTICATION,gtk.ICON_SIZE_BUTTON)
+            admin.image_secure.show()
+        else:
+            admin.image_secure.hide()
+
+        # add new table at main array
+        table = admin.table_page
+        self.imap_server[table] = admin
+
+        #add new page to notebook
+        page = self.notebook.append_page(admin.table_page,hbox_b)
+        self.notebook.set_current_page(page)
+
+
+    def get_current_gyrus_admin (self):
+        # return the current CyrusAdmin 
+        page = self.notebook.get_current_page()
+        table = self.notebook.get_nth_page(page)
+
+        admin = self.imap_server[table]
+        return admin
+
+    def on_report_action (self,action):
+        admin = self.get_current_gyrus_admin()
+        report = gyrus_print.GyrusReport(admin)
+
+
+    def on_find_action (self,action):
+        gyrus_find.load_page_find(self)
+
+
+    def on_refresh_action (self,action):
+        admin = self.get_current_gyrus_admin()
+        lstore,num_usr = gyrus_admin_mailbox.get_list_of_mailbox(admin)
+        self.refresh_treeview_user (lstore,num_usr)
+
+    def on_entryacldelete_action (self,action):
+        admin = self.get_current_gyrus_admin()
+
+        selection = admin.treeview_acl.get_selection()
+        model,iter = selection.get_selected()
+
+        dialog = gtk.MessageDialog(None,gtk.DIALOG_MODAL, gtk.MESSAGE_QUESTION, 
+                gtk.BUTTONS_YES_NO, _("Really delete this ACL entry?"))
 
-		# create treeview/treemodel for users
-		model = gtk.TreeStore(gtk.gdk.Pixbuf,
-					gobject.TYPE_STRING)
-
-        	col = gtk.TreeViewColumn (_("Mailboxs"))
-	        col.set_resizable (True)
-		admin.treeview_users.append_column (col)
-		cell = gtk.CellRendererPixbuf()
-		col.pack_start (cell,False)
-		col.add_attribute (cell,"pixbuf",COLUMN_MAILBOX_ICON)
-		cell =  gtk.CellRendererText()
-		col.pack_start (cell,True)
-		col.add_attribute (cell,"text",COLUMN_MAILBOX)
-
-		admin.treeview_users.set_rules_hint (True)
-		admin.treeview_users.set_model (model)
-		admin.treeview_users.set_reorderable(False)
-
-		# create treeview/treemodel for acls
-		model_acl = gtk.ListStore(gobject.TYPE_STRING,
-					gobject.TYPE_BOOLEAN,
-					gobject.TYPE_BOOLEAN,
-					gobject.TYPE_BOOLEAN,
-					gobject.TYPE_BOOLEAN,
-					gobject.TYPE_BOOLEAN,
-					gobject.TYPE_BOOLEAN,
-					gobject.TYPE_BOOLEAN,
-					gobject.TYPE_BOOLEAN,
-					gobject.TYPE_BOOLEAN)
-
-
-		cell = gtk.CellRendererText()
-		cell.set_property('editable',True)
-		cell.connect ('edited',gyrus_acl.on_identifier_edited,admin,self)
-
-		col = gtk.TreeViewColumn (_("identifier"),cell,text=0)
-		col.set_resizable (True)
-		admin.treeview_acl.append_column (col)
-		
-		for ncol in range(1,10):
-
-			cell = gtk.CellRendererToggle()
-			cell.set_property('activatable',True)
-			cell.connect ('toggled',gyrus_acl.on_toggled_acl,admin,ncol)
-
-			colp = gtk.TreeViewColumn (perm[ncol],cell)
-			colp.set_resizable (True)
-			colp.add_attribute(cell,"active",ncol)
-			admin.treeview_acl.append_column (colp)
-
-		admin.treeview_acl.set_model (model_acl)
-		admin.treeview_acl.set_reorderable(False)
-
-		admin.label_host.set_label(session.host)
-		admin.label_port.set_label(str(session.port))
-		admin.label_user.set_label(session.user)
-
-		admin.session_name = session.name
-		admin.session_host = session.host
-		admin.session_port = session.port
-		admin.session_user = session.user
-		admin.session_tls = session.tls
-		admin.cnx = None
-
-		admin.button_connect.connect ("clicked", self.on_button_connect_clicked,admin)
-		admin.button_quota_apply.connect ("clicked", self.on_button_quota_apply_clicked,admin)
-
-		selection = admin.treeview_users.get_selection()
-		selection.connect("changed",self.on_users_selection_changed,admin)
-
-		selection = admin.treeview_acl.get_selection()
-		selection.connect("changed",self.on_acl_selection_changed,admin)
-
-		admin.treeview_users.show()
-		admin.treeview_acl.show()
-		admin.table_page.show()
-
-		if admin.session_tls:
-			admin.image_secure.set_from_stock (gtk.STOCK_DIALOG_AUTHENTICATION,gtk.ICON_SIZE_BUTTON)
-			admin.image_secure.show()
-		else:
-			admin.image_secure.hide()
-
-		# add new table at main array
-		table = admin.table_page
-		self.imap_server[table] = admin
-		
-		#add new page to notebook
-		page = self.notebook.append_page(admin.table_page,hbox_b)
-		self.notebook.set_current_page(page)
-
-	
-	def get_current_gyrus_admin (self):
-		# return the current CyrusAdmin 
-		page = self.notebook.get_current_page()
-		table = self.notebook.get_nth_page(page)
-
-		admin = self.imap_server[table]
-		return admin
-
-	def on_report_action (self,action):
-		admin = self.get_current_gyrus_admin()
-		report = gyrus_print.GyrusReport(admin)
-
-
-	def on_find_action (self,action):
-		gyrus_find.load_page_find(self)
-
-	
-	def on_refresh_action (self,action):
-		admin = self.get_current_gyrus_admin()
-		lstore,num_usr = gyrus_admin_mailbox.get_list_of_mailbox(admin)
-		self.refresh_treeview_user (lstore,num_usr)
-	
-	def on_entryacldelete_action (self,action):
-		admin = self.get_current_gyrus_admin()
-
-		selection = admin.treeview_acl.get_selection()
-		model,iter = selection.get_selected()
-
-		dialog = gtk.MessageDialog(None,gtk.DIALOG_MODAL, gtk.MESSAGE_QUESTION, 
-				gtk.BUTTONS_YES_NO, _("Really delete this ACL entry?"))
-
-		result = dialog.run()
-
-		if result == gtk.RESPONSE_YES:
-			mailbox = admin.entry_mailbox.get_text()
-			ident = model.get(iter,COLUMN_IDENTIFIER)
-			gyrus_acl.delete_acl(mailbox,ident[0],admin)
-			gyrus_acl.get_acl_of_mailbox (admin,mailbox)
-
-		dialog.destroy()
-
-	def on_entryaclrename_action (self,action):
-		admin = self.get_current_gyrus_admin()
-		selection = admin.treeview_acl.get_selection()
-		model,iter = selection.get_selected()
-		
-		path = model.get_path(iter)
-		col = admin.treeview_acl.get_column(COLUMN_IDENTIFIER)
-		admin.treeview_acl.set_cursor(path,col,True)
-
-
-	def on_entryaclnew_action (self,action):
-		admin = self.get_current_gyrus_admin()
-
-		# add new iter to model acl	
-		model_acl = admin.treeview_acl.get_model()
-		iter = model_acl.append(None)
-              	model_acl.set(iter,COLUMN_IDENTIFIER,_("identifier"),
+        result = dialog.run()
+
+        if result == gtk.RESPONSE_YES:
+            mailbox = admin.entry_mailbox.get_text()
+            ident = model.get(iter,COLUMN_IDENTIFIER)
+            gyrus_acl.delete_acl(mailbox,ident[0],admin)
+            gyrus_acl.get_acl_of_mailbox (admin,mailbox)
+
+        dialog.destroy()
+
+    def on_entryaclrename_action (self,action):
+        admin = self.get_current_gyrus_admin()
+        selection = admin.treeview_acl.get_selection()
+        model,iter = selection.get_selected()
+
+        path = model.get_path(iter)
+        col = admin.treeview_acl.get_column(COLUMN_IDENTIFIER)
+        admin.treeview_acl.set_cursor(path,col,True)
+
+
+    def on_entryaclnew_action (self,action):
+        admin = self.get_current_gyrus_admin()
+
+        # add new iter to model acl 
+        model_acl = admin.treeview_acl.get_model()
+        iter = model_acl.append(None)
+                model_acl.set(iter,COLUMN_IDENTIFIER,_("identifier"),
                                COLUMN_L,True,
                                COLUMN_R,True,
                                COLUMN_S,True,
@@ -444,354 +444,353 @@
                                COLUMN_C,True,
                                COLUMN_D,True,
                                COLUMN_A,True)
-		
-		# select the iter
-		selection = admin.treeview_acl.get_selection()
-		selection.select_iter(iter)		
-
-		path = model_acl.get_path(iter)
-		col = admin.treeview_acl.get_column(COLUMN_IDENTIFIER)
-		admin.treeview_acl.set_cursor(path,col,True)
-
-
-	def on_removemailbox_action(self,action):
-		admin = self.get_current_gyrus_admin()
-
-		dialog = gtk.MessageDialog(None,gtk.DIALOG_MODAL, gtk.MESSAGE_QUESTION, 
-				gtk.BUTTONS_YES_NO, _("Really delete mailbox and all of its submailboxes?"))
-
-		result = dialog.run()
-		if result == gtk.RESPONSE_YES:
-			# get mailbox name
-			mailbox = admin.entry_mailbox.get_text().strip()
-
-			# remove mailbox
-			res,msg = gyrus_admin_mailbox.remove_mailbox (admin,mailbox)
-
-			if res == True:
-				# refresh list of mailbox
-				lstore , num_usr = gyrus_admin_mailbox.get_list_of_mailbox(admin)
-				self.refresh_treeview_user (lstore,num_usr)
-			else:
-				self.show_message (msg,gtk.MESSAGE_ERROR)
-
-		dialog.destroy()
-		
-	
-	def on_button_page_clicked (self,button,admin):
-		page = self.notebook.page_num(admin.table_page)
-		self.notebook.remove_page(page)
-
-		page = self.notebook.get_current_page()
-
-		if page < 0:
-			self.actiongroup_window.set_sensitive (True)
-			self.actiongroup_server.set_sensitive (False)
-			self.actiongroup_mailbox.set_sensitive (False)
-			self.actiongroup_acl.set_sensitive (False)
-		else:
-			admin = self.get_current_gyrus_admin()
-			self.verify_sensitive_actiongroup(admin)
-
-
-	def on_notebook_switch_page(self,notebook,page,page_num):
- 		table = notebook.get_nth_page (page_num)
- 		admin = self.imap_server[table]
-		self.verify_sensitive_actiongroup (admin)
-
-
-	def verify_sensitive_actiongroup (self,admin):
-		#self.actiongroup_window.set_sensitive (True)
-		#self.actiongroup_server.set_sensitive (True)
-
-		selection = admin.treeview_users.get_selection()
-		model,iter = selection.get_selected()
-
-		if iter:
-			self.actiongroup_mailbox.set_sensitive (True)
-		else:
-			self.actiongroup_mailbox.set_sensitive (False)
-
-		selection = admin.treeview_acl.get_selection()
-		model,iter = selection.get_selected()
-		if iter:
-			self.actiongroup_acl.set_sensitive (True)
-		else:
-			self.actiongroup_acl.set_sensitive (False)
-
-
-
-	def load_table_page (self):
-		glade_file = gtk.glade.XML (os.path.join (config.GLADEDIR, "page.glade"),"table_page",None)
-
-		admin = GyrusAdmin()
-
-		admin.table_page = glade_file.get_widget ("table_page")
-		admin.label_host = glade_file.get_widget ("label_host")
-		admin.label_port = glade_file.get_widget ("label_port")
-		admin.label_user = glade_file.get_widget ("label_user")
-		admin.label_cnx = glade_file.get_widget ("label_cnx")
-		admin.image_cnx = glade_file.get_widget ("image_cnx")
-		admin.image_secure = glade_file.get_widget ("image_secure")
-		admin.button_connect = glade_file.get_widget ("button_connect")
-		admin.entry_quota_new = glade_file.get_widget ("entry_quota_new")
-		admin.button_quota_apply = glade_file.get_widget ("button_quota_apply")
-		admin.treeview_users = glade_file.get_widget ("treeview_users")
-		admin.treeview_acl = glade_file.get_widget ("treeview_acl")
-
-		admin.entry_mailbox = glade_file.get_widget ("entry_mailbox")
-		admin.entry_assigned = glade_file.get_widget ("entry_assigned")
-		admin.entry_free = glade_file.get_widget ("entry_free")
-
-		return admin
-
-
-	def on_button_connect_clicked (self,button,admin):
-
-		if admin.cnx == None:
-			connected = False
-			if (admin.session_tls):
-				# TLS
-				try:
-					cnx = IMAP4_SSL(admin.session_host,int(admin.session_port))
-					connected = True
-				except:
-					msgerr = _("Could not connect to secure server")
-					connected = False
-			else:
-				# Not TLS
-				try:
-					cnx = IMAP4(admin.session_host,int(admin.session_port))
-					connected = True
-				except:
-					msgerr = _("Could not connect to server")
-					connected = False
-
-			if (connected):
-				admin.cnx = cnx
-
-				# authenticate user
-				auth = self.autenthicate_user (admin)
-
-				if (auth == True):
-					lstore , num_usr = gyrus_admin_mailbox.get_list_of_mailbox(admin)
-					self.refresh_treeview_user(lstore,num_usr)
-	
-					self.actiongroup_window.set_sensitive (True)
-					self.actiongroup_server.set_sensitive (True)
-					
-					admin.label_cnx.set_text(_("Disconnect"))
-					admin.image_cnx.set_from_stock (gtk.STOCK_CONNECT,gtk.ICON_SIZE_BUTTON)
-
-				elif (auth == False):
-					self.show_message (_("Could not logging"),gtk.MESSAGE_ERROR)
-					admin.cnx = None
-				else:
-					admin.cnx = None
-			else:
-				self.show_message (msgerr,gtk.MESSAGE_ERROR)
-		else:
-			admin.label_cnx.set_text(_("Connect"))
-			admin.image_cnx.set_from_stock (gtk.STOCK_DISCONNECT,gtk.ICON_SIZE_BUTTON)
-			self.actiongroup_window.set_sensitive (True)
-			self.actiongroup_server.set_sensitive (False)
-			self.actiongroup_mailbox.set_sensitive (False)
-			self.actiongroup_acl.set_sensitive (False)
-			self.clear_all_widget_of_admin(admin)
-	
-	def refresh_treeview_user(self,lstore,num_users):		
-		admin = self.get_current_gyrus_admin()
-		admin.treeview_users.set_model(lstore)
-		col = admin.treeview_users.get_column(0)
-		if ( col != 0 ):
-			col.set_title(_("Mailboxs" + " (" + str(num_users) + ")"))
-		else:
-			col.set_title(_("Mailboxs") + " (0)")
-	
-
-	def clear_all_widget_of_admin (self,admin):
-		admin.cnx = None
-		admin.treeview_acl.get_model().clear()
-		admin.treeview_users.get_model().clear()
-		col = admin.treeview_users.get_column(0)
-		col.set_title(_("Mailboxs"))
-
-
-	def is_only_numbers (self,value):
-		if (re.match("[0-9]+$",value)):
-			return True
-		else:
-			return False
-
-
-	def on_button_quota_apply_clicked (self,button,admin):
-		mb = admin.entry_mailbox.get_text()
-
-		newquota = (admin.entry_quota_new.get_text()).strip()
-
-		if (newquota):
-			# filter only numbers
-			if (self.is_only_numbers(newquota)):
-				setok,msgset = gyrus_admin_mailbox.set_quota_of_mailbox (admin,mb,newquota)
-
-				if (setok == True):
-					admin.entry_quota_new.set_text("")
-
-					res,msg,free,quota = gyrus_admin_mailbox.get_quota_of_mailbox (admin,mb)
-					if res == True:
-						self.show_quota (admin,mb,quota,free)
-					
-					else:
-						self.show_quota (admin,mb,0,0)
-						self.show_message (msg,gtk.MESSAGE_ERROR)
-
-					self.actiongroup_mailbox.set_sensitive (True)
-					admin.entry_quota_new.set_properties(editable=True)
-					gyrus_acl.get_acl_of_mailbox (admin,mb)
-				else:
-					self.show_message (msgset,gtk.MESSAGE_ERROR)
-
-			else:
-				self.show_message (_("This not a valid quota"),gtk.MESSAGE_ERROR)
-		else:
-			 self.show_message (_("This not a valid quota"),gtk.MESSAGE_ERROR)
-
-
-	def autenthicate_user (self,admin):
-		auth = False
-
-		dialog_password,entry_password = self.load_dialog_password()
-
-		result = dialog_password.run()
-		if result == gtk.RESPONSE_OK:
-			pwd = entry_password.get_text()
-			
-			try:
-				admin.cnx.login (admin.session_user,pwd)
-				auth = True
-			except:
-				auth = False
-		else:
-			auth = None
-
-		dialog_password.destroy()
-		return auth
-
-
-	def load_dialog_password (self):
-		glade_file = gtk.glade.XML (os.path.join (config.GLADEDIR, "page.glade"),"dialog_password",None)
-
-		dialog_password = glade_file.get_widget ("dialog_password")
-		entry_password = glade_file.get_widget ("entry_password")
-
-		return dialog_password,entry_password
-
-
-	def show_message (self,msg,type):
-		dialog = gtk.MessageDialog(None,gtk.DIALOG_MODAL, type,gtk.BUTTONS_OK, msg)
-		dialog.run()
-		dialog.destroy()
-
-
-	def  on_acl_selection_changed(self,selection,admin):
-		model,iter = selection.get_selected()
-
-		if (iter):
-			 self.actiongroup_acl.set_sensitive (True)
-		else:
-			 self.actiongroup_acl.set_sensitive (False)
-	
-	def show_quota (self,admin,mb,quota,free):
-		admin.entry_mailbox.set_text(mb)
-		admin.entry_assigned.set_text(str(quota))
-		admin.entry_free.set_text(str(free))
-
-
-	def on_users_selection_changed(self,selection,admin):
-		model,iter = selection.get_selected()
-
-		if (iter):
-			mb = model.get(iter,COLUMN_MAILBOX)
-			res,msg,free,quota = gyrus_admin_mailbox.get_quota_of_mailbox (admin,mb[0])
-
-			if res == True:
-				self.show_quota (admin,mb[0],quota,free)
-			else:
-				self.show_quota (admin,mb[0],0,0)
-				self.show_message (msg,gtk.MESSAGE_ERROR)
-
-			self.actiongroup_mailbox.set_sensitive (True)
-			admin.entry_quota_new.set_properties(editable=True)
-			gyrus_acl.get_acl_of_mailbox (admin,mb[0])
-				
-		else:
-			self.actiongroup_mailbox.set_sensitive (False)
-			admin.entry_assigned.set_text ("")
-			admin.entry_free.set_text ("")
-			admin.entry_mailbox.set_text ("")
-			model_acl = admin.treeview_acl.get_model()
-			model_acl.clear()
-			admin.entry_quota_new.set_properties(editable=False)
-			admin.entry_quota_new.set_text("")
-			
-
-	def on_addmailbox_action (self,action):
-		page = self.notebook.get_current_page()
-		table_page = self.notebook.get_nth_page(page)
-
-		admin = self.imap_server[table_page]
-		self.load_dialog_edit_mailbox(admin)
-
-
-	def load_dialog_edit_mailbox (self,admin):
-		glade_file = gtk.glade.XML (os.path.join (config.GLADEDIR, "create_mailbox.glade"),None,None)
-
-		dialog = glade_file.get_widget ("dialog_create_mailbox")
-		checkbutton_quota = glade_file.get_widget ("checkbutton_quota")
-		entry_mailbox = glade_file.get_widget ("entry_mailbox")
-		entry_quota = glade_file.get_widget ("entry_quota")
-
-		result = dialog.run()
-
-		if result == gtk.RESPONSE_OK:
-			mb = entry_mailbox.get_text().strip()
-			quota = entry_quota.get_text()
-
-			if (self.is_only_numbers(quota)):
-				# create mailbox
-				result,msg = gyrus_admin_mailbox.create_mailbox(admin,mb)
-
-				if result == True:
-					model = admin.treeview_users.get_model()
-
-					# add new mailbox
-					iter = model.append(None)
-					model.set (iter,COLUMN_MAILBOX,mb)
-
-					# set quota to maiolbox
-					setok,setmsg = gyrus_admin_mailbox.set_quota_of_mailbox(admin,mb,quota)
-
-					if setok == False:
-						self.show_message (setmsg,gtk.MESSAGE_ERROR)
-
-					# refresh list of mailbox
-					lstore , num_usr =gyrus_admin_mailbox.get_list_of_mailbox(admin)
-					self.refresh_treeview_user(lstore,num_usr)
-				else:
-					self.show_message (msg,gtk.MESSAGE_ERROR)
-			else:
-				self.show_message (_("This not a valid quota"),gtk.MESSAGE_ERROR)
-			
-		dialog.destroy()
-		
 
-	def tmp(widget,data,self):
-		print widget, data, self
+        # select the iter
+        selection = admin.treeview_acl.get_selection()
+        selection.select_iter(iter)
+
+        path = model_acl.get_path(iter)
+        col = admin.treeview_acl.get_column(COLUMN_IDENTIFIER)
+        admin.treeview_acl.set_cursor(path,col,True)
+
+
+    def on_removemailbox_action(self,action):
+        admin = self.get_current_gyrus_admin()
+
+        dialog = gtk.MessageDialog(None,gtk.DIALOG_MODAL, gtk.MESSAGE_QUESTION,
+                gtk.BUTTONS_YES_NO, _("Really delete mailbox and all of its submailboxes?"))
+
+        result = dialog.run()
+        if result == gtk.RESPONSE_YES:
+            # get mailbox name
+            mailbox = admin.entry_mailbox.get_text().strip()
+
+            # remove mailbox
+            res,msg = gyrus_admin_mailbox.remove_mailbox (admin,mailbox)
+
+            if res == True:
+                # refresh list of mailbox
+                lstore , num_usr = gyrus_admin_mailbox.get_list_of_mailbox(admin)
+                self.refresh_treeview_user (lstore,num_usr)
+            else:
+                self.show_message (msg,gtk.MESSAGE_ERROR)
+
+        dialog.destroy()
+
+
+    def on_button_page_clicked (self,button,admin):
+        page = self.notebook.page_num(admin.table_page)
+        self.notebook.remove_page(page)
+
+        page = self.notebook.get_current_page()
+
+        if page < 0:
+            self.actiongroup_window.set_sensitive (True)
+            self.actiongroup_server.set_sensitive (False)
+            self.actiongroup_mailbox.set_sensitive (False)
+            self.actiongroup_acl.set_sensitive (False)
+        else:
+            admin = self.get_current_gyrus_admin()
+            self.verify_sensitive_actiongroup(admin)
+
+
+    def on_notebook_switch_page(self,notebook,page,page_num):
+        table = notebook.get_nth_page (page_num)
+        admin = self.imap_server[table]
+        self.verify_sensitive_actiongroup (admin)
+
+
+    def verify_sensitive_actiongroup (self,admin):
+        #self.actiongroup_window.set_sensitive (True)
+        #self.actiongroup_server.set_sensitive (True)
+
+        selection = admin.treeview_users.get_selection()
+        model,iter = selection.get_selected()
+
+        if iter:
+            self.actiongroup_mailbox.set_sensitive (True)
+        else:
+            self.actiongroup_mailbox.set_sensitive (False)
+
+        selection = admin.treeview_acl.get_selection()
+        model,iter = selection.get_selected()
+        if iter:
+            self.actiongroup_acl.set_sensitive (True)
+        else:
+            self.actiongroup_acl.set_sensitive (False)
+
+
+
+    def load_table_page (self):
+        glade_file = gtk.glade.XML (os.path.join (config.GLADEDIR, "page.glade"),"table_page",None)
+
+        admin = GyrusAdmin()
+
+        admin.table_page = glade_file.get_widget ("table_page")
+        admin.label_host = glade_file.get_widget ("label_host")
+        admin.label_port = glade_file.get_widget ("label_port")
+        admin.label_user = glade_file.get_widget ("label_user")
+        admin.label_cnx = glade_file.get_widget ("label_cnx")
+        admin.image_cnx = glade_file.get_widget ("image_cnx")
+        admin.image_secure = glade_file.get_widget ("image_secure")
+        admin.button_connect = glade_file.get_widget ("button_connect")
+        admin.entry_quota_new = glade_file.get_widget ("entry_quota_new")
+        admin.button_quota_apply = glade_file.get_widget ("button_quota_apply")
+        admin.treeview_users = glade_file.get_widget ("treeview_users")
+        admin.treeview_acl = glade_file.get_widget ("treeview_acl")
+
+        admin.entry_mailbox = glade_file.get_widget ("entry_mailbox")
+        admin.entry_assigned = glade_file.get_widget ("entry_assigned")
+        admin.entry_free = glade_file.get_widget ("entry_free")
+
+        return admin
+
+
+    def on_button_connect_clicked (self,button,admin):
+
+        if admin.cnx == None:
+            connected = False
+            if (admin.session_tls):
+                # TLS
+                try:
+                    cnx = IMAP4_SSL(admin.session_host,int(admin.session_port))
+                    connected = True
+                except:
+                    msgerr = _("Could not connect to secure server")
+                    connected = False
+            else:
+                # Not TLS
+                try:
+                    cnx = IMAP4(admin.session_host,int(admin.session_port))
+                    connected = True
+                except:
+                    msgerr = _("Could not connect to server")
+                    connected = False
+
+            if (connected):
+                admin.cnx = cnx
+
+                # authenticate user
+                auth = self.autenthicate_user (admin)
+
+                if (auth == True):
+                    lstore , num_usr = gyrus_admin_mailbox.get_list_of_mailbox(admin)
+                    self.refresh_treeview_user(lstore,num_usr)
+
+                    self.actiongroup_window.set_sensitive (True)
+                    self.actiongroup_server.set_sensitive (True)
+
+                    admin.label_cnx.set_text(_("Disconnect"))
+                    admin.image_cnx.set_from_stock (gtk.STOCK_CONNECT,gtk.ICON_SIZE_BUTTON)
+
+                elif (auth == False):
+                    self.show_message (_("Could not logging"),gtk.MESSAGE_ERROR)
+                    admin.cnx = None
+                else:
+                    admin.cnx = None
+            else:
+                self.show_message (msgerr,gtk.MESSAGE_ERROR)
+        else:
+            admin.label_cnx.set_text(_("Connect"))
+            admin.image_cnx.set_from_stock (gtk.STOCK_DISCONNECT,gtk.ICON_SIZE_BUTTON)
+            self.actiongroup_window.set_sensitive (True)
+            self.actiongroup_server.set_sensitive (False)
+            self.actiongroup_mailbox.set_sensitive (False)
+            self.actiongroup_acl.set_sensitive (False)
+            self.clear_all_widget_of_admin(admin)
+
+    def refresh_treeview_user(self,lstore,num_users):
+        admin = self.get_current_gyrus_admin()
+        admin.treeview_users.set_model(lstore)
+        col = admin.treeview_users.get_column(0)
+        if ( col != 0 ):
+            col.set_title(_("Mailboxs" + " (" + str(num_users) + ")"))
+        else:
+            col.set_title(_("Mailboxs") + " (0)")
+
+
+    def clear_all_widget_of_admin (self,admin):
+        admin.cnx = None
+        admin.treeview_acl.get_model().clear()
+        admin.treeview_users.get_model().clear()
+        col = admin.treeview_users.get_column(0)
+        col.set_title(_("Mailboxs"))
+
+
+    def is_only_numbers (self,value):
+        if (re.match("[0-9]+$",value)):
+            return True
+        else:
+            return False
+
+
+    def on_button_quota_apply_clicked (self,button,admin):
+        mb = admin.entry_mailbox.get_text()
+
+        newquota = (admin.entry_quota_new.get_text()).strip()
+
+        if (newquota):
+            # filter only numbers
+            if (self.is_only_numbers(newquota)):
+                setok,msgset = gyrus_admin_mailbox.set_quota_of_mailbox (admin,mb,newquota)
+
+                if (setok == True):
+                    admin.entry_quota_new.set_text("")
+
+                    res,msg,free,quota = gyrus_admin_mailbox.get_quota_of_mailbox (admin,mb)
+                    if res == True:
+                        self.show_quota (admin,mb,quota,free)
+                    else:
+                        self.show_quota (admin,mb,0,0)
+                        self.show_message (msg,gtk.MESSAGE_ERROR)
+
+                    self.actiongroup_mailbox.set_sensitive (True)
+                    admin.entry_quota_new.set_properties(editable=True)
+                    gyrus_acl.get_acl_of_mailbox (admin,mb)
+                else:
+                    self.show_message (msgset,gtk.MESSAGE_ERROR)
+
+            else:
+                self.show_message (_("This not a valid quota"),gtk.MESSAGE_ERROR)
+        else:
+             self.show_message (_("This not a valid quota"),gtk.MESSAGE_ERROR)
+
+
+    def autenthicate_user (self,admin):
+        auth = False
+
+        dialog_password,entry_password = self.load_dialog_password()
+
+        result = dialog_password.run()
+        if result == gtk.RESPONSE_OK:
+            pwd = entry_password.get_text()
+
+            try:
+                admin.cnx.login (admin.session_user,pwd)
+                auth = True
+            except:
+                auth = False
+        else:
+            auth = None
+
+        dialog_password.destroy()
+        return auth
+
+
+    def load_dialog_password (self):
+        glade_file = gtk.glade.XML (os.path.join (config.GLADEDIR, "page.glade"),"dialog_password",None)
+
+        dialog_password = glade_file.get_widget ("dialog_password")
+        entry_password = glade_file.get_widget ("entry_password")
+
+        return dialog_password,entry_password
+
+
+    def show_message (self,msg,type):
+        dialog = gtk.MessageDialog(None,gtk.DIALOG_MODAL, type,gtk.BUTTONS_OK, msg)
+        dialog.run()
+        dialog.destroy()
+
+
+    def  on_acl_selection_changed(self,selection,admin):
+        model,iter = selection.get_selected()
+
+        if (iter):
+             self.actiongroup_acl.set_sensitive (True)
+        else:
+             self.actiongroup_acl.set_sensitive (False)
+
+    def show_quota (self,admin,mb,quota,free):
+        admin.entry_mailbox.set_text(mb)
+        admin.entry_assigned.set_text(str(quota))
+        admin.entry_free.set_text(str(free))
+
+
+    def on_users_selection_changed(self,selection,admin):
+        model,iter = selection.get_selected()
+
+        if (iter):
+            mb = model.get(iter,COLUMN_MAILBOX)
+            res,msg,free,quota = gyrus_admin_mailbox.get_quota_of_mailbox (admin,mb[0])
+
+            if res == True:
+                self.show_quota (admin,mb[0],quota,free)
+            else:
+                self.show_quota (admin,mb[0],0,0)
+                self.show_message (msg,gtk.MESSAGE_ERROR)
+
+            self.actiongroup_mailbox.set_sensitive (True)
+            admin.entry_quota_new.set_properties(editable=True)
+            gyrus_acl.get_acl_of_mailbox (admin,mb[0])
+
+        else:
+            self.actiongroup_mailbox.set_sensitive (False)
+            admin.entry_assigned.set_text ("")
+            admin.entry_free.set_text ("")
+            admin.entry_mailbox.set_text ("")
+            model_acl = admin.treeview_acl.get_model()
+            model_acl.clear()
+            admin.entry_quota_new.set_properties(editable=False)
+            admin.entry_quota_new.set_text("")
+
+
+    def on_addmailbox_action (self,action):
+        page = self.notebook.get_current_page()
+        table_page = self.notebook.get_nth_page(page)
+
+        admin = self.imap_server[table_page]
+        self.load_dialog_edit_mailbox(admin)
+
+
+    def load_dialog_edit_mailbox (self,admin):
+        glade_file = gtk.glade.XML (os.path.join (config.GLADEDIR, "create_mailbox.glade"),None,None)
+
+        dialog = glade_file.get_widget ("dialog_create_mailbox")
+        checkbutton_quota = glade_file.get_widget ("checkbutton_quota")
+        entry_mailbox = glade_file.get_widget ("entry_mailbox")
+        entry_quota = glade_file.get_widget ("entry_quota")
+
+        result = dialog.run()
+
+        if result == gtk.RESPONSE_OK:
+            mb = entry_mailbox.get_text().strip()
+            quota = entry_quota.get_text()
+
+            if (self.is_only_numbers(quota)):
+                # create mailbox
+                result,msg = gyrus_admin_mailbox.create_mailbox(admin,mb)
+
+                if result == True:
+                    model = admin.treeview_users.get_model()
+
+                    # add new mailbox
+                    iter = model.append(None)
+                    model.set (iter,COLUMN_MAILBOX,mb)
+
+                    # set quota to maiolbox
+                    setok,setmsg = gyrus_admin_mailbox.set_quota_of_mailbox(admin,mb,quota)
+
+                    if setok == False:
+                        self.show_message (setmsg,gtk.MESSAGE_ERROR)
+
+                    # refresh list of mailbox
+                    lstore , num_usr =gyrus_admin_mailbox.get_list_of_mailbox(admin)
+                    self.refresh_treeview_user(lstore,num_usr)
+                else:
+                    self.show_message (msg,gtk.MESSAGE_ERROR)
+            else:
+                self.show_message (_("This not a valid quota"),gtk.MESSAGE_ERROR)
+
+        dialog.destroy()
+
+
+    def tmp(widget,data,self):
+        print widget, data, self
+
 
-		
 
 
 if __name__ == "__main__":
-	gnome.init(config.PACKAGE,config.VERSION)	
-	gyrus = Gyrus()
-	gyrus.main()
+    gnome.init(config.PACKAGE,config.VERSION)
+    gyrus = Gyrus()
+    gyrus.main()

Modified: branches/gyrus-python/src/gyrus_acl.py
==============================================================================
--- branches/gyrus-python/src/gyrus_acl.py	(original)
+++ branches/gyrus-python/src/gyrus_acl.py	Tue Mar 25 03:15:07 2008
@@ -15,131 +15,131 @@
 
 
 def get_acl_of_mailbox (admin,mailbox):
-	# get ACLs
-	t = admin.cnx.getacl(NAMESPACE + mailbox)
-	tm = t[1]
-	tmp = tm[0].split(" ")
-
-	lin = 1
-	j = lin
-	l = len(tmp)/2
-
-	model_acl = admin.treeview_acl.get_model()
-	model_acl.clear()
-		
-	while lin <= l:
-		useracl = tmp[j]
-		acls = tmp[j+1]
-
-		iter = model_acl.append (None)
-		model_acl.set(iter,COLUMN_IDENTIFIER,useracl,
-			COLUMN_L,have_acl(acls,"l"),
-			COLUMN_R,have_acl(acls,"r"),
-			COLUMN_S,have_acl(acls,"s"),
-			COLUMN_W,have_acl(acls,"w"),
-			COLUMN_I,have_acl(acls,"i"),
-			COLUMN_P,have_acl(acls,"p"),
-			COLUMN_C,have_acl(acls,"c"),
-			COLUMN_D,have_acl(acls,"d"),
-			COLUMN_A,have_acl(acls,"a"))
-			
-		j = j + 2
-		lin = lin + 1
+    # get ACLs
+    t = admin.cnx.getacl(NAMESPACE + mailbox)
+    tm = t[1]
+    tmp = tm[0].split(" ")
+
+    lin = 1
+    j = lin
+    l = len(tmp)/2
+
+    model_acl = admin.treeview_acl.get_model()
+    model_acl.clear()
+
+    while lin <= l:
+        useracl = tmp[j]
+        acls = tmp[j+1]
+
+        iter = model_acl.append (None)
+        model_acl.set(iter,COLUMN_IDENTIFIER,useracl,
+            COLUMN_L,have_acl(acls,"l"),
+            COLUMN_R,have_acl(acls,"r"),
+            COLUMN_S,have_acl(acls,"s"),
+            COLUMN_W,have_acl(acls,"w"),
+            COLUMN_I,have_acl(acls,"i"),
+            COLUMN_P,have_acl(acls,"p"),
+            COLUMN_C,have_acl(acls,"c"),
+            COLUMN_D,have_acl(acls,"d"),
+            COLUMN_A,have_acl(acls,"a"))
+
+        j = j + 2
+        lin = lin + 1
 
 
 def have_acl (string,acl):
-	r = string.find(acl)
+    r = string.find(acl)
+
+    if (r>=0):
+        return True
+    else:
+        return False
 
-	if (r>=0):
-		return True
-	else:	
-		return False
 
-		
 def on_toggled_acl(cell,path,admin,ncol):
-	model = admin.treeview_acl.get_model()
-	iter = model.get_iter_from_string(path)
+    model = admin.treeview_acl.get_model()
+    iter = model.get_iter_from_string(path)
 
-	user,has_permission = model.get(iter,COLUMN_IDENTIFIER,ncol)
+    user,has_permission = model.get(iter,COLUMN_IDENTIFIER,ncol)
 
-	model.set(iter,ncol,not has_permission)
+    model.set(iter,ncol,not has_permission)
 
-	mailbox = admin.entry_mailbox.get_text()
-	model = admin.treeview_acl.get_model()
-	set_acls (mailbox,model,iter,admin)
+    mailbox = admin.entry_mailbox.get_text()
+    model = admin.treeview_acl.get_model()
+    set_acls (mailbox,model,iter,admin)
 
 
 def on_identifier_edited(cell,path,newname,admin,self):
-	newname = newname.strip()
+    newname = newname.strip()
 
-	model = admin.treeview_acl.get_model()
-	iter = model.get_iter_from_string(path)
+    model = admin.treeview_acl.get_model()
+    iter = model.get_iter_from_string(path)
 
-	oldname = model.get(iter,COLUMN_IDENTIFIER)
+    oldname = model.get(iter,COLUMN_IDENTIFIER)
 
-	if oldname[0] == newname:
-		# is the same iter
-		pass
-	else:
-		# check, newname exists in acl list
-		admin.newname = newname
-		admin.newnameok = True
-		model.foreach(check_newname_in_list,admin)
-
-		if admin.newnameok:
-			mailbox = admin.entry_mailbox.get_text()
-			model.set(iter,COLUMN_IDENTIFIER,newname)
-			set_acls (mailbox,model,iter,admin)
-			delete_acl (mailbox,oldname[0],admin)
-		else:
-			self.show_message (_("Identifier exist: " + newname),gtk.MESSAGE_ERROR)
-			model.remove(iter)
+    if oldname[0] == newname:
+        # is the same iter
+        pass
+    else:
+        # check, newname exists in acl list
+        admin.newname = newname
+        admin.newnameok = True
+        model.foreach(check_newname_in_list,admin)
+
+        if admin.newnameok:
+            mailbox = admin.entry_mailbox.get_text()
+            model.set(iter,COLUMN_IDENTIFIER,newname)
+            set_acls (mailbox,model,iter,admin)
+            delete_acl (mailbox,oldname[0],admin)
+        else:
+            self.show_message (_("Identifier exist: " + newname),gtk.MESSAGE_ERROR)
+            model.remove(iter)
 
 
 def check_newname_in_list(model,path,iter,admin):
-	oldname = model.get(iter,COLUMN_IDENTIFIER)
+    oldname = model.get(iter,COLUMN_IDENTIFIER)
 
-	if oldname[0] == admin.newname:
-		admin.newnameok = False
-		return True
+    if oldname[0] == admin.newname:
+        admin.newnameok = False
+        return True
 
 
 def delete_acl (mailbox,ident,admin):
-	perm = ""
+    perm = ""
 
-	type,data = admin.cnx.setacl(NAMESPACE + mailbox,ident,perm)
+    type,data = admin.cnx.setacl(NAMESPACE + mailbox,ident,perm)
 
 
 def set_acls (mailbox,model,iter,admin):
-	ident,l,r,s,w,i,p,c,d,a = model.get(iter,
-			COLUMN_IDENTIFIER,
-			COLUMN_L,
-			COLUMN_R,
-			COLUMN_S,
-			COLUMN_W,
-			COLUMN_I,
-			COLUMN_P,
-			COLUMN_C,
-			COLUMN_D,
-			COLUMN_A)
-	perm = ""
-	if l:
-		perm = perm + "l"
-	if r:
-		perm = perm + "r"
-	if s:
-		perm = perm + "s"
-	if w:
-		perm = perm + "w"
-	if i:
-		perm = perm + "i"
-	if p:
-		perm = perm + "p"
-	if c:
-		perm = perm + "c"
-	if d:
-		perm = perm + "d"
-	if a:
-		perm = perm + "a"
-	
-	type,data = admin.cnx.setacl(NAMESPACE + mailbox,ident,perm)	
+    ident,l,r,s,w,i,p,c,d,a = model.get(iter,
+            COLUMN_IDENTIFIER,
+            COLUMN_L,
+            COLUMN_R,
+            COLUMN_S,
+            COLUMN_W,
+            COLUMN_I,
+            COLUMN_P,
+            COLUMN_C,
+            COLUMN_D,
+            COLUMN_A)
+    perm = ""
+    if l:
+        perm = perm + "l"
+    if r:
+        perm = perm + "r"
+    if s:
+        perm = perm + "s"
+    if w:
+        perm = perm + "w"
+    if i:
+        perm = perm + "i"
+    if p:
+        perm = perm + "p"
+    if c:
+        perm = perm + "c"
+    if d:
+        perm = perm + "d"
+    if a:
+        perm = perm + "a"
+
+    type,data = admin.cnx.setacl(NAMESPACE + mailbox,ident,perm)

Modified: branches/gyrus-python/src/gyrus_admin_mailbox.py
==============================================================================
--- branches/gyrus-python/src/gyrus_admin_mailbox.py	(original)
+++ branches/gyrus-python/src/gyrus_admin_mailbox.py	Tue Mar 25 03:15:07 2008
@@ -10,101 +10,101 @@
 import config
 
 def remove_mailbox (admin,mailbox):
-	response = admin.cnx.delete(NAMESPACE + mailbox)
+    response = admin.cnx.delete(NAMESPACE + mailbox)
 
-	if response[0] == 'OK':
-		return True,None
-	else:
-		return False,response[1][0]
+    if response[0] == 'OK':
+        return True,None
+    else:
+        return False,response[1][0]
 
 
 def create_mailbox (admin,mailbox):
-	response = admin.cnx.create(NAMESPACE + mailbox)
+    response = admin.cnx.create(NAMESPACE + mailbox)
 
-	if response[0] == 'OK':
-		return True,None
-	else:
-		return False,response[1][0]
+    if response[0] == 'OK':
+        return True,None
+    else:
+        return False,response[1][0]
 
 
 def set_quota_of_mailbox (admin,mailbox,quota):
-	new = int(quota) * 1024
-	new = "(STORAGE " + str(new) + ")"
+    new = int(quota) * 1024
+    new = "(STORAGE " + str(new) + ")"
 
-	type,data = admin.cnx.setquota(NAMESPACE + mailbox,new)
+    type,data = admin.cnx.setquota(NAMESPACE + mailbox,new)
+
+    if type == 'OK':
+        return True,None
+    else:
+        return False,type
 
-	if type == 'OK':
-		return True,None
-	else:
-		return False,type
 
-	
 def get_list_of_mailbox(admin):
-	
-	lstore = gtk.ListStore(
-	    gtk.gdk.Pixbuf,
-	    gobject.TYPE_STRING,
+
+    lstore = gtk.ListStore(
+        gtk.gdk.Pixbuf,
+        gobject.TYPE_STRING,
             gobject.TYPE_INT,
-            gobject.TYPE_INT)	
-	
-	model = admin.treeview_users.get_model()
-	model.clear()
-
-	# get all mailbox (only top-level)
-	type, data = admin.cnx.list(NAMESPACE,"%")
-
-	
-
-	if not data[0] == None:
-		icon = os.path.join (config.ARTDIR, "gyrus.png")
-		token = None
-		num_users = 0
-		for mailbox in data:
-			info_mailbox = mailbox.split("\"")
-			domain_name_mailbox = info_mailbox[3].split(".")
-			try:
-				
-				name_mailbox = domain_name_mailbox[1]
-				
-				#Checks name_mailbox will not repeat
-				if not (name_mailbox == token):
-					token = name_mailbox
-					iter = lstore.append(None)
-					
-					#get other data we want save 
-					res,msg,free,quota = get_quota_of_mailbox (admin,name_mailbox)
-
-					lstore.set (iter,COLUMN_MAILBOX_ICON, 
-							gtk.gdk.pixbuf_new_from_file_at_size (icon,15,15),
-							COLUMN_MAILBOX,name_mailbox,
-							COLUMN_FREE,free,
-							COLUMN_QUOTA_ASSIGNED,quota)
-							
-					num_users = num_users + 1
-			except:
-				print "error"
-				pass
-
-	
-	
-	return lstore,num_users
+            gobject.TYPE_INT)
+
+    model = admin.treeview_users.get_model()
+    model.clear()
+
+    # get all mailbox (only top-level)
+    type, data = admin.cnx.list(NAMESPACE,"%")
+
+
+
+    if not data[0] == None:
+        icon = os.path.join (config.ARTDIR, "gyrus.png")
+        token = None
+        num_users = 0
+        for mailbox in data:
+            info_mailbox = mailbox.split("\"")
+            domain_name_mailbox = info_mailbox[3].split(".")
+            try:
+
+                name_mailbox = domain_name_mailbox[1]
+
+                #Checks name_mailbox will not repeat
+                if not (name_mailbox == token):
+                    token = name_mailbox
+                    iter = lstore.append(None)
+
+                    #get other data we want save 
+                    res,msg,free,quota = get_quota_of_mailbox (admin,name_mailbox)
+
+                    lstore.set (iter,COLUMN_MAILBOX_ICON,
+                            gtk.gdk.pixbuf_new_from_file_at_size (icon,15,15),
+                            COLUMN_MAILBOX,name_mailbox,
+                            COLUMN_FREE,free,
+                            COLUMN_QUOTA_ASSIGNED,quota)
+
+                    num_users = num_users + 1
+            except:
+                print "error"
+                pass
+
+
+
+    return lstore,num_users
 
 def get_quota_of_mailbox (admin,mailbox):
-	response = admin.cnx.getquota(NAMESPACE + mailbox)
+    response = admin.cnx.getquota(NAMESPACE + mailbox)
+
+    if response[0] == 'OK':
+        data_quota_mailbox = response[1]
+        tmp = data_quota_mailbox[0].split(" ")
+
+        used = tmp[2]
+        quota = tmp[3].split(")")[0]
+
+        free = (int(quota) - int(used)) / 1024
+        quota = int(quota) / 1024
+
+        return True,None,free,quota
+    else:
+        free = 0
+        quota = 0
 
-	if response[0] == 'OK':
-		data_quota_mailbox = response[1]		
-		tmp = data_quota_mailbox[0].split(" ")
-		
-		used = tmp[2]
-		quota = tmp[3].split(")")[0]
-
-		free = (int(quota) - int(used)) / 1024
-		quota = int(quota) / 1024
-
-		return True,None,free,quota
-	else:
-		free = 0
-		quota = 0
-		
-		return False,response[1][0],free,quota
+        return False,response[1][0],free,quota

Modified: branches/gyrus-python/src/gyrus_constant.py
==============================================================================
--- branches/gyrus-python/src/gyrus_constant.py	(original)
+++ branches/gyrus-python/src/gyrus_constant.py	Tue Mar 25 03:15:07 2008
@@ -8,8 +8,8 @@
 DIRLOCALE = join (PREFIX, "share", "locale")
 
 if not os.path.exists(DIRSHARE):
-	DIRGYRUS = os.path.abspath(os.curdir)
-	DIRLOCALE = join(os.path.abspath(os.curdir),'locale')
+    DIRGYRUS = os.path.abspath(os.curdir)
+    DIRLOCALE = join(os.path.abspath(os.curdir),'locale')
 
 APPNAME ="gyrus"
 VERSION = "0.4.1"
@@ -24,10 +24,10 @@
 
 # for model of mailbox
 (
-	COLUMN_MAILBOX_ICON,
-	COLUMN_MAILBOX,
-	COLUMN_QUOTA_ASSIGNED,
-	COLUMN_FREE
+    COLUMN_MAILBOX_ICON,
+    COLUMN_MAILBOX,
+    COLUMN_QUOTA_ASSIGNED,
+    COLUMN_FREE
 ) = range (4)
 
 # for model of ACLs
@@ -42,11 +42,11 @@
 COLUMN_D = 8
 COLUMN_A = 9
 
-	
+
 # for model of mailbox
 (
-	COLUMN_MAILBOX_ICON,
-	COLUMN_MAILBOX,
-	COLUMN_QUOTA_ASSIGNED,
-	COLUMN_FREE
+    COLUMN_MAILBOX_ICON,
+    COLUMN_MAILBOX,
+    COLUMN_QUOTA_ASSIGNED,
+    COLUMN_FREE
 ) = range (4)

Modified: branches/gyrus-python/src/gyrus_find.py
==============================================================================
--- branches/gyrus-python/src/gyrus_find.py	(original)
+++ branches/gyrus-python/src/gyrus_find.py	Tue Mar 25 03:15:07 2008
@@ -12,92 +12,92 @@
 from gyrus_constant import *
 
 def load_page_find (self):
-	glade_file = gtk.glade.XML (os.path.join (config.GLADEDIR,"find.glade"),None,None)
+    glade_file = gtk.glade.XML (os.path.join (config.GLADEDIR,"find.glade"),None,None)
 
-	self.dialog_find = glade_file.get_widget ("dialog_find")
-	self.comboboxentry_mailbox = glade_file.get_widget ("comboboxentry_mailbox")
-	self.checkbutton_entire_word = glade_file.get_widget ("checkbutton_entire_word")
-	self.checkbutton_wrap_around =  glade_file.get_widget ("checkbutton_wrap_around")
-	self.button_find_close = glade_file.get_widget ("button_find_close") 
-	self.button_find_find = glade_file.get_widget ("button_find_find")
+    self.dialog_find = glade_file.get_widget ("dialog_find")
+    self.comboboxentry_mailbox = glade_file.get_widget ("comboboxentry_mailbox")
+    self.checkbutton_entire_word = glade_file.get_widget ("checkbutton_entire_word")
+    self.checkbutton_wrap_around =  glade_file.get_widget ("checkbutton_wrap_around")
+    self.button_find_close = glade_file.get_widget ("button_find_close")
+    self.button_find_find = glade_file.get_widget ("button_find_find")
 
-	self.button_find_close.connect ("clicked",on_button_find_close_clicked,self)
-	self.button_find_find.connect ("clicked",on_button_find_find_clicked,self)
+    self.button_find_close.connect ("clicked",on_button_find_close_clicked,self)
+    self.button_find_find.connect ("clicked",on_button_find_find_clicked,self)
 
-	self.dialog_find.show_all()
+    self.dialog_find.show_all()
 
 def on_button_find_close_clicked (button,self):
-	self.dialog_find.destroy()
+    self.dialog_find.destroy()
 
 def on_button_find_find_clicked (button,self):
-	admin = self.get_current_gyrus_admin()
-	key = self.comboboxentry_mailbox.get_active_text().strip()
+    admin = self.get_current_gyrus_admin()
+    key = self.comboboxentry_mailbox.get_active_text().strip()
 
-	more_mailboxes = None
-	wrap_around = None
-	search_from_beginning = None
-
-	if self.checkbutton_entire_word.get_active():
-		mode = "MODE_ENTIRE_WORD"
-	else:
-		mode = "MODE_ANY"
-
-	wrap_around = self.checkbutton_wrap_around.get_active()
-
-	selection = admin.treeview_users.get_selection()
-	model,iter = selection.get_selected()
-
-	# If no item is selected, start the search from the begin
-	if not iter:
-		iter = model.get_iter_first()
-		search_from_beginning = True
-	else:
-		iter = model.iter_next(iter)
-		
-		# end of items
-		if not iter:
-			iter = model.get_iter_first()
-
-		search_from_beginning = False
-	
-	while True:
-		value = model.get(iter,COLUMN_MAILBOX)
-
-		if mode == "MODE_ANY":
-			res = value[0].find(key)
-			if res >= 0:
-				found = True
-			else:
-				found = False
-		else:
-			if value[0] == key:
-				found = True
-			else:
-				found = False
-
-		if found:
-			selection = admin.treeview_users.get_selection()
-			selection.select_iter(iter)
-			path = model.get_path(iter)
-			admin.treeview_users.set_cursor(path,None,False)
-
-
-		# if 'wrap around' mode is selected allows starting over again
-		iter =  model.iter_next(iter)
-		if iter:
-			more_mailboxes = True
-		else:
-			more_mailboxes = False
-			 
-		if not more_mailboxes and wrap_around and not search_from_beginning:
-			iter = model.get_iter_first()
-			more_mailboxes = True
-			search_from_beginning = True
-
-		if not found and more_mailboxes:
-			pass
-		else: 
-			break
-	
-	if not found:
-		self.show_message (_("The text was not found in the mailbox list."),gtk.MESSAGE_INFO)
+    more_mailboxes = None
+    wrap_around = None
+    search_from_beginning = None
+
+    if self.checkbutton_entire_word.get_active():
+        mode = "MODE_ENTIRE_WORD"
+    else:
+        mode = "MODE_ANY"
+
+    wrap_around = self.checkbutton_wrap_around.get_active()
+
+    selection = admin.treeview_users.get_selection()
+    model,iter = selection.get_selected()
+
+    # If no item is selected, start the search from the begin
+    if not iter:
+        iter = model.get_iter_first()
+        search_from_beginning = True
+    else:
+        iter = model.iter_next(iter)
+
+        # end of items
+        if not iter:
+            iter = model.get_iter_first()
+
+        search_from_beginning = False
+
+    while True:
+        value = model.get(iter,COLUMN_MAILBOX)
+
+        if mode == "MODE_ANY":
+            res = value[0].find(key)
+            if res >= 0:
+                found = True
+            else:
+                found = False
+        else:
+            if value[0] == key:
+                found = True
+            else:
+                found = False
+
+        if found:
+            selection = admin.treeview_users.get_selection()
+            selection.select_iter(iter)
+            path = model.get_path(iter)
+            admin.treeview_users.set_cursor(path,None,False)
+
+
+        # if 'wrap around' mode is selected allows starting over again
+        iter =  model.iter_next(iter)
+        if iter:
+            more_mailboxes = True
+        else:
+            more_mailboxes = False
+
+        if not more_mailboxes and wrap_around and not search_from_beginning:
+            iter = model.get_iter_first()
+            more_mailboxes = True
+            search_from_beginning = True
+
+        if not found and more_mailboxes:
+            pass
+        else:
+            break
+
+    if not found:
+        self.show_message (_("The text was not found in the mailbox list."),gtk.MESSAGE_INFO)

Modified: branches/gyrus-python/src/gyrus_print.py
==============================================================================
--- branches/gyrus-python/src/gyrus_print.py	(original)
+++ branches/gyrus-python/src/gyrus_print.py	Tue Mar 25 03:15:07 2008
@@ -20,138 +20,134 @@
 gtk.glade.textdomain(APPNAME)
 
 MAX_USER_PAGE = 60
-SPACE_PER_LINE = 4	
+SPACE_PER_LINE = 4
 PAGE_POS_COLUMN_2 = 40
 PAGE_POS_COLUMN_3 = 80
 PAGE_POS_COLUMN_4 = 120
 PAGE_POS_COLUMN_5 = 150
-		
 
 
-class GyrusReport:
-	def __init__(self, admin):
-		self.admin = admin
-		self.settings = gtk.PrintSettings()
-		self.op = gtk.PrintOperation()
-		self.n_page = 0
-		
-		# signals
-		
-		self.op.connect('begin_print', self.begin_print, self.admin)
-		self.op.connect('draw_page', self.draw_page, self.admin)
-		
-		self.do_print()
-	
-	def do_print(self):		
-		# set some values
-		self.op.set_print_settings(self.settings)
-		self.op.set_unit(gtk.UNIT_MM)
-
-		try:
-			response = self.op.run(gtk.PRINT_OPERATION_ACTION_PRINT_DIALOG)
-		except gobject.GError, ex:
-			error_dialog = gtk.MessageDialog(None,
-					 gtk.DIALOG_DESTROY_WITH_PARENT,
-					 gtk._MESSAGE_ERROR,
-					 gtk.BUTTONS_CLOSE,
-					 ("Error printing file:\n%s" % str(ex)))
-			error_dialog.connect("response", gtk.Widget.destroy)
-			error_dialog.show()
-	
-		if response == gtk.PRINT_OPERATION_RESULT_APPLY:
-			settings = self.op.get_print_settings()
-
-
-	def begin_print(self,operation,context,admin):
-		model = admin.treeview_users.get_model()
-		n = float(len(model))
-		self.n_pages =int (ceil (n/MAX_USER_PAGE))
-		operation.set_n_pages(self.n_pages)
-
-	def draw_page(self,operation,context,page,admin):
-		
-		cairo_context = context.get_cairo_context()
-		width = context.get_width()
-		page_setup = context.get_page_setup()
-		left_margin = page_setup.get_left_margin(gtk.UNIT_MM)
-		right_margin = page_setup.get_right_margin(gtk.UNIT_MM)
-		top_margin = page_setup.get_top_margin(gtk.UNIT_MM)
-		bottom_margin = page_setup.get_bottom_margin(gtk.UNIT_MM)
-		page_width = page_setup.get_page_width(gtk.UNIT_MM)
-		page_height = page_setup.get_page_height(gtk.UNIT_MM)
-		x = left_margin
-
-		layout = context.create_pango_layout()
-		desc = pango.FontDescription("Sans 10") 
-		layout.set_font_description(desc) 
-
-		# print header
-		self.print_header(cairo_context,layout,left_margin,page_width,right_margin,top_margin)
-
-		model = admin.treeview_users.get_model()
-		if(len(model)==0):
-			return
-		
-		y = top_margin + (SPACE_PER_LINE * 2)
-		
-		index = ( page * MAX_USER_PAGE ) 
-		end = index + MAX_USER_PAGE
-		
-		if end >= len(model):
-			end = len(model)-1
-			
-		iter = model.get_iter(index)
-		count = index
-		
-		while (iter and count < end):
-			usr = model.get(iter,COLUMN_MAILBOX)[0]
-			res,msg,free,quota = gyrus_admin_mailbox.get_quota_of_mailbox (admin,usr)
-		
-			self.print_string(cairo_context,layout,x,y,usr)
-			self.print_string(cairo_context,layout,x + PAGE_POS_COLUMN_2,y,str(quota))
-			self.print_string(cairo_context,layout,x + PAGE_POS_COLUMN_3,y,str(quota-free))
-			self.print_string(cairo_context,layout,x + PAGE_POS_COLUMN_4,y,str(free))
-			if (quota == 0):
-				self.print_string(cairo_context,layout,x + PAGE_POS_COLUMN_5,y, str('%     0')) 
-			else:
-				self.print_string(cairo_context,layout,x + PAGE_POS_COLUMN_5,y, str('%% %3.0f' % ((free*1.0/quota)*100) )) 
-			y = y + SPACE_PER_LINE
-			
-			iter = model.iter_next(iter)
-			count = count + 1 
-		# print footer
-		self.print_footer(cairo_context,layout,x,page_width,right_margin,page_height,page+1)
-
-		
-		
-	def print_line(self,cairo_context,width_line,x,width,y):
-		cairo_context.move_to(x,y)
-		cairo_context.line_to(width,y)
-		cairo_context.set_line_join(cairo.LINE_JOIN_ROUND)
-		cairo_context.set_line_width(width_line)
-		cairo_context.stroke()
-
-	def print_string(self,cairo_context,layout,x,y,string):
-		cairo_context.move_to(x,y)
-		layout.set_text(string)
-		cairo_context.show_layout(layout) 
-
-	def print_header(self,cairo_context,layout,left_margin,page_width,right_margin,top_margin):		
-		self.print_line(cairo_context,WIDTH_LINE,left_margin,page_width - right_margin,top_margin)
-		self.print_string(cairo_context,layout,left_margin,top_margin + WIDTH_LINE,_("Mailbox"))
-		self.print_string(cairo_context,layout,left_margin + PAGE_POS_COLUMN_2,top_margin + WIDTH_LINE,_("Quota assigned"))
-		self.print_string(cairo_context,layout,left_margin + PAGE_POS_COLUMN_3,top_margin + WIDTH_LINE,_("Quota used"))
-		self.print_string(cairo_context,layout,left_margin + PAGE_POS_COLUMN_4,top_margin + WIDTH_LINE,_("Quota free"))
-		self.print_string(cairo_context,layout,left_margin + PAGE_POS_COLUMN_5,top_margin + WIDTH_LINE,_("Percentage"))
-		self.print_line(cairo_context,WIDTH_LINE,left_margin,page_width - right_margin,top_margin + (WIDTH_LINE *2)+ SPACE_PER_LINE)
-		
-	def print_footer(self,cairo_context,layout,x,page_width,right_margin,page_height,page):
-		now= datetime.datetime.now()
-		date = now.strftime(_('%H:%M:%S %m-%d-%Y'))
-		self.print_line(cairo_context,WIDTH_LINE,x,page_width - right_margin,page_height-10)
-		self.print_string(cairo_context,layout,x,page_height - (SPACE_PER_LINE * 2),date)
-		self.print_string(cairo_context,layout,x + PAGE_POS_COLUMN_5, page_height - (SPACE_PER_LINE * 2),_("Page %d" %page))
-		
-		
-		
 
+class GyrusReport:
+    def __init__(self, admin):
+        self.admin = admin
+        self.settings = gtk.PrintSettings()
+        self.op = gtk.PrintOperation()
+        self.n_page = 0
+
+        # signals
+
+        self.op.connect('begin_print', self.begin_print, self.admin)
+        self.op.connect('draw_page', self.draw_page, self.admin)
+
+        self.do_print()
+
+    def do_print(self):
+        # set some values
+        self.op.set_print_settings(self.settings)
+        self.op.set_unit(gtk.UNIT_MM)
+
+        try:
+            response = self.op.run(gtk.PRINT_OPERATION_ACTION_PRINT_DIALOG)
+        except gobject.GError, ex:
+            error_dialog = gtk.MessageDialog(None,
+                     gtk.DIALOG_DESTROY_WITH_PARENT,
+                     gtk._MESSAGE_ERROR,
+                     gtk.BUTTONS_CLOSE,
+                     ("Error printing file:\n%s" % str(ex)))
+            error_dialog.connect("response", gtk.Widget.destroy)
+            error_dialog.show()
+
+        if response == gtk.PRINT_OPERATION_RESULT_APPLY:
+            settings = self.op.get_print_settings()
+
+
+    def begin_print(self,operation,context,admin):
+        model = admin.treeview_users.get_model()
+        n = float(len(model))
+        self.n_pages =int (ceil (n/MAX_USER_PAGE))
+        operation.set_n_pages(self.n_pages)
+
+    def draw_page(self,operation,context,page,admin):
+
+        cairo_context = context.get_cairo_context()
+        width = context.get_width()
+        page_setup = context.get_page_setup()
+        left_margin = page_setup.get_left_margin(gtk.UNIT_MM)
+        right_margin = page_setup.get_right_margin(gtk.UNIT_MM)
+        top_margin = page_setup.get_top_margin(gtk.UNIT_MM)
+        bottom_margin = page_setup.get_bottom_margin(gtk.UNIT_MM)
+        page_width = page_setup.get_page_width(gtk.UNIT_MM)
+        page_height = page_setup.get_page_height(gtk.UNIT_MM)
+        x = left_margin
+
+        layout = context.create_pango_layout()
+        desc = pango.FontDescription("Sans 10")
+        layout.set_font_description(desc)
+
+        # print header
+        self.print_header(cairo_context,layout,left_margin,page_width,right_margin,top_margin)
+
+        model = admin.treeview_users.get_model()
+        if(len(model)==0):
+            return
+
+        y = top_margin + (SPACE_PER_LINE * 2)
+
+        index = ( page * MAX_USER_PAGE )
+        end = index + MAX_USER_PAGE
+
+        if end >= len(model):
+            end = len(model)-1
+
+        iter = model.get_iter(index)
+        count = index
+
+        while (iter and count < end):
+            usr = model.get(iter,COLUMN_MAILBOX)[0]
+            res,msg,free,quota = gyrus_admin_mailbox.get_quota_of_mailbox (admin,usr)
+
+            self.print_string(cairo_context,layout,x,y,usr)
+            self.print_string(cairo_context,layout,x + PAGE_POS_COLUMN_2,y,str(quota))
+            self.print_string(cairo_context,layout,x + PAGE_POS_COLUMN_3,y,str(quota-free))
+            self.print_string(cairo_context,layout,x + PAGE_POS_COLUMN_4,y,str(free))
+            if (quota == 0):
+                self.print_string(cairo_context,layout,x + PAGE_POS_COLUMN_5,y, str('%     0'))
+            else:
+                self.print_string(cairo_context,layout,x + PAGE_POS_COLUMN_5,y, str('%% %3.0f' % ((free*1.0/quota)*100) ))
+            y = y + SPACE_PER_LINE
+
+            iter = model.iter_next(iter)
+            count = count + 1
+        # print footer
+        self.print_footer(cairo_context,layout,x,page_width,right_margin,page_height,page+1)
+
+
+
+    def print_line(self,cairo_context,width_line,x,width,y):
+        cairo_context.move_to(x,y)
+        cairo_context.line_to(width,y)
+        cairo_context.set_line_join(cairo.LINE_JOIN_ROUND)
+        cairo_context.set_line_width(width_line)
+        cairo_context.stroke()
+
+    def print_string(self,cairo_context,layout,x,y,string):
+        cairo_context.move_to(x,y)
+        layout.set_text(string)
+        cairo_context.show_layout(layout)
+
+    def print_header(self,cairo_context,layout,left_margin,page_width,right_margin,top_margin):
+        self.print_line(cairo_context,WIDTH_LINE,left_margin,page_width - right_margin,top_margin)
+        self.print_string(cairo_context,layout,left_margin,top_margin + WIDTH_LINE,_("Mailbox"))
+        self.print_string(cairo_context,layout,left_margin + PAGE_POS_COLUMN_2,top_margin + WIDTH_LINE,_("Quota assigned"))
+        self.print_string(cairo_context,layout,left_margin + PAGE_POS_COLUMN_3,top_margin + WIDTH_LINE,_("Quota used"))
+        self.print_string(cairo_context,layout,left_margin + PAGE_POS_COLUMN_4,top_margin + WIDTH_LINE,_("Quota free"))
+        self.print_string(cairo_context,layout,left_margin + PAGE_POS_COLUMN_5,top_margin + WIDTH_LINE,_("Percentage"))
+        self.print_line(cairo_context,WIDTH_LINE,left_margin,page_width - right_margin,top_margin + (WIDTH_LINE *2)+ SPACE_PER_LINE)
+
+    def print_footer(self,cairo_context,layout,x,page_width,right_margin,page_height,page):
+        now= datetime.datetime.now()
+        date = now.strftime(_('%H:%M:%S %m-%d-%Y'))
+        self.print_line(cairo_context,WIDTH_LINE,x,page_width - right_margin,page_height-10)
+        self.print_string(cairo_context,layout,x,page_height - (SPACE_PER_LINE * 2),date)
+        self.print_string(cairo_context,layout,x + PAGE_POS_COLUMN_5, page_height - (SPACE_PER_LINE * 2),_("Page %d" %page))

Modified: branches/gyrus-python/src/gyrus_session.py
==============================================================================
--- branches/gyrus-python/src/gyrus_session.py	(original)
+++ branches/gyrus-python/src/gyrus_session.py	Tue Mar 25 03:15:07 2008
@@ -17,249 +17,249 @@
 PATH_SESSIONS = "/apps/gyrus/sessions/"
 
 # for model of sessions
-COLUMN_NAME = 0  
+COLUMN_NAME = 0
 COLUMN_IP = 1
 COLUMN_PORT = 2
 COLUMN_USER = 3
 COLUMN_TLS  = 4
 
 class Session:
-	def __init__ (self):
-		name = None
-		host = None
-		port = None
-		user = None
-		tls = None
-		
+    def __init__ (self):
+        name = None
+        host = None
+        port = None
+        user = None
+        tls = None
+
 
 def load_interface (widget,self):
-	glade_file = gtk.glade.XML (os.path.join (config.GLADEDIR, "sessions.glade"),"dialog_sessions",None)
+    glade_file = gtk.glade.XML (os.path.join (config.GLADEDIR, "sessions.glade"),"dialog_sessions",None)
 
-	self.window_dialog = glade_file.get_widget ("dialog_sessions")
-	self.treeview_sessions = glade_file.get_widget ("treeview_sessions")
-	button_new = glade_file.get_widget ("button_new")
-	button_open = glade_file.get_widget ("button_open")
-	button_delete = glade_file.get_widget ("button_delete")
-	button_cancel = glade_file.get_widget ("button_cancel")
-	button_properties = glade_file.get_widget ("button_properties")
-
-	button_open.connect ("clicked", on_button_open_clicked,self)
-	button_cancel.connect ("clicked", on_button_cancel_clicked,self)
-	button_properties.connect ("clicked", on_button_properties_clicked,self)
-	button_delete.connect ("clicked", on_button_delete_clicked,self)
-	button_new.connect ("clicked", on_button_new_clicked,self)
-
-	self.treeview_sessions.set_model (self.model_session)
-
-	self.treeview_sessions.set_rules_hint (True)
-	self.treeview_sessions.set_reorderable (True)
-
-	col = gtk.TreeViewColumn (_("Name"))
-	self.treeview_sessions.append_column (col)
-	cell =  gtk.CellRendererText()
-	col.pack_start (cell,True)
-	col.add_attribute (cell,"text",COLUMN_NAME)
+    self.window_dialog = glade_file.get_widget ("dialog_sessions")
+    self.treeview_sessions = glade_file.get_widget ("treeview_sessions")
+    button_new = glade_file.get_widget ("button_new")
+    button_open = glade_file.get_widget ("button_open")
+    button_delete = glade_file.get_widget ("button_delete")
+    button_cancel = glade_file.get_widget ("button_cancel")
+    button_properties = glade_file.get_widget ("button_properties")
+
+    button_open.connect ("clicked", on_button_open_clicked,self)
+    button_cancel.connect ("clicked", on_button_cancel_clicked,self)
+    button_properties.connect ("clicked", on_button_properties_clicked,self)
+    button_delete.connect ("clicked", on_button_delete_clicked,self)
+    button_new.connect ("clicked", on_button_new_clicked,self)
+
+    self.treeview_sessions.set_model (self.model_session)
+
+    self.treeview_sessions.set_rules_hint (True)
+    self.treeview_sessions.set_reorderable (True)
+
+    col = gtk.TreeViewColumn (_("Name"))
+    self.treeview_sessions.append_column (col)
+    cell =  gtk.CellRendererText()
+    col.pack_start (cell,True)
+    col.add_attribute (cell,"text",COLUMN_NAME)
 
 def load_interface_edit_session(self):
-	glade_file = gtk.glade.XML (os.path.join (config.GLADEDIR,"sessions.glade"),"dialog_session_edit",None)
+    glade_file = gtk.glade.XML (os.path.join (config.GLADEDIR,"sessions.glade"),"dialog_session_edit",None)
 
-	self.window_dialog_session_edit = glade_file.get_widget ("dialog_session_edit")
-	self.checkbutton_secure = glade_file.get_widget ("checkbutton_secure")
-	self.entry_host = glade_file.get_widget ("entry_host")
-	self.entry_user = glade_file.get_widget ("entry_user")
-	self.entry_passwd = glade_file.get_widget ("entry_passwd")
-	self.spinbutton_port = glade_file.get_widget ("spinbutton_port")
-	self.button_session_edit_ok = glade_file.get_widget ("button_session_edit_ok")
-	self.button_session_edit_cancel = glade_file.get_widget ("button_session_edit_cancel")
-	self.entry_name = glade_file.get_widget ("entry_name")
-	self.checkbutton_secure = glade_file.get_widget ("checkbutton_secure")
-
-	self.button_session_edit_cancel.connect ("clicked", on_button_session_edit_cancel_clicked, self)
-
-	self.window_dialog_session_edit.set_modal(True)
-
-	treeselection = self.treeview_sessions.get_selection()
-	model,iter = treeselection.get_selected()
-	
-	if (iter):
-		session = get_data_of_session_selected (iter,model,self)
-		self.entry_host.set_text (session.host)
-		self.spinbutton_port.set_value(session.port)
-		self.entry_user.set_text (session.user)
-		self.entry_name.set_text (session.name)
-		self.checkbutton_secure.set_active (session.tls)
+    self.window_dialog_session_edit = glade_file.get_widget ("dialog_session_edit")
+    self.checkbutton_secure = glade_file.get_widget ("checkbutton_secure")
+    self.entry_host = glade_file.get_widget ("entry_host")
+    self.entry_user = glade_file.get_widget ("entry_user")
+    self.entry_passwd = glade_file.get_widget ("entry_passwd")
+    self.spinbutton_port = glade_file.get_widget ("spinbutton_port")
+    self.button_session_edit_ok = glade_file.get_widget ("button_session_edit_ok")
+    self.button_session_edit_cancel = glade_file.get_widget ("button_session_edit_cancel")
+    self.entry_name = glade_file.get_widget ("entry_name")
+    self.checkbutton_secure = glade_file.get_widget ("checkbutton_secure")
+
+    self.button_session_edit_cancel.connect ("clicked", on_button_session_edit_cancel_clicked, self)
+
+    self.window_dialog_session_edit.set_modal(True)
+
+    treeselection = self.treeview_sessions.get_selection()
+    model,iter = treeselection.get_selected()
+
+    if (iter):
+        session = get_data_of_session_selected (iter,model,self)
+        self.entry_host.set_text (session.host)
+        self.spinbutton_port.set_value(session.port)
+        self.entry_user.set_text (session.user)
+        self.entry_name.set_text (session.name)
+        self.checkbutton_secure.set_active (session.tls)
 
 
 def on_button_new_clicked (button,self):
-	load_interface_edit_session(self)
-	self.window_dialog_session_edit.set_title (_("New session"))
-	self.entry_name.set_sensitive(True)
-	
-	self.entry_host.set_text("")
-	self.entry_user.set_text("")
-	self.entry_name.set_text("")
-	self.spinbutton_port.set_value(143)
-	self.button_session_edit_ok.connect ("clicked", on_button_session_edit_ok_new_clicked,self)
+    load_interface_edit_session(self)
+    self.window_dialog_session_edit.set_title (_("New session"))
+    self.entry_name.set_sensitive(True)
+
+    self.entry_host.set_text("")
+    self.entry_user.set_text("")
+    self.entry_name.set_text("")
+    self.spinbutton_port.set_value(143)
+    self.button_session_edit_ok.connect ("clicked", on_button_session_edit_ok_new_clicked,self)
+
+    self.window_dialog_session_edit.show()
 
-	self.window_dialog_session_edit.show()
-	
 
 def on_button_delete_clicked (button,self):
 
-	treeselection = self.treeview_sessions.get_selection()
-	model,iter = treeselection.get_selected()
-	
-	if (iter):
-		selected = get_data_of_session_selected (iter,model,self)
-	
-		client = gconf.client_get_default()
-
-		session = client.get_list(PATH_KEY + "StoredSessions",gconf.VALUE_STRING)
-		index = session.index(selected.name)
-		del session[index]
-
-		client.set_list(PATH_KEY + "StoredSessions",gconf.VALUE_STRING,session)
-
-		client.unset (PATH_SESSIONS + selected.name + "/" + "Host")
-		client.unset (PATH_SESSIONS + selected.name + "/" + "Port")
-		client.unset (PATH_SESSIONS + selected.name + "/" + "User")
-		client.unset (PATH_SESSIONS + selected.name + "/" + "UseTLS")
-		client.unset (PATH_SESSIONS + selected.name)
+    treeselection = self.treeview_sessions.get_selection()
+    model,iter = treeselection.get_selected()
+
+    if (iter):
+        selected = get_data_of_session_selected (iter,model,self)
+
+        client = gconf.client_get_default()
+
+        session = client.get_list(PATH_KEY + "StoredSessions",gconf.VALUE_STRING)
+        index = session.index(selected.name)
+        del session[index]
+
+        client.set_list(PATH_KEY + "StoredSessions",gconf.VALUE_STRING,session)
+
+        client.unset (PATH_SESSIONS + selected.name + "/" + "Host")
+        client.unset (PATH_SESSIONS + selected.name + "/" + "Port")
+        client.unset (PATH_SESSIONS + selected.name + "/" + "User")
+        client.unset (PATH_SESSIONS + selected.name + "/" + "UseTLS")
+        client.unset (PATH_SESSIONS + selected.name)
+
+        load_preferences(self)
 
-		load_preferences(self)
-	
 
 def on_button_session_edit_cancel_clicked (button,self):
-	self.window_dialog_session_edit.destroy()
+    self.window_dialog_session_edit.destroy()
 
 
 def on_button_properties_clicked (button,self):
-	treeselection = self.treeview_sessions.get_selection()
-	model,iter = treeselection.get_selected()
-	
-	if (iter):
-		load_interface_edit_session(self)
-		self.window_dialog_session_edit.set_title (_("Edit session"))
-		self.entry_name.set_sensitive(False)
-		self.button_session_edit_ok.connect ("clicked", on_button_session_edit_ok_clicked,self)
-		self.window_dialog_session_edit.show()
+    treeselection = self.treeview_sessions.get_selection()
+    model,iter = treeselection.get_selected()
+
+    if (iter):
+        load_interface_edit_session(self)
+        self.window_dialog_session_edit.set_title (_("Edit session"))
+        self.entry_name.set_sensitive(False)
+        self.button_session_edit_ok.connect ("clicked", on_button_session_edit_ok_clicked,self)
+        self.window_dialog_session_edit.show()
 
 
 def on_button_session_edit_ok_new_clicked (button,self):
-	name = self.entry_name.get_text().strip()
+    name = self.entry_name.get_text().strip()
 
-	if (len(name) == 0):
-		self.show_message (_("A session name is required."),gtk.MESSAGE_ERROR)	
-		return
-
-	client = gconf.client_get_default()
-	session = client.get_list(PATH_KEY + "StoredSessions",gconf.VALUE_STRING)
-
-	try:
-		index = session.index(name)
-		self.show_message (_("Session already exists."))
-		return
-	except:
-		session.append(name)
-		client.set_list (PATH_KEY + "StoredSessions",gconf.VALUE_STRING,session)
-
-
-		host = self.entry_host.get_text()
-		port = self.spinbutton_port.get_value_as_int()
-		user = self.entry_user.get_text()
-		passwd = self.entry_passwd.get_text()
-		usetls = self.checkbutton_secure.get_active()
-
-		client.set_string (PATH_SESSIONS + name + "/" + "Host",host)
-		client.set_int (PATH_SESSIONS + name + "/" + "Port",port)
-		client.set_string (PATH_SESSIONS + name + "/" + "User", user)
-		client.set_bool (PATH_SESSIONS + name + "/" + "UseTLS",usetls)
+    if (len(name) == 0):
+        self.show_message (_("A session name is required."),gtk.MESSAGE_ERROR)  
+        return
+
+    client = gconf.client_get_default()
+    session = client.get_list(PATH_KEY + "StoredSessions",gconf.VALUE_STRING)
+
+    try:
+        index = session.index(name)
+        self.show_message (_("Session already exists."))
+        return
+    except:
+        session.append(name)
+        client.set_list (PATH_KEY + "StoredSessions",gconf.VALUE_STRING,session)
+
+
+        host = self.entry_host.get_text()
+        port = self.spinbutton_port.get_value_as_int()
+        user = self.entry_user.get_text()
+        passwd = self.entry_passwd.get_text()
+        usetls = self.checkbutton_secure.get_active()
+
+        client.set_string (PATH_SESSIONS + name + "/" + "Host",host)
+        client.set_int (PATH_SESSIONS + name + "/" + "Port",port)
+        client.set_string (PATH_SESSIONS + name + "/" + "User", user)
+        client.set_bool (PATH_SESSIONS + name + "/" + "UseTLS",usetls)
 
-		self.window_dialog_session_edit.destroy()
-		load_preferences(self)
+        self.window_dialog_session_edit.destroy()
+        load_preferences(self)
 
 
 def on_button_session_edit_ok_clicked (button,self):
-	host = self.entry_host.get_text()
-	port = self.spinbutton_port.get_value_as_int()
-	user = self.entry_user.get_text()
-	name = self.entry_name.get_text()
-	passwd = self.entry_passwd.get_text()
-	usetls = self.checkbutton_secure.get_active()
-
-	client = gconf.client_get_default()
-	client.set_string (PATH_SESSIONS + name + "/" + "Host",host)
-	client.set_int (PATH_SESSIONS + name + "/" + "Port",port)
-	client.set_string (PATH_SESSIONS + name + "/" + "User", user)
-	client.set_bool (PATH_SESSIONS + name + "/" + "UseTLS",usetls)
+    host = self.entry_host.get_text()
+    port = self.spinbutton_port.get_value_as_int()
+    user = self.entry_user.get_text()
+    name = self.entry_name.get_text()
+    passwd = self.entry_passwd.get_text()
+    usetls = self.checkbutton_secure.get_active()
+
+    client = gconf.client_get_default()
+    client.set_string (PATH_SESSIONS + name + "/" + "Host",host)
+    client.set_int (PATH_SESSIONS + name + "/" + "Port",port)
+    client.set_string (PATH_SESSIONS + name + "/" + "User", user)
+    client.set_bool (PATH_SESSIONS + name + "/" + "UseTLS",usetls)
 
-	self.window_dialog_session_edit.destroy()
-	load_preferences (self)
+    self.window_dialog_session_edit.destroy()
+    load_preferences (self)
 
 
 def get_data_of_session_selected (iter,model,self):
-	if (iter):
-		name,host,port,user,tls = model.get(iter,COLUMN_NAME,COLUMN_IP,COLUMN_PORT,COLUMN_USER,COLUMN_TLS)
+    if (iter):
+        name,host,port,user,tls = model.get(iter,COLUMN_NAME,COLUMN_IP,COLUMN_PORT,COLUMN_USER,COLUMN_TLS)
 
-		s = Session()
-		s.name = name
-		s.host = host
-		s.port = port
-		s.user = user
-		s.tls = tls
-
-		return s
-	else:
-		return None
+        s = Session()
+        s.name = name
+        s.host = host
+        s.port = port
+        s.user = user
+        s.tls = tls
+
+        return s
+    else:
+        return None
 
 
 def on_button_open_clicked (button,self):
-	treeselection = self.treeview_sessions.get_selection()
-	model,iter = treeselection.get_selected()
-	
-	if (iter):
-		session = get_data_of_session_selected (iter,model,self)
-		self.append_page_to_notebook(session)
+    treeselection = self.treeview_sessions.get_selection()
+    model,iter = treeselection.get_selected()
 
-		# close dialog session
-		on_button_cancel_clicked(None,self)
+    if (iter):
+        session = get_data_of_session_selected (iter,model,self)
+        self.append_page_to_notebook(session)
+
+        # close dialog session
+        on_button_cancel_clicked(None,self)
 
 
 def on_button_cancel_clicked (button,self):
-	self.window_dialog.destroy()
+    self.window_dialog.destroy()
+
 
-	
 def get_model_treeview_sessions ():
-	model = gtk.TreeStore(gobject.TYPE_STRING,
-			gobject.TYPE_STRING,
-			gobject.TYPE_INT,
-			gobject.TYPE_STRING,
-			gobject.TYPE_BOOLEAN,
-			gobject.TYPE_STRING)
+    model = gtk.TreeStore(gobject.TYPE_STRING,
+            gobject.TYPE_STRING,
+            gobject.TYPE_INT,
+            gobject.TYPE_STRING,
+            gobject.TYPE_BOOLEAN,
+            gobject.TYPE_STRING)
 
-	return model
+    return model
 
 
 def load_preferences (self):
-	client = gconf.client_get_default()
+    client = gconf.client_get_default()
 
-	session = client.get_list(PATH_KEY + "StoredSessions",gconf.VALUE_STRING)
+    session = client.get_list(PATH_KEY + "StoredSessions",gconf.VALUE_STRING)
 
-	if (not session == None):
-		self.model_session.clear()
-		for name in session:
-			
-			key = PATH_SESSIONS + name + "/"
-
-			host = client.get_string(key + "Host")
-			port = client.get_int(key + "Port")
-			user = client.get_string(key + "User")
-			tls = client.get_bool(key + "UseTLS")
-
-			iter = self.model_session.append (None)
-			self.model_session.set (iter,
-				COLUMN_NAME,name,
-				COLUMN_IP,host,
-				COLUMN_PORT,port,
-				COLUMN_USER ,user,
-				COLUMN_TLS,tls)
+    if (not session == None):
+        self.model_session.clear()
+        for name in session:
+
+            key = PATH_SESSIONS + name + "/"
+
+            host = client.get_string(key + "Host")
+            port = client.get_int(key + "Port")
+            user = client.get_string(key + "User")
+            tls = client.get_bool(key + "UseTLS")
+
+            iter = self.model_session.append (None)
+            self.model_session.set (iter,
+                COLUMN_NAME,name,
+                COLUMN_IP,host,
+                COLUMN_PORT,port,
+                COLUMN_USER ,user,
+                COLUMN_TLS,tls)



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]