Пример #1
0
	def post(self):
		action=self.param("action")
		name=self.param("link_name")
		url=self.param("link_url")
		comment = self.param("link_comment")

		vals={'action':action,'postback':True,'current':'links'}
		if not (name and url):
			vals.update({'result':False,'msg':_('Please input name and url.')})
			self.render2('views/admin/link.html',vals)
		else:
			if action=='add':
			   link= Link(linktext=name,href=url,linkcomment=comment)
			   link.put()
			   vals.update({'result':True,'msg':'Saved ok'})
			   self.render2('views/admin/link.html',vals)
			elif action=='edit':
				try:
					action_id=int(self.param('id'))
					link=Link.get_by_id(action_id)
					link.linktext=name
					link.href=url
					link.linkcomment = comment
					link.put()
					#goto link manage page
					self.redirect('/admin/links')

				except:
					vals.update({'result':False,'msg':_('Error:Link can''t been saved.')})
					self.render2('views/admin/link.html',vals)
					
		ObjCache.update_basic_info(update_links=True)
Пример #2
0
	def post(self):
		linkcheck= self.request.get_all('linkcheck')
		for link_id in linkcheck:
			kid=int(link_id)
			link=Link.get_by_id(kid)
			link.delete()
		ObjCache.update_basic_info(update_links=True)
		self.redirect('/admin/links')
Пример #3
0
	def post(self):
		def check(cate):
			parent=cate.parent_cat
			skey=cate.key()
			while parent:
				if parent.key()==skey:
					return False
				parent=parent.parent_cat
			return True

		action=self.param("action")
		name=self.param("name")
		slug=self.param("slug")
		parentkey=self.param('parentkey')
		key=self.param('key')
		
		ObjCache.flush_multi(is_htmlpage=True)

		vals={'action':action,'postback':True}

		try:

				if action=='add':
					cat= Category(name=name,slug=slug)
					if not (name and slug):
						raise Exception(_('Please input name and slug.'))
					if parentkey:
						cat.parent_cat=Category.get(parentkey)

					cat.put()
					self.redirect('/admin/categories')

					#vals.update({'result':True,'msg':_('Saved ok')})
					#self.render2('views/admin/category.html',vals)
				elif action=='edit':

						cat=Category.get(key)
						cat.name=name
						cat.slug=slug
						if not (name and slug):
							raise Exception(_('Please input name and slug.'))
						if parentkey:
							cat.parent_cat=Category.get(parentkey)
							if not check(cat):
								raise Exception(_('A circle declaration found.'))
						else:
							cat.parent_cat=None
						cat.put()
						self.redirect('/admin/categories')

		except Exception ,e :
			if cat.is_saved():
				cates=[c for c in Category.all() if c.key()!=cat.key()]
			else:
				cates= Category.all()

			vals.update({'result':False,'msg':e.message,'category':cat,'key':key,'categories':cates})
			self.render2('views/admin/category.html',vals)
Пример #4
0
	def post(self,slug=None):
		try:
			linkcheck= self.request.get_all('checks')
			ObjCache.flush_multi(is_htmlpage=True)
			for key in linkcheck:
				cat=Category.get(key)
				if cat:
					cat.delete()
		finally:
			self.redirect('/admin/categories')
Пример #5
0
	def post(self):
		old_theme=g_blog.theme_name
		str_options= self.param('str_options').split(',')
		for name in str_options:
			value=self.param(name)
			setattr(g_blog,name,value)

		bool_options= self.param('bool_options').split(',')
		for name in bool_options:
			value=self.param(name)=='on'
			setattr(g_blog,name,value)

		int_options= self.param('int_options').split(',')
		for name in int_options:
			try:
				value=int( self.param(name))
				setattr(g_blog,name,value)
			except:
				pass
		float_options= self.param('float_options').split(',')
		for name in float_options:
			try:
				value=float( self.param(name))
				setattr(g_blog,name,value)
			except:
				pass


		if old_theme !=g_blog.theme_name:
			g_blog.get_theme()


		g_blog.owner=self.login_user
		g_blog.author=g_blog.owner.nickname()
		g_blog.save()
		gblog_init()
		vals={'themes':ThemeIterator()}
		ObjCache.flush_multi(is_htmlpage=True)
		self.render2('views/admin/setup.html',vals)
Пример #6
0
	def post(self,slug='post'):
		try:
			linkcheck= self.request.get_all('checks')
			for id in linkcheck:
				kid=int(id)

				entry=Entry.get_by_id(kid)
				if entry.entrytype=='PAGE':
					ObjCache.flush_multi(is_htmlpage=True)
				else:
					ObjCache.flush_multi(is_htmlpage=True, entry_id=entry.post_id)
					ObjCache.flush_multi(is_htmlpage=True, is_aggregation=True)
				entry.delete()
				g_blog.entrycount-=1
		finally:
			ObjCache.update_basic_info(update_pages=True)
			self.redirect('/admin/entries/'+slug)
Пример #7
0
	def action_cacheclear(self):
		#memcache.flush_all()
		ObjCache.flush_all() #Rex @ Dec. 3, 2011
		self.write(_('"Cache cleared successful"'))