def feedpage(feedid): ''' the back end settings for one feed. ''' try: feed = Feed.get(id=feedid) user = user_session.get_user() except user_session.NotLoggedIn: user = User() except: flash('invalid feed id! (' + str(feedid) + ')') return redirect(url_for('feeds')) if request.method == 'POST': if not user_session.logged_in(): flash("You're not logged in!") return redirect(url_for('feeds')) if not user.is_admin: flash('Sorry! Only Admins can change these details.') return redirect(request.referrer) action = request.form.get('action', 'none') if action == 'edit': feed.name = request.form.get('title', feed.name).strip() inlist = request.form.getlist feed.post_types = ', '.join(inlist('post_types')) feed.set_authors(by_id(User, inlist('authors'))) feed.set_publishers(by_id(User, inlist('publishers'))) feed.set_author_groups(by_id(Group, inlist('author_groups'))) feed.set_publisher_groups(by_id(Group, inlist('publisher_groups'))) feed.save() flash('Saved') elif action == 'delete': for post in feed.posts: post_type_module = post_types.load(post.type) delete_post_and_run_callback(post, post_type_module) feed.delete_instance(True, True) # cascade/recursive delete. flash('Deleted') return redirect(url_for('feeds')) return render_template('feed.html', feed=feed, user=user, all_posttypes=post_types.types(), allusers=User.select(), allgroups=Group.select() )
def test_users_strid(self): u2 = models.User(loginname='bono', passwordhash='1234') models.User(loginname='test5', passwordhash='1234').save() u2.save() self.assertEqual(models.by_id(models.User, [str(u2.id)]), [u2])
def test_users_one_many_exist(self): models.User(loginname='test', passwordhash='1234').save() models.User(loginname='test2', passwordhash='1234').save() u = models.User(loginname='test3', passwordhash='1234') models.User(loginname='test4', passwordhash='1234').save() models.User(loginname='test5', passwordhash='1234').save() u.save() self.assertEqual(models.by_id(models.User, [u.id]), [u])
def test_users_some_invalid_ids(self): models.User(loginname='test', passwordhash='1234').save() models.User(loginname='test2', passwordhash='1234').save() u = models.User(loginname='test3', passwordhash='1234') u2 = models.User(loginname='bono', passwordhash='1234') models.User(loginname='test5', passwordhash='1234').save() u.save() u2.save() with self.assertRaises(models.User.DoesNotExist): models.User.get(id=42) with self.assertRaises(models.User.DoesNotExist): models.User.get(id=314) self.assertEqual(models.by_id(models.User, [42, u.id, 314]), [u])
def test_users_one(self): u = models.User(loginname='test', passwordhash='1234') u.save() self.assertEqual(models.by_id(models.User, [u.id]), [u])
def test_users_none_but_some_exist(self): models.User(loginname='test', passwordhash='1234').save() models.User(loginname='test2', passwordhash='1234').save() self.assertEqual(models.by_id(models.User, []), [])
def test_users_none(self): self.assertEqual(models.by_id(models.User, []), [])