Exemplo n.º 1
0
    def post(self, *args):
        user = get_current_user(self)
        appcode = self.request.get('appcode')
        pluginid = self.request.get('pluginid')

        if not pluginid:
            count = Plugin.all().filter("appcode =", appcode).count()
            if count > 0:
                self.getResult(False, u'应用包名(appcode) 在系统中已经存在,请更换应用包名。', None)
                return
            plugin = Plugin()
            plugin.username = user.get('username')
            plugin.kindids.append(int(self.request.get('kind')))
            plugin.index_time = datetime.now()
        else:
            plugin = Plugin.get_by_id(int(pluginid))
            if user.get("auth") != 'admin' and user.get('username') != plugin.username:
                self.getResult(False, u'删除失败,权限不足。', None)
                return
            if len(plugin.kindids) == 0:
                plugin.kindids.append(int(self.request.get('kind')))
            else:
                plugin.kindids[0] = int(self.request.get('kind'))

        plugin.name = self.request.get('name', '')
        plugin.appcode = self.request.get('appcode', '')
        plugin.desc = self.request.get('desc', '')
        plugin.type = self.request.get('type')
        plugin.code = self.request.get('code')
        plugin.put()
        upload_url = blobstore.create_upload_url('/upload?pluginid=%s' % (plugin.key().id()))
        upload_icon_url = blobstore.create_upload_url('/iconupload?pluginid=%s' % (plugin.key().id()))
        self.getResult(True, u'保存应用成功',
                       {"pluginid": plugin.key().id(), 'upload_url': upload_url, 'upload_icon_url': upload_icon_url})
Exemplo n.º 2
0
    def post(self):
        result = {'status': 200}
        noteupdate = datetime.datetime.utcnow() + timezone
        name = self.request.get('name', None)
        code = self.request.get('code', None)
        appcode = self.request.get('appcode', None)
        plugin = None
        if 0 < Plugin.all().filter('appcode =', appcode).count():
            for p in Plugin.all().filter('appcode =', appcode):
                plugin = p
        desc = self.request.get('desc', None)
        flag = True
        if not plugin:
            plugin = Plugin()
            flag = False

        plugin.name = name
        plugin.code = code
        plugin.appcode = appcode
        plugin.desc = desc
        plugin.type = '0'
        plugin.username = '******'
        plugin.index_time = noteupdate
        plugin.lastUpdateTime = noteupdate
        plugin.put()
        if not flag:
            imgurllist = []
            for i in range(10):
                imgurllist.append(blobstore.create_upload_url('/imageupload?pluginid=%s' % (plugin.key().id())))
            result['upload_image_url'] = imgurllist
            if not plugin.apkkey:
                result['upload_url'] = blobstore.create_upload_url('/upload?pluginid=%s' % (plugin.key().id()))
            if not plugin.imageid:
                result['upload_icon_url'] = blobstore.create_upload_url('/iconupload?pluginid=%s' % (plugin.key().id()))
        self.flush(result)
Exemplo n.º 3
0
    def post(self):
        appcode = self.request.get('appcode', None)
        imagenum = self.request.get('imagenum', '0')
        plugin = None
        if 0 < Plugin.all().filter('appcode =', appcode).count():
            for p in Plugin.all().filter('appcode =', appcode):
                plugin = p
        if not plugin:
            self.flush({"status": 404})
            return

        result = {'status': 200}
        if int(imagenum) != len(plugin.imagelist):
            for imgid in plugin.imagelist:
                    b = blobstore.BlobInfo.get(imgid)
                    if b:
                        b.delete()
            imgurllist = []
            for i in range(10):
                imgurllist.append(blobstore.create_upload_url('/imageupload?pluginid=%s' % (plugin.key().id())))
            result['upload_image_url'] = imgurllist
        if not plugin.apkkey:
            result['upload_url'] = blobstore.create_upload_url('/upload?pluginid=%s' % (plugin.key().id()))
        if not plugin.imageid:
            result['upload_icon_url'] = blobstore.create_upload_url('/iconupload?pluginid=%s' % (plugin.key().id()))
        self.flush(result)
Exemplo n.º 4
0
    def get(self, album_id):
        user = get_user()
        album = Album.get_by_id(
            int(album_id),
            DEFAULT_DOMAIN_KEY
        )

        if album:
            upload_url = blobstore.create_upload_url('/album/%s/upload-photo' % album_id)

            photo_query = Photo.query(
                ancestor=album.key
            )

            comments_query = Comment.query(
                Comment.parent == album.key
            ).order(-Comment.date_created)

            template_values = {
                'user': user,
                'album': album,
                'photos': photo_query.fetch(None),
                'comments': comments_query.fetch(None),
                'upload_url': upload_url,
            }

            self.render_template('view_album.html', template_values)
        else:
            self.raise_error(404)
