def post(self, *args): """""" # fields from form previous_name = self.request.get('previous_name') name = self.request.get('name') authors = self.request.get('authors') readers = self.request.get('readers') access = self.request.get('access') return_url = self.request.get('return_url') owner_name = self.request.get('owner') owner = User.get_by_username(owner_name) error = "" if not owner: owner = self.current_user if access == 'on': private_access = True access = 'CHECKED' else: private_access = False access = '' if previous_name: previous_namespace = Namespace.get_by_key_name(previous_name, parent=owner) if not previous_namespace or not previous_namespace.own_by( self.current_user): self.error(401) return if previous_name != name: if not previous_namespace: error = "can't delete previous namespace '%s'" % previous_name else: previous_namespace.delete() if (error): body = self.create_form(self.type_url, self.type_url, error=error, owner=owner, owner=owner_name, name=name, previous_name=previous_name, authors=authors, readers=readers, access=access) else: namespace = Namespace.create_or_update( name=name, owner=owner, authors=authors, readers=readers, private_access=private_access) self.redirect(return_url + "/" + util.url_encode(namespace.name))
def initialize(self, request, response): """ W: Vérifier l'existence des ressources ???? """ super(Handler, self).initialize(request, response) # Attributes if 'suffix' in self.url_groupdict: self.suffix = self.url_groupdict['suffix'] else: self.suffix = '' if self.suffix: self.type_url = self.ressource_url = self.request.path_info[0:( len(self.request.path_info) - len(self.suffix))] # without suffix else: self.type_url = self.ressource_url = self.request.path_info self.current_user = None if User.get_current_user() and User.get_current_user().is_registered(): self.current_user = User.get_current_user() # Attributes present only if ressource reference it if 'username' in self.url_groupdict: self.user = User.get_by_username( util.url_decode(self.url_groupdict['username'])) if 'namespace_id' in self.url_groupdict: self.namespace = Namespace.get_by_key_name(util.url_decode( self.url_groupdict['namespace_id']), parent=self.user) if 'tiddler_id' in self.url_groupdict: self.tiddler = Tiddler.get_by_key_name(util.url_decode( self.url_groupdict['tiddler_id']), parent=self.namespace) if 'tiddlywiki_id' in self.url_groupdict: self.tiddlywiki = Tiddlywiki.get_by_key_name(util.url_decode( self.url_groupdict['tiddlywiki_id']), parent=self.user) # set type_url if 'type' in self.url_groupdict: t = self.type = self.url_groupdict['type'] if self.user: self.type_url = '/' + util.url_encode(self.user.username) else: self.type_url = '/' + self.url_groupdict['username'] if t == 'namespaces': self.type_url += '/' + config.namespace_name elif t == 'tiddlers': self.type_url += '/' + config.namespace_name + '/' + self.url_groupdict[ 'namespace_id'] + '/' + config.tiddler_name elif t == 'tiddlywikis': self.type_url += '/' + config.tiddlywiki_name
def post(self, *args): """ """ ressource_menu = "" error = "" name = self.request.get('name') namespace_name = self.request.get('namespace_name') access = self.request.get('access') title = self.request.get('title') subtitle = self.request.get('subtitle') if access == 'on': private_access = True access='CHECKED' else: private_access = False namespace = None tiddlers = [] try: if namespace_name: namespace = Namespace.get_by_key_name(namespace_name, parent=self.user) else: #use tiddlywiki name as default namespace_name namespace_name = name namespace = Namespace.get_by_key_name(namespace_name, parent=self.user) if not namespace: # then create default namespace namespace = Namespace.create_or_update(name, self.user, private_access=private_access) if not namespace: error = "Namespace '%s' unknown"%namespace_name else: for tiddler in Tiddler.list_for(namespace): if self.request.get(util.url_encode(tiddler.title)) == 'on': tiddlers.append(tiddler.key()) return_url = self.request.get('return_url') except OwnerException, e: error = e
def post(self, *args): """""" # fields from form previous_name = self.request.get("previous_name") name = self.request.get("name") authors = self.request.get("authors") readers = self.request.get("readers") access = self.request.get("access") return_url = self.request.get("return_url") owner_name = self.request.get("owner") owner = User.get_by_username(owner_name) error = "" if not owner: owner = self.current_user if access == "on": private_access = True access = "CHECKED" else: private_access = False access = "" if previous_name: previous_namespace = Namespace.get_by_key_name(previous_name, parent=owner) if not previous_namespace or not previous_namespace.own_by(self.current_user): self.error(401) return if previous_name != name: if not previous_namespace: error = "can't delete previous namespace '%s'" % previous_name else: previous_namespace.delete() if error: body = self.create_form( self.type_url, self.type_url, error=error, owner=owner, owner=owner_name, name=name, previous_name=previous_name, authors=authors, readers=readers, access=access, ) else: namespace = Namespace.create_or_update( name=name, owner=owner, authors=authors, readers=readers, private_access=private_access ) self.redirect(return_url + "/" + util.url_encode(namespace.name))
def initialize(self, request, response): """ W: Vérifier l'existence des ressources ???? """ super(Handler, self).initialize(request, response) # Attributes if 'suffix' in self.url_groupdict: self.suffix = self.url_groupdict['suffix'] else: self.suffix = '' if self.suffix: self.type_url = self.ressource_url = self.request.path_info[0:(len(self.request.path_info)-len(self.suffix))] # without suffix else: self.type_url = self.ressource_url = self.request.path_info self.current_user = None if User.get_current_user() and User.get_current_user().is_registered(): self.current_user = User.get_current_user() # Attributes present only if ressource reference it if 'username' in self.url_groupdict: self.user = User.get_by_username(util.url_decode(self.url_groupdict['username'])) if 'namespace_id' in self.url_groupdict: self.namespace = Namespace.get_by_key_name(util.url_decode(self.url_groupdict['namespace_id']), parent=self.user) if 'tiddler_id' in self.url_groupdict: self.tiddler = Tiddler.get_by_key_name(util.url_decode(self.url_groupdict['tiddler_id']),parent=self.namespace) if 'tiddlywiki_id' in self.url_groupdict: self.tiddlywiki = Tiddlywiki.get_by_key_name(util.url_decode(self.url_groupdict['tiddlywiki_id']),parent=self.user) # set type_url if 'type' in self.url_groupdict: t = self.type = self.url_groupdict['type'] if self.user: self.type_url = '/'+util.url_encode(self.user.username) else: self.type_url = '/'+self.url_groupdict['username'] if t == 'namespaces': self.type_url += '/'+config.namespace_name elif t == 'tiddlers': self.type_url += '/' + config.namespace_name + '/' + self.url_groupdict['namespace_id'] + '/' + config.tiddler_name elif t == 'tiddlywikis': self.type_url += '/'+config.tiddlywiki_name