Beispiel #1
0
def upload(problem_num):
    user = g.user
    form = UploadForm()
    if form.validate_on_submit():
        file_data = form.upload.data

        # renames file to username_prob_num.file_ext
        file_ext = file_data.filename.split('.')[1]
        file_name = secure_filename(user.username +"_"+problem_num+'.'+file_ext)

        if file_data and allowed_file(file_name):

            file_path_user_folder = os.path.join(
                app.config['UPLOAD_FOLDER'],
                "Teams",
                user.username,
                file_name
            )

            file_path_cs_java = os.path.join(
                UPLOAD_FOLDER,
                "cs_java_files_to_grade"
            )

            # if file exists, report it's still waiting to be graded
            if not os.path.isfile(file_path_user_folder):
                # saves file to folder, will delete if test failed
                file_data.save(file_path_user_folder)

                # changes file status
                user.files[int(problem_num)-1].status = "Submitted"
                db.session.commit()
    
                """ THIS SECTION NEEDS WORK:
                    MAKE IT AUTO GRADE!

                file_ext = file_name.split('.')[1]
                # if file is cpp or python, auto grade
                if file_ext == 'py':
                    if grade_submission(user, file_path_user_folder, file_name, problem_num):
                        update_file_status(user, problem_num, "Solved")
                        update_score(user, int(problem_num))
                    else:
                        update_file_status(user, problem_num, "Failed")
                        os.remove(file_path_user_folder)
                # if java or cs file or cpp, save to cs_java folder to await manual grading
                else:

                """
                # right now it just dumps the file into a folder to be manually graded
                copyanything(file_path_user_folder, file_path_cs_java)


                flash("File " + file_name + " uploaded successfully!")
                return redirect(url_for('index'))
            else:
                flash("Your submission is waiting to be graded. Please wait until you receive feedback to submit again.")
        else:
            flash("Please choose a file with extension '.cs', '.java', '.cpp', or '.py'")
    return render_template(problem_num+'.html', title = "Problem "+problem_num, form = form)
Beispiel #2
0
def import_from_json():
    form = UploadForm()
    if form.validate_on_submit():
        if form.upload.file:
            import_from_json_string(app, form.upload.file.read())
            flash("Upload successful.<br/>%s" % form.upload.file.filename)
            return redirect(request.args.get("next") or url_for("times.index"))
        else:
            msg = "Error uploading file."
            flash(msg, "error")
    return render_template("upload.html", form=form)
Beispiel #3
0
def upload():
    if not session.get('logged_in'):
        abort(401)

    # Instantiate your form class
    form = UploadForm()
    if request.method == 'GET':
        return render_template('upload.html', form=form)

    # Validate file upload on submit
    if request.method == 'POST' and form.validate_on_submit():
        # Get file data and save to your uploads folder
        image = request.files['image']
        filename = secure_filename(image.filename)
        image.save(os.path.join(imgfiles, filename))
        flash('File Saved', 'success')
        return redirect(url_for('home'))

    return render_template('upload.html', form=form)
Beispiel #4
0
def upload():
    form = UploadForm()
    if request.method == "POST" and form.validate_on_submit():
        description = request.form['description']
        file = request.files['Image']

        filename = secure_filename(file.filename)
        file.save(os.path.join(app.config['UPLOAD_FOLDER'], filename))

        result = [{
            'message': 'File Upload Successful',
            'filename': filename,
            'description': description
        }]
        return jsonify(result=result)
    else:
        error_collection = form_errors(form)
        error = [{'errors': error_collection}]
        return jsonify(errors=error)
Beispiel #5
0
def upload_file(username):
    #user = User.query.filter_by(username=username).first_or_404()
    form = UploadForm()
    if form.validate_on_submit():
        for filename in request.files.getlist('photo'):
            name = hashlib.md5(
                ('admin' + str(time.time())).encode('utf-8')).hexdigest()[:15]
            a = photos.save(filename, name=name + '.')
        success = True
        print("Name", name)
        print(a)
        current_user.new_avatar(a)
        return redirect(url_for('user', username=current_user.username))
    else:
        success = False
    return render_template('upload.html',
                           form=form,
                           success=success,
                           pl=url_for('create_or_join'))