Exemplo n.º 5
0
def index(_logged_user):
    """
    This is a example of file upload using
    Google Cloud Storage
    :return:
    """
    success_url = router.to_path(upload)
    bucket = get_default_gcs_bucket_name()
    logging.info(bucket)
    url = blobstore.create_upload_url(success_url, gs_bucket_name=bucket)
    cmd = blob_facade.list_blob_files_cmd(_logged_user)
    blob_form = blob_facade.blob_file_form()
    deletar_path_base = router.to_path(delete)
    download_path_base = router.to_path(download)

    def localizar_blob(blob):
        dct = blob_form.fill_with_model(blob, 64)
        dct['delete_path'] = router.to_path(deletar_path_base, dct['id'])
        dct['download_path'] = router.to_path(download_path_base, blob_key=blob.blob_key, filename=dct['filename'])
        return dct

    blob_files = [localizar_blob(b) for b in cmd()]
    context = {'upload_url': url,
               'blob_files': blob_files}
    return TemplateResponse(context, 'updown/home.html')
Exemplo n.º 6
0
def index(_logged_user):
    """
    This is a example of file upload using
    Google Cloud Storage
    :return:
    """
    success_url = router.to_path(upload)
    bucket = get_default_gcs_bucket_name()
    logging.info(bucket)
    url = blobstore.create_upload_url(success_url, gs_bucket_name=bucket)
    cmd = blob_facade.list_blob_files_cmd(_logged_user)
    blob_form = blob_facade.blob_file_form()
    deletar_path_base = router.to_path(delete)
    download_path_base = router.to_path(download)

    def localizar_blob(blob):
        dct = blob_form.fill_with_model(blob, 64)
        dct['delete_path'] = router.to_path(deletar_path_base, dct['id'])
        dct['download_path'] = router.to_path(download_path_base,
                                              blob_key=blob.blob_key,
                                              filename=dct['filename'])
        return dct

    blob_files = [localizar_blob(b) for b in cmd()]
    context = {'upload_url': url, 'blob_files': blob_files}
    return TemplateResponse(context, 'updown/home.html')
Exemplo n.º 7
0
def upload_image_link(user_id):
    """Return a blobstore upload link as json for the client to upload an
    image.
    """
    upload_url = blobstore.create_upload_url('/api/accounts/' + user_id + '/schedules/add')

    return jsonify(upload_url=upload_url)
Exemplo n.º 8
0
def upload_url():
    """
    Return a url to upload files GCS
    :return: str url
    """
    upload_url_string = blobstore.create_upload_url('/admin/upload',
                                                    gs_bucket_name=BUCKET_NAME)
    return upload_url_string
Exemplo n.º 9
0
def upload_url():
    """
    Return a url to upload files GCS
    :return: str url
    """
    upload_url_string = blobstore.create_upload_url('/admin/upload',
                                                    gs_bucket_name=BUCKET_NAME)
    return upload_url_string
Exemplo n.º 10
0
 def get(self):
     template = jinja_environment.get_template('index.html')
     self.response.out.write(
         template.render({
             'files': (db.GqlQuery("SELECT * "
                                   "FROM File")),
             'upload_url': blobstore.create_upload_url('/upload')
         })
     )
Exemplo n.º 11
0
    def get(self):
        item = None
        if self.request.get('key'):
            item = File.get( self.request.get('key') )

        vals = {
            'item'       : item,
            # this is either new.html or edit.html
            'upload_url' : blobstore.create_upload_url( str(urllib.unquote(self.request.path)) ),
            }
        self.template( 'file-form.html', vals, 'admin' );
Exemplo n.º 12
0
 def post(self):
     appcode = self.request.get('appcode', None)
     for plugin in Plugin.all().filter('appcode =', appcode):
         for pv in PluginVersion.all().filter('plugin =',plugin.key().id()):
             if pv.datakey:
                 b=blobstore.BlobInfo.get(pv.datakey)
                 if b:
                     b.delete()
             upload_url = blobstore.create_upload_url('/upload?pluginversionid=%s'%(pv.key().id()))
             return self.flush({'status' : 200, 'upload_url' : upload_url})
     return self.flush({'status':500,'message':u'插件已经存在'})
