Example #1
0
    def authenticate(self):
        global auth_local_webserver
        import socket
        from oauth2client.file import Storage
        storage = Storage(self.authFile)
        credentials = storage.get()
        if credentials and not credentials.invalid:
            return credentials

        if auth_local_webserver:
            success = False
            port_number = 0
            for port in auth_host_port:
                port_number = port
                try:
                    httpd = ClientRedirectServer(
                        (auth_host_name, port),
                        ClientRedirectHandler,
                    )
                except socket.error as e:
                    print(
                        '-------- counld no use port %s for local web server: %s'
                        % (port, e))
                    pass
                else:
                    success = True
                    break
            auth_local_webserver = success

        if auth_local_webserver:
            oauth_callback = 'http://%s:%s/' % (auth_host_name, port_number)
        else:
            oauth_callback = 'oob'
        core.openUrl(self.flow.step1_get_authorize_url(oauth_callback))

        code = None
        if auth_local_webserver:
            httpd.handle_request()
            if 'error' in httpd.query_params:
                self.showError(_('Authentication request was rejected.'))
                return
            if 'code' in httpd.query_params:
                code = httpd.query_params['code']
            else:
                self.showError(
                    _('Failed to find "code" in the query parameters of the redirect.'
                      ))
                return
        else:
            code = self.askVerificationCode()
        try:
            credential = self.flow.step2_exchange(code)
        except Exception as e:
            self.showError(_('Authentication has failed') + ':\n%s' % e)
            return
        storage.put(credential)
        credential.set_store(storage)
        return credentials
Example #2
0
    def authenticate(self):
        global auth_local_webserver
        import socket
        from oauth2client.file import Storage
        storage = Storage(self.authFile)
        credentials = storage.get()
        if credentials and not credentials.invalid:
            return credentials

        if auth_local_webserver:
            success = False
            port_number = 0
            for port in auth_host_port:
                port_number = port
                try:
                    httpd = ClientRedirectServer(
                        (auth_host_name, port),
                        ClientRedirectHandler,
                    )
                except socket.error as e:
                    print('-------- counld no use port %s for local web server: %s'%(port, e))
                    pass
                else:
                    success = True
                    break
            auth_local_webserver = success

        if auth_local_webserver:
            oauth_callback = 'http://%s:%s/' % (auth_host_name, port_number)
        else:
            oauth_callback = 'oob'
        core.openUrl(self.flow.step1_get_authorize_url(oauth_callback))

        code = None
        if auth_local_webserver:
            httpd.handle_request()
            if 'error' in httpd.query_params:
                self.showError(_('Authentication request was rejected.'))
                return
            if 'code' in httpd.query_params:
                code = httpd.query_params['code']
            else:
                self.showError(_('Failed to find "code" in the query parameters of the redirect.'))
                return
        else:
            code = self.askVerificationCode()
        try:
            credential = self.flow.step2_exchange(code)
        except Exception as e:
            self.showError(_('Authentication has failed')+':\n%s'%e)
            return
        storage.put(credential)
        credential.set_store(storage)
        return credentials
Example #3
0
        #self.set_property('skip-taskbar-hint', not ui.winTaskbar) ## self.set_skip_taskbar_hint ## FIXME
        ## skip-taskbar-hint  need to restart ro be applied
        #self.updateToolbarClock()## FIXME
        #self.updateStatusIconClock()
        self.statusIconUpdate()


###########################################################################3


#core.COMMAND = sys.argv[0] ## OR __file__ ## ????????


gtk.init_check(sys.argv)

clickWebsite = lambda widget, url: core.openUrl(url)
try:
    gtk.link_button_set_uri_hook(clickWebsite)
except:## old PyGTK (older than 2.10)
    pass

try:
    gtk.about_dialog_set_url_hook(clickWebsite)
except:## old PyGTK (older than 2.10)
    pass

for plug in core.allPlugList:
    if hasattr(plug, 'onCurrentDateChange'):
        listener.dateChange.add(plug)

Example #4
0
		#self.set_property('skip-taskbar-hint', not ui.winTaskbar) ## self.set_skip_taskbar_hint ## FIXME
		## skip-taskbar-hint  need to restart ro be applied
		#self.updateToolbarClock()## FIXME
		#self.updateStatusIconClock()
		self.statusIconUpdate()


###########################################################################3


#core.COMMAND = sys.argv[0] ## OR __file__ ## ????????


gtk.init_check(sys.argv)

clickWebsite = lambda widget, url: core.openUrl(url)
try:
	gtk.link_button_set_uri_hook(clickWebsite)
except:## old PyGTK (older than 2.10)
	pass

try:
	gtk.about_dialog_set_url_hook(clickWebsite)
except:## old PyGTK (older than 2.10)
	pass

for plug in core.allPlugList:
	if hasattr(plug, 'onCurrentDateChange'):
		listener.dateChange.add(plug)