Beispiel #6
0
def upload():
    form = UploadForm()

    if request.method == 'POST' and form.validate_on_submit():
        photo = form.photo.data
        description = form.description.data
        filename = secure_filename(photo.filename)
        photo.save(os.path.join(app.config['UPLOAD_FOLDER'], filename))

        upload = [{
            '"message"': "File Upload Successful",
            '"filename"': filename,
            '"description"': description
        }]
        return jsonify(upload=upload)
    else:
        error_messages = ['{' + error + '}' for error in form_errors(form)]
        error = [{"errors": form_errors(form)}]
        return jsonify(error=error)
Beispiel #7
0
def upload():  # TO DO - sa trimit la 404 daca se acceseaza fara sa fie POST
    uploadForm = UploadForm()
    returncode = '0'

    if request.method == 'POST':  #this url will be POSTed only from AJAX
        if uploadForm.validate_on_submit():
            fileService = FileService()
            returncode = fileService.upload(uploadForm.file.data)
        else:
            returncode = '1005'  #there was an error in submitting the form

    if request.method == 'GET':  #to rewrite - request.args pentru GET
        filename = request.args.get('filename')
        fileService = FileService()
        returncode = fileService.delete(
            filename
        )  # TO DO - sa stearga si artefacts pt fisier (_preprocessed, etc...)

    return returncode
Beispiel #8
0
def upload():
    if not session.get('logged_in'):
        abort(401)

    # Instantiate your form class
    formupload = UploadForm()

    # Validate file upload on submit
    if request.method == 'POST':
        if formupload.validate_on_submit():
            # Get file data and save to your uploads folder
            file = request.files['uploadfile']
            filename = secure_filename(file.filename)
            file.save(os.path.join(app.config['UPLOAD_FOLDER'], filename))

            flash('File Saved', 'success')
        return redirect(url_for('home'))

    return render_template('upload.html', form=formupload)
Beispiel #9
0
def upload_image():
    form = UploadForm()
    if form.validate_on_submit():
        suffix = os.path.splitext(form.photo.data.filename)[1]
        filename = random_string() + suffix
        photos.save(form.photo.data, name=filename)
        pathname = os.path.join(current_app.config['UPLOADED_PHOTOS_DEST'],
                                filename)
        img = Image.open(pathname)
        img.thumbnail((64, 64))

        img.save(pathname)
        if current_user.icon != 'default.jpg':
            os.remove(
                os.path.join(current_app.config['UPLOADED_PHOTOS_DEST'],
                             current_user.icon))
        current_user.icon = filename
        db.session.add(current_user)
    img_url = url_for('static', filename='upload/' + current_user.icon)
    return render_template('user/image.html', form=form, img_url=img_url)
Beispiel #10
0
def upload_icon():
    # 构造上传表单对象
    form = UploadForm()

    # 预校验
    if form.validate_on_submit():
        # 拿到上传的文件
        file = form.file.data

        # 使用US对象保存文件
        filepath = photos.save(file,name=file.filename)
        current_user.icon = file.filename

    # 拿到当前用户头像的访问url
    # url = photos.url(   current_user.icon  )
    url = '/static/uploads/'+current_user.icon


    # 渲染页面
    return render_template('user/upload.html', form=form,imgurl=url)
Beispiel #11
0
def upload():
    uploadForm = UploadForm()
    if not session.get('logged_in'):
        abort(401)
    if request.method == 'GET':
        return render_template('upload.html', form=uploadForm)

    # Instantiate your form class

    # Validate file upload on submit
    if request.method == 'POST' and uploadForm.validate_on_submit():
        photo = request.files['photo']
        filename = secure_filename(photo.filename)

        # Get file data and save to your uploads folder
        photo.save(os.path.join(app.config['UPLOAD_FOLDER'], filename))
        flash('File Saved', 'success')
        return redirect(url_for('home'))

    return render_template('upload.html')