Exemplo n.º 13
0
def index(_handler):
    """
    This is a example of file upload using
    Google Cloud Storage
    :return:
    """
    success_url = router.to_path(upload)
    bucket = get_default_gcs_bucket_name()
    logging.info(bucket)
    url = blobstore.create_upload_url(success_url, gs_bucket_name=bucket)
    context = {'upload_url': url}
    return TemplateResponse(context, 'updown/home.html')
Exemplo n.º 14
0
    def post(self):
        pluginid = self.request.get('pluginid', '')
        needBigData=False
        id = self.request.get('id', '')
        versioncode = self.request.get('versioncode', '')
        versionnum = self.request.get('versionnum', '')
        updateDesc = self.request.get('updateDesc', '')
        if id:
            pluginVersion = PluginVersion.get_by_id(int(id))
        else:
            pluginVersion = PluginVersion()
            pluginVersion.plugin = int(pluginid)
        pluginVersion.versioncode = versioncode
        pluginVersion.versionnum = int(versionnum)
        pluginVersion.updateDesc = updateDesc

        appdata = self.request.POST.get('data')
        if appdata != '' and appdata != u'' and appdata != None:
            pluginVersion.data = db.Blob(appdata.file.read())
            pluginVersion.size = appdata.bufsize
        else:
            needBigData=True
        for i in range(1, 11):
            imgfilename = 'image' + str(i)
            imgfield = self.request.POST.get(imgfilename)
            if imgfield != '' and imgfield != u'' and imgfield != None:
                if imgfield.type.lower() not in ['image/pjpeg', 'image/x-png', 'image/jpeg', 'image/png', 'image/gif',
                                                 'image/jpg']:
                    continue
                imgfile = Images()
                imgfile.filename = imgfield.filename
                imgfile.filetype = imgfield.type
                imgfile.data = db.Blob(imgfield.file.read())
                imgfile.size = imgfield.bufsize
                imgfile.put()
                pluginVersion.imageids.append(imgfile.key().id())
        pluginVersion.put()
        plugin = {}
        pluginVersionList = []
        if pluginid:
            plugin = Plugin.get_by_id(int(pluginid))
            pluginVersionList = PluginVersion.all().filter('plugin =', int(pluginid)).order('-versionnum')

        data={'plugin': plugin, 'pluginVersion': pluginVersion, 'pluginVersionList': pluginVersionList, 'id': id,
                     'pluginid': pluginid, 'result': 'succeed', 'msg': u'操作成功。','needBigData':needBigData}
        if needBigData:
            upload_url = blobstore.create_upload_url('/upload?pluginversionid=%s'%(pluginVersion.key().id()))
            data['upload_url']=upload_url
            data['msg']= u'请上传APK文件。'
            self.render('template/plugin/pluginUpload2.html',data)
        else:
            self.render('template/plugin/pluginUpload.html',data )
Exemplo n.º 15
0
    def post(self, *args):
        pluginid = self.request.get('pluginid')
        updatedesc = self.request.get('updatedesc')

        if not pluginid:
            self.getResult(False, u'请选择应用。', None)
            return
        else:
            plugin = Plugin.get_by_id(int(pluginid))
        plugin.updatedesc = updatedesc
        plugin.put()
        upload_url = blobstore.create_upload_url('/upload?pluginid=%s' % (plugin.key().id()))
        self.getResult(True, u'保存应用成功',
                       {"pluginid": plugin.key().id(), 'upload_url': upload_url})
Exemplo n.º 16
0
 def render_page(self,uploadMessage='',error=''):
     self.response.out.write(repr(getCoordinates(self.request.remote_addr)))
     user_cookie = self.request.cookies.get('user')
     username = cookieUsername(user_cookie).name
     user = Users.all().filter('name = ',username).get()
     assignmentName = self.request.get('assignmentName')
     upload_url = blobstore.create_upload_url('/student/upload?assignmentName='+assignmentName+'&username='******'student/upload.html')
     templateValues = {}
     templateValues['user'] = user
     templateValues['upload_url'] = upload_url
     templateValues['uploadMessage'] = uploadMessage
     templateValues['error'] = error
     renderPage = template.render(form,templateValues)
     self.response.out.write(renderPage)
