bbangert / Kai

Kai is a Pylons web app that runs the PylonsHQ.com site. It has a simple blog, RSS feeds, pastebin, traceback repository, snippets, and documentation.

Clone this repository (size: 10.4 MB): HTTPS / SSH
$ hg clone http://bitbucket.org/bbangert/kai/
commit 246: ed113e9ab9d2
parent 245: 4e37c6d654f8
branch: default
Update for sync cloud when under toppcloud
Ben Bangert / bbangert
2 months ago

Changed (Δ280 bytes):

raw changeset »

kai/config/routing.py (4 lines added, 1 lines removed)

kai/controllers/home.py (6 lines added, 0 lines removed)

kai/websetup.py (8 lines added, 5 lines removed)

Up to file-list kai/config/routing.py:

@@ -32,7 +32,10 @@ def make_map(globs=None):
32
32
    # likely stay at the top, ensuring it can always be resolved
33
33
    map.connect('/error/{action}', controller='error')
34
34
    map.connect('/error/{action}/{id}', controller='error')
35
35
    
36
    # Toppcloud sync
37
    map.connect('/sync_app', controller='home', action='sync')
38
    
36
39
    # Home url's
37
40
    map.connect('home', '/', controller='home', action='index')
38
41
    map.connect('/robots.txt', controller='home', action='robots')

Up to file-list kai/controllers/home.py:

@@ -5,10 +5,16 @@ from pylons.controllers.util import abor
5
5
6
6
from kai.lib.base import BaseController, render
7
7
from kai.model import Article, Comment, Snippet, Paste
8
from kai.websetup import sync_db
8
9
9
10
log = logging.getLogger(__name__)
10
11
11
12
class HomeController(BaseController):
13
    def sync(self):
14
        if not request.environ['toppcloud.internal']:
15
            abort(404)
16
        sync_db(c.db)
17
12
18
    def index(self):
13
19
        c.articles = list(Article.by_time(c.db, descending=True, limit=5))
14
20
        c.snippets = list(Snippet.by_date(c.db, descending=True, limit=7))

Up to file-list kai/websetup.py:

@@ -10,11 +10,7 @@ from kai.model.generics import all_doc_t
10
10
11
11
log = logging.getLogger(__name__)
12
12
13
def setup_app(command, conf, vars):
14
    """Place any commands to setup kai here"""
15
    load_environment(conf.global_conf, conf.local_conf)
16
    server = pylons.config['kai.server']
17
    db = pylons.config['kai.db']
13
def sync_db(db):
18
14
    ViewDefinition.sync_many(db, [
19
15
        all_doc_tags,
20
16
        
@@ -40,3 +36,10 @@ def setup_app(command, conf, vars):
40
36
        
41
37
        Traceback.by_uuid, Traceback.by_time, Traceback.by_session_id,
42
38
    ])
39
40
def setup_app(command, conf, vars):
41
    """Place any commands to setup kai here"""
42
    load_environment(conf.global_conf, conf.local_conf)
43
    server = pylons.config['kai.server']
44
    db = pylons.config['kai.db']
45
    sync_db(db)