def epilogue(self): nf = NodeFactory(self.store_new) url = nf.get_val(u'public_site') o = urlparse(url) domain = o.hostname if not o.hostname is None else '' models.db_delete(self.store_new, Config, var_group=u'node', var_name=u'public_site') add_raw_config(self.store_new, u'node', u'hostname', domain != '', unicode(domain)) url = nf.get_val(u'hidden_service') o = urlparse(url) domain = o.hostname if not o.hostname is None else '' models.db_delete(self.store_new, Config, var_group=u'node', var_name=u'hidden_service') add_raw_config(self.store_new, u'node', u'onionservice', domain != '', unicode(domain)) add_raw_config(self.store_new, u'node', u'reachable_via_web', False, False) self.entries_count['Config'] += 1 self.store_new.commit()
def wizard(store, request, language): node = NodeFactory(store) if node.get_val('wizard_done'): # TODO report as anomaly log.err("DANGER: Wizard already initialized!") raise errors.ForbiddenOperation try: node._query_group() node.set_val('name', request['node']['name']) node.set_val('default_language', language) node.set_val('wizard_done', True) if GLSettings.onionservice is not None: node.set_val('onionservice', GLSettings.onionservice) node_l10n = NodeL10NFactory(store) node_l10n.set_val('description', language, request['node']['description']) node_l10n.set_val('header_title_homepage', language, request['node']['name']) context = db_create_context(store, request['context'], language) langs_to_drop = EnabledLanguage.list(store) langs_to_drop.remove(language) if len(langs_to_drop): EnabledLanguage.remove_old_langs(store, langs_to_drop) request['receiver']['contexts'] = [context.id] request['receiver']['language'] = language db_create_receiver(store, request['receiver'], language) admin_dict = { 'username': u'admin', 'password': request['admin']['password'], 'role': u'admin', 'state': u'enabled', 'deletable': False, 'name': u'Admin', 'public_name': u'Admin', 'description': u'', 'mail_address': request['admin']['mail_address'], 'language': language, 'password_change_needed': False, 'pgp_key_remove': False, 'pgp_key_fingerprint': '', 'pgp_key_public': '', 'pgp_key_expiration': datetime_null() } db_create_admin_user(store, admin_dict, language) except Exception as excep: log.err("Failed wizard initialization %s" % excep) raise excep
def get_onion_service_info(store): node_fact = NodeFactory(store) hostname = node_fact.get_val(u'onionservice') priv_fact = PrivateFactory(store) key = priv_fact.get_val(u'tor_onion_key') return hostname, key
def wizard(store, request, language): node = NodeFactory(store) if node.get_val('wizard_done'): # TODO report as anomaly log.err("DANGER: Wizard already initialized!") raise errors.ForbiddenOperation try: node._query_group() nn = unicode(request['node']['name']) node.set_val('name', nn) node.set_val('default_language', language) node.set_val('wizard_done', True) node_l10n = NodeL10NFactory(store) node_l10n.set_val('description', language, nn) node_l10n.set_val('header_title_homepage', language, nn) node_l10n.set_val('presentation', language, nn) context = db_create_context(store, request['context'], language) langs_to_drop = EnabledLanguage.list(store) langs_to_drop.remove(language) if len(langs_to_drop): EnabledLanguage.remove_old_langs(store, langs_to_drop) request['receiver']['contexts'] = [context.id] request['receiver']['language'] = language db_create_receiver(store, request['receiver'], language) admin_dict = { 'username': u'admin', 'password': request['admin']['password'], 'role': u'admin', 'state': u'enabled', 'deletable': False, 'name': u'Admin', 'public_name': u'Admin', 'description': u'', 'mail_address': request['admin']['mail_address'], 'language': language, 'password_change_needed': False, 'pgp_key_remove': False, 'pgp_key_fingerprint': '', 'pgp_key_public': '', 'pgp_key_expiration': datetime_null() } db_create_admin_user(store, admin_dict, language) except Exception as excep: log.err("Failed wizard initialization %s" % excep) raise excep