Exemplo n.º 17
0
    def get(self):
        pluginid = self.request.get('pluginid', '')
        id = self.request.get('id', '')
        pluginVersionList=[]
        if pluginid:
            plugin = Plugin.get_by_id(int(pluginid))
            pluginVersionList = PluginVersion.all().filter('plugin =', int(pluginid)).order('-versionnum')

        pluginVersion = {}
        if id:
            pluginVersion = PluginVersion.get_by_id(int(id))
            if not pluginid or pluginVersion.plugin != int(pluginid):
                plugin = Plugin.get_by_id(pluginVersion.plugin)
        data={'plugin': plugin, 'pluginVersion': pluginVersion, 'pluginVersionList': pluginVersionList, 'id': id,
                     'pluginid': pluginid}
        upload_url = blobstore.create_upload_url('/upload?pluginversionid=%s'%(pluginVersion.key().id()))
        data['upload_url']=upload_url
        self.render('template/plugin/pluginUpload2.html',data)
Exemplo n.º 18
0
    def get(self):
        """Convenience HTML form for testing."""
        # TODO(jeff.carollo): Have someone make this a dynamic form
        # with Javascript.  Possibly have it generate manifest.

        upload_url = blobstore.create_upload_url('/packages/create')

        content_type = self.GetAcceptTypeHtmlOrJson()
        self.response.headers['Content-Type'] = content_type

        if 'html' in content_type:
            # TODO(jeff.carollo): Extract out to Django templates.
            self.response.out.write("""
          <html><head><title>Package Creator</title></head><body>
          <form id="package" action="%s"
                method="POST" enctype="multipart/form-data">
            Upload File1: <input type="file" name="file1"/><br/>
            Upload File2: <input type="file" name="file2"/><br/>
            Manifest: <input type="textarea" name="manifest"
                             rows="40" cols="80"/><br/> 
            <input type="submit" name="submit" value="Submit"/>
          </form>
          </body></html>
          """ % upload_url)
            self.response.out.write('\n')
            return

        if 'json' in content_type:
            response = dict()
            response['kind'] = 'mrtaskman#get_upload_url_response'
            response['upload_url'] = upload_url
            json.dump(response, self.response.out, indent=2)
            self.response.out.write('\n')
            return

        # Should never get here.
        logging.error(
            'Sending 500 because we could not determine a Content-Type.')
        self.response.out.write(
            'Accept type not text/html or application/json.')
        self.response.set_status(500)
        return
Exemplo n.º 19
0
def index():
    success_url = router.to_path(upload)
    bucket = get_default_gcs_bucket_name()
    logging.info(bucket)
    url = blobstore.create_upload_url(success_url, gs_bucket_name=bucket)
    cmd = blob_facade.list_blob_files_cmd()
    blob_form = blob_facade.blob_file_form()
    deletar_path_base = router.to_path(delete)
    download_path_base = router.to_path(download)

    def localizar_blob(blob):
        dct = blob_form.fill_with_model(blob, 64)
        dct['delete_path'] = router.to_path(deletar_path_base, dct['id'])
        dct['download_path'] = router.to_path(download_path_base, blob.blob_key, dct['filename'].encode('utf8'))
        return dct

    blob_files = [localizar_blob(b) for b in cmd()]
    context = {'upload_url': url,
               'blob_files': blob_files}
    return TemplateResponse(context, 'updown/home.html')
Exemplo n.º 20
0
  def get(self):
    """Convenience HTML form for testing."""
    # TODO(jeff.carollo): Have someone make this a dynamic form
    # with Javascript.  Possibly have it generate manifest.

    upload_url = blobstore.create_upload_url('/packages/create')

    content_type = self.GetAcceptTypeHtmlOrJson()
    self.response.headers['Content-Type'] = content_type

    if 'html' in content_type:
      # TODO(jeff.carollo): Extract out to Django templates.
      self.response.out.write(
          """
          <html><head><title>Package Creator</title></head><body>
          <form id="package" action="%s"
                method="POST" enctype="multipart/form-data">
            Upload File1: <input type="file" name="file1"/><br/>
            Upload File2: <input type="file" name="file2"/><br/>
            Manifest: <input type="textarea" name="manifest"
                             rows="40" cols="80"/><br/> 
            <input type="submit" name="submit" value="Submit"/>
          </form>
          </body></html>
          """ % upload_url)
      self.response.out.write('\n')
      return

    if 'json' in content_type:
      response = dict()
      response['kind'] = 'mrtaskman#get_upload_url_response'
      response['upload_url'] = upload_url
      json.dump(response, self.response.out, indent=2)
      self.response.out.write('\n')
      return

    # Should never get here.
    logging.error('Sending 500 because we could not determine a Content-Type.')
    self.response.out.write('Accept type not text/html or application/json.')
    self.response.set_status(500)
    return
