def process_request(self, request): if not ConfigData.get_configdata('site_installed', default=False): theming.check_themes() if not request.path.startswith('/install') and not request.path.startswith('/loader'): return http.HttpResponseRedirect(reverse('install')) if not request.path.startswith('/install') and not request.path.startswith('/loader'): for app in settings.INSTALLED_APPS: if not ConfigData.is_installed(app): try: Action.register_action(app) except exceptions.ImproperlyConfigured: pass #logging.error(" can not register %s actions" % app) if not ConfigData.is_installed(app): try: _install = util.get_attr_from("%s.config.install" % app) _install() except exceptions.ImproperlyConfigured: pass #logging.error("ImproperlyConfigured -> %s.config.install" % app) areas = util.get_config_value(app, "areas", {}) areas_vals = sorted(areas.values(), key=lambda x: x.get("order", 1000)) ConfigData.set_configdata(app, True, label='installed_app', extra={'adminareas':areas_vals})
def save(self): super(InstallForm, self).save() params = {"username":self.cleaned_data["username"].lower(), "first_name":self.cleaned_data["first_name"], "last_name":self.cleaned_data["last_name"], "email":self.cleaned_data["email"], "active":True, "superuser":True, "roles":['authenticated', 'administrator']} user = User(**params) user.code = util.generate_uuid() user.set_password(self.cleaned_data["password1"]) user.save() ConfigData.set_configdata('ADMIN_USERNAME', user.username) return user
def install(request): area = 'install' if ConfigData.get_configdata('site_installed', default=False): util.error(request, "Site is already installed") return http.HttpResponseRedirect(reverse('front')) form = InstallForm() if request.method == 'POST': form = InstallForm(request.POST) if form.is_valid(): user = form.save() ConfigData.set_configdata('site_installed', True) auth_login(request, user) util.success(request, "Site has been installed successfully") return http.HttpResponseRedirect(reverse('admin_dashboard')) c = template.RequestContext(request, locals()) _flag_as_admin(c) return render_to_response('install.html', c)
def save(self): ConfigData.set_configdata('SITE_NAME', self.cleaned_data['site_name']) ConfigData.set_configdata('SITE_DESCRIPTION', self.cleaned_data['meta_description']) ConfigData.set_configdata('SITE_KEYWORDS', self.cleaned_data['meta_keywords']) Theme.check_for_duplicated_active_themes(self.cleaned_data['theme']) return True