Esempio n. 1
0
def upload_price():
    form = PriceFileForm()
    if request.method == 'POST' and form.validate_on_submit():
        upload_files = get_uploads(request, 'attach_file_')
        if len(upload_files):
            blob_info = upload_files[0]
            if blob_info.size:
                price_file = PriceFile()
                form.populate_obj(price_file)
                file_ = File.create(blob_info.key(),
                                    size=blob_info.size,
                                    filename=os.path.basename(
                                        blob_info.filename.replace('\\', '/')),
                                    content_type=blob_info.content_type,
                                    is_public=True,
                                    description=form.description.data)
                file_.put()
                price_file.file = file_.key
                price_file.put()
            else:
                blob_info.delete()
        return redirect(url_for('admin.price.index'))
    prices = PriceFile.query().order(-PriceFile.order_id)
    return render_template('admin/price/index.html',
                           prices=prices,
                           form=form,
                           upload_url=blobstore.create_upload_url(
                               url_for('admin.price.upload_price')))
Esempio n. 2
0
def upload_resume(key_id):
    job = Job.retrieve_by_id(key_id)
    if not job or not job.is_public:
        return redirect(url_for('about.jobs'))
    form = ResumeForm()
    if request.method == 'POST' and form.validate_on_submit():
        resume = Resume()
        form.populate_obj(resume)
        resume.vacancy = job.key
        upload_files = get_uploads(request, 'attach_file_')
        if len(upload_files):
            blob_info = upload_files[0]
            if blob_info.size:
                file_ = File.create(
                    blob_info.key(),
                    size=blob_info.size,
                    filename=os.path.basename(blob_info.filename.replace('\\','/')),
                    content_type=blob_info.content_type)
                file_.put()
                resume.attach_file = file_.key
            else:
                blob_info.delete()
        resume.put()
        return render_template('about/resume_thanks.html', html_class='about_class')
    upload_url = blobstore.create_upload_url(url_for('about.upload_resume', key_id=key_id))
    return render_template(
        'about/job.html',
        html_class='about_page',
        job=job,
        form=form,
        upload_url=upload_url,
        is_send_form=True
    )
Esempio n. 3
0
def add_blob_content():

    response_object = {
      'status': 'success',
      'now': datetime.utcnow().isoformat(),
      'filelink': None,
    }

    folder = Folder.retrieve_by_id(3001)
    if not folder:
        response_object['status'] = 'failure'
        return util.jsonpify(response_object)
    upload_files = get_uploads(flask.request, 'file')
    if len(upload_files):
        blob_info = upload_files[0]
        if blob_info.size:
            f = File.create(
                blob_info.key(),
                size=blob_info.size,
                filename=os.path.basename(blob_info.filename.replace('\\','/')),
                content_type=blob_info.content_type)
            f.put()
            if f.get_cached_url():
                folder.files.append(f.key)
                folder.put()
                response_object['filelink'] = f.get_cached_url()
        else:
            blob_info.delete()
    return util.jsonpify(response_object)
Esempio n. 4
0
def upload_price():
    form = PriceFileForm()
    if request.method == 'POST' and form.validate_on_submit():
        upload_files = get_uploads(request, 'attach_file_')
        if len(upload_files):
            blob_info = upload_files[0]
            if blob_info.size:
                price_file = PriceFile()
                form.populate_obj(price_file)
                file_ = File.create(
                    blob_info.key(),
                    size=blob_info.size,
                    filename=os.path.basename(blob_info.filename.replace('\\','/')),
                    content_type=blob_info.content_type,
                    is_public=True,
                    description = form.description.data
                )
                file_.put()
                price_file.file = file_.key
                price_file.put()
            else:
                blob_info.delete()
        return redirect(url_for('admin.price.index'))
    prices = PriceFile.query().order(-PriceFile.order_id)
    return render_template(
        'admin/price/index.html',
        prices=prices,
        form=form,
        upload_url=blobstore.create_upload_url(url_for('admin.price.upload_price'))
    )
