def save(self, user): cd = self.cleaned_data image_uri = ImageUtils.handle_weibo_image(cd['image']) if cd['image'] else None wb_cnt = WeiboContent.create( user_id=user.id, username=user.username, text=cd['text'], push_date=datetime.datetime.now(), image_uri=image_uri, ) return _send_weibo(user, wb_cnt)
def save(self, user): cd = self.cleaned_data _date = cd.get('send_date', datetime.datetime.now()) _hour = int(cd.get('hour', '0')) _minute = int(cd.get('minute', '0')) image_uri = ImageUtils.handle_weibo_image(cd['image']) if cd['image'] else None wb_cnt = WeiboContent.create( user_id=user.id, username=user.username, text=cd['text'], push_date=datetime.datetime(_date.year, _date.month, _date.day, _hour, _minute), image_uri=image_uri, ) _add_scehduler(_send_weibo, user, wb_cnt) return wb_cnt
def update_weibo(self, wb_cnt): client = self.get_api() if not client: return None ret = None try: if wb_cnt.image_uri: img_type, img_data = ImageUtils.get_image_data(wb_cnt.image_uri) if img_type == 'http': ret = client.statuses.upload_url_text.post(status=wb_cnt.text, url=img_data) elif img_type == 'local': ret = client.statuses.upload.post(status=wb_cnt.text, pic=img_data) img_data.close() else: ret = client.statuses.update.post(status=wb_cnt.text) wb_cnt.do_sent() except Exception, e: ret = e