예제 #1
0
def db(request):

    greeting = Greeting()
    greeting.save()

    greetings = Greeting.objects.all()

    return render(request, 'db.html', {'greetings': greetings})
예제 #2
0
 def post(self):
   greeting = Greeting(parent=guestbook_key(DB_NAME))
   user_name = self.request.get('name')
   user_email = self.request.get('email')
   greeting.author = Author(name=user_name, email=user_email)
   greeting.content = self.request.get('content')
   greeting.put()
   self.redirect('/greet')
예제 #3
0
def db(request):
    greeting = Greeting()
    greeting.save()
    greetings = Greeting.objects.all()
    #get all of the games
    #update the ratings
    #display the rating list
    return render(request, 'db.html', {'greetings': greetings})
예제 #4
0
  def post(self):
    greeting = Greeting()

    if users.get_current_user():
      greeting.author = users.get_current_user()

    greeting.content = self.request.get('content')
    greeting.put()
    self.redirect('/')
예제 #5
0
    def post(self):
        # We set the same parent key on the 'Greeting' to ensure each Greeting
        # is in the same entity group. Queries across the single entity group
        # will be consistent. However, the write rate to a single entity group
        # should be limited to ~1/second.
        sender = users.get_current_user()
        if sender:            
            guestbook_name = urllib.unquote_plus(self.request.get('guestbook_name',
                                          users.get_current_user().user_id() or DEFAULT_GUESTBOOK_NAME))
            greeting = Greeting(parent=guestbook_key(guestbook_name))
            greeting.author = users.get_current_user().nickname()
            greeting.user_id = users.get_current_user().user_id()
        else:
            guestbook_name = urllib.unquote_plus(self.request.get('guestbook_name', DEFAULT_GUESTBOOK_NAME))
            greeting = Greeting(parent=guestbook_key(guestbook_name))



        if self.request.get('img'):
            avatar = images.resize(self.request.get('img'),300,300)
            greeting.avatar = db.Blob(avatar)
        greeting.content = self.request.get('content')
        greeting.date = datetime.now()
        greeting.put()

        query_params = {'guestbook_name': guestbook_name}
        self.redirect('/?' + urllib.urlencode(query_params))
예제 #6
0
파일: main.py 프로젝트: sivy/gae-learning
    def post(self):
        guestbook_name = self.request.get('guestbook_name')
        greeting = Greeting(parent=guestbook_key(guestbook_name))

        if users.get_current_user():
            greeting.author = users.get_current_user().nickname()

        greeting.content = self.request.get('content')
        greeting.put()

        # redirect to home page
        self.redirect('/%s' % guestbook_name)
예제 #7
0
def post_guest_view(request):
    greeting = Greeting(parent=guestbook_key())

    if users.get_current_user():
        greeting.author = users.get_current_user()

    greeting.content = request.params['content']
    greeting.put()
    user = '******'
    if users.get_current_user():
        user = users.get_current_user().nickname()
    return {'greeting': greeting.content, 'user': user}
예제 #8
0
    def post_greeting(self):
        """
        Accepts a greeting from the client and saves it to the database.
        """
        self.response.headers['Content-Type'] = 'application/json'

        self.request.get('content')

        greeting = Greeting(content=)

        key = greeting.put()

        self.response.message = BaseAPIMessage({'id': key})
예제 #9
0
def addajax():
    if request.method == 'POST':
        print "posted"
        angular_dict = request.data

        print angular_dict
        first_value = angular_dict.split("=")[0]
        second_value = angular_dict.split("=")[1]
        second_value = second_value.replace("+", " ")

        second_value = second_value.replace("!", "")
        second_value = second_value.replace(" ", "_")
        user = users.get_current_user()
        all_content = Greeting.query()
        for datastore in all_content:
            print "start idnetical"
            print datastore.content
            print first_value
            print "end identical"
            if datastore.content == first_value and user.user_id() == datastore.author.identity:
                datastore.content = second_value
                datastore.put()
                print datastore
                time.sleep(1)
                return "success"

        time.sleep(1)
        return "nodomain"

    else:
        return "post only"
