コード例 #1
0
ファイル: alerts.py プロジェクト: crudbug/upvote
    @base.RequireCapability(constants.PERMISSIONS.EDIT_ALERTS)
    def post(self, scope, platform):

        scope, platform = self._ValidateRouteParams(scope, platform)

        # Verify that the alert payload has the minimum requirements before going
        # any further.
        for request_arg in ('message', 'start_date', 'severity'):
            if not self.request.get(request_arg).strip():
                self.abort(httplib.BAD_REQUEST,
                           'Missing request argument: %s' % request_arg)

        alert_db.Alert.Insert(message=self.request.get('message'),
                              details=self.request.get('details'),
                              start_date=self._ParseRequestDate('start_date'),
                              end_date=self._ParseRequestDate('end_date'),
                              platform=platform,
                              scope=scope,
                              severity=self.request.get('severity'))

        # Expire the memcache key in case the newly-created Alert which should take
        # priority over a current one. We don't need to reset the key, the next
        # relevant GET request should take care of it automatically.
        memcache.delete(_CreateMemcacheKey(scope, platform))


# The Webapp2 routes defined for these handlers.
ROUTES = routes.PathPrefixRoute('/alerts', [
    webapp2.Route('/<scope>/<platform>', handler=AlertHandler),
])
コード例 #2
0
from login import *
from dashboard import Dashboard
from createProject import CreateProject
from runProject import RunProject
from resultDetail import ResultDetail
from newUser import NewUser

config = {
    'webapp2_extras.auth': {
        'user_model': 'authModel.User',
        'user_attributes': ['name']
    },
    'webapp2_extras.sessions': {
        'secret_key': 'YOUR_SECRET_KEY'
    }
}

# [START app]
app = webapp2.WSGIApplication(
    [('/', LoginPage), ('/logout', LogoutPage), ('/profile', UserProfile),
     ('/forgot', ForgotPassword), ('/register', NewUser),
     ('/dashboard', Dashboard), ('/create', CreateProject),
     ('/run', RunProject), ('/details', ResultDetail),
     webapp2.Route('/<user_id:\d+>-<signup_token:.+>',
                   handler=VerificationHandler,
                   name='verification')],
    debug=True,
    config=config)
# [END app]
コード例 #3
0
        task = Todo().get_by_id(int(delete_id))
        task.key.delete()
        return self.redirect_to("home")


class EditHandler(BaseHandler):
    def get(self, edit_id):
        task = Todo().get_by_id(int(edit_id))
        params = {"task": task}
        return self.render_template("edit.html", params)

    def post(self, edit_id):
        done = self.request.get("done")
        task = Todo().get_by_id(int(edit_id))
        task.task = self.request.get("task")
        if done == "1":
            task.done = True
        else:
            task.done = False
        task.put()
        params = {"task": task, "done": done}
        return self.render_template("edit.html", params)


app = webapp2.WSGIApplication([
    webapp2.Route('/', MainHandler, name="home"),
    webapp2.Route('/delete/<delete_id:\d+>', DeleteHandler),
    webapp2.Route('/edit/<edit_id:\d+>', EditHandler),
],
                              debug=True)
コード例 #4
0
# Copyright 2016 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
"""Dispatches requests to request handler classes."""

import webapp2

from dashboard.pinpoint import handlers

_URL_MAPPING = [
    # Public API.
    webapp2.Route(r'/api/config', handlers.Config),
    webapp2.Route(r'/api/generate-results2/<job_id>',
                  handlers.Results2Generator),
    webapp2.Route(r'/api/isolate', handlers.Isolate),
    webapp2.Route(r'/api/isolate/<builder_name>/<git_hash>/<target>',
                  handlers.Isolate),
    webapp2.Route(r'/api/job/<job_id>', handlers.Job),
    webapp2.Route(r'/api/jobs', handlers.Jobs),
    webapp2.Route(r'/api/migrate', handlers.Migrate),
    webapp2.Route(r'/api/new', handlers.New),
    webapp2.Route(r'/api/results2/<job_id>', handlers.Results2),
    webapp2.Route(r'/api/stats', handlers.Stats),

    # Used internally by Pinpoint. Not accessible from the public API.
    webapp2.Route(r'/api/run/<job_id>', handlers.Run),
    webapp2.Route(r'/cron/isolate-cleanup', handlers.IsolateCleanup),
    webapp2.Route(r'/cron/refresh-jobs', handlers.RefreshJobs),
]

