示例#1
0
def post_tweet(request, tweet):
    from google.appengine.api import urlfetch
    from django.utils import simplejson
    import oauth

    message = "%s %s" % (tweet.message, url_for_tweet(tweet))
    
    access_token = request.user.raw_user_data['access_token']
    key = access_token['key']
    secret = access_token['secret']
    params = {"status": message.lstrip() }
    url = 'http://twitter.com/statuses/update.json'

    client = oauth.TwitterClient(
        settings.GAEMA_SECRETS['twitter_consumer_key'],
        settings.GAEMA_SECRETS['twitter_consumer_secret'],
        None)

    response = client.make_request(url=url, token=key, secret=secret,
        additional_params=params, protected=True, method=urlfetch.POST)

    data = simplejson.loads(response.content)
    if data.has_key('error'):
        set_flash(data['error']) 
    else:
        set_flash(u'コードスニペットを Twitter でつぶやきました。')

    request.session.pop('code')
    request.session.pop('message')

    return response
示例#2
0
 def delete(self, request, key):
     from google.appengine.api.datastore_errors import BadKeyError
     self._import_model_if_not()
     try:
         entity = db.get(key)
     except BadKeyError:
         # just ignore it
         entity = None
     if entity is None:
         raise NotFound("Specified %s not found." % self.model_name)
     self.check_authority(request, OP_DELETE, entity)
     entity.delete()
     set_flash(self.messages['result_delete'])
     # TODO: back to original page
     return redirect(self.get_list_url())
示例#3
0
 def delete(self, request, key):
   from google.appengine.api.datastore_errors import BadKeyError
   self._import_model_if_not()
   try:
     entity = db.get(key)
   except BadKeyError:
     # just ignore it
     entity = None
   if entity is None:
     raise NotFound("Specified %s not found." % self.model_name)
   self.check_authority(request, OP_DELETE, entity)
   entity.delete()
   set_flash(self.messages['result_delete'])
   # TODO: back to original page
   return redirect(self.get_list_url())
示例#4
0
 def create_or_update(self, request, key=None):
   from google.appengine.api.datastore_errors import BadKeyError
   self._import_model_if_not()
   if key:
     try:
       entity = db.get(key)
     except BadKeyError:
       entity = None
     if entity is None:
       raise NotFound("Specified %s not found." % self.model_name)
     form_class = self.get_form(request, OP_UPDATE)
     form = form_class(instance=entity)
     title = self.messages['title_update'] % self.model_name
     self.check_authority(request, OP_UPDATE, entity)
   else:
     form_class = self.get_form(request, OP_CREATE)
     form = form_class()
     title = self.messages['title_create'] % self.model_name
     self.check_authority(request, OP_CREATE)
   if request.method == 'POST':
     if form.validate(request.form, request.files):
       if key:
         additional_context = self.get_additional_context_on_update(request,
                                                                    form)
         message = self.messages['result_update']
       else:
         additional_context = self.get_additional_context_on_create(request,
                                                                    form)
         message = self.messages['result_create']
       new_entity = form.save(**additional_context)
       set_flash(message)
       return redirect(self.get_list_url())
   return render_to_response(self.get_template(request, OP_UPDATE),
                             {'form': form.as_widget(),
                              'title': title,
                              #add model_name by yosukesuzuki
                              'model':self.model_name},
                             processors=(self.url_processor,))
示例#5
0
 def create_or_update(self, request, key=None):
     from google.appengine.api.datastore_errors import BadKeyError
     self._import_model_if_not()
     if key:
         try:
             entity = db.get(key)
         except BadKeyError:
             entity = None
         if entity is None:
             raise NotFound("Specified %s not found." % self.model_name)
         form_class = self.get_form(request, OP_UPDATE)
         form = form_class(instance=entity)
         title = self.messages['title_update'] % self.model_name
         self.check_authority(request, OP_UPDATE, entity)
     else:
         form_class = self.get_form(request, OP_CREATE)
         form = form_class()
         title = self.messages['title_create'] % self.model_name
         self.check_authority(request, OP_CREATE)
     if request.method == 'POST':
         if form.validate(request.form, request.files):
             if key:
                 additional_context = self.get_additional_context_on_update(
                     request, form)
                 message = self.messages['result_update']
             else:
                 additional_context = self.get_additional_context_on_create(
                     request, form)
                 message = self.messages['result_create']
             new_entity = form.save(**additional_context)
             set_flash(message)
             return redirect(self.get_list_url())
     return render_to_response(self.get_template(request, OP_UPDATE), {
         'form': form.as_widget(),
         'title': title
     },
                               processors=(self.url_processor, ))
示例#6
0
文件: views.py 项目: soha/BooksGoten
 def post(self):
     if self.form.validate(self.request.form):
         self.request.user.set_password(self.form["new_password"])
         flash.set_flash(gettext("Password changed successfully."))
         return redirect(url_for("auth/change_password"))
     return self.get()
示例#7
0
 def post(self):
     if self.form.validate(self.request.form):
         self.request.user.set_password(self.form['new_password'])
         flash.set_flash(gettext("Password changed successfully."))
         return redirect(url_for('auth/change_password'))
     return self.get()