def test_delete_settings(self):
     group = 'test_grp'
     for i in range(10):
         store.set_setting('k%s' % i, 'v%s' % i, group)
     # get settings:
     ss = store.get_settings(group)
     for i in range(10):
         self.assertTrue(('k%s' % i) in ss)
     # delete settings:
     store.delete_settings(group)
     # get settings again:
     ss = store.get_settings(group)
     self.assertEquals(0, len(ss.keys()))
 def test_get_settings(self):
     group = 'test_grp'
     for i in range(10):
         store.set_setting('key-%d' % i, 'value-%d' % i, group)
     ss = store.get_settings(group)
     for i in range(10):
         self.assertTrue('key-%d' % i in ss)
         self.assertEquals('value-%d' % i, ss['key-%d' % i])
Example #3
0
def _get_from_store():
    nav_dict = store.get_settings(NAV_GROUP)
    if not nav_dict:
        nav_dict[u"00Home"] = u"/"
    # sort:
    keys = nav_dict.keys()
    keys.sort()
    navs = []
    for key in keys:
        if len(key) > 2:
            navs.append((key[2:], nav_dict[key]))
    return navs
Example #4
0
def get_widget_instance_settings(widget_instance, widget_class):
    '''
    Get widget instance settings.
    
    Args:
      widget_instance: Widget instance object.
      widget_class: Widget class object.
    
    Return:
      Dict (name=value) as settings of WidgetInstance.
    '''
    d = store.get_settings('widget_instance_%s' % widget_instance.id)
    settings = get_widget_class_settings(widget_class)
    
    return d
Example #5
0
def _get_from_store():
    nav_dict = store.get_settings(NAV_GROUP)
    if not nav_dict:
        nav_dict[u'00Home'] = u'/'
    # sort:
    keys = nav_dict.keys()
    keys.sort()
    navs = []
    for key in keys:
        if len(key) > 2:
            navs.append((
                key[2:],
                nav_dict[key],
            ))
    return navs
 def test_set_setting(self):
     name = 'email'
     value = '*****@*****.**'
     self.assertTrue(store.get_setting(name) is None)
     self.assertEquals('*****@*****.**', store.get_setting(name, store.DEFAULT_GROUP, '*****@*****.**'))
     store.set_setting(name, value)
     self.assertEquals(value, store.get_setting(name))
     name2 = 'url'
     value2 = 'http://guest.example.com'
     store.set_setting(name2, value2)
     # get settings as dict:
     d = store.get_settings()
     self.assertTrue(name in d)
     self.assertTrue(name2 in d)
     self.assertEquals(value, d[name])
     self.assertEquals(value2, d[name2])
