dev/null |binary docs/project_code/mokshaplugin/README.txt | 24 - docs/project_code/mokshaplugin/development.ini | 98 ---- docs/project_code/mokshaplugin/ez_setup/README.txt | 14 docs/project_code/mokshaplugin/ez_setup/__init__.py | 229 ---------- docs/project_code/mokshaplugin/mokshaplugin.egg-info/PKG-INFO | 10 docs/project_code/mokshaplugin/mokshaplugin.egg-info/SOURCES.txt | 63 -- docs/project_code/mokshaplugin/mokshaplugin.egg-info/dependency_links.txt | 1 docs/project_code/mokshaplugin/mokshaplugin.egg-info/entry_points.txt | 14 docs/project_code/mokshaplugin/mokshaplugin.egg-info/paste_deploy_config.ini_tmpl | 68 -- docs/project_code/mokshaplugin/mokshaplugin.egg-info/paster_plugins.txt | 4 docs/project_code/mokshaplugin/mokshaplugin.egg-info/requires.txt | 3 docs/project_code/mokshaplugin/mokshaplugin.egg-info/top_level.txt | 1 docs/project_code/mokshaplugin/mokshaplugin/__init__.py | 1 docs/project_code/mokshaplugin/mokshaplugin/config/app_cfg.py | 19 docs/project_code/mokshaplugin/mokshaplugin/config/environment.py | 4 docs/project_code/mokshaplugin/mokshaplugin/config/middleware.py | 14 docs/project_code/mokshaplugin/mokshaplugin/controllers/error.py | 41 - docs/project_code/mokshaplugin/mokshaplugin/controllers/root.py | 27 - docs/project_code/mokshaplugin/mokshaplugin/controllers/secc.py | 4 docs/project_code/mokshaplugin/mokshaplugin/controllers/template.py | 27 - docs/project_code/mokshaplugin/mokshaplugin/i18n/ru/LC_MESSAGES/mokshaplugin.po | 24 - docs/project_code/mokshaplugin/mokshaplugin/lib/app_globals.py | 13 docs/project_code/mokshaplugin/mokshaplugin/lib/base.py | 33 - docs/project_code/mokshaplugin/mokshaplugin/lib/helpers.py | 1 docs/project_code/mokshaplugin/mokshaplugin/model/__init__.py | 54 -- docs/project_code/mokshaplugin/mokshaplugin/model/model.template | 23 - docs/project_code/mokshaplugin/mokshaplugin/public/css/style.css | 227 --------- docs/project_code/mokshaplugin/mokshaplugin/templates/about.html | 135 ----- docs/project_code/mokshaplugin/mokshaplugin/templates/debug.html | 20 docs/project_code/mokshaplugin/mokshaplugin/templates/footer.html | 16 docs/project_code/mokshaplugin/mokshaplugin/templates/header.html | 19 docs/project_code/mokshaplugin/mokshaplugin/templates/index.html | 42 - docs/project_code/mokshaplugin/mokshaplugin/templates/login.html | 23 - docs/project_code/mokshaplugin/mokshaplugin/templates/mako.mak | 8 docs/project_code/mokshaplugin/mokshaplugin/templates/mako.mako | 1 docs/project_code/mokshaplugin/mokshaplugin/templates/master.html | 26 - docs/project_code/mokshaplugin/mokshaplugin/templates/sidebars.html | 33 - docs/project_code/mokshaplugin/mokshaplugin/tests/__init__.py | 38 - docs/project_code/mokshaplugin/mokshaplugin/tests/functional/test_root.py | 21 docs/project_code/mokshaplugin/mokshaplugin/tests/test_models.py | 13 docs/project_code/mokshaplugin/mokshaplugin/websetup.py | 23 - docs/project_code/mokshaplugin/setup.cfg | 31 - docs/project_code/mokshaplugin/setup.py | 47 -- docs/project_code/mokshaplugin/test.ini | 21 45 files changed, 1558 deletions(-)
New commits: commit e433099e24413f9e18241b802a0776916615371c Author: Luke Macken lmacken@redhat.com Date: Wed Mar 11 18:35:14 2009 -0400
Remove the obsolete mokshaplugin from our docs
diff --git a/docs/project_code/mokshaplugin/README.txt b/docs/project_code/mokshaplugin/README.txt deleted file mode 100644 index 96ff76b..0000000 --- a/docs/project_code/mokshaplugin/README.txt +++ /dev/null @@ -1,24 +0,0 @@ -This file is for you to describe the mokshaplugin application. Typically -you would include information such as the information below: - -Installation and Setup -====================== - -Install ``mokshaplugin`` using the setup.py script:: - - $ cd mokshaplugin - $ python setup.py install - -Create the project database for any model classes defined:: - - $ paster setup-app development.ini - -Start the paste http server:: - - $ paster serve development.ini - -While developing you may want the server to reload after changes in package files (or its dependencies) are saved. This can be achieved easily by adding the --reload option:: - - $ paster serve --reload development.ini - -Then you are ready to go. diff --git a/docs/project_code/mokshaplugin/development.ini b/docs/project_code/mokshaplugin/development.ini deleted file mode 100644 index 75c3b77..0000000 --- a/docs/project_code/mokshaplugin/development.ini +++ /dev/null @@ -1,98 +0,0 @@ -# -# mokshaplugin - Pylons development environment configuration -# -# The %(here)s variable will be replaced with the parent directory of this file -# -# This file is for deployment specific config options -- other configuration -# that is always required for the app is done in the config directory, -# and generally should not be modified by end users. - -[DEFAULT] -debug = true -# Uncomment and replace with the address which should receive any error reports -#email_to = you@yourdomain.com -smtp_server = localhost -error_email_from = paste@localhost - -[server:main] -use = egg:Paste#http -host = 127.0.0.1 -port = 8080 - -[app:main] -use = egg:mokshaplugin -full_stack = true -#lang = ru -cache_dir = %(here)s/data -beaker.session.key = mokshaplugin -beaker.session.secret = somesecret - -# If you'd like to fine-tune the individual locations of the cache data dirs -# for the Cache data, or the Session saves, un-comment the desired settings -# here: -#beaker.cache.data_dir = %(here)s/data/cache -#beaker.session.data_dir = %(here)s/data/sessions - -# pick the form for your database -# %(here) may include a ':' character on Windows environments; this can -# invalidate the URI when specifying a SQLite db via path name -# sqlalchemy.url=postgres://username:password:port@hostname/databasename -# sqlalchemy.url=mysql://username:password@hostname:port/databasename - - -# If you have sqlite, here's a simple default to get you started -# in development - -sqlalchemy.url = sqlite:///%(here)s/devdata.db -sqlalchemy.echo = true -sqlalchemy.echo_pool = false -sqlalchemy.pool_recycle = 3600 - -# WARNING: *THE LINE BELOW MUST BE UNCOMMENTED ON A PRODUCTION ENVIRONMENT* -# Debug mode will enable the interactive debugging tool, allowing ANYONE to -# execute malicious code after an exception is raised. -#set debug = false - -# Logging configuration -# Add additional loggers, handlers, formatters here -# Uses python's logging config file format -# http://docs.python.org/lib/logging-config-fileformat.html - -[loggers] -keys = root, mokshaplugin, sqlalchemy - -[handlers] -keys = console - -[formatters] -keys = generic - -# If you create additional loggers, add them as a key to [loggers] -[logger_root] -level = INFO -handlers = console - -[logger_mokshaplugin] -level = DEBUG -handlers = -qualname = mokshaplugin - -[logger_sqlalchemy] -level = INFO -handlers = -qualname = sqlalchemy.engine -# "level = INFO" logs SQL queries. -# "level = DEBUG" logs SQL queries and results. -# "level = WARN" logs neither. (Recommended for production systems.) - -# If you create additional handlers, add them as a key to [handlers] -[handler_console] -class = StreamHandler -args = (sys.stderr,) -level = NOTSET -formatter = generic - -# If you create additional formatters, add them as a key to [formatters] -[formatter_generic] -format = %(asctime)s,%(msecs)03d %(levelname)-5.5s [%(name)s] %(message)s -datefmt = %H:%M:%S diff --git a/docs/project_code/mokshaplugin/ez_setup/README.txt b/docs/project_code/mokshaplugin/ez_setup/README.txt deleted file mode 100644 index 77c986d..0000000 --- a/docs/project_code/mokshaplugin/ez_setup/README.txt +++ /dev/null @@ -1,14 +0,0 @@ -This directory exists so that Subversion-based projects can share a single -copy of the ``ez_setup`` bootstrap module for ``setuptools``, and have it -automatically updated in their projects when ``setuptools`` is updated. - -For your convenience, you may use the following svn:externals definition:: - - ez_setup svn://svn.eby-sarna.com/svnroot/ez_setup - -You can set this by executing this command in your project directory:: - - svn propedit svn:externals . - -And then adding the line shown above to the file that comes up for editing. -Then, whenever you update your project, ``ez_setup`` will be updated as well. diff --git a/docs/project_code/mokshaplugin/ez_setup/__init__.py b/docs/project_code/mokshaplugin/ez_setup/__init__.py deleted file mode 100644 index 6473c14..0000000 --- a/docs/project_code/mokshaplugin/ez_setup/__init__.py +++ /dev/null @@ -1,229 +0,0 @@ -#!python -"""Bootstrap setuptools installation - -If you want to use setuptools in your package's setup.py, just include this -file in the same directory with it, and add this to the top of your setup.py:: - - from ez_setup import use_setuptools - use_setuptools() - -If you want to require a specific version of setuptools, set a download -mirror, or use an alternate download directory, you can do so by supplying -the appropriate options to ``use_setuptools()``. - -This file can also be run as a script to install or upgrade setuptools. -""" -import sys -DEFAULT_VERSION = "0.6c7" -DEFAULT_URL = "http://pypi.python.org/packages/%s/s/setuptools/" % sys.version[:3] - -md5_data = { - 'setuptools-0.6b1-py2.3.egg': '8822caf901250d848b996b7f25c6e6ca', - 'setuptools-0.6b1-py2.4.egg': 'b79a8a403e4502fbb85ee3f1941735cb', - 'setuptools-0.6b2-py2.3.egg': '5657759d8a6d8fc44070a9d07272d99b', - 'setuptools-0.6b2-py2.4.egg': '4996a8d169d2be661fa32a6e52e4f82a', - 'setuptools-0.6b3-py2.3.egg': 'bb31c0fc7399a63579975cad9f5a0618', - 'setuptools-0.6b3-py2.4.egg': '38a8c6b3d6ecd22247f179f7da669fac', - 'setuptools-0.6b4-py2.3.egg': '62045a24ed4e1ebc77fe039aa4e6f7e5', - 'setuptools-0.6b4-py2.4.egg': '4cb2a185d228dacffb2d17f103b3b1c4', - 'setuptools-0.6c1-py2.3.egg': 'b3f2b5539d65cb7f74ad79127f1a908c', - 'setuptools-0.6c1-py2.4.egg': 'b45adeda0667d2d2ffe14009364f2a4b', - 'setuptools-0.6c2-py2.3.egg': 'f0064bf6aa2b7d0f3ba0b43f20817c27', - 'setuptools-0.6c2-py2.4.egg': '616192eec35f47e8ea16cd6a122b7277', - 'setuptools-0.6c3-py2.3.egg': 'f181fa125dfe85a259c9cd6f1d7b78fa', - 'setuptools-0.6c3-py2.4.egg': 'e0ed74682c998bfb73bf803a50e7b71e', - 'setuptools-0.6c3-py2.5.egg': 'abef16fdd61955514841c7c6bd98965e', - 'setuptools-0.6c4-py2.3.egg': 'b0b9131acab32022bfac7f44c5d7971f', - 'setuptools-0.6c4-py2.4.egg': '2a1f9656d4fbf3c97bf946c0a124e6e2', - 'setuptools-0.6c4-py2.5.egg': '8f5a052e32cdb9c72bcf4b5526f28afc', - 'setuptools-0.6c5-py2.3.egg': 'ee9fd80965da04f2f3e6b3576e9d8167', - 'setuptools-0.6c5-py2.4.egg': 'afe2adf1c01701ee841761f5bcd8aa64', - 'setuptools-0.6c5-py2.5.egg': 'a8d3f61494ccaa8714dfed37bccd3d5d', - 'setuptools-0.6c6-py2.3.egg': '35686b78116a668847237b69d549ec20', - 'setuptools-0.6c6-py2.4.egg': '3c56af57be3225019260a644430065ab', - 'setuptools-0.6c6-py2.5.egg': 'b2f8a7520709a5b34f80946de5f02f53', - 'setuptools-0.6c7-py2.3.egg': '209fdf9adc3a615e5115b725658e13e2', - 'setuptools-0.6c7-py2.4.egg': '5a8f954807d46a0fb67cf1f26c55a82e', - 'setuptools-0.6c7-py2.5.egg': '45d2ad28f9750e7434111fde831e8372', -} - -import sys, os - -def _validate_md5(egg_name, data): - if egg_name in md5_data: - from md5 import md5 - digest = md5(data).hexdigest() - if digest != md5_data[egg_name]: - print >>sys.stderr, ( - "md5 validation of %s failed! (Possible download problem?)" - % egg_name - ) - sys.exit(2) - return data - - -def use_setuptools( - version=DEFAULT_VERSION, download_base=DEFAULT_URL, to_dir=os.curdir, - download_delay=15 -): - """Automatically find/download setuptools and make it available on sys.path - - `version` should be a valid setuptools version number that is available - as an egg for download under the `download_base` URL (which should end with - a '/'). `to_dir` is the directory where setuptools will be downloaded, if - it is not already available. If `download_delay` is specified, it should - be the number of seconds that will be paused before initiating a download, - should one be required. If an older version of setuptools is installed, - this routine will print a message to ``sys.stderr`` and raise SystemExit in - an attempt to abort the calling script. - """ - try: - import setuptools - if setuptools.__version__ == '0.0.1': - print >>sys.stderr, ( - "You have an obsolete version of setuptools installed. Please\n" - "remove it from your system entirely before rerunning this script." - ) - sys.exit(2) - except ImportError: - egg = download_setuptools(version, download_base, to_dir, download_delay) - sys.path.insert(0, egg) - import setuptools; setuptools.bootstrap_install_from = egg - - import pkg_resources - try: - pkg_resources.require("setuptools>="+version) - - except pkg_resources.VersionConflict, e: - # XXX could we install in a subprocess here? - print >>sys.stderr, ( - "The required version of setuptools (>=%s) is not available, and\n" - "can't be installed while this script is running. Please install\n" - " a more recent version first.\n\n(Currently using %r)" - ) % (version, e.args[0]) - sys.exit(2) - -def download_setuptools( - version=DEFAULT_VERSION, download_base=DEFAULT_URL, to_dir=os.curdir, - delay = 15 -): - """Download setuptools from a specified location and return its filename - - `version` should be a valid setuptools version number that is available - as an egg for download under the `download_base` URL (which should end - with a '/'). `to_dir` is the directory where the egg will be downloaded. - `delay` is the number of seconds to pause before an actual download attempt. - """ - import urllib2, shutil - egg_name = "setuptools-%s-py%s.egg" % (version,sys.version[:3]) - url = download_base + egg_name - saveto = os.path.join(to_dir, egg_name) - src = dst = None - if not os.path.exists(saveto): # Avoid repeated downloads - try: - from distutils import log - if delay: - log.warn(""" ---------------------------------------------------------------------------- -This script requires setuptools version %s to run (even to display -help). I will attempt to download it for you (from -%s), but -you may need to enable firewall access for this script first. -I will start the download in %d seconds. - -(Note: if this machine does not have network access, please obtain the file - - %s - -and place it in this directory before rerunning this script.) ----------------------------------------------------------------------------""", - version, download_base, delay, url - ); from time import sleep; sleep(delay) - log.warn("Downloading %s", url) - src = urllib2.urlopen(url) - # Read/write all in one block, so we don't create a corrupt file - # if the download is interrupted. - data = _validate_md5(egg_name, src.read()) - dst = open(saveto,"wb"); dst.write(data) - finally: - if src: src.close() - if dst: dst.close() - return os.path.realpath(saveto) - -def main(argv, version=DEFAULT_VERSION): - """Install or upgrade setuptools and EasyInstall""" - - try: - import setuptools - except ImportError: - egg = None - try: - egg = download_setuptools(version, delay=0) - sys.path.insert(0,egg) - from setuptools.command.easy_install import main - return main(list(argv)+[egg]) # we're done here - finally: - if egg and os.path.exists(egg): - os.unlink(egg) - else: - if setuptools.__version__ == '0.0.1': - # tell the user to uninstall obsolete version - use_setuptools(version) - - req = "setuptools>="+version - import pkg_resources - try: - pkg_resources.require(req) - except pkg_resources.VersionConflict: - try: - from setuptools.command.easy_install import main - except ImportError: - from easy_install import main - main(list(argv)+[download_setuptools(delay=0)]) - sys.exit(0) # try to force an exit - else: - if argv: - from setuptools.command.easy_install import main - main(argv) - else: - print "Setuptools version",version,"or greater has been installed." - print '(Run "ez_setup.py -U setuptools" to reinstall or upgrade.)' - - - -def update_md5(filenames): - """Update our built-in md5 registry""" - - import re - from md5 import md5 - - for name in filenames: - base = os.path.basename(name) - f = open(name,'rb') - md5_data[base] = md5(f.read()).hexdigest() - f.close() - - data = [" %r: %r,\n" % it for it in md5_data.items()] - data.sort() - repl = "".join(data) - - import inspect - srcfile = inspect.getsourcefile(sys.modules[__name__]) - f = open(srcfile, 'rb'); src = f.read(); f.close() - - match = re.search("\nmd5_data = {\n([^}]+)}", src) - if not match: - print >>sys.stderr, "Internal error!" - sys.exit(2) - - src = src[:match.start(1)] + repl + src[match.end(1):] - f = open(srcfile,'w') - f.write(src) - f.close() - - -if __name__=='__main__': - if len(sys.argv)>2 and sys.argv[1]=='--md5update': - update_md5(sys.argv[2:]) - else: - main(sys.argv[1:]) diff --git a/docs/project_code/mokshaplugin/mokshaplugin.egg-info/PKG-INFO b/docs/project_code/mokshaplugin/mokshaplugin.egg-info/PKG-INFO deleted file mode 100644 index 5a6b95c..0000000 --- a/docs/project_code/mokshaplugin/mokshaplugin.egg-info/PKG-INFO +++ /dev/null @@ -1,10 +0,0 @@ -Metadata-Version: 1.0 -Name: mokshaplugin -Version: 0.1dev -Summary: UNKNOWN -Home-page: UNKNOWN -Author: UNKNOWN -Author-email: UNKNOWN -License: UNKNOWN -Description: UNKNOWN -Platform: UNKNOWN diff --git a/docs/project_code/mokshaplugin/mokshaplugin.egg-info/SOURCES.txt b/docs/project_code/mokshaplugin/mokshaplugin.egg-info/SOURCES.txt deleted file mode 100644 index 3702531..0000000 --- a/docs/project_code/mokshaplugin/mokshaplugin.egg-info/SOURCES.txt +++ /dev/null @@ -1,63 +0,0 @@ -README.txt -development.ini -setup.cfg -setup.py -test.ini -ez_setup/README.txt -ez_setup/__init__.py -mokshaplugin/__init__.py -mokshaplugin/websetup.py -mokshaplugin.egg-info/PKG-INFO -mokshaplugin.egg-info/SOURCES.txt -mokshaplugin.egg-info/dependency_links.txt -mokshaplugin.egg-info/entry_points.txt -mokshaplugin.egg-info/paste_deploy_config.ini_tmpl -mokshaplugin.egg-info/paster_plugins.txt -mokshaplugin.egg-info/requires.txt -mokshaplugin.egg-info/top_level.txt -mokshaplugin/config/__init__.py -mokshaplugin/config/app_cfg.py -mokshaplugin/config/environment.py -mokshaplugin/config/middleware.py -mokshaplugin/controllers/__init__.py -mokshaplugin/controllers/error.py -mokshaplugin/controllers/root.py -mokshaplugin/controllers/secc.py -mokshaplugin/controllers/template.py -mokshaplugin/i18n/ru/LC_MESSAGES/mokshaplugin.po -mokshaplugin/lib/__init__.py -mokshaplugin/lib/app_globals.py -mokshaplugin/lib/base.py -mokshaplugin/lib/helpers.py -mokshaplugin/model/__init__.py -mokshaplugin/model/auth.py -mokshaplugin/model/model.template -mokshaplugin/public/favicon.ico -mokshaplugin/public/css/style.css -mokshaplugin/public/images/error.png -mokshaplugin/public/images/grad_blue_7x80.png -mokshaplugin/public/images/header_inner2.png -mokshaplugin/public/images/info.png -mokshaplugin/public/images/logo.gif -mokshaplugin/public/images/logo.png -mokshaplugin/public/images/ok.png -mokshaplugin/public/images/star.png -mokshaplugin/public/images/strype2.png -mokshaplugin/public/images/tg2_04.gif -mokshaplugin/public/images/tg_under_the_hood.png -mokshaplugin/public/images/under_the_hood_blue.png -mokshaplugin/templates/__init__.py -mokshaplugin/templates/about.html -mokshaplugin/templates/debug.html -mokshaplugin/templates/footer.html -mokshaplugin/templates/header.html -mokshaplugin/templates/index.html -mokshaplugin/templates/login.html -mokshaplugin/templates/mako.mak -mokshaplugin/templates/mako.mako -mokshaplugin/templates/master.html -mokshaplugin/templates/sidebars.html -mokshaplugin/tests/__init__.py -mokshaplugin/tests/test_models.py -mokshaplugin/tests/functional/__init__.py -mokshaplugin/tests/functional/test_root.py \ No newline at end of file diff --git a/docs/project_code/mokshaplugin/mokshaplugin.egg-info/dependency_links.txt b/docs/project_code/mokshaplugin/mokshaplugin.egg-info/dependency_links.txt deleted file mode 100644 index 8b13789..0000000 --- a/docs/project_code/mokshaplugin/mokshaplugin.egg-info/dependency_links.txt +++ /dev/null @@ -1 +0,0 @@ - diff --git a/docs/project_code/mokshaplugin/mokshaplugin.egg-info/entry_points.txt b/docs/project_code/mokshaplugin/mokshaplugin.egg-info/entry_points.txt deleted file mode 100644 index b532c4e..0000000 --- a/docs/project_code/mokshaplugin/mokshaplugin.egg-info/entry_points.txt +++ /dev/null @@ -1,14 +0,0 @@ - - [paste.app_factory] - main = mokshaplugin.config.middleware:make_app - - [paste.app_install] - main = pylons.util:PylonsInstaller - - [moksha.application] - mokshaplugin = mokshaplugin.controllers.root:RootController - - #[moksha.widget] - #obamafeed = mokshaplugin.controllers.root:ObamaFeed - - \ No newline at end of file diff --git a/docs/project_code/mokshaplugin/mokshaplugin.egg-info/paste_deploy_config.ini_tmpl b/docs/project_code/mokshaplugin/mokshaplugin.egg-info/paste_deploy_config.ini_tmpl deleted file mode 100644 index 87e4123..0000000 --- a/docs/project_code/mokshaplugin/mokshaplugin.egg-info/paste_deploy_config.ini_tmpl +++ /dev/null @@ -1,68 +0,0 @@ -# -# mokshaplugin - TurboGears configuration -# -# The %(here)s variable will be replaced with the parent directory of this file -# -[DEFAULT] -debug = true -email_to = you@yourdomain.com -smtp_server = localhost -error_email_from = paste@localhost - -[server:main] -use = egg:Paste#http -host = 0.0.0.0 -port = 8080 - -[app:main] -use = egg:mokshaplugin -full_stack = true -cache_dir = %(here)s/data -beaker.session.key = mokshaplugin -beaker.session.secret = ${app_instance_secret} -app_instance_uuid = ${app_instance_uuid} - -# If you'd like to fine-tune the individual locations of the cache data dirs -# for the Cache data, or the Session saves, un-comment the desired settings -# here: -#beaker.cache.data_dir = %(here)s/data/cache -#beaker.session.data_dir = %(here)s/data/sessions -# Specify the database for SQLAlchemy to use via -# turbogears.database -# %(here) may include a ':' character on Windows environments; this can -# invalidate the URI when specifying a SQLite db via path name -sqlalchemy.url = sqlite:///%(here)s/somedb.db -sqlalchemy.echo = False - -# Specify the database for SQLObject to use. -#sqlobject.dburi = sqlite://%(here)s/somedb.db - -# WARNING: *THE LINE BELOW MUST BE UNCOMMENTED ON A PRODUCTION ENVIRONMENT* -# Debug mode will enable the interactive debugging tool, allowing ANYONE to -# execute malicious code after an exception is raised. -set debug = false - -# Logging configuration -# Uses python's logging config file format -# http://docs.python.org/lib/logging-config-fileformat.html -[loggers] -keys = root - -[handlers] -keys = console - -[formatters] -keys = generic - -[logger_root] -level = INFO -handlers = console - -[handler_console] -class = StreamHandler -args = (sys.stderr,) -level = NOTSET -formatter = generic - -[formatter_generic] -format = %(asctime)s %(levelname)-5.5s [%(name)s] %(message)s diff --git a/docs/project_code/mokshaplugin/mokshaplugin.egg-info/paster_plugins.txt b/docs/project_code/mokshaplugin/mokshaplugin.egg-info/paster_plugins.txt deleted file mode 100644 index ab508e5..0000000 --- a/docs/project_code/mokshaplugin/mokshaplugin.egg-info/paster_plugins.txt +++ /dev/null @@ -1,4 +0,0 @@ -PasteScript -Pylons -TurboGears2 -tg.devtools diff --git a/docs/project_code/mokshaplugin/mokshaplugin.egg-info/requires.txt b/docs/project_code/mokshaplugin/mokshaplugin.egg-info/requires.txt deleted file mode 100644 index 943ff6c..0000000 --- a/docs/project_code/mokshaplugin/mokshaplugin.egg-info/requires.txt +++ /dev/null @@ -1,3 +0,0 @@ -TurboGears2 -ToscaWidgets >= 0.9.1 -zope.sqlalchemy \ No newline at end of file diff --git a/docs/project_code/mokshaplugin/mokshaplugin.egg-info/top_level.txt b/docs/project_code/mokshaplugin/mokshaplugin.egg-info/top_level.txt deleted file mode 100644 index 0ad7d66..0000000 --- a/docs/project_code/mokshaplugin/mokshaplugin.egg-info/top_level.txt +++ /dev/null @@ -1 +0,0 @@ -mokshaplugin diff --git a/docs/project_code/mokshaplugin/mokshaplugin/__init__.py b/docs/project_code/mokshaplugin/mokshaplugin/__init__.py deleted file mode 100644 index 9db2f3b..0000000 --- a/docs/project_code/mokshaplugin/mokshaplugin/__init__.py +++ /dev/null @@ -1 +0,0 @@ -from pylons.i18n import ugettext as _ diff --git a/docs/project_code/mokshaplugin/mokshaplugin/config/__init__.py b/docs/project_code/mokshaplugin/mokshaplugin/config/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/docs/project_code/mokshaplugin/mokshaplugin/config/app_cfg.py b/docs/project_code/mokshaplugin/mokshaplugin/config/app_cfg.py deleted file mode 100644 index 92e7042..0000000 --- a/docs/project_code/mokshaplugin/mokshaplugin/config/app_cfg.py +++ /dev/null @@ -1,19 +0,0 @@ -from tg.configuration import AppConfig, Bunch -import mokshaplugin -from mokshaplugin import model -from mokshaplugin.lib import app_globals, helpers - -base_config = AppConfig() -base_config.renderers = [] - -base_config.package = mokshaplugin - -#Set the default renderer -base_config.default_renderer = 'genshi' -base_config.renderers.append('genshi') - -#Configure the base SQLALchemy Setup -base_config.use_sqlalchemy = True -base_config.model = mokshaplugin.model -base_config.DBSession = mokshaplugin.model.DBSession - diff --git a/docs/project_code/mokshaplugin/mokshaplugin/config/environment.py b/docs/project_code/mokshaplugin/mokshaplugin/config/environment.py deleted file mode 100644 index 54430a4..0000000 --- a/docs/project_code/mokshaplugin/mokshaplugin/config/environment.py +++ /dev/null @@ -1,4 +0,0 @@ -from mokshaplugin.config.app_cfg import base_config - -#Use base_config to setup the environment loader function -load_environment = base_config.make_load_environment() diff --git a/docs/project_code/mokshaplugin/mokshaplugin/config/middleware.py b/docs/project_code/mokshaplugin/mokshaplugin/config/middleware.py deleted file mode 100644 index 3455aa1..0000000 --- a/docs/project_code/mokshaplugin/mokshaplugin/config/middleware.py +++ /dev/null @@ -1,14 +0,0 @@ -"""TurboGears middleware initialization""" -from mokshaplugin.config.app_cfg import base_config -from mokshaplugin.config.environment import load_environment - -#Use base_config to setup the necessary WSGI App factory. -#make_base_app will wrap the TG2 app with all the middleware it needs. -make_base_app = base_config.setup_tg_wsgi_app(load_environment) - -def make_app(global_conf, full_stack=True, **app_conf): - app = make_base_app(global_conf, full_stack=True, **app_conf) - #Wrap your base turbogears app with custom middleware - return app - - diff --git a/docs/project_code/mokshaplugin/mokshaplugin/controllers/__init__.py b/docs/project_code/mokshaplugin/mokshaplugin/controllers/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/docs/project_code/mokshaplugin/mokshaplugin/controllers/error.py b/docs/project_code/mokshaplugin/mokshaplugin/controllers/error.py deleted file mode 100644 index d97d64c..0000000 --- a/docs/project_code/mokshaplugin/mokshaplugin/controllers/error.py +++ /dev/null @@ -1,41 +0,0 @@ -import os.path - -import paste.fileapp -from tg import request -from pylons.controllers.util import forward -from pylons.middleware import error_document_template, media_path - -from mokshaplugin.lib.base import BaseController - -class ErrorController(BaseController): - """Generates error documents as and when they are required. - - The ErrorDocuments middleware forwards to ErrorController when error - related status codes are returned from the application. - - This behaviour can be altered by changing the parameters to the - ErrorDocuments middleware in your config/middleware.py file. - """ - - def document(self): - """Render the error document""" - resp = request.environ.get('pylons.original_response') - page = error_document_template % \ - dict(prefix=request.environ.get('SCRIPT_NAME', ''), - code=request.params.get('code', resp.status_int), - message=request.params.get('message', resp.body)) - return page - - def img(self, id): - """Serve stock images""" - return self._serve_file(os.path.join(media_path, 'img', id)) - - def style(self, id): - """Serve stock stylesheets""" - return self._serve_file(os.path.join(media_path, 'style', id)) - - def _serve_file(self, path): - """Call Paste's FileApp (a WSGI application) to serve the file - at the specified path - """ - return forward(paste.fileapp.FileApp(path)) diff --git a/docs/project_code/mokshaplugin/mokshaplugin/controllers/root.py b/docs/project_code/mokshaplugin/mokshaplugin/controllers/root.py deleted file mode 100644 index b0110f0..0000000 --- a/docs/project_code/mokshaplugin/mokshaplugin/controllers/root.py +++ /dev/null @@ -1,27 +0,0 @@ -"""Main Controller""" -from tg import expose, flash, require, tmpl_context, config -from moksha import _, Feed -from moksha.layout import LayoutWidget -from mokshaplugin.lib.base import BaseController - -layout_widget = LayoutWidget('layout') - -class ObamaFeed(Feed): - """ The Obama Feed Widget. - - This widget resides on the ``moksha.widget`` entry point, and is - automatically rendered by the moksha layout engine. - """ - url = 'http://www.theobamafeed.com/feed' - -class RootController(BaseController): - - @expose('genshi:mokshaplugin.templates.index') - def default(self, *args, **kw): - print "mokshaplugin.default(%s, %s)" % (args, kw) - return dict(page='foo') - - @expose('mako:mokshaplugin.templates.mako') - def foo(self, *args, **kw): - tmpl_context.layout = layout_widget - return dict() diff --git a/docs/project_code/mokshaplugin/mokshaplugin/controllers/secc.py b/docs/project_code/mokshaplugin/mokshaplugin/controllers/secc.py deleted file mode 100644 index e426af8..0000000 --- a/docs/project_code/mokshaplugin/mokshaplugin/controllers/secc.py +++ /dev/null @@ -1,4 +0,0 @@ -"""Test Secure Controller""" - -# This controller is only used when you activate auth. You can safely remove -# this file from your project. diff --git a/docs/project_code/mokshaplugin/mokshaplugin/controllers/template.py b/docs/project_code/mokshaplugin/mokshaplugin/controllers/template.py deleted file mode 100644 index 4cac0cf..0000000 --- a/docs/project_code/mokshaplugin/mokshaplugin/controllers/template.py +++ /dev/null @@ -1,27 +0,0 @@ -from mokshaplugin.lib.base import * - -class TemplateController(BaseController): - - def view(self, url): - """By default, the final controller tried to fulfill the request - when no other routes match. It may be used to display a template - when all else fails, e.g.:: - - def view(self, url): - return render('/%s' % url) - - Or if you're using Mako and want to explicitly send a 404 (Not - Found) response code when the requested template doesn't exist:: - - import mako.exceptions - - def view(self, url): - try: - return render('/%s' % url) - except mako.exceptions.TopLevelLookupException: - abort(404) - - By default this controller aborts the request with a 404 (Not - Found) - """ - abort(404) diff --git a/docs/project_code/mokshaplugin/mokshaplugin/i18n/ru/LC_MESSAGES/mokshaplugin.po b/docs/project_code/mokshaplugin/mokshaplugin/i18n/ru/LC_MESSAGES/mokshaplugin.po deleted file mode 100644 index 36532d4..0000000 --- a/docs/project_code/mokshaplugin/mokshaplugin/i18n/ru/LC_MESSAGES/mokshaplugin.po +++ /dev/null @@ -1,24 +0,0 @@ -# Russian translations for ${package}. -# Copyright (C) 2008 ORGANIZATION -# This file is distributed under the same license as the ${package} project. -# FIRST AUTHOR EMAIL@ADDRESS, 2008. -# -msgid "" -msgstr "" -"Project-Id-Version: ${package} 0.0.0\n" -"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2008-01-13 14:00+0200\n" -"PO-Revision-Date: 2008-01-13 14:00+0200\n" -"Last-Translator: FULL NAME EMAIL@ADDRESS\n" -"Language-Team: ru LL@li.org\n" -"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && " -"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=utf-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 0.9.1\n" - -#: ${package}/controllers/root.py:13 -msgid "Your application is now running" -msgstr "Ваши приложение успешно запущено" - diff --git a/docs/project_code/mokshaplugin/mokshaplugin/lib/__init__.py b/docs/project_code/mokshaplugin/mokshaplugin/lib/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/docs/project_code/mokshaplugin/mokshaplugin/lib/app_globals.py b/docs/project_code/mokshaplugin/mokshaplugin/lib/app_globals.py deleted file mode 100644 index 342c8cb..0000000 --- a/docs/project_code/mokshaplugin/mokshaplugin/lib/app_globals.py +++ /dev/null @@ -1,13 +0,0 @@ -"""The application's Globals object""" - -class Globals(object): - """Globals acts as a container for objects available throughout the - life of the application - """ - - def __init__(self): - """One instance of Globals is created during application - initialization and is available during requests via the 'g' - variable - """ - pass diff --git a/docs/project_code/mokshaplugin/mokshaplugin/lib/base.py b/docs/project_code/mokshaplugin/mokshaplugin/lib/base.py deleted file mode 100644 index 69b7f3b..0000000 --- a/docs/project_code/mokshaplugin/mokshaplugin/lib/base.py +++ /dev/null @@ -1,33 +0,0 @@ -"""The base Controller API - -Provides the BaseController class for subclassing. -""" -from tg import TGController, tmpl_context -from tg.render import render - -import mokshaplugin.model as model - -from pylons.i18n import _, ungettext, N_ -from tw.api import WidgetBunch - -class Controller(object): - """Base class for a web application's controller. - - Currently, this provides positional parameters functionality - via a standard default method. - """ - -class BaseController(TGController): - """Base class for the root of a web application. - - Your web application should have one of these. The root of - your application is used to compute URLs used by your app. - """ - - def __call__(self, environ, start_response): - """Invoke the Controller""" - # TGController.__call__ dispatches to the Controller method - # the request is routed to. This routing information is - # available in environ['pylons.routes_dict'] - - return TGController.__call__(self, environ, start_response) diff --git a/docs/project_code/mokshaplugin/mokshaplugin/lib/helpers.py b/docs/project_code/mokshaplugin/mokshaplugin/lib/helpers.py deleted file mode 100644 index b6fbfcf..0000000 --- a/docs/project_code/mokshaplugin/mokshaplugin/lib/helpers.py +++ /dev/null @@ -1 +0,0 @@ -from webhelpers import date, feedgenerator, html, number, misc, text \ No newline at end of file diff --git a/docs/project_code/mokshaplugin/mokshaplugin/model/__init__.py b/docs/project_code/mokshaplugin/mokshaplugin/model/__init__.py deleted file mode 100644 index f8caca5..0000000 --- a/docs/project_code/mokshaplugin/mokshaplugin/model/__init__.py +++ /dev/null @@ -1,54 +0,0 @@ -"""The application's model objects""" - -from zope.sqlalchemy import ZopeTransactionExtension -from sqlalchemy.orm import scoped_session, sessionmaker -#from sqlalchemy import MetaData -from sqlalchemy.ext.declarative import declarative_base - -# Global session manager. DBSession() returns the session object -# appropriate for the current web request. -maker = sessionmaker(autoflush=True, autocommit=False, - extension=ZopeTransactionExtension()) -DBSession = scoped_session(maker) -# By default, the data model is defined with SQLAlchemy's declarative -# extension, but if you need more control, you can switch to the traditional -# method. - -DeclarativeBase = declarative_base() - -# Global metadata. -# The default metadata is the one from the declarative base. -metadata = DeclarativeBase.metadata -# If you have multiple databases with overlapping table names, you'll need a -# metadata for each database. Feel free to rename 'metadata2'. -#metadata2 = MetaData() - -##### -# Generally you will not want to define your table's mappers, and data objects -# here in __init__ but will want to create modules them in the model directory -# and import them at the bottom of this file. -# -###### - -def init_model(engine): - """Call me before using any of the tables or classes in the model.""" - - DBSession.configure(bind=engine) - # If you are using reflection to introspect your database and create - # table objects for you, your tables must be defined and mapped inside - # the init_model function, so that the engine is available if you - # use the model outside tg2, you need to make sure this is called before - # you use the model. - - # - # See the following example: - - #global t_reflected - - #t_reflected = Table("Reflected", metadata, - # autoload=True, autoload_with=engine) - - #mapper(Reflected, t_reflected) - -# Import your model modules here. - diff --git a/docs/project_code/mokshaplugin/mokshaplugin/model/auth.py b/docs/project_code/mokshaplugin/mokshaplugin/model/auth.py deleted file mode 100644 index e69de29..0000000 diff --git a/docs/project_code/mokshaplugin/mokshaplugin/model/model.template b/docs/project_code/mokshaplugin/mokshaplugin/model/model.template deleted file mode 100644 index 3a9531b..0000000 --- a/docs/project_code/mokshaplugin/mokshaplugin/model/model.template +++ /dev/null @@ -1,23 +0,0 @@ -from sqlalchemy import * -from sqlalchemy.orm import mapper, relation -from mokshaplugin.model import metadata - -# Normal tables may be defined and mapped at module level. - -foo_table = Table("Foo", metadata, - Column("id", Integer, primary_key=True), - Column("bar", String(255), nullable=False), - ) - -class Foo(object): - def __init__(self, **kw): - """automatically mapping attributes""" - for key, value in kw.iteritems(): - setattr(self, key, value) - -mapper(Foo, foo_table) - -# Classes for reflected tables may be defined here, but the table and -# mapping itself must be done in the init_model function. - - diff --git a/docs/project_code/mokshaplugin/mokshaplugin/public/css/style.css b/docs/project_code/mokshaplugin/mokshaplugin/public/css/style.css deleted file mode 100644 index e02de48..0000000 --- a/docs/project_code/mokshaplugin/mokshaplugin/public/css/style.css +++ /dev/null @@ -1,227 +0,0 @@ -/* - * Quick mash-up of CSS for the TG quick start page. - */ - -html, body { - color: black; - background-color: #ddd; - font: x-small "Lucida Grande", "Lucida Sans Unicode", geneva, verdana, sans-serif; - font-size: 83%; - margin: 0; - padding: 0; -} - -td, th {padding:3px;border:none;} -tr th {text-align:left;background-color:#f0f0f0;color:#333;} -tr.odd td {background-color:#edf3fe;} -tr.even td {background-color:#fff;} - - -a.link, a, a.active { - color: #369; -} - -.white { - color: white; -} - -h1,h2,h3,h4,h5,h6 { - font-family: "Century Schoolbook L", Georgia, serif; - font-weight: bold; -} - - -#main_content { - color: black; - font-size: 127%; - background-color: white; - width: 757px; - margin: 0 auto 1em auto; - border: 1px solid #aaa; - border-top: 0px solid #aaa; - padding: 10px; - clear: both; -} - - -.sidebar { - border: 1px solid #cce; - background-color: #eee; - margin: 0.5em; - margin-left: 1.5em; - padding: 1em; - float: right; - width: 200px; - font-size: 88%; - background-color:#fffe1; - background-repeat:repeat-x; -} - -.sidebar h2 { - margin-top: 0; - color: black; -} - -.sidebar ul { - margin-left: 1.5em; - padding-left: 0; -} - - - -#sb_top { - clear: right; -} - -#sb_bottom { - clear: right; -} - -#getting_started { - margin-left: 20px; -} - -#getting_started_steps a { - text-decoration: none; -} - -#getting_started_steps a:hover { - text-decoration: underline; -} - -#getting_started_steps li { - font-size: 80%; - margin-bottom: 0.5em; -} - -#getting_started_steps h2 { - font-size: 120%; -} - -#getting_started_steps p { - font: 100% "Lucida Grande", "Lucida Sans Unicode", geneva, verdana, sans-serif; -} - -#getting_started_steps,.alogo,.headtext { - font-family: "Century Schoolbook L", Georgia, serif; - font-weight: bold; -} - - -#header { - height: 125px; - width: 777px; - background: blue URL('../images/strype2.png') repeat-y; - border-left: 1px solid #aaa; - border-right: 1px solid #aaa; - margin: 0 auto 0 auto; - color: black; -} - -.alogo { - font-size: 36px; - padding-left: 5px; - padding-top: 5px; - padding-right: 20px; - float: left; -} - -.headtext { - color: white; - font: x-small "Lucida Grande", "Lucida Sans Unicode", geneva, verdana, sans-serif; - font-size: 44px; - padding-left: 20px; - padding-top: 20px; - padding-right: 20px; - margin-bottom: 0px; -} - -.currentpage { - /* color: white; - font: x-small "Lucida Grande", "Lucida Sans Unicode", geneva, verdana, sans-serif; - font-size: 18px; - padding-top: 20px; - padding-right: 20px; - margin-bottom: 0px; - float: left;*/ - margin: 0 auto 0.5em auto; - padding: 5px 5px 5px 50px; - background: #cec URL('../images/ok.png') left center no-repeat; - border: 1px solid #9c9; - width: 400px; - font-size: 120%; - font-weight: bolder; - -} - -#footer { - border: 0px solid #aaa; - color: #888; - background-color: white; - padding: 10px; - font-size: 90%; - text-align: center; - width: 600px; - margin-left: 40px; -} - -.flogo { - padding-left: 20px; - padding-top: 0px; - padding-right: 20px; - margin-bottom: 0px; - float: left; -} - -.foottext{ -} - -.code { - font-family: monospace; - font-size: 127%; -} - -span.code { - font-weight: bold; - background: #eee; -} - -.flash { - margin: 0 auto 0.5em auto; - padding: 5px 15px 15px 55px; - width: 680px; - font-size: 120%; - font-weight: bolder; -} - -#status_ok { - background: #eef URL('../images/ok.png') left center no-repeat; - border: 1px solid #cce; -} - -#status_warning { - background: #f99 URL('../images/error.png') left center no-repeat; - border: 1px solid #f33; -} - -#status_alert { - background: #ff9 URL('../images/info.png') left center no-repeat; - border: 1px solid #ff0; -} - -.notice { - margin: 0.5em auto 0.5em auto; - padding: 15px 10px 15px 55px; - width: 680px; - background: #eef URL('../images/info.png') left center no-repeat; - border: 1px solid #cce; -} - -.fielderror { - color: red; - font-weight: bold; -} - -div.clearingdiv { - clear:both; -} diff --git a/docs/project_code/mokshaplugin/mokshaplugin/public/favicon.ico b/docs/project_code/mokshaplugin/mokshaplugin/public/favicon.ico deleted file mode 100644 index 840986e..0000000 Binary files a/docs/project_code/mokshaplugin/mokshaplugin/public/favicon.ico and /dev/null differ diff --git a/docs/project_code/mokshaplugin/mokshaplugin/public/images/error.png b/docs/project_code/mokshaplugin/mokshaplugin/public/images/error.png deleted file mode 100644 index 73c7d7f..0000000 Binary files a/docs/project_code/mokshaplugin/mokshaplugin/public/images/error.png and /dev/null differ diff --git a/docs/project_code/mokshaplugin/mokshaplugin/public/images/grad_blue_7x80.png b/docs/project_code/mokshaplugin/mokshaplugin/public/images/grad_blue_7x80.png deleted file mode 100644 index 8eb30fa..0000000 Binary files a/docs/project_code/mokshaplugin/mokshaplugin/public/images/grad_blue_7x80.png and /dev/null differ diff --git a/docs/project_code/mokshaplugin/mokshaplugin/public/images/header_inner2.png b/docs/project_code/mokshaplugin/mokshaplugin/public/images/header_inner2.png deleted file mode 100644 index 3522a4f..0000000 Binary files a/docs/project_code/mokshaplugin/mokshaplugin/public/images/header_inner2.png and /dev/null differ diff --git a/docs/project_code/mokshaplugin/mokshaplugin/public/images/info.png b/docs/project_code/mokshaplugin/mokshaplugin/public/images/info.png deleted file mode 100644 index 668f9c0..0000000 Binary files a/docs/project_code/mokshaplugin/mokshaplugin/public/images/info.png and /dev/null differ diff --git a/docs/project_code/mokshaplugin/mokshaplugin/public/images/logo.gif b/docs/project_code/mokshaplugin/mokshaplugin/public/images/logo.gif deleted file mode 100644 index 593126c..0000000 Binary files a/docs/project_code/mokshaplugin/mokshaplugin/public/images/logo.gif and /dev/null differ diff --git a/docs/project_code/mokshaplugin/mokshaplugin/public/images/logo.png b/docs/project_code/mokshaplugin/mokshaplugin/public/images/logo.png deleted file mode 100644 index 767021d..0000000 Binary files a/docs/project_code/mokshaplugin/mokshaplugin/public/images/logo.png and /dev/null differ diff --git a/docs/project_code/mokshaplugin/mokshaplugin/public/images/ok.png b/docs/project_code/mokshaplugin/mokshaplugin/public/images/ok.png deleted file mode 100644 index c402ac5..0000000 Binary files a/docs/project_code/mokshaplugin/mokshaplugin/public/images/ok.png and /dev/null differ diff --git a/docs/project_code/mokshaplugin/mokshaplugin/public/images/star.png b/docs/project_code/mokshaplugin/mokshaplugin/public/images/star.png deleted file mode 100644 index f9b5aaa..0000000 Binary files a/docs/project_code/mokshaplugin/mokshaplugin/public/images/star.png and /dev/null differ diff --git a/docs/project_code/mokshaplugin/mokshaplugin/public/images/strype2.png b/docs/project_code/mokshaplugin/mokshaplugin/public/images/strype2.png deleted file mode 100644 index 3519f2f..0000000 Binary files a/docs/project_code/mokshaplugin/mokshaplugin/public/images/strype2.png and /dev/null differ diff --git a/docs/project_code/mokshaplugin/mokshaplugin/public/images/tg2_04.gif b/docs/project_code/mokshaplugin/mokshaplugin/public/images/tg2_04.gif deleted file mode 100644 index 5e71843..0000000 Binary files a/docs/project_code/mokshaplugin/mokshaplugin/public/images/tg2_04.gif and /dev/null differ diff --git a/docs/project_code/mokshaplugin/mokshaplugin/public/images/tg_under_the_hood.png b/docs/project_code/mokshaplugin/mokshaplugin/public/images/tg_under_the_hood.png deleted file mode 100644 index bc9c79c..0000000 Binary files a/docs/project_code/mokshaplugin/mokshaplugin/public/images/tg_under_the_hood.png and /dev/null differ diff --git a/docs/project_code/mokshaplugin/mokshaplugin/public/images/under_the_hood_blue.png b/docs/project_code/mokshaplugin/mokshaplugin/public/images/under_the_hood_blue.png deleted file mode 100644 index 90e84b7..0000000 Binary files a/docs/project_code/mokshaplugin/mokshaplugin/public/images/under_the_hood_blue.png and /dev/null differ diff --git a/docs/project_code/mokshaplugin/mokshaplugin/templates/__init__.py b/docs/project_code/mokshaplugin/mokshaplugin/templates/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/docs/project_code/mokshaplugin/mokshaplugin/templates/about.html b/docs/project_code/mokshaplugin/mokshaplugin/templates/about.html deleted file mode 100644 index 882702b..0000000 --- a/docs/project_code/mokshaplugin/mokshaplugin/templates/about.html +++ /dev/null @@ -1,135 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html xmlns="http://www.w3.org/1999/xhtml" - xmlns:py="http://genshi.edgewall.org/" - xmlns:xi="http://www.w3.org/2001/XInclude%22%3E - - <xi:include href="header.html" /> - <xi:include href="sidebars.html" /> - <xi:include href="footer.html" /> - <xi:include href="master.html" /> - -<head> - <meta content="text/html; charset=UTF-8" http-equiv="content-type" py:replace="''"/> - <title>Learning TurboGears 2.0: Quick guide to the Quickstart pages.</title> -</head> - -<body> - ${sidebar_top()} - ${sidebar_bottom()} - <div id="getting_started"> - <h2>Architectural basics of a quickstart TG2 site.</h2> - <p>The TG2 quickstart command produces this basic TG site. Here's how it works.</p> - <ol id="getting_started_steps"> - <li class="getting_started"> - <h3>Code my data model</h3> - <p> When you want a model for storing favorite links or wiki content, - the <strong>/model</strong> folder in your site is ready to go. .</p> - <p> You can build a dynamic site without any data model at all. There - still be a default data-model template for you if you didn't enable - identity in quickstart. If you enable identity, you'll got - identity data-model made for you.</p> - </li> - <li class="getting_started"> - <h3>Design my URL structure</h3> - <p> The "<span class="code">root.py</span>" file under the - <strong>/controllers</strong> folder has your URLs. When you - called this url (<span class="code"><a href="/about">about</a></span>), - the command went through the RootController class to the - <span class="code">about</span><span class="code">()</span> method.</p> - <p> Those Python methods are responsible to create the dictionary of - variables that will be used in your web views (template).</p> - </li> - <li class="getting_started"> - <h3>Reuse the web page elements</h3> - <p> A web page viewed by user could be constructed by single or - several reusable templates under <strong>/templates</strong>. - Take 'about' page for example, each reusable templates generating - a part of the page. We'll cover them in the order of where they are - found, listed near the top of the about.html template</p> - <p> <strong><span class="code">header.html</span></strong> - The - "header.html" template contains the HTML code to display the - 'header': The blue gradient, TG2 logo, and some site text at the - top of every page it is included on. When the "about.html" template - is called, it includes this "header.html" template (and the others) - with a <span class="code"><xi:include /></span> tag, part of - the Genshi templating system. The "header.html" template is not a - completely static HTML -- it also dynamically displays the current - page name with a Genshi template method called "replace" with the - code: <span class="code"><span py:replace="page"/></span>. - It means replace this <span class="code"><span /></span> - region with the contents found in the variable 'page' that has - been sent in the dictionary to this "about.html" template, and is - available through that namespace for use by this "header.html" - template. That's how it changes in the header depending on what - page you are visiting. - </p> - <p> <strong><span class="code">sidebars.html</span></strong> - The - sidebars (navigation areas on the right side of the page) are - generated as two separate <span class="code">py:def</span> blocks - in the "sidebars.html" template. The <span class="code">py:def</span> - construct is best thought of as a "macro" code... a simple way to - separate and reuse common code snippets. All it takes to include - these on the "about.html" page template is to write - <span class="code"> -<br/><br/> - $${sidebar_bottom()} -<br/> - $${sidebar_bottom()} -<br/><br/> - </span> in the page where they are wanted. CSS styling (in - "/public/css/style.css") floats them off to the right side. You can - remove a sidebar or add more of them, and the CSS will place them one - atop the other.</p> - <p>This is, of course, also exactly how the header and footer - templates are also displayed in their proper places, but we'll - cover that in the "master.html" template below.</p> - <p>Oh, and in sidebar_top we've added a dynamic menu that shows the - link to this page at the top when you're at the "index" page, and - shows a link to the Home (index) page when you're here. Study the - "sidebars.html" template to see how we used - <span class="code">py:choose</span> for that.</p> - <p> <strong><span class="code">footer.html</span></strong> - The - "footer.html" block is simple, but also utilizes a special - "replace" method to set the current YEAR in the footer copyright - message. The code is: - <span class="code"><span py:replace="now.strftime('%Y')"> - </span> and it uses the variable "now" that was passed - in with the dictionary of variables. But because "now" is a - datetime object, we can use the Python - <span class="code">"strftime()"</span> method with the "replace" - call to say "Just Display The Year Here". Simple, elegant; we - format the date display in the template (the View in the - Model/View/Controller architecture) rather than formatting it in - the Controller method and sending it to the template as a string - variable.</p> - <p> <strong><span class="code">master.html</span></strong> - The - "master.html" template is called last, by design. The "master.html" - template controls the overall design of the page we're looking at, - calling first the "header" py:def macro, then the putting everything - from this "about.html" template into the "main_content" div, and - then calling the "footer" macro at the end. Thus the "master.html" - template provides the overall architecture for each page in this - site.</p> - <p>But why then shouldn't we call it first? Isn't it the most - important? Perhaps, but that's precisely why we call it LAST. - The "master.html" template needs to know where to find everything - else, everything that it will use in py:def macros to build the - page. So that means we call the other templates first, and then - call "master.html". </p> - <p>There's more to the "master.html" template... study it to see how - the <title> tags and static JS and CSS files are brought into - the page. Templating with Genshi is a powerful tool and we've only - scratched the surface. There are also a few little CSS tricks - hidden in these pages, like the use of a "clearingdiv" to make - sure that your footer stays below the sidebars and always looks - right. That's not TG2 at work, just CSS. You'll need all your - skills to build a fine web app, but TG2 will make the hard parts - easier so that you can concentrate more on good design and content - rather than struggling with mechanics.</p> - </li> - </ol> - <p>Good luck with TurboGears 2!</p> - </div> -</body> -</html> diff --git a/docs/project_code/mokshaplugin/mokshaplugin/templates/debug.html b/docs/project_code/mokshaplugin/mokshaplugin/templates/debug.html deleted file mode 100644 index b415a72..0000000 --- a/docs/project_code/mokshaplugin/mokshaplugin/templates/debug.html +++ /dev/null @@ -1,20 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html xmlns="http://www.w3.org/1999/xhtml" - xmlns:py="http://genshi.edgewall.org/" - xmlns:xi="http://www.w3.org/2001/XInclude%22%3E - -<xi:include href="master.html" /> - -<head> - <meta content="text/html; charset=UTF-8" http-equiv="content-type" py:replace="''"/> - <title>Sample Template, for looking at template locals</title> -</head> - -<body> - <h1>All objects from locals():</h1> - - <div py:for="item in sorted(locals()['data'].keys())"> - ${item}: ${repr(locals()['data'][item])}</div> -</body> -</html> diff --git a/docs/project_code/mokshaplugin/mokshaplugin/templates/footer.html b/docs/project_code/mokshaplugin/mokshaplugin/templates/footer.html deleted file mode 100644 index 7504931..0000000 --- a/docs/project_code/mokshaplugin/mokshaplugin/templates/footer.html +++ /dev/null @@ -1,16 +0,0 @@ -<html xmlns:py="http://genshi.edgewall.org/" - xmlns:xi="http://www.w3.org/2001/XInclude" - py:strip=""> -<py:def function="footer"> -<div id="footer"> - <div class="flogo"> - <img src="${tg.url('/images/under_the_hood_blue.png')}" alt="TurboGears" /> - <p><a href="http://www.turbogears.org/2.0/">Powered by TurboGears 2</a></p> - </div> - <div class="foottext"> - <p>TurboGears is a open source front-to-back web development - framework written in Python. Copyright (c) 2005-2008 </p> - </div> -</div> -</py:def> -</html> diff --git a/docs/project_code/mokshaplugin/mokshaplugin/templates/header.html b/docs/project_code/mokshaplugin/mokshaplugin/templates/header.html deleted file mode 100644 index ddefed7..0000000 --- a/docs/project_code/mokshaplugin/mokshaplugin/templates/header.html +++ /dev/null @@ -1,19 +0,0 @@ -<html xmlns:py="http://genshi.edgewall.org/" - xmlns:xi="http://www.w3.org/2001/XInclude" - py:strip=""> -<py:def function="header"> - <div id="header"> - <div class="alogo"> - <img src='${tg.url("/images/logo.png")}' alt="TG2!"/> - </div> - <div class="headtext"> - Welcome to TurboGears 2 - </div> - <py:if test="defined('page')"> - <div class="currentpage"> - Now Viewing: <span py:replace="page"/> - </div> - </py:if> - </div> -</py:def> -</html> \ No newline at end of file diff --git a/docs/project_code/mokshaplugin/mokshaplugin/templates/index.html b/docs/project_code/mokshaplugin/mokshaplugin/templates/index.html deleted file mode 100644 index 96cb474..0000000 --- a/docs/project_code/mokshaplugin/mokshaplugin/templates/index.html +++ /dev/null @@ -1,42 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html xmlns="http://www.w3.org/1999/xhtml" - xmlns:py="http://genshi.edgewall.org/" - xmlns:xi="http://www.w3.org/2001/XInclude%22%3E - - <xi:include href="header.html" /> - <xi:include href="sidebars.html" /> - <xi:include href="footer.html" /> - <xi:include href="master.html" /> - -<head> - <meta content="text/html; charset=UTF-8" http-equiv="content-type" py:replace="''"/> - <title>Welcome to TurboGears 2.0, standing on the - shoulders of giants, since 2007</title> -</head> - -<body> - ${sidebar_top()} - <div id="getting_started"> - <p>TurboGears 2 is rapid web application development toolkit designed to make your life easier.</p> - <ol id="getting_started_steps"> - <li class="getting_started"> - <h3>Code your data model</h3> - <p> Design your data model, Create the database, and Add some bootstrap data.</p> - </li> - <li class="getting_started"> - <h3>Design your URL architecture</h3> - <p> Decide your URLs, Program your controller methods, Design your - templates, and place some static files (CSS and/or JavaScript). </p> - </li> - <li class="getting_started"> - <h3>Distribute your app</h3> - <p> Test your source, Generate project documents, Build a distribution.</p> - </li> - </ol> - </div> - <div class="clearingdiv" /> - <div class="notice"> Thank you for choosing TurboGears. - </div> -</body> -</html> diff --git a/docs/project_code/mokshaplugin/mokshaplugin/templates/login.html b/docs/project_code/mokshaplugin/mokshaplugin/templates/login.html deleted file mode 100644 index d0430df..0000000 --- a/docs/project_code/mokshaplugin/mokshaplugin/templates/login.html +++ /dev/null @@ -1,23 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html xmlns="http://www.w3.org/1999/xhtml" - xmlns:py="http://genshi.edgewall.org/" - xmlns:xi="http://www.w3.org/2001/XInclude%22%3E - -<xi:include href="master.html" /> - -<head> -<meta content="text/html; charset=UTF-8" http-equiv="content-type" py:replace="''"/> -<title>Login Form</title> -</head> - -<body> - -<form action="/login_handler?came_from=${came_from}" method="POST"> - Login: <input type="text" name="login"></input><br/> - Password: <input type="password" name="password"></input><br/> - <input type="submit" name="submit"/> -</form> - -</body> -</html> diff --git a/docs/project_code/mokshaplugin/mokshaplugin/templates/mako.mak b/docs/project_code/mokshaplugin/mokshaplugin/templates/mako.mak deleted file mode 100644 index db44d60..0000000 --- a/docs/project_code/mokshaplugin/mokshaplugin/templates/mako.mak +++ /dev/null @@ -1,8 +0,0 @@ -<html> -<head> -</head> -<body id="uidemo"> -<b>Mako template!</b> -Widget: ${tmpl_context.layout()} -</body> -</html> diff --git a/docs/project_code/mokshaplugin/mokshaplugin/templates/mako.mako b/docs/project_code/mokshaplugin/mokshaplugin/templates/mako.mako deleted file mode 100644 index f8429c8..0000000 --- a/docs/project_code/mokshaplugin/mokshaplugin/templates/mako.mako +++ /dev/null @@ -1 +0,0 @@ -<b>Mako template!</b> diff --git a/docs/project_code/mokshaplugin/mokshaplugin/templates/master.html b/docs/project_code/mokshaplugin/mokshaplugin/templates/master.html deleted file mode 100644 index 50e7379..0000000 --- a/docs/project_code/mokshaplugin/mokshaplugin/templates/master.html +++ /dev/null @@ -1,26 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" - "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> -<html xmlns="http://www.w3.org/1999/xhtml" - xmlns:py="http://genshi.edgewall.org/" - xmlns:xi="http://www.w3.org/2001/XInclude" - py:strip=""> -<head py:match="head" py:attrs="select('@*')"> - <meta content="text/html; charset=UTF-8" http-equiv="content-type" py:replace="''"/> - <title py:replace="''">Your title goes here</title> - <meta py:replace="select('*')"/> - <link rel="stylesheet" type="text/css" media="screen" href="${tg.url('/css/style.css')}" /> -</head> - -<body py:match="body" py:attrs="select('@*')"> - ${header()} - <div id="main_content"> - <div id="${tg.flash_status}" py:if="tg.flash" class="flash" - py:content="tg.flash"> - </div> - <div py:replace="select('*|text()')"/> - <!-- End of main_content --> - <div class="clearingdiv" /> - ${footer()} - </div> -</body> -</html> diff --git a/docs/project_code/mokshaplugin/mokshaplugin/templates/sidebars.html b/docs/project_code/mokshaplugin/mokshaplugin/templates/sidebars.html deleted file mode 100644 index cde5deb..0000000 --- a/docs/project_code/mokshaplugin/mokshaplugin/templates/sidebars.html +++ /dev/null @@ -1,33 +0,0 @@ -<html xmlns:py="http://genshi.edgewall.org/" - xmlns:xi="http://www.w3.org/2001/XInclude" - py:strip=""> - -<py:def function="sidebar_top"> - <div id="sb_top" class="sidebar"> - <h2>Get Started with TG2</h2> - <ul class="links"> - <li py:choose=""> - <span py:when="page=='index'"><a href="/about">About this page</a> A quick guide to this TG2 site </span> - <span py:otherwise=""><a href="/">Home</a> Back to your Quickstart Home page </span> - </li> - <li><a href="http://www.turbogears.org/2.0/docs/">TG2 Documents</a> - Read everything in the Getting Started section</li> - <li><a href="http://docs.turbogears.org/1.0">TG1 docs</a> (still useful, although a lot has changed for TG2) </li> - <li><a href="http://groups.google.com/group/turbogears"> Join the TG Mail List</a> for general TG use/topics </li> - </ul> - </div> -</py:def> - -<py:def function="sidebar_bottom"> - <div id="sb_bottom" class="sidebar"> - <h2>Developing TG2</h2> - <ul class="links"> - <li><a href="http://docs.turbogears.org/2.0/RoughDocs/">TG2 Documents</a> A work in progress</li> - <li><a href="http://trac.turbogears.org/query?milestone=2.0&order=priority">TG2 Trac tickets</a> What's happening now in TG2 dev</li> - <li><a href="http://trac.turbogears.org/timeline">TG Dev timeline</a> (recent ticket updates, svn checkins, wiki changes)</li> - <li><a href="http://trac.turbogears.org/browser">TG2 Trac repository</a> TG2 is in /trunk</li> - <li><a href="http://groups.google.com/group/turbogears-trunk"> Join the TG-Trunk Mail List</a> just for TG2 discuss/dev </li> - </ul> - </div> -</py:def> - -</html> diff --git a/docs/project_code/mokshaplugin/mokshaplugin/tests/__init__.py b/docs/project_code/mokshaplugin/mokshaplugin/tests/__init__.py deleted file mode 100644 index c5f1b84..0000000 --- a/docs/project_code/mokshaplugin/mokshaplugin/tests/__init__.py +++ /dev/null @@ -1,38 +0,0 @@ -"""Pylons application test package - -When the test runner finds and executes tests within this directory, -this file will be loaded to setup the test environment. - -It registers the root directory of the project in sys.path and -pkg_resources, in case the project hasn't been installed with -setuptools. It also initializes the application via websetup (paster -setup-app) with the project's test.ini configuration file. -""" -import os -import sys - -import pkg_resources -import webtest -import paste.script.appinstall -from paste.deploy import loadapp -from routes import url_for - -__all__ = ['url_for', 'TestController'] - -here_dir = os.path.dirname(os.path.abspath(__file__)) -conf_dir = os.path.dirname(os.path.dirname(here_dir)) - -sys.path.insert(0, conf_dir) -pkg_resources.working_set.add_entry(conf_dir) -pkg_resources.require('Paste') -pkg_resources.require('PasteScript') - -test_file = os.path.join(conf_dir, 'test.ini') -cmd = paste.script.appinstall.SetupCommand('setup-app') -cmd.run([test_file]) - -class TestController(object): - - def __init__(self, *args, **kwargs): - wsgiapp = loadapp('config:test.ini', relative_to=conf_dir) - self.app = webtest.TestApp(wsgiapp) diff --git a/docs/project_code/mokshaplugin/mokshaplugin/tests/functional/__init__.py b/docs/project_code/mokshaplugin/mokshaplugin/tests/functional/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/docs/project_code/mokshaplugin/mokshaplugin/tests/functional/test_root.py b/docs/project_code/mokshaplugin/mokshaplugin/tests/functional/test_root.py deleted file mode 100644 index b9fecf6..0000000 --- a/docs/project_code/mokshaplugin/mokshaplugin/tests/functional/test_root.py +++ /dev/null @@ -1,21 +0,0 @@ -# -*- coding: utf-8 -*- - -from mokshaplugin.tests import TestController -from nose.tools import assert_true - -# This is an example of how you can write functional tests for your controller. -# As opposed to a pure unit-test which test a small unit of functionallity, -# these functional tests exercise the whole app and it's WSGI stack. -# Please read http://pythonpaste.org/webtest/ for more information - -class TestRootController(TestController): - def test_index(self): - response = self.app.get('/') - msg = 'TurboGears 2 is rapid web application development toolkit '\ - 'designed to make your life easier.' - # You can look for specific strings: - assert_true(msg in response) - # You can also access a BeautifulSoup'ed version - # first run $ easy_install BeautifulSoup and then run this test - links = response.html.findAll('a') - assert_true(links, "Mummy, there are no links here!") diff --git a/docs/project_code/mokshaplugin/mokshaplugin/tests/test_models.py b/docs/project_code/mokshaplugin/mokshaplugin/tests/test_models.py deleted file mode 100644 index 08a1e8b..0000000 --- a/docs/project_code/mokshaplugin/mokshaplugin/tests/test_models.py +++ /dev/null @@ -1,13 +0,0 @@ -# -*- coding: utf-8 -*- -"""Test suite for the TG app's models""" - -from tg.testutil import DBTest -from nose.tools import eq_ - -from mokshaplugin import model - - -class TestModel(DBTest): - """The base class for testing models in you TG project.""" - model = model - diff --git a/docs/project_code/mokshaplugin/mokshaplugin/websetup.py b/docs/project_code/mokshaplugin/mokshaplugin/websetup.py deleted file mode 100644 index 5d874c4..0000000 --- a/docs/project_code/mokshaplugin/mokshaplugin/websetup.py +++ /dev/null @@ -1,23 +0,0 @@ -"""Setup the mokshaplugin application""" -import logging - -import transaction -from paste.deploy import appconfig -from tg import config - -from mokshaplugin.config.environment import load_environment - -log = logging.getLogger(__name__) - -def setup_config(command, filename, section, vars): - """Place any commands to setup mokshaplugin here""" - conf = appconfig('config:' + filename) - load_environment(conf.global_conf, conf.local_conf) - # Load the models - from mokshaplugin import model - print "Creating tables" - model.metadata.create_all(bind=config['pylons.app_globals'].sa_engine) - - - transaction.commit() - print "Successfully setup" diff --git a/docs/project_code/mokshaplugin/setup.cfg b/docs/project_code/mokshaplugin/setup.cfg deleted file mode 100644 index 0b39bc8..0000000 --- a/docs/project_code/mokshaplugin/setup.cfg +++ /dev/null @@ -1,31 +0,0 @@ -[egg_info] -tag_build = dev -tag_svn_revision = true - -[easy_install] -find_links = http://www.pylonshq.com/download/ - -[nosetests] -with-pylons=test.ini - -# Babel configuration -[compile_catalog] -domain = mokshaplugin -directory = mokshaplugin/i18n -statistics = true - -[extract_messages] -add_comments = TRANSLATORS: -output_file = mokshaplugin/i18n/mokshaplugin.pot -width = 80 - -[init_catalog] -domain = mokshaplugin -input_file = mokshaplugin/i18n/mokshaplugin.pot -output_dir = mokshaplugin/i18n - -[update_catalog] -domain = mokshaplugin -input_file = mokshaplugin/i18n/mokshaplugin.pot -output_dir = mokshaplugin/i18n -previous = true diff --git a/docs/project_code/mokshaplugin/setup.py b/docs/project_code/mokshaplugin/setup.py deleted file mode 100644 index 180be20..0000000 --- a/docs/project_code/mokshaplugin/setup.py +++ /dev/null @@ -1,47 +0,0 @@ -try: - from setuptools import setup, find_packages -except ImportError: - from ez_setup import use_setuptools - use_setuptools() - from setuptools import setup, find_packages - -setup( - name='mokshaplugin', - version='0.1', - description='', - author='', - author_email='', - #url='', - install_requires=[ - "TurboGears2", - "ToscaWidgets >= 0.9.1", - "zope.sqlalchemy", - ], - packages=find_packages(exclude=['ez_setup']), - include_package_data=True, - test_suite='nose.collector', - tests_require=['WebTest', 'BeautifulSoup'], - package_data={'mokshaplugin': ['i18n/*/LC_MESSAGES/*.mo', - 'templates/*/*', - 'public/*/*']}, - #message_extractors = {'mokshaplugin': [ - # ('**.py', 'python', None), - # ('templates/**.mako', 'mako', None), - # ('templates/**.html', 'genshi', None), - # ('public/**', 'ignore', None)]}, - - entry_points=""" - [paste.app_factory] - main = mokshaplugin.config.middleware:make_app - - [paste.app_install] - main = pylons.util:PylonsInstaller - - [moksha.application] - mokshaplugin = mokshaplugin.controllers.root:RootController - - #[moksha.widget] - #obamafeed = mokshaplugin.controllers.root:ObamaFeed - - """, -) diff --git a/docs/project_code/mokshaplugin/test.ini b/docs/project_code/mokshaplugin/test.ini deleted file mode 100644 index 2c4b8bc..0000000 --- a/docs/project_code/mokshaplugin/test.ini +++ /dev/null @@ -1,21 +0,0 @@ -# -# mokshaplugin - TurboGears 2 testing environment configuration -# -# The %(here)s variable will be replaced with the parent directory of this file -# -[DEFAULT] -debug = true -# Uncomment and replace with the address which should receive any error reports -# email_to = you@yourdomain.com -smtp_server = localhost -error_email_from = paste@localhost - -[server:main] -use = egg:Paste#http -host = 0.0.0.0 -port = 5000 - -[app:main] -use = config:development.ini - -# Add additional test specific configuration options as necessary.
moksha-commits@lists.fedorahosted.org