Example #1
0
	def create_form(self, action,return_url='/', error='', namespace=None, name='', previous_name='', private_access= False, title='', subtitle='', tiddlers=''):
		namespace_name = ''
		if namespace:
			namespace_name = namespace.name
		access = ''
		if private_access:
			access = 'CHECKED'		
		r = """
<form action="%(action)s" method="POST">
<input type="hidden" name="return_url" value="%(return_url)s">
<input type="hidden" name="previous_name" value="%(previous_name)s">
<strong>%(error)s</strong><P>
	Name: <input name=name value="%(name)s" size=80><br>
	Namespace: <input name=namespace_name value="%(namespace_name)s" size=80><br>
	Private access: <input type="checkbox" name="access" %(access)s><br>
	Title:  <input name=title value="%(title)s" size=80><br>
	Sub title:  <input name=subtitle value="%(subtitle)s" size=80><br>
		""" % {'action': action, 'return_url': return_url, 'error': error, 'name': name, 'namespace_name': namespace_name, 'previous_name':  previous_name, \
				'access': access, 'title': title, 'subtitle': subtitle}
		if namespace:
			r += "\nTiddlers: <ul>"
			namespace_name = namespace.name		
			tiddlers_in_namespace = Tiddler.list_for(namespace)
			for tiddler in tiddlers_in_namespace:
				if tiddler.key() in tiddlers:
					checked = 'CHECKED'
				else:
					checked = ''
				r += """<li><input type=CHECKBOX NAME="%s" %s ><a href="/namespace/%s/tiddler/%s">%s</a></li>""" % (util.url_encode(tiddler.title), checked, util.url_encode(namespace.name), util.url_encode(tiddler.title), tiddler.title)
		r += """
		</ul>
	<input type=submit label="Submit">
</form>
		"""
		return r
Example #2
0
	def list_in_html(self, type_url, namespace):
		results = Tiddler.list_for(namespace)
		r = "<ul>\n"
		for tiddler in results:
			r += "<li><a href=\"%s/%s\">%s</a></li>\n"%(type_url, util.url_encode(tiddler.title),tiddler.title)
		r += "</ul>\n"
		return r
Example #3
0
 def list_in_html(self, type_url, namespace):
     results = Tiddler.list_for(namespace)
     r = "<ul>\n"
     for tiddler in results:
         r += "<li><a href=\"%s/%s\">%s</a></li>\n" % (
             type_url, util.url_encode(tiddler.title), tiddler.title)
     r += "</ul>\n"
     return r
Example #4
0
	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