예제 #10
0
파일: views.py 프로젝트: mp314/waste.d
def index(request):
    if users.get_current_user():
        url = users.create_logout_url("/")
        url_linktext = 'Logout'
        username = users.get_current_user()
    else:
        url = users.create_login_url("/")
        url_linktext = 'Login'
        username = ''

    #if 'guestbook_name' in request.GET:
    guestbook_name = request.GET.get('guestbook_name', DEFAULT_GUESTBOOK_NAME)
    #else:
    #  guestbook_name=DEFAULT_GUESTBOOK_NAME

    # Ancestor Queries, as shown here, are strongly consistent with the High
    # Replication Datastore. Queries that span entity groups are eventually
    # consistent. If we omitted the ancestor from this query there would be
    # a slight chance that Greeting that had just been written would not
    # show up in a query.
    greetings_query = Greeting.query(
        ancestor=guestbook_key(guestbook_name)).order(-Greeting.date)
    greetings = greetings_query.fetch(10)

    news = News.query().order(-News.date).fetch(5)

    template_values = {
        'url': url,
        'url_linktext': url_linktext,
        'username': username,
        'greetings': greetings,
        'guestbook_name': guestbook_name,
        'news': news,
    }
    return render_to_response('index.html', template_values)
예제 #11
0
    def get(self):
        guestbook_name = self.request.get('guestbook_name',
                                          DEFAULT_GUESTBOOK_NAME)
        greetings_query = Greeting.query(
            ancestor=guestbook_key(guestbook_name)).order(-Greeting.date)
        greetings = greetings_query.fetch(10)

        user = users.get_current_user()
        if user:
            url = users.create_logout_url(self.request.uri)
            url_linktext = 'Logout'
        else:
            url = users.create_login_url(self.request.uri)
            url_linktext = 'Login'

        template_values = {
            'user': user,
            'greetings': greetings,
            'guestbook_name': urllib.quote_plus(guestbook_name),
            'url': url,
            'url_linktext': url_linktext,
        }
        logging.debug("Temp values %s",str(template_values))
        template = JINJA_ENVIRONMENT.get_template('templates/pages/guestbook.html')
        self.response.write(template.render(template_values))
예제 #12
0
    def get(self):
        guestbook_name = self.request.get('guestbook_name',
                                          DEFAULT_GUESTBOOK_NAME)
        greetings_query = Greeting.query(
            ancestor=guestbook_key(guestbook_name)).order(-Greeting.date)
        greetings = greetings_query.fetch(10)

        user = users.get_current_user()
        if user:
            url = users.create_logout_url(self.request.uri)
            url_linktext = 'Logout'
        else:
            url = users.create_login_url(self.request.uri)
            url_linktext = 'Login'

        template_values = {
            'user': user,
            'greetings': greetings,
            'guestbook_name': urllib.quote_plus(guestbook_name),
            'url': url,
            'url_linktext': url_linktext,
        }
        logging.debug("Temp values %s", str(template_values))
        template = JINJA_ENVIRONMENT.get_template(
            'templates/pages/guestbook.html')
        self.response.write(template.render(template_values))
예제 #13
0
파일: main.py 프로젝트: sivy/gae-learning
    def get(self, guestbook_name='stremor'):

        # SELECT * FROM is a given when used in Model context
        greetings = Greeting.gql("WHERE ANCESTOR IS :1 "
                                "ORDER BY date DESC LIMIT 10",
                                guestbook_key(guestbook_name))

        user = users.get_current_user()
        user_nick = ''
        if user:
            url = users.create_logout_url(self.request.uri)
            url_linktext = 'Logout'
            user_nick = user.nickname()
        else:
            url = users.create_login_url(self.request.uri)
            url_linktext = 'Login'

        template_values = {
            'guestbook_name': guestbook_name,
            'greetings': greetings,
            'user_nick': user_nick,
            'url_linktext': url_linktext,
            'url': url
        }

        template = jinja_environment.get_template('index.html')

        self.response.headers['Content-Type'] = 'text/html'
        self.response.out.write(template.render(template_values))
예제 #14
0
def update():
    user = users.get_current_user()
    if user:
        greetings = Greeting.query()
        return render_template("update.html",
            greetings=greetings, user=user)
    else:
        return redirect(users.create_login_url(request.url))
예제 #15
0
def main():
    user = users.get_current_user()
    if user:
        form = GuestBookForm()
        greetings = Greeting.query()
        return render_template("main.html",
            form=form, greetings=greetings, user=user)
    else:
        return redirect(users.create_login_url(request.url))
예제 #16
0
    def test_post_greeting(self):
        response = self.testapp.post('/sign', {'guestbook_name': 'test', 'content': 'hi'})
        eq_(response.status, '302 Moved Temporarily')

        greetings = Greeting.gql("WHERE ANCESTOR IS :1 "
                                 "ORDER BY date DESC LIMIT 10",
                                  guestbook_key('test'))

        ok_(greetings.count() == 1, 'There should be 1 Greeting object')
