예제 #1
0
파일: emesene.py 프로젝트: Mankeke/emesene
    def start(self, account=None):
        '''the entry point to the class'''
        windowcls = extension.get_default('window frame')
        self.window = windowcls(None)  # main window
        self._set_location(self.window)

        if self.tray_icon is not None:
            self.tray_icon.set_visible(False)

        trayiconcls = extension.get_default('tray icon')
        handler = gui.base.TrayIconHandler(self.session, gui.theme,
                                           self.on_user_disconnect,
                                           self.on_close)
        self.tray_icon = trayiconcls(handler, self.window)

        proxy = self._get_proxy_settings()
        use_http = self.config.get_or_set('b_use_http', False)
        account = self.config.get_or_set('last_logged_account', '')

        #autologin
        default_session = extension.get_default('session')
        if account != '' and int(self.config.d_remembers[account]) == 3:
            password = base64.b64decode(self.config.d_accounts[account])
            user = e3.Account(account, password,
                              int(self.config.d_status[account]),
                              default_session.DEFAULT_HOST)
            host = default_session.DEFAULT_HOST
            port = default_session.DEFAULT_PORT
            self.on_login_connect(user, self.config.session, proxy, use_http,
                                  host, int(port))
        else:
            self.go_login(proxy, use_http)
예제 #2
0
    def _on_start_login(self):
        ''' Slot executed when the user clicks the login button'''
        widget_dic = self._widget_d
        user = str(widget_dic['account_combo'].currentText())
        password = str(widget_dic['password_edit'].text())
        status = widget_dic['status_combo'].status()
        save_account = widget_dic['save_account_chk'].isChecked()
        save_password = widget_dic['save_password_chk'].isChecked()
        auto_login = widget_dic['auto_login_chk'].isChecked()
        
        if user in self.config.d_user_service.keys():
            service_name = self.config.d_user_service[user]
            self.session_id = self.service2id[service_name][0]
        else:
            service_name = self.config.service
            self.session_id = self.config.session
        self.config.d_user_service[user] = service_name
        
        e3_account = e3.Account(user, password, status, self.server_host)

        self.config_account(e3_account, service_name, save_account, save_password,
                            auto_login)
            
        # Invoke the  login callback
        self.callback(e3_account, self.session_id, self.proxy,
                             self.use_http, self.server_host, self.server_port)
예제 #3
0
파일: Session.py 프로젝트: Mankeke/emesene
    def login(self, account, password, status, proxy, host, port, use_http=False):
        '''start the login process'''
        self.account = e3.Account(account, password, status, host)
        worker = Worker.Worker('emesene2', self, proxy, use_http)
        worker.start()

        self.add_action(e3.Action.ACTION_LOGIN, (account, password, status))
예제 #4
0
    def login(self, account, password, status, proxy, host, port , use_http=False, use_ipv6=False):
        '''start the login process'''

        self.account = e3.Account(account, password, status, host)

        self.__worker = Worker(self, proxy, use_http, use_ipv6)
        self.__worker.start()

        self.add_action(e3.Action.ACTION_LOGIN, (account, password, status,
            host, port))
예제 #5
0
    def login(self, account, password, status, proxy, host, port, use_http=False):
        '''start the login process'''
        worker = Worker('emesene2', self, proxy, use_http)
        worker.start()

        #msn password must have 16 chars max.
        password=password[:16]
        #------------------------------------
        self.account = e3.Account(account, password, status, host)

        self.add_action(e3.Action.ACTION_LOGIN, (account, password, status,
            host, port))
예제 #6
0
    def _on_start_login(self):
        ''' Slot executed when the user clicks the login button'''
        widget_dic = self._widget_d
        user = str(widget_dic['account_combo'].currentText()).lower()
        password = str(widget_dic['password_edit'].text())
        status = widget_dic['status_btn'].status
        save_account = widget_dic['save_account_chk'].isChecked()
        save_password = widget_dic['save_password_chk'].isChecked()
        auto_login = widget_dic['auto_login_chk'].isChecked()
        service_name = str(self._widget_d['service_combo'].currentText())

        account = e3.Account(user, password, status, self.server_host)
        self.config_account(account, service_name, save_account, save_password,
                            auto_login)
        account.uuid = self.account_uuid

        # Invoke the  login callback
        self.callback(account, self.session_id, self.proxy, self.use_http,
                      self.use_ipv6, self.server_host, self.server_port)
예제 #7
0
파일: Login.py 프로젝트: MechanisM/emesene
    def do_connect(self):
        '''
        do all the stuffs needed to connect
        '''
        self.nicebar.empty_queue()
        user = self.cmb_account.get_active_text().strip().lower()
        password = self.txt_password.get_text()
        account = e3.Account(user, password, self.btn_status.status,
                             self.server_host)
        remember_password = self.remember_password.get_active()
        remember_account = self.remember_account.get_active()
        auto_login = self.auto_login.get_active()

        if user == '' or password == '':
            self.show_error(_('user or password fields are empty'))
            return

        self.config_account(account, self._get_active_service(),
                            remember_account, remember_password, auto_login)

        self.callback(account, self.session_id, self.proxy, self.use_http,
                      self.server_host, self.server_port)