APP = webapp2.WSGIApplication(_URL_MAPPING, debug=False)
コード例 #5
0
#!/usr/bin/env python
import os
import jinja2
import webapp2
import sys
from handlers.BaseHandler import BaseHandler
from handlers.MainHandler import MainHandler
from handlers.CookieHandler import CookieAlertHandler
from handlers.ObjaveHandler import DodajObjavoHandler, PoglejObjavoHandler, DeleteObjavoHandler, MojiKomentarjiHandler
from workers.MailWorker import MailWorker

app = webapp2.WSGIApplication([
    webapp2.Route('/', MainHandler, name="main-page"),
    webapp2.Route('/set-cookie', CookieAlertHandler, name="set-cookie"),
    webapp2.Route('/add', DodajObjavoHandler, name="dodaj_objavo"),
    webapp2.Route(
        r'/objava/<id:\d+>', PoglejObjavoHandler, name="poglej_objavo"),
    webapp2.Route("/task/send-comment-mail", MailWorker),
    webapp2.Route(r'/objava/delete/<id:\d+>', DeleteObjavoHandler),
    webapp2.Route("/mycomments", MojiKomentarjiHandler)
],
                              debug=True)
コード例 #6
0
ファイル: main.py プロジェクト: ojjones/tipabit
        self.auth.unset_session()
        self.redirect(self.uri_for('home'))


config = {
    'webapp2_extras.auth': {
        'user_model': 'models.User',
        'user_attributes': ['name']
    },
    'webapp2_extras.sessions': {
        'secret_key': 'YOUR_SECRET_KEY'
    }
}