예제 #17
0
    def delete_greeting(self):
        """
        Deletes the specified greeting.
        """
        self.response.headers['Content-Type'] = 'application/json'

        greetings = Greeting.query()

        self.response.message = BaseAPIMessage(list(greetings))
예제 #18
0
    def list_greetings(self):
        """
        Retrievies a list of guestbook entries from the database and sends it the
        the client.
        """
        self.response.headers['Content-Type'] = 'application/json'

        greetings = Greeting.query()

        self.response.message = BaseAPIMessage(list(greetings))
예제 #19
0
 def post(self):
   greeting = Greeting()
   if users.get_current_user():
       greeting.author = users.get_current_user()
   greeting.content = self.request.get("content")
   avatar = images.resize(self.request.get("img"), 64, 64)
   greeting.avatar = db.Blob(avatar)
   greeting.put()
   self.redirect('/guestbook/')
예제 #20
0
파일: views.py 프로젝트: biospin/papaya
def new_greeting(request):

    # 새 인사말 페이지
    if request.method == "GET":
        res = """<form action="/greetings/new/"
                       method="post">
        message: <input type="text" name="message"><br>
        name: <input type="text" name="name"><br>
        <input type="submit" name="greet">
        </form>"""
        return HttpResponse(res)

    # 새 인사말 등록 및 전체 페이지로 이동
    elif request.method == "POST":
        greeting = Greeting()
        greeting.message = request.POST["message"]
        greeting.name = request.POST["name"]

        greeting.save()
        return redirect('/greetings')
예제 #21
0
    def post(self):
        # We set the same parent key on the 'Greeting' to ensure each
        # Greeting is in the same entity group. Queries across the
        # single entity group will be consistent. However, the write
        # rate to a single entity group should be limited to
        # ~1/second.
        guestbook_name = self.request.get('guestbook_name',
                                          DEFAULT_GUESTBOOK_NAME)
        greeting = Greeting(parent=guestbook_key(guestbook_name))
        
        if users.get_current_user():
            greeting.author = Author(
                    identity=users.get_current_user().user_id(),
                    email=users.get_current_user().email())

        greeting.content = self.request.get('content')
        logging.debug("greeting %s",str(greeting))
        greeting.put()

        query_params = {'guestbook_name': guestbook_name}
        self.redirect('/?' + urllib.urlencode(query_params))
예제 #22
0
 def post(self):
     greeting = Greeting()
     if (not self.try_update_model(greeting)
             or not self.validate(greeting, greeting_validator)):
         return self.get(greeting)
     with session() as db:
         repo = Repository(db)
         if not repo.add_greeting(greeting):
             self.error('Sorry, can not add your greeting.')
             return self.get(greeting)
         db.commit()
     return self.see_other_for('list')
예제 #23
0
 def list_greetings(self):
     cursor = self.db.execute("""
             SELECT id, created_on, author, message
             FROM greeting
             ORDER BY id DESC
             LIMIT 10
     """)
     return [Greeting(
             id=row[0],
             created_on=row[1],
             author=row[2],
             message=row[3]) for row in cursor.fetchall()]
예제 #24
0
def get_guest_view(request):
    greetings_query = Greeting.query(ancestor=guestbook_key()).order(-Greeting.date)
    greetings = greetings_query.fetch(10)

    if users.get_current_user():
        url = users.create_logout_url(request.url)
        url_linktext = 'Logout'
    else:
        url = users.create_login_url(request.url)
        url_linktext = 'Login'

    return {'url_linktext':url_linktext, 'url': url, 'greetings':greetings}
예제 #25
0
def dispatch():
    form_action = request.form.get('action')
    if form_action == 'join' and 'name' in request.form:
        return Greeting(request.form.to_dict()).as_json()
    elif form_action == 'message' and 'text' in request.form:
        try:
            return WeatherReport(request.form.to_dict()).as_json()
        except ParseError as e:
            return ParseErrorMessage(e.get_context()).as_json()
        except LocationError as e:
            return LocationErrorMessage(e.get_context()).as_json()
        except WeatherError as e:
            return WeatherErrorMessage(e.get_context()).as_json()
    raise BadRequest()
예제 #26
0
파일: handlers.py 프로젝트: kdwyer/apptrace
    def post(self):
        greeting = Greeting()

        if users.get_current_user():
            greeting.author = users.get_current_user()

        greeting.content = self.request.get('content')
        greeting.put()
        self.redirect('/')