Esempio n. 5
0
def employee_add():
    form = EmployeeForm(request.form)

    upload_files = get_uploads(request, 'photo_file')
    file_ = None
    if len(upload_files):
        blob_info = upload_files[0]
    else:
        blob_info = None

    if form.validate_on_submit():
        if blob_info:
            blob_info = blobstore.BlobInfo.get(blob_info.key())
            if blob_info.size:
                file_ = File.create(
                    blob_key=blob_info.key(),
                    title=form.name.data,
                    description=form.description.data,
                    is_public=form.is_public.data,
                    filename=os.path.basename(blob_info.filename.replace('\\', '/')),
                    size=blob_info.size,
                    content_type=blob_info.content_type)
                file_.put()
            else:
                blob_info.delete()

        employee = Employee()
        employee.name = form.name.data
        employee.post = form.post.data
        employee.description = form.description.data
        employee.is_public = form.is_public.data

        employee.telephone = form.telephone.data
        employee.telephone_m = form.telephone_m.data
        employee.email = form.email.data
        employee.icq = form.icq.data
        employee.skype = form.skype.data

        employee.country = form.country.data
        employee.city = form.city.data
        employee.address = form.address.data

        if file_:
            employee.photo_key = file_.key
        employee.put()
        return redirect(url_for('about.admins.employee'))

    else:
        if blob_info:
            blob_info.delete()

    add_url = blobstore.create_upload_url(url_for('about.admins.employee_add'))
    return render_template(
        'about/admins/employee/add.html',
        form=form,
        add_url=add_url
    )
Esempio n. 6
0
def employee_upload(key_id):
    employee = Employee.retrieve_by_id(key_id)
    if not employee:
        return redirect(url_for('about.admins.employee'))

    if 'delete_contact' in request.form:
        employee.key.delete()
        return redirect(url_for('about.admins.employee'))

    upload_files = get_uploads(request, 'photo_file')
    file_ = None
    if len(upload_files):
        blob_info = upload_files[0]
    else:
        blob_info = None

    form = EmployeeForm()
    if form.validate_on_submit():
        if blob_info:
            blob_info = blobstore.BlobInfo.get(blob_info.key())
            if blob_info.size:
                file_ = File.create(
                    blob_key=blob_info.key(),
                    title=form.name.data,
                    description=form.description.data,
                    is_public=form.is_public.data,
                    filename=os.path.basename(blob_info.filename.replace('\\', '/')),
                    size=blob_info.size,
                    content_type=blob_info.content_type)
                file_ = file_.put_async()
            else:
                blob_info.delete()

        form.populate_obj(employee)
        if employee.photo_key and file_:
            employee.photo_key.delete_async()
            employee.photo_key = file_.get_result()
        employee.put_async()
        return redirect(url_for('about.admins.employee'))
    else:
        if blob_info:
            blob_info.delete()

    edit_url = blobstore.create_upload_url(url_for('about.admins.employee_update', key_id=key_id))
    return render_template(
        'about/admins/employee/edit.html',
        employee=employee,
        form=form,
        edit_url=edit_url)
Esempio n. 7
0
def tenancy_edit(key_id):
    tenancy = Tenancy.retrieve_by_id(key_id)
    if not tenancy:
        return redirect(url_for('tenancy.admin.tenancy'))
    if request.method == 'POST' and 'delete_tenancy' in request.form:
        tenancy.key.delete()
        return redirect(url_for('tenancy.admin.tenancy'))
    url = blobstore.create_upload_url(
        url_for('tenancy.admin.edit', key_id=key_id)
    )
    form = TenancyForm(obj=tenancy)
    if request.method == 'POST':
        upload_files = get_uploads(request, 'attach_file')
        file_ = None
        if len(upload_files):
            blob_info = upload_files[0]
        else:
            blob_info = None

        if form.validate_on_submit():
            if blob_info:
                blob_info = blobstore.BlobInfo.get(blob_info.key())
                if blob_info.size:
                    file_ = File.create(
                        blob_key=blob_info.key(),
                        title=form.name.data,
                        description=form.description.data,
                        is_public=form.is_public.data,
                        filename=os.path.basename(blob_info.filename.replace('\\', '/')),
                        size=blob_info.size,
                        content_type=blob_info.content_type)
                    file_.put()
                else:
                    blob_info.delete()

        form.populate_obj(tenancy)
        if file_:
            if tenancy.file:
                tenancy.file.delete()
            tenancy.file = file_.key
        tenancy.put()
        return redirect(url_for('tenancy.admin.tenancy'))

    return render_template(
        'tenancy/admin/tenancy_edit.html',
        tenancy=tenancy,
        form=form,
        url=url
    )