Beispiel #12
0
def profile():
    form = UploadForm()
    if request.method == "POST" and form.validate_on_submit():
        firstname = form.fname.data
        lastname = form.lname.data
        gender = form.gender.data
        location = form.location.data
        email = form.email.data
        biography = form.biography.data
        photograph =  form.file.data
        filename = secure_filename(photograph.filename)
        photograph.save(os.path.join(app.config['UPLOAD_FOLDER'], filename))
        user_date = datetime.datetime.today().strftime('%Y-%m-%d')
        user = UserProfile(firstname,lastname,gender,location,biography,filename,email,user_date)
        db.session.add(user)
        db.session.commit()
        flash("Profile Created Successfully")
        return redirect(url_for('profiles'))
    flash_errors(form)
    return render_template('profile.html',form=form)
Beispiel #13
0
def upload():
    form = UploadForm()
    if form.validate_on_submit():
        video = Video(title=form.title.data,
                      description=form.description.data,
                      user=current_user)
        db.session.add(video)
        db.session.flush()
        f = form.upload.data
        filename = secure_filename(f.filename)
        f1, ext = os.path.splitext(filename)
        path = os.path.join(basedir, "app/static", str(video.id)) + ext
        f.save(path)
        video.path = "/static/" + str(video.id) + ext
        db.session.commit()
        # video.path = path
        # db.session.add
        flash('Congratulations, your video has been uploaded!')
        return redirect(url_for('watch', video_id=video.id))
    return render_template('upload.html', title='Upload', form=form)
Beispiel #14
0
def index():
    form = UploadForm()
    if form.validate_on_submit():
        pdfsplit = form.pdffile
        pdf = PdfFileReader([pdfsplit])

        for page in range(pdf.getNumPages()):
            pdf_writer = PdfFileWriter()
            pdf_writer.addPage(pdf.getPage(page))

            output_filename = '{}_page_{}.pdf'.format(pdfsplit, page + 1)

            with open(output_filename, 'wb') as out:
                pdf_writer.write(out)

            print('Created: {}'.format(output_filename))

        return redirect('/index')

    return render_template('index.html', title='Home', form=form)
Beispiel #15
0
def upload():
    
    form = UploadForm()

    if form.validate_on_submit():
        photo = request.files['photo']
        filename = secure_filename(photo.filename)
        photo.save(os.path.join(pathToUplaods, filename))

        response = {
            "message": "File Upload Successful",
            "filename": filename,
            "description": request.form['description']
        }
        return json.dumps(response)
    else:
        response = {
            "errors":form_errors(form)
        }
        return json.dumps(response)
Beispiel #16
0
def upload():
    form = UploadForm()

    # Validate file upload on submit
    if request.method == 'POST':

        if form.validate_on_submit():  # Validate file upload on submit
            description = form.description.data
            photo = form.photo.data
            filename = secure_filename(photo.filename)
            photo.save(os.path.join(app.config["UPLOAD_FOLDER"], filename))

            return jsonify({
                "message": "File Upload Successful",
                "filename": filename,
                "description": description
            })
        else:
            error = [{'error_message': i} for i in form_errors(form)]
        return jsonify({'errors': error})
Beispiel #17
0
def profile():
    form = UploadForm()
    
    if request.method == 'POST' and form.validate_on_submit():
        firstname = request.form['firstname']
        lastname = request.form['lastname']
        email = request.form['email']
        location = request.form['location']
        gender = request.form['gender']
        biography = request.form['biography']
        photo = form.photo.data
        filename = secure_filename(photo.filename)
        photo.save(os.path.join(app.config['UPLOAD_FOLDER'], filename))
        user =  UserProfile(firstname,lastname,email,location,gender,biography,filename)
        db.session.add(user)
        db.session.commit()
        flash('You have successfully filled out the form', 'success')  
        redirect(url_for('profiles'))
    flash_errors(form)
    return render_template('profile.html', form=form)