app = webapp2.WSGIApplication([
    webapp2.Route('/', MainHandler, name='home'),
    webapp2.Route('/home', MainHandler, name='home'),
    webapp2.Route('/about', AboutHandler, name='about'),
    webapp2.Route('/trending', TrendingHandler, name='trending'),
    webapp2.Route('/tip', TipHandler, name='tip'),
    webapp2.Route('/add_credits', AddCreditsHandler, name='add_credits'),
    webapp2.Route('/get_logs', LogHandler, name='get_logs'),
    webapp2.Route('/profile', ProfileHandler, name='profile'),
    webapp2.Route('/signup', SignupHandler),
    webapp2.Route('/<type:v|p>/<user_id:\d+>-<signup_token:.+>',
                  handler=VerificationHandler,
                  name='verification'),
    webapp2.Route('/password', SetPasswordHandler),
    webapp2.Route('/forgot', ForgotPasswordHandler, name='forgot'),
    webapp2.Route('/login', LoginHandler, name='login'),
    webapp2.Route('/logout', LogoutHandler, name='logout'),
コード例 #7
0
ファイル: main.py プロジェクト: leem94/build-a-blog
        # logging.info(title)
        if blog_id == None:  #find blog_id; if not there, return error
            error = "No post associated with id."
            self.response.write(error)
        else:
            self.response.write(blog_id.title)
            self.response.write("<html><body><br><br></body></html>")
            self.response.write(blog_id.content)

    #add something with blog_id
    # def single_new_post(self, title="",content=""):
    #     self.render("single_new_post.html", title=title, content=content)
    #     self.single_new_post()
    #
    # def post(self):
    #     title = self.request.get("title")
    #     content = self.request.get("content")
    #     self.response.write(title, content)


app = webapp2.WSGIApplication(
    [
        ('/', MainHandler),  #redirects to mainpage
        ('/blog', MainBlog),
        ('/newpost', Newpost),
        webapp2.Route(
            '/blog/<id:\d+>',
            ViewPostHandler)  #says our route expects URLpath that starts
    ],
    debug=True)  #with /blog/ & ends with one or more digits
コード例 #8
0
        params = {"podatki_iz_baze": Sporocilo.query().fetch()}
        return self.render_template("baza.html", params=params)


class VnosHandler(BaseHandler):
    def post(self):
        tisto_kar_smo_vnseli_v_vnos = self.request.get('vnos')
        tisto_kar_smo_vnseli_v_avtor = self.request.get('avtor')

        nov_vnos = Sporocilo(vnos=tisto_kar_smo_vnseli_v_vnos,
                             avtor=tisto_kar_smo_vnseli_v_avtor)
        nov_vnos.put()

        self.redirect("/baza")

    def get(self):

        params = {}
        return self.render_template("vnos-v-bazo.html", params=params)


app = webapp2.WSGIApplication([
    webapp2.Route('/', MainHandler),
    webapp2.Route('/blog', BlogHandler),
    webapp2.Route('/kalkulator', KalkulatorHandler),
    webapp2.Route('/baza', BazaHandler),
    webapp2.Route('/vnos_v_bazo', VnosHandler),
],
                              debug=True)
コード例 #9
0
    prefix = {
        'elements': '/element/',
        'collections': '/collection/',
        'authors': '/author/',
    }[kind]

    parsed_url = urlparse(self.request.url)
    host = '%s://%s' % (parsed_url.scheme, parsed_url.netloc)

    self.response.headers['Content-Type'] = 'text/plain'
    self.response.write('\n'.join(['%s%s%s' % (host, prefix, page) for page in sitemap.pages]))

# pylint: disable=invalid-name
app = webapp2.WSGIApplication([
    webapp2.Route(r'/api/publish/<library:([^\/]+|@?[^\/]+\/[^\/]+)>', handler=PublishLibrary),
    webapp2.Route(r'/api/preview', handler=RegisterPreview),
    webapp2.Route(r'/api/preview-event', handler=PreviewEvent),
    webapp2.Route(r'/api/preview-commit', handler=PreviewCommit),
    webapp2.Route(r'/api/meta/<author>', handler=GetAuthor),
    webapp2.Route(r'/api/meta/<owner>/<repo>', handler=GetMetadata),
    webapp2.Route(r'/api/meta/<owner>/<repo>/<ver>', handler=GetMetadata),
    webapp2.Route(r'/api/docs/<owner>/<repo>', handler=GetDocs),
    webapp2.Route(r'/api/docs/<owner>/<repo>/<ver>', handler=GetDocs),
    webapp2.Route(r'/api/page/<owner>/<repo>/<ver>/<path:.*>', handler=GetPage),
    webapp2.Route(r'/api/dependencies/<owner>/<repo>', handler=GetDependencies),
    webapp2.Route(r'/api/dependencies/<owner>/<repo>/<version>', handler=GetDependencies),
    webapp2.Route(r'/api/collections/<owner>/<repo>', handler=GetCollections),
    webapp2.Route(r'/api/collections/<owner>/<repo>/<version>', handler=GetCollections),
    webapp2.Route(r'/api/search/<terms>', handler=SearchContents),
    webapp2.Route(r'/api/sitemap/<kind>.txt', handler=GetSitemap),
コード例 #10
0
        for temp in booking_cache_remove:
            booking_cache.remove(temp)


config = {
    'webapp2_extras.auth': {
        'user_model': 'models.User',
        'user_attributes': ['first_name', 'accounType', 'email_address']
    },
    'webapp2_extras.sessions': {
        'secret_key': 'YOUR_SECRET_KEY'
    }
}

app = webapp2.WSGIApplication([
    webapp2.Route('/', MainHandler, name='home'),
    webapp2.Route('/signup', SignupHandler),
    webapp2.Route('/<type:v|p>/<user_id:\d+>-<signup_token:.+>',
                  handler=VerificationHandler,
                  name='verification'),
    webapp2.Route('/password', SetPasswordHandler),
    webapp2.Route('/login', LoginHandler, name='login'),
    webapp2.Route('/logout', LogoutHandler, name='logout'),
    webapp2.Route('/forgot', ForgotPasswordHandler, name='forgot'),
    webapp2.Route('/verifyemail', VerifyHandler, name='verifyemail'),
    webapp2.Route('/setting', SettingHandler),
    webapp2.Route('/changepwd', ChangepwdHandler),
    webapp2.Route('/schedulebooking', QueryScheduleHandler),
    webapp2.Route('/jsonrecommend', recommendScheduleHandler),
    webapp2.Route('/admin/schedule', AdminScheduleHandler),
    webapp2.Route('/scheduleconfirmation', ScheduleHandler),
コード例 #11
0

class NewPost(Handler):
    def get(self, title="", body="", errmsg=""):

        t = jinja_env.get_template("newpost.html")
        content = t.render(title=title, body=body, errmsg=errmsg)
        self.response.write(content)

    def post(self):
        title = self.request.get("title")
        body = self.request.get("body")

        title_escaped = cgi.escape(title, quote=True)
        body_escaped = cgi.escape(body, quote=True)
        if (title.strip() != "" and body.strip() != ""):
            blog = Blog(title=title_escaped, body=body_escaped)
            blog.put()
            t = jinja_env.get_template("post_confirm.html")
            content = t.render(title=title_escaped, body=body_escaped)
            self.response.write(content)
        else:
            errmsg = "You should have a TITLE AND BODY!"
            self.get(title=title, body=body, errmsg=errmsg)


app = webapp2.WSGIApplication([('/', Index), ('/blog', BlogList),
                               webapp2.Route('/blog/<id:\d+>', ViewPost),
                               ('/newpost', NewPost), ('/delete', Delete)],
                              debug=True)
コード例 #12
0
ファイル: main.py プロジェクト: mato07/Vaja16-loterija
        if params is None:
            params = {}
        template = jinja_env.get_template(view_filename)
        return self.response.out.write(template.render(params))


class MainHandler(BaseHandler):
    def get(self):
        return self.render_template("osnovna-stran.html")


class LotoHandler(BaseHandler):
    def get(self):
        loto_listek = []

        for i in range(8):
            while True:
                nakljucno_stevilo = random.randint(1, 39)
                if nakljucno_stevilo not in loto_listek:
                    break
            loto_listek.append(nakljucno_stevilo)

        info = {"listek": loto_listek}
        return self.render_template("loto.html", info)


app = webapp2.WSGIApplication(
    [webapp2.Route('/', MainHandler),
     webapp2.Route('/loto', LotoHandler)],
    debug=True)
コード例 #13
0
            params = {}
        template = jinja_env.get_template(view_filename)
        return self.response.out.write(template.render(params))


class MainHandler(BaseHandler):
    def get(self):
        return self.print_template()

    def post(self):
        return self.print_template()

    def print_template(self):
        user = users.get_current_user()
        if user:
            is_user = True
            user_url = users.create_logout_url('/')
        else:
            is_user = False
            user_url = users.create_login_url('/')
        params = {
            "user": user,
            "is_user": is_user,
            "user_url": user_url
        }
        return self.render_template("hello.html", params)

app = webapp2.WSGIApplication([
    webapp2.Route('/', MainHandler),
], debug=True)
コード例 #14
0
class TestGivePlayerEquipment(webapp2.RequestHandler):
    def post(self):
        testGivePlayerEquipment(self.request.get('player_id'))


class TestPutCampOnSpot(webapp2.RequestHandler):
    def post(self):
        testPutCampOnSpot(self.request.get('player_id'),
                          self.request.get('map_tile_id'),
                          self.request.get('tile_resource_id'))


app = webapp2.WSGIApplication(
    [
        webapp2.Route(
            r'/admin/login', handler=AdminLoginHandler, name='admin-login'),
        webapp2.Route(
            r'/admin/turn', handler=AdminTurnHandler, name='admin-turn'),
        webapp2.Route(r'/admin/make-map',
                      handler=TestMapGeneration,
                      name='admin-make-map'),
        webapp2.Route(r'/admin/give-player-resource-test',
                      handler=TestGivePlayerResource,
                      name='give-player-resource-test'),  #TODO: remove
        webapp2.Route(r'/admin/give-player-equipment-test',
                      handler=TestGivePlayerEquipment,
                      name='give-player-equipment-test'),  #TODO: remove
        webapp2.Route(r'/admin/put-camp-on-spot-test',
                      handler=TestPutCampOnSpot),  #TODO REMOVE
    ],
    debug=True)
コード例 #15
0
	def get_routes( self ):
		return  [ webapp2.Route( '/admin/apps', HandlerApps, name = 'apps' ),
		          webapp2.Route( '/appdatastores', HandlerAppDataStores, name = 'appdatastores' ),
		          webapp2.Route( '/restapi', HandlerPageRestAPI, name = 'restapi' ),
		          webapp2.Route( '/api/v1/connect', HandlerAPIv1Connect, name = 'apiv1connect' ),
		          webapp2.Route( '/api/v1/logout', HandlerAPIv1Logout, name = 'apiv1logout' ),
		          webapp2.Route( '/api/v1/authvalidate', HandlerAPIv1AuthValidate, name = 'apiv1authvalidate' ),
		          webapp2.Route( '/api/v1/ownsproducts', HandlerAPIv1OwnsProducts, name = 'apiv1ownsproducts' ),
		          webapp2.Route( '/api/v1/friends', HandlerAPIv1Friends, name = 'apiv1friends' ),
		          webapp2.Route( '/api/v1/datastore/set', HandlerAPIv1DataStoreSet, name = 'apiv1datastoreset' ),
		          webapp2.Route( '/api/v1/datastore/get', HandlerAPIv1DataStoreGet, name = 'apiv1datastoreget' ),
		          webapp2.Route( '/api/v1/datastore/getlist', HandlerAPIv1DataStoreGetList, name = 'apiv1datastoregetlist' ),
		          webapp2.Route( '/api/v1/datastore/del', HandlerAPIv1DataStoreDel, name = 'apiv1datastoredel' ),
				  ]
コード例 #16
0
class PostPage(Handler):
    def get(self, post_id):
        post = get_post(post_id)
        if post:
            self.render("post.html", post=post)
        else:
            self.error(404)


class FlushCache(Handler):
    def get(self):
        memcache.flush_all()
        next_url = self.get_referer()
        self.redirect(next_url)


class Portfolio(Handler):
    def get(self):
        self.render('portfolio.html')


app = webapp2.WSGIApplication([
    webapp2.Route('/', handler=MainPage),
    webapp2.Route('/blog', handler=BlogFront),
    webapp2.Route('/newpost', handler=NewPost),
    webapp2.Route(r'/blog/<post_id:[A-Za-z0-9_-]+>', handler=PostPage),
    webapp2.Route('/flush', handler=FlushCache),
    webapp2.Route('/portfolio', handler=Portfolio),
],
                              debug=True)
コード例 #17
0
import json
import logging
import os
import webapp2

from google.appengine.ext import ndb
from google.appengine.ext.webapp.util import run_wsgi_app
from jinja2.filters import do_pprint
from vertnet.service import github
from webapp2_extras import jinja2

IS_DEV = os.environ.get('SERVER_SOFTWARE', '').startswith('Development')

# App routes:
routes = [
    webapp2.Route(r'/', handler='app.AppHandler:home', name='home'),
    webapp2.Route(r'/sitemap.xml',
                  handler='app.AppHandler:sitemap',
                  name='sitemap'),
    webapp2.Route(r'/search', handler='app.AppHandler:search', name='explore'),
    webapp2.Route(r'/about', handler='app.AppHandler:about', name='about'),
    webapp2.Route(r'/publishers',
                  handler='app.AppHandler:publishers',
                  name='publishers'),
    webapp2.Route(
        r'/o/<:([a-zA-Z0-9]*-?[a-zA-Z0-9]*)*>/<:([a-zA-Z0-9]*-?[a-zA-Z0-9]*)*>',
        handler='app.AppHandler:occ',
        name='occ'),
    webapp2.Route(r'/p/<:([a-zA-Z0-9]*-?[a-zA-Z0-9]*)*>',
                  handler='app.AppHandler:pub',
                  name='pub'),
コード例 #18
0
    def get(self):
        self.render_index()

    def post(self):
        title = self.request.get("title")
        body = self.request.get("body")
        if title and body:
            a = Blog(title=title, body=body)
            a.put()

            self.redirect("/blog/" + str(a.key().id()))
        else:
            error = "we need both title and body."
            self.render_index(title, body, error)


class ViewPostHandler(Handler):
    def get(self, id):
        post = Blog.get_by_id(int(id))
        if post:
            self.render("viewpost.html", post=post)
        else:
            error = "The id not found."
            self.render("viewpost.html", error=error)


app = webapp2.WSGIApplication(
    [('/blog', MainHandler), ('/newpost', PostBlog),
     webapp2.Route('/blog/<id:\d+>', ViewPostHandler)],
    debug=True)
コード例 #19
0
    def get(self, message_id):
        message = Message().get_by_id(int(message_id))
        return self.render_template("edit.html", params={"message": message})

    def post(self, message_id):
        message = Message.get_by_id(int(message_id))
        message_text = self.request.get("message")
        message.message_text = message_text
        message.put()
        return self.redirect_to("message-list")


class DeleteHandler(BaseHandler):
    def get(self, message_id):
        message = Message().get_by_id(int(message_id))
        return self.render_template("delete.html", params={"message": message})

    def post(self, message_id):
        message = Message.get_by_id(int(message_id))
        message.key.delete()
        return self.redirect_to("message-list")


app = webapp2.WSGIApplication([
    webapp2.Route('/', MainHandler),
    webapp2.Route('/messages', MessageHandler, name="message-list"),
    webapp2.Route('/messages/<message_id:\d+>/edit', EditHandler),
    webapp2.Route('/messages/<message_id:\d+>/delete', DeleteHandler)
],
                              debug=True)
コード例 #20
0
ファイル: app.py プロジェクト: mazaleyrat/EvelliaCom
        file.close()


# ---

routes = []

# ---

if 'permanents' in config['appengine']:
    for route, url in config['appengine']['permanents'].iteritems():
        routes.append(
            webapp2.Route(route,
                          webapp2.RedirectHandler,
                          defaults={
                              '_code': 301,
                              '_uri': url
                          }))

# ---

if 'redirects' in config['appengine']:
    for route, url in config['appengine']['redirects'].iteritems():
        routes.append(
            webapp2.Route(route,
                          webapp2.RedirectHandler,
                          defaults={
                              '_code': 302,
                              '_uri': url
                          }))
コード例 #21
0
ファイル: cron.py プロジェクト: atmasphere/mc-coal
            server.backup()


def grouper(n, iterable):
    it = iter(iterable)
    while True:
        chunk = list(itertools.islice(it, n))
        if not chunk:
            return
        yield chunk


class DeleteExpiredTokens(webapp2.RequestHandler):
    @ndb.toplevel
    def get(self):
        now = datetime.datetime.utcnow()
        token_query = Token.query_expired(now)
        for keys in grouper(50, token_query.iter(keys_only=True)):
            ndb.delete_multi_async(keys)


application = webapp2.WSGIApplication([
    webapp2.Route(
        '/cron/server/status', ServerStatusHandler, name='cron_server_status'),
    webapp2.Route(
        '/cron/server/backup', ServerBackupHandler, name='cron_server_backup'),
    webapp2.Route(
        '/cron/oauth/clean', DeleteExpiredTokens, name='cron_oauth_clean')
],
                                      debug=not ON_SERVER)
コード例 #22
0
ファイル: wsgi.py プロジェクト: rmyers/legacy-deployer
    model = Event
    parent = GroupHandler


###
### Main routes for api
###
api_routes = APIRoutes(prefix='/api/', root=RootHandler)

###
### Setup extra routes
###
routes = list(api_routes.routes)
routes += [
    webapp2.Route('/api/store/', StoreHandler),
    webapp2.Route('/accounts/signin/', SigninHandler),
    webapp2.Route('/accounts/signup/', SignupHandler),
    webapp2.Route('/accounts/signout/', SignoutHandler),
    webapp2.Route('/accounts/profile/', ProfileHandler),
    webapp2.Route('/accounts/namespace/', NamespaceHandler),
    webapp2.Route('/<:.*>', IndexHandler),
]

###
### Application configuration
###
config = {
    'webapp2_extras.auth': {
        'user_model':
        'cannula.gae.models.User',
コード例 #23
0
ファイル: main.py プロジェクト: RokP85/glavno-mesto
        if params is None:
            params = {}
        template = jinja_env.get_template(view_filename)
        return self.response.out.write(template.render(params))


class MainHandler(BaseHandler):
    def get(self):
        return self.render_template("glavno mesto.html")

    def post(self):

        vnos = self.request.get("vnos")
        vnos2 = self.request.get("vnos2")
        vnos3 = self.request.get("vnos3")
        vnos4 = self.request.get("vnos4")

        if vnos == "Peking":
            return self.write("Drži, glavno mesto Kitajske je Peking")
        if vnos2 == "Toronto":
            return self.write("Drži, glavno mesto Kanade je Otawa")
        if vnos3 == "Jakarta":
            return self.write("Drži, glavno mesto Indonezije je Jakarta")
        if vnos4 == "Tunis":
            return self.write("Drži, glavno mesto Tunizije je Tunis")
        else:
            return self.write("Napačen vnos")


app = webapp2.WSGIApplication([webapp2.Route("/", MainHandler)], debug=True)
コード例 #24
0
ファイル: main.py プロジェクト: gitanz/gcloud_python_app
#!/usr/bin/env python
from handlers.AppUserHandler import AppUserHandler
from handlers.MainHandler import MainHandler
from handlers.TaskHandler import TaskHandler
from handlers.TaskboardHandler import TaskboardHandler
import webapp2
from handlers.TaskboardMemberHandler import TaskboardMemberHandler

# api routes
app = webapp2.WSGIApplication(
    [
        # home page, renders master.html
        webapp2.Route('/', handler=MainHandler, name='home'),
        # get all authorised taskboards
        webapp2.Route(r'/taskboards',
                      handler=TaskboardHandler,
                      name='taskboard_index',
                      handler_method="index",
                      methods=['GET']),
        # get taskboard by id
        webapp2.Route(r'/taskboards/<:\d+>',
                      handler=TaskboardHandler,
                      name='taskboard',
                      handler_method="get",
                      methods=['GET']),
        # save/update taskboard
        webapp2.Route('/taskboards',
                      handler=TaskboardHandler,
                      name='taskboard_post',
                      handler_method="post",
                      methods=['POST']),
コード例 #25
0
# Copyright 2016 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
"""Dispatches requests to request handler classes."""

import webapp2

from dashboard.pinpoint import handlers

_URL_MAPPING = [
    # Public API.
    webapp2.Route(r'/api/config', handlers.Config),
    webapp2.Route(r'/api/isolate', handlers.Isolate),
    webapp2.Route(r'/api/isolate/<builder_name>/<git_hash>/<target>',
                  handlers.Isolate),
    webapp2.Route(r'/api/job', handlers.Job),
    webapp2.Route(r'/api/jobs', handlers.Jobs),
    webapp2.Route(r'/api/login', handlers.Login),
    webapp2.Route(r'/api/migrate', handlers.Migrate),
    webapp2.Route(r'/api/new', handlers.New),
    webapp2.Route(r'/api/stats', handlers.Stats),

    # Used internally by Pinpoint. Not accessible from the public API.
    webapp2.Route(r'/api/run/<job_id>', handlers.Run),
    webapp2.Route(r'/results2/<job_id>', handlers.Results2),
]

APP = webapp2.WSGIApplication(_URL_MAPPING, debug=False)
コード例 #26
0
class MainHandler(webapp2.RequestHandler):
    def get(self):
        return self.response.write('Hello World!')


class ByeHandler(webapp2.RequestHandler):
    def get(self):
        return self.response.write('Bye')


class RandomHandler(webapp2.RequestHandler):
    def get(self):
        random_number = random.randint(1, 6)
        return self.response.write('Random number: ' + str(random_number))


class DateHandler(webapp2.RequestHandler):
    def get(self):
        date = time.strftime('%d.%m.%Y')
        return self.response.write(date)


app = webapp2.WSGIApplication([
    webapp2.Route('/', MainHandler),
    webapp2.Route('/hello', MainHandler),
    webapp2.Route('/bye', ByeHandler),
    webapp2.Route('/random', RandomHandler),
    webapp2.Route('/date', DateHandler)
],
                              debug=True)
コード例 #27
0
ファイル: constants.py プロジェクト: crudbug/upvote
class Constant(base.BaseHandler):
    """Get the value for a constant."""
    @property
    def RequestCounter(self):
        return monitoring.constant_requests

    @base.RequireCapability(constants.PERMISSIONS.VIEW_CONSTANTS)
    @handlers.RecordRequest
    def get(self, constant):  # pylint: disable=g-bad-name
        """Get handler for single setting.

    NOTE: The `constant` URI parameter will be properly parsed if it contains
    special URI characters (e.g. underscores).

    Args:
      constant: str. The name of the constant being requested.
    """
        logging.debug('Constants handler get method called.')
        if constant.lower() == 'userrole':
            constant_value = {'UserRole': constants.USER_ROLE.SET_ALL}
            self.respond_json(constant_value)
        else:
            logging.debug('Unknown constant requested: %s', constant)
            self.abort(httplib.NOT_FOUND,
                       explanation='Unknown constant requested')


# The Webapp2 routes defined for these handlers.
ROUTES = webapp2.Route('/constants/<constant>', handler=Constant)
コード例 #28
0
    """Deletes all data older than one hour"""
    keepForMinutes = 60

    def get(self):
        deleteBeforeDate = datetime.datetime.now() - datetime.timedelta(
            minutes=self.keepForMinutes)
        for blob in blobstore.BlobInfo.gql('WHERE creation < :1',
                                           deleteBeforeDate):
            blob.delete()
        ndb.delete_multi(
            Task.gql('WHERE date < :1',
                     deleteBeforeDate).fetch(keys_only=True))


app = webapp2.WSGIApplication([
    webapp2.Route('/', HomeHandler, 'home'),
    webapp2.Route('/upload', ApkUploadHandler, 'apkUpload'),
    webapp2.Route('/plugin', PluginHandler, 'plugin'),
    webapp2.Route('/plugin/blob/<blobKey>',
                  PluginHandler,
                  'blobPlugin',
                  handler_method='getBlob'),
    webapp2.Route('/plugin/app/<appId>',
                  PluginHandler,
                  'appPlugin',
                  handler_method='getApp'),
    webapp2.Route('/plugin/install', PluginInstallHandler, 'installPlugin'),
    webapp2.Route('/ajax/upload', AjaxUploadHandler, 'ajaxUpload'),
    webapp2.Route('/ajax/task/start', TaskStartHandler, 'taskStart'),
    webapp2.Route('/ajax/task/start/blob/<blobKey>',
                  TaskStartHandler,
コード例 #29
0
    def post(self):

        result = self.request.get("some_text")
        result2 = self.request.get("some_number")

        if result:
            self.old_inputs.append(result)
        else:
            self.numbers_list.append(str(random.randint(1,100)))

        return self.render_template("hello.html", params={'old_inputs':self.old_inputs,
                                                          'numbers_list': self.numbers_list})
class subsiteHandler(BaseHandler):
    def get(self):
        self.render_template("Hello2.html")


app = webapp2.WSGIApplication([
    webapp2.Route('/', MainHandler),
    webapp2.Route('/subsite', SubsiteHandler)
], debug=True)


def main():
    from paste import httpserver
    httpserver.serve(app, host='127.0.0.1', port='8080')


if __name__ == '__main__':
    main()
コード例 #30
0
import webapp2

# local imports
from handlers.main_handler import MainHandler
from handlers.cookie_handler import CookieHandler
from handlers.topic_handlers import AddTopic, DeleteTopic, TopicDetails
from handlers.comment_handlers import UserComments, DeleteComment, CountComments
from handlers.subscription_handler import SubscribeLatestTopics
from handlers.gallery_handlers import GalleryHandler
from workers.mail_worker import MailWorker, MailWorkerTopics
from cron.cron import TopicsDeleteCron, NotifyOnLatestTopicsCron, CommentsDeleteCron

# url routes
app = webapp2.WSGIApplication(
    [
        webapp2.Route('/', MainHandler, name="main-page"),
        webapp2.Route('/set-cookie', CookieHandler, name="set-cookie"),
        # topic routes
        webapp2.Route('/topic/add', AddTopic, name="add-topic"),
        webapp2.Route(
            '/topic/delete/<topic_id>', DeleteTopic, name="delete-topic"),
        webapp2.Route(
            '/topic/details/<topic_id>', TopicDetails, name="topic-details"),
        webapp2.Route('/subscribe/latest-topics',
                      SubscribeLatestTopics,
                      name="latest-topics"),
        webapp2.Route(
            '/task/send-new-comment-mail', MailWorker, name="mail-worker"),
        webapp2.Route('/task/send-latest-topics-mail',
                      MailWorkerTopics,
                      name="mail-worker-topics"),