Esempio n. 8
0
def edit_investment(key_id):
    investment = Investment.retrieve_by_id(key_id)
    if not investment:
        return redirect(url_for('investment.admin.index'))
    if request.method == 'POST' and 'delete_investment' in request.form:
        investment.key.delete()
        return redirect(url_for('investment.admin.index'))
    url = blobstore.create_upload_url(
            url_for('investment.admin.edit', key_id=key_id))
    form = InvestmentForm(obj=investment)
    if request.method == 'POST':
        upload_files = get_uploads(request, 'attach_file')
        file_ = None
        if len(upload_files):
            blob_info = upload_files[0]
        else:
            blob_info = None

        if form.validate_on_submit():
            if blob_info:
                blob_info = blobstore.BlobInfo.get(blob_info.key())
                if blob_info.size:
                    file_ = File.create(
                        blob_key=blob_info.key(),
                        filename=os.path.basename(blob_info.filename.replace('\\', '/')),
                        size=blob_info.size,
                        content_type=blob_info.content_type)
                    file_.put()
                else:
                    blob_info.delete()

            form.populate_obj(investment)
            if file_:
                if investment.file:
                    investment.file.delete()
                investment.file = file_.key
            investment.put()
            return redirect(url_for('investment.admin.index'))
    return render_template(
        'investment/admin/edit.html',
        form=form,
        url=url,
        investment=investment
    )
Esempio n. 9
0
def tenancy_add():
    form = TenancyForm()
    url = blobstore.create_upload_url(
        url_for('tenancy.admin.add')
    )
    if request.method == 'POST':
        upload_files = get_uploads(request, 'attach_file')
        file_ = None
        if len(upload_files):
            blob_info = upload_files[0]
        else:
            blob_info = None

        if form.validate_on_submit():
            if blob_info:
                blob_info = blobstore.BlobInfo.get(blob_info.key())
                if blob_info.size:
                    file_ = File.create(
                        blob_key=blob_info.key(),
                        title=form.name.data,
                        description=form.description.data,
                        is_public=form.is_public.data,
                        filename=os.path.basename(blob_info.filename.replace('\\', '/')),
                        size=blob_info.size,
                        content_type=blob_info.content_type)
                    file_.put()
                else:
                    blob_info.delete()

        tenancy = Tenancy()
        form.populate_obj(tenancy)
        if file_:
            tenancy.file = file_.key
        tenancy.put()
        return redirect(url_for('tenancy.admin.tenancy'))

    tenancies = Tenancy.query()
    return render_template(
        'tenancy/admin/add.html',
        add_active='active',
        form=form,
        tenancies=tenancies,
        url=url
    )
Esempio n. 10
0
def add_file(key_id):
    folder = Folder.retrieve_by_id(key_id)
    if not folder:
        return flask.redirect(flask.url_for('admin.file.index'))
    upload_files = get_uploads(flask.request, 'file')
    if len(upload_files):
        blob_info = upload_files[0]
        if blob_info.size:
            file = File.create(
                blob_info.key(),
                size=blob_info.size,
                filename=os.path.basename(blob_info.filename.replace('\\','/')),
                content_type=blob_info.content_type)
            file.put()
            if file.get_cached_url():
                folder.files.append(file.key)
                folder.put()
        else:
            blob_info.delete()
    return flask.redirect(flask.url_for('admin.file.edit_folder', key_id=key_id))
Esempio n. 11
0
def add_investment():
    form = InvestmentForm()
    url = blobstore.create_upload_url(
        url_for('investment.admin.add'))
    if request.method == 'POST':
        upload_files = get_uploads(request, 'attach_file')
        file_ = None
        if len(upload_files):
            blob_info = upload_files[0]
        else:
            blob_info = None

        if form.validate_on_submit():
            if blob_info:
                blob_info = blobstore.BlobInfo.get(blob_info.key())
                if blob_info.size:
                    file_ = File.create(
                        blob_key=blob_info.key(),
                        title=form.name.data,
                        description=form.description.data,
                        is_public=form.is_public.data,
                        filename=os.path.basename(blob_info.filename.replace('\\', '/')),
                        size=blob_info.size,
                        content_type=blob_info.content_type)
                    file_.put()
                else:
                    blob_info.delete()

            investment = Investment()
            form.populate_obj(investment)
            if file_:
                investment.file = file_.key
            investment.put()
            return redirect(url_for('investment.admin.index'))
    return render_template(
        'investment/admin/add.html',
        form=form,
        url=url
    )
Esempio n. 12
0
def admin_files_upload():
    form = AboutFileForm()
    if form.validate_on_submit():
        upload_files = get_uploads(request, 'file')
        if len(upload_files):
            blob_info = upload_files[0]
            blob_info = blobstore.BlobInfo.get(blob_info.key())
            if blob_info.size:
                file_ = File.create(
                    blob_key=blob_info.key(),
                    title=form.title.data,
                    description=form.description.data,
                    is_public=form.is_public.data,
                    # wtf? for fix unicode filenames
                    filename=os.path.basename(blob_info.filename.replace('\\','/')),
                    size=blob_info.size,
                    content_type=blob_info.content_type)
                file_.put()
                about_file = AboutFile(file_key=file_.key)
                about_file.put()
            else:
                blob_info.delete()
    return redirect(url_for('about.admin_files'))