Beispiel #18
0
def upload():
    form = UploadForm()
    if request.method == 'POST':
        if form.validate_on_submit():

            username = form.username.data

            filename = images.save(request.files['image'])
            url = images.url(filename)

            #---------------------

            result = predict(filename)

            #---------------------

            user = User.query.filter_by(username=username).first()
            if user is None: user = User(username=username)

            report = Report(user=user, data=json.dumps(result))

            image = Image(report=report)

            image.image_filename = filename
            image.image_url = url

            db.session.add(user)
            db.session.add(report)
            db.session.add(image)

            db.session.commit()

            flash(
                'User Report for username: {} generated. '.format(
                    form.username.data), 'success')
            return redirect(url_for('report', report_id=report.id))
        else:
            flash_errors(form)
            flash('ERROR! Report was not generated.', 'error')

    return render_template('upload.html', title='Upload', form=form)
Beispiel #19
0
def index():

    total_files = os.listdir(raw_data_dir)
    #gets all data then only selects those that have the correct naming conventions
    total_files = [i for i in total_files if re_name_check(i)]
    total_files.sort()

    releases = LoadReleaseInfo.query.order_by('FileName').all()

    if len(releases) == 0:
        release_num = 1
        curr_release = initial_file_name
    else:
        releases = [i.to_dict() for i in releases]
        prev_release = releases[-1]
        curr_release = next_release_name(prev_release['file_name'])
        release_num = prev_release['release_num'] + 1

    if curr_release not in total_files:
        load = False
    else:
        load = True

    release_date = curr_release.split('_')
    release_date = date(int(release_date[0]), int(release_date[1]), 1)
    form = UploadForm(release_num=release_num,
                      release_date=release_date,
                      file_name=curr_release)
    if form.validate_on_submit():
        release_num = form.release_num.data
        release_date = form.release_date.data
        file_name = form.file_name.data
        return redirect(
            url_for('load',
                    release_num=release_num,
                    file_name=file_name,
                    release_date=release_date))
    return render_template('index.html',
                           load=load,
                           curr_release=curr_release,
                           form=form)
Beispiel #20
0
def upload():
    form = UploadForm()

    if form.validate_on_submit():

        f = form.upload.data
        if not allowed_audio_file(f.filename):
            flash("Invalid file type.")
            return redirect(url_for('upload'))

        filename = secure_filename(f.filename)
        f.save(os.path.join(app.config['UPLOAD_FOLDER'], 'audio', filename))
        track = Track(title=form.title.data,
                      description=form.description.data,
                      filename=filename,
                      artist=current_user)
        db.session.add(track)
        db.session.commit()
        flash("Upload Successful.")
        return redirect(url_for('music', username=current_user.username))
    return render_template('upload.html', title='Upload Music', form=form)
Beispiel #21
0
def upload():
    if not session.get('logged_in'):
        abort(401)
    # Instantiate your form class
    if request.method == 'GET':
        form = UploadForm()
        return render_template('upload.html', form=form)

    # Validate file upload on submit
    if request.method == 'POST':
        form = UploadForm()
        if form.validate_on_submit():
            # Get file data and save to your uploads folder
            f = form.upload.data
            filename = secure_filename(f.filename)
            f.save(os.path.join(UPLOAD_FOLDER, filename))

            flash('File Saved', 'success')
            return redirect(url_for('home'))

    return render_template('upload.html')
Beispiel #22
0
def upload():
    form = UploadForm()
    if form.validate_on_submit():
        desc = form.description.data
        file = form.photo.data

        filename = secure_filename(file.filename)
        file.save(os.path.join(app.config['UPLOAD_FOLDER'], filename))

        js_msg = {
            "message": "File uploaded successfully",
            "filename": filename,
            "description": desc
        }
        message = jsonify(js_msg)
        return message
    else:
        errors = form_errors(form)
        js_msg = {"errors": errors}
        error_msg = jsonify(js_msg)
        return error_msg