예제 #27
0
    def test_loggedin_post_greeting(self):
        os.environ['USER_EMAIL'] = '*****@*****.**'
        os.environ['USER_ID'] = '123'
        os.environ['AUTH_DOMAIN'] = 'testbed'

        self.testapp.post('/sign', {'guestbook_name': 'test', 'content': 'hi'})

        greetings = Greeting.gql("WHERE ANCESTOR IS :1 "
                                 "ORDER BY date DESC LIMIT 10",
                                  guestbook_key('test'))
        greeting = greetings.fetch(1)[0]  # latest

        eq_(greeting.content, 'hi',
            'greeting content should be \'hi\'')
        eq_(greeting.author, '*****@*****.**',
            'author content should be \'[email protected]\'')
예제 #28
0
파일: main.py 프로젝트: sivy/gae-learning
    def get(self):
        guestbook = self.request.get('guestbook')
        greetings = Greeting.gql("WHERE ANCESTOR IS :1 "
                                "ORDER BY date DESC LIMIT 10",
                                guestbook_key(guestbook))

        # this ought to be a lot smarter
        d = []
        for greeting in greetings.fetch(10):
            d.append({
                'content': greeting.content,
                'author': greeting.author,
                'datetime': datetime.strftime(greeting.date, DATE_FMT)
                })

        self.response.headers['Content-Type'] = 'application/json'
        self.response.out.write(json.dumps(d))
예제 #29
0
  def get(self):
    query = Greeting.query(ancestor=guestbook_key(DB_NAME)).order(-Greeting.date)
    greetings_obj = query.fetch(10)

    greetings = []
    for greeting in greetings_obj:
      if greeting.author and greeting.author.name:
        author = greeting.author.name
      elif greeting.author and greeting.author.email:
        author = greeting.author.email
      else:
        author = "Anonymous"

      greetings.append({
        "author": author,
        "content": greeting.content,
      })

    self.generate("greet.html", {"greetings": greetings})
예제 #30
0
파일: views.py 프로젝트: mp314/waste.d
def sign(request):
    # We set the same parent key on the 'Greeting' to ensure each greeting
    # is in the same entity group. Queries across the single entity group
    # will be consistent. However, the write rate to a single entity group
    # should be limited to ~1/second.
    guestbook_name = request.GET.get('guestbook_name', DEFAULT_GUESTBOOK_NAME)

    greeting = Greeting(parent=guestbook_key(guestbook_name))

    if users.get_current_user():
        greeting.author = users.get_current_user()

    greeting.content = request.POST.get('content')
    greeting.put()

    #query_params = {'guestbook_name': guestbook_name}
    #self.redirect('/?' + urllib.urlencode(query_params))
    return HttpResponseRedirect('/')
예제 #31
0
    def post(self):
        # We set the same parent key on the 'Greeting' to ensure each
        # Greeting is in the same entity group. Queries across the
        # single entity group will be consistent. However, the write
        # rate to a single entity group should be limited to
        # ~1/second.
        guestbook_name = self.request.get('guestbook_name',
                                          DEFAULT_GUESTBOOK_NAME)
        greeting = Greeting(parent=guestbook_key(guestbook_name))

        if users.get_current_user():
            greeting.author = Author(
                identity=users.get_current_user().user_id(),
                email=users.get_current_user().email())

        greeting.content = self.request.get('content')
        logging.debug("greeting %s", str(greeting))
        greeting.put()

        query_params = {'guestbook_name': guestbook_name}
        self.redirect('/?' + urllib.urlencode(query_params))
예제 #32
0
def template_file(request):
    #copied this from: https://developers.google.com/appengine/articles/django-nonrel
    user = users.get_current_user()

    g1 = Greeting()
    g1.author = user
    g1.content = "Whatever"
    g1.put()
    print("Created:" + str(g1.key()))

    context = {
        'user': user,
        'greetings': [g1],
        'login': '******',
        'logout': '/logout',
    }

    # hard way
    # t = get_template('index.html')
    # return http.HttpResponse(t.render(Context(context)))

    # easy way using django shortcuts
    return render(request, 'index.html', context)
예제 #33
0
파일: views.py 프로젝트: psultan/OST
def db(request):
    greeting = Greeting()
    greeting.save()
    greetings = Greeting.objects.all()
    return render(request, 'db.html', {'greetings': greetings})
예제 #34
0
 def get(self, greeting=None):
     greeting = greeting or Greeting()
     return self.render_response('add.html', greeting=greeting)