Example #7
0
def feed(**kw):
    '''
    Generate rss feed.
    '''
    host = kw['request'].host_url
    options = store.get_settings(blog.GROUP_OPTIONS)
    blog.update_default_settings(options)
    title = options[blog.FEED_TITLE]
    description = 'Subscribe RSS feed'
    hub = 'http://pubsubhubbub.appspot.com'
    link = options[blog.FEED_PROXY] or ('%s/blog/feed' % host)
    max = int(options[blog.FEED_ITEMS])
    posts, cursor = model.get_posts(limit=max)
    response = kw['response']
    response.content_type = 'application/rss+xml'
    response.charset = 'utf8'
    out = response.out
    out.write(r'''<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/">
  <channel>
    <atom:link rel="hub" href="%s"/>
    <title>%s</title>
    <link>%s</link>
    <description>%s</description>
    <generator>expressme.org</generator>
    <language>en</language>''' % (hub, title, link, description))
    for post in posts:
        out.write(r'''
    <item>
      <title>%s</title>
      <link>%s/blog/post/%s</link>
      <dc:creator>%s</dc:creator>
      <pubDate>%s</pubDate>
      <description><![CDATA[%s]]></description>
    </item>''' % (
            post.title,
            host,
            post.id,
            post.author,
            post.creation_date.strftime('%a, %d %b %Y %H:%M:%S'),
            post.content
    ))
    out.write(r'''
  </channel>
</rss>
''')
Example #8
0
def feed(**kw):
    '''
    Generate rss feed.
    '''
    host = kw['request'].host_url
    options = store.get_settings(blog.GROUP_OPTIONS)
    blog.update_default_settings(options)
    title = options[blog.FEED_TITLE]
    description = 'Subscribe RSS feed'
    hub = 'http://pubsubhubbub.appspot.com'
    link = options[blog.FEED_PROXY] or ('%s/blog/feed' % host)
    max = int(options[blog.FEED_ITEMS])
    posts, cursor = model.get_posts(limit=max)
    response = kw['response']
    response.content_type = 'application/rss+xml'
    response.charset = 'utf8'
    out = response.out
    out.write(r'''<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/">
  <channel>
    <atom:link rel="hub" href="%s"/>
    <title>%s</title>
    <link>%s</link>
    <description>%s</description>
    <generator>expressme.org</generator>
    <language>en</language>''' % (hub, title, link, description))
    for post in posts:
        out.write(r'''
    <item>
      <title>%s</title>
      <link>%s/blog/post/%s</link>
      <dc:creator>%s</dc:creator>
      <pubDate>%s</pubDate>
      <description><![CDATA[%s]]></description>
    </item>''' % (post.title, host, post.id, post.author,
                  post.creation_date.strftime('%a, %d %b %Y %H:%M:%S'),
                  post.content))
    out.write(r'''
  </channel>
</rss>
''')
Example #9
0
def _options(user, app, context):
    info = ''
    if context.method=='post':
        feed_title = context.get_argument(blog.FEED_TITLE)
        feed_proxy = context.get_argument(blog.FEED_PROXY)
        feed_items = context.get_argument(blog.FEED_ITEMS)
        show_abstract = context.get_argument(blog.SHOW_ABSTRACT)
        # save:
        store.set_setting(blog.FEED_TITLE, feed_title, blog.GROUP_OPTIONS)
        store.set_setting(blog.FEED_PROXY, feed_proxy, blog.GROUP_OPTIONS)
        store.set_setting(blog.FEED_ITEMS, feed_items, blog.GROUP_OPTIONS)
        store.set_setting(blog.SHOW_ABSTRACT, show_abstract, blog.GROUP_OPTIONS)
        info = 'Your options are saved.'
    # load options:
    options = store.get_settings(blog.GROUP_OPTIONS)
    blog.update_default_settings(options)
    return {
            '__view__' : 'manage_option',
            'options' : options,
            'info' : info,
    }
Example #10
0
def _options(user, app, context):
    info = ''
    if context.method == 'post':
        feed_title = context.get_argument(blog.FEED_TITLE)
        feed_proxy = context.get_argument(blog.FEED_PROXY)
        feed_items = context.get_argument(blog.FEED_ITEMS)
        show_abstract = context.get_argument(blog.SHOW_ABSTRACT)
        # save:
        store.set_setting(blog.FEED_TITLE, feed_title, blog.GROUP_OPTIONS)
        store.set_setting(blog.FEED_PROXY, feed_proxy, blog.GROUP_OPTIONS)
        store.set_setting(blog.FEED_ITEMS, feed_items, blog.GROUP_OPTIONS)
        store.set_setting(blog.SHOW_ABSTRACT, show_abstract,
                          blog.GROUP_OPTIONS)
        info = 'Your options are saved.'
    # load options:
    options = store.get_settings(blog.GROUP_OPTIONS)
    blog.update_default_settings(options)
    return {
        '__view__': 'manage_option',
        'options': options,
        'info': info,
    }
Example #11
0
def _get_from_store():
    site_dict = store.get_settings(SITE_GROUP)
    kw = {}
    for k in site_dict.keys():
        kw[str(k)] = site_dict[k]
    return Site(**kw)
Example #12
0
def _get_from_store():
    site_dict = store.get_settings(SITE_GROUP)
    kw = {}
    for k in site_dict.keys():
        kw[str(k)] = site_dict[k]
    return Site(**kw)
 def test_error(self):
     self.assertRaises(ValueError, lambda: store.set_setting(123, 'abc'))
     self.assertRaises(ValueError, lambda: store.set_setting('abc', 123))
     self.assertRaises(ValueError, lambda: store.get_setting(123))
     self.assertRaises(ValueError, lambda: store.get_settings(9.99))