Beispiel #23
0
def upload():
    # print(jsonify(hello="Rowan"))
    form = UploadForm()
    print(form.description)
    if form.validate_on_submit():
        photo = form.photo.data
        print("PHOTO", photo)
        description = form.description.data
        if photo:
            filename = secure_filename(photo.filename)
            photo.save(os.path.join(app.config['UPLOAD_FOLDER'], filename))
            # success
            return jsonify(message=success,
                           filename=filename,
                           description=description)
        else:
            return jsonify(errors="failure in retrieving photo")
    # error
    error_response = jsonify(errors=form_errors(form))
    print(error_response)
    return error_response
Beispiel #24
0
def upload_video():
    form = UploadForm()

    if form.validate_on_submit():

        f = form.upload.data
        if not allowed_video_file(f.filename):
            flash("Invalid file type.")
            return redirect(url_for('upload_video'))

        filename = secure_filename(f.filename)
        f.save(os.path.join(app.config['UPLOAD_FOLDER'], 'videos', filename))
        video = Video(title=form.title.data,
                      description=form.description.data,
                      filename=filename,
                      artist=current_user)
        db.session.add(video)
        db.session.commit()
        flash("Upload Successful")
        return redirect(url_for('upload_video'))
    return render_template('upload.html', title='Upload Video', form=form)
Beispiel #25
0
def upload():
    form = UploadForm()
	
    if form.validate_on_submit() and request.method == "POST":
	    # Get file data and save to your uploads folder
        file = request.files['photo']
        filename = secure_filename(file.filename)
        file.save(os.path.join(app.config['UPLOAD_FOLDER'], filename))
		
        messages = [{
            "message": "File Upload Successful",
            "filename": filename,
            "description": request.form['description']
        }]
		
        return jsonify(messages=messages)

    error = [{
		"error": form_errors(form)
	}]
    return jsonify(errors = error)
Beispiel #26
0
def upload():
    if not session.get('logged_in'):
        abort(401)

    # Instantiate your form class
    form = UploadForm()

    # Validate file upload on submit
    if request.method == 'POST' and form.validate_on_submit():
        # Get file data and save to your uploads folder
        image = form.image.data
        print(image)
        if image:
            filename = secure_filename(image.filename)
            image.save(os.path.join(app.config['UPLOAD_FOLDER'], filename))
            flash('File Saved', 'success')
        else:
            flash('File Not Saved', 'failure')
        return redirect(url_for('home'))

    return render_template('upload.html', form=form)
Beispiel #27
0
def upload():
    if not session.get('logged_in'):
        abort(401)

    # Instantiate your form class
    form = UploadForm()

    # Validate file upload on submit
    if request.method == 'POST':

        if form.validate_on_submit():  # Validate file upload on submit
            # Get file data and save to your uploads folder
            photo = form.photo.data
            filename = secure_filename(photo.filename)
            photo.save(os.path.join(app.config["UPLOAD_FOLDER"], filename))
            flash('File Saved', 'success')
        else:
            flash('File Not Saved. Wrong file type', 'Error')
        return redirect(url_for('home'))

    return render_template('upload.html', form=form)
Beispiel #28
0
def index():
    form = UploadForm()
    if form.validate_on_submit():
        hour_offset = form.data.get('hours', 0)
        minuts_offset = form.data.get('minuts', 0)
        seconds_offset = form.data.get('seconds', 0)
        miliseconds_offset = form.data.get('miliseconds', 0)
        offset = hour_offset, minuts_offset, seconds_offset, miliseconds_offset

        text_area_content = form.text.data
        if text_area_content != "":
            result = convert_text_with_new_offset(text_area_content, offset)
            response = make_response(result)
            response.headers[
                "Content-Disposition"] = "attachment; filename={}".format(
                    "new_subtitles_offset.srt")
            return response

        if 'file' not in request.files:
            flash('No file part ...')
            return redirect(request.url)

        file = request.files['file']
        if file.filename == '':
            flash('No file selected ...')
            return redirect(request.url)

        if file and file.filename.split('.')[-1] in Config.ALLOWED_EXTENSIONS:
            filename = secure_filename(file.filename)
            file_content = file.stream.read().decode(
                'utf-8',
                errors='ignore')  # TODO : Find a better alternative to decode
            result = convert_text_with_new_offset(file_content, offset)
            response = make_response((result))
            response.headers[
                "Content-Disposition"] = "attachment; filename={}".format(
                    filename)
            return response

    return render_template('index.html', form=form)
Beispiel #29
0
def hopper():
    if interface.get_connection():
        form=UploadForm()
        if form.validate_on_submit():
            hopper_date = request.form['hopper_date']
            hopper_time = request.form['hopper_time']
            if form.hopper_file.data:
                hfile = form.hopper_file.data
                file_path = interface.check_file(hfile)
                if file_path:
                    interface.file_manupilation(file_path,hopper_date,hopper_time)
                    dbcur = interface.create_cursor()
                    dbcur.execute(query.db_selection())
                    dbcur.execute(query.push_file())
                    interface.commit_DB()
                    flash('File uploaded successfully.', 'success')
                else:
                    flash('File not supported. Please check the file.', 'danger')
    else:
        flash('Please login to continue.', 'info')
        return redirect(url_for('login'))
    return render_template('hopper.html', title='Upload Hopper File', form=form, condition= interface.get_connection())
Beispiel #30
0
def index():
    form = UploadForm()
    if form.validate_on_submit():
        filename = photos.save(form.photo.data)
        photos_dir = '/Users/noura/puki/uploaded-images/'
        squared_image_loc = rsz.square_image(
            '/Users/noura/puki/uploaded-images/' + filename)
        #squared_image = rsz.square_image(form.photo.data.open())
        #squared_filename = photos.save(squared_image)
        #file_url = photos.url(squared_image)
        #print (file_url)
        squared_image_loc_split = squared_image_loc.split('/')
        squared_image_filename = squared_image_loc_split[
            len(squared_image_loc_split) - 1]
        print('split result' + squared_image_filename)
        return redirect(url_for('download', filename=squared_image_filename))
    else:
        file_url = None
    return render_template('index.html',
                           title='Home',
                           form=form,
                           file_url=file_url)
Beispiel #31
0
def Post(user_id):
    #post=Posts.query.filter_by(user_id=user_id).first()
    #return render_template("uploadpost.html",post=post)
    date = datetime.datetime.now()
    created_on = date.strftime('%B,%d,%Y')
    form = UploadForm()
    if request.method == 'POST' and form.validate_on_submit():
        photo = form.photo.data
        caption = form.caption.data
        post = Posts(user_id=user_id,
                     photo=photo,
                     caption=caption,
                     created_on=created_on)
        db.session.add(post)
        db.session.commmit()
        flash("Successfully updated")
        return redirect(url_for('profile'))

    return render_template('uploadpost.html', form=form)

    if __name__ == '__main__':
        app.run(debug=True, host="0.0.0.0", port="8080")
Beispiel #32
0
def uploads():
    form = UploadForm()
    img_url = None

    if form.validate_on_submit():
        icon = request.files.get('icon')
        suffix = icon.filename.split('.')[-1]  #获取后缀

        while True:
            imgName = form.random_name(suffix)
            path = os.path.join(myapp.config['UPLOADS_DEFAULT_DEST'], imgName)

            if not os.path.exists(path):
                break

        photo.save(icon, name=imgName)
        img_url = photo.url(imgName)
        current_user.user_photo = img_url
        db.session.commit()
        flash('您的更改已保存')
        return redirect(url_for('edit_profile', user=current_user))
    return render_template('uploads.html', form=form, user=current_user)