Exemplo n.º 21
0
    def get(self, album_id):
        user = get_user()

        if user:
            album = Album.get_by_id(
                int(album_id),
                parent=DEFAULT_DOMAIN_KEY
            )
            upload_url = blobstore.create_upload_url(
                '/album/%s/upload-photo' % album.key.integer_id()
            )

            template_values = {
                'user': user,
                'album': album,
                'upload_url': upload_url,
            }

            self.render_template('add_photo.html', template_values)
        else:
            self.redirect_to_login()
Exemplo n.º 22
0
def index(_logged_user):
    success_url = router.to_path(upload)
    bucket = get_default_gcs_bucket_name()
    url = blobstore.create_upload_url(success_url, gs_bucket_name=bucket)

    cmd = blob_facade.list_blob_files_cmd(_logged_user)
    blob_files = cmd()
    delete_path = router.to_path(delete)
    download_path = router.to_path(download)
    blob_file_form = blob_facade.blob_file_form()

    def localize_blob_file(blob_file):
        blob_file_dct = blob_file_form.fill_with_model(blob_file, 64)
        blob_file_dct['delete_path'] = router.to_path(delete_path, blob_file_dct['id'])
        blob_file_dct['download_path'] = router.to_path(download_path,
                                                        blob_file.blob_key,
                                                        blob_file_dct['filename'])
        return blob_file_dct

    localized_blob_files = [localize_blob_file(blob_file) for blob_file in blob_files]
    context = {'upload_url': url,
               'blob_files': localized_blob_files}
    return TemplateResponse(context, 'updown/home.html')
Exemplo n.º 23
0
    def post(self, key):
        parser = reqparse.RequestParser()
        parser.add_argument('size', type=int, help='Not a valid size')
        parser.add_argument('crop',
                            type=bool,
                            help='Crop can be true or false')
        args = parser.parse_args()

        secret = str(uuid.uuid4())

        options = None
        if args.size or args.crop:
            options = {"size": args.size, "crop": args.crop}

        user_image = UserImage(secret=secret,
                               user_key=str(g.model_db.key),
                               username=g.model_db.username,
                               name=g.model_db.name,
                               options=options)
        user_image.put()
        upload_url = blobstore.create_upload_url('/uploadimage?key=' +
                                                 str(user_image.key.urlsafe()))
        repr_dict = {'upload_url': upload_url}
        return repr_dict
Exemplo n.º 24
0
def MakeTaskCompleteUrl(task_id):
  """Returns a URL for a worker to POST to when done with given Task."""
  return blobstore.create_upload_url('/tasks/%d' % task_id)
Exemplo n.º 25
0
def MakeTaskCompleteUrl(task_id):
    """Returns a URL for a worker to POST to when done with given Task."""
    return blobstore.create_upload_url('/tasks/%d' % task_id)
Exemplo n.º 26
0
 def get(self, *args):
     pluginid = self.request.get('pluginid')
     upload_icon_url = blobstore.create_upload_url('/imageupload?pluginid=%s' % pluginid)
     self.getResult(True, u'', upload_icon_url)
Exemplo n.º 27
0
def form(write_tmpl):
    url_tirinha = blobstore.create_upload_url("/uptirinha")
    values = {"url_tirinha": url_tirinha}
    write_tmpl("/leitura/templates/tirinha_form.html", values)
Exemplo n.º 28
0
 def post(self):
     self.response.write(blobstore.create_upload_url(success_path=ADDR_UPLOAD_COMPLETE,
                                                     max_bytes_total=4800000))
Exemplo n.º 29
0
 def upload_url(self, unused_request):
     url = create_upload_url(
         "/upload-flag", max_bytes_per_blob=None, max_bytes_total=None, rpc=None, gs_bucket_name=None
     )
     return StringMessage(s=url)
Exemplo n.º 30
0
def form():
    upload_path = to_path(upload)
    bucket = get_default_gcs_bucket_name()
    url = blobstore.create_upload_url(upload_path, gs_bucket_name=bucket)
    ctx = {'save_path': url}
    return TemplateResponse(ctx, template_path="/upload.html")
Exemplo n.º 31
0
Arquivo: up.py Projeto: renzon/fatec
def index(write_tmpl):
    url=blobstore.create_upload_url("/upfile")
    values={"url":url}
    write_tmpl("templates/upload.html",values)