Ejemplo n.º 1
0
def email_screenplay():
    resource_id = get_resource_id_from_request()
    title_page = request.form.get('title_page', None)
    if title_page is None:
        title_page = request.json.get('title_page', None)
    subject = "Screenplay"
    body_message = ""
    raw_recipients = request.form.get('recipients', None)
    if raw_recipients is None:
        raw_recipients = request.json.get('recipients', None)
    recipients = raw_recipients.split(',')

    # Build email body and html
    body = body_message + "\n\n\n    	"
    body += "--- This screenplay written and sent from RawScripts.com."
    body += " Check it out---"
    with app.open_resource('static/text/email.txt') as f:
        html_template = f.read()
    html = html_template.replace("FILLERTEXT", body_message)

    # get pdf file to attach
    include_title_page = title_page == '1'
    export_file = Screenplay.export_to_file(resource_id, 'pdf',
                                            include_title_page)
    _file, title, content_type = export_file
    filename = title + '.pdf'

    msg = Message(subject, recipients=recipients, body=body, html=html)
    msg.attach(filename, content_type, _file.getvalue())
    try:
        mail.send(msg)
    except:
        return Response('failed', mimetype='text/plain')
    return Response('sent', mimetype='text/plain')
Ejemplo n.º 2
0
def rename_screenplay():
    resource_id = get_resource_id_from_request()
    rename = request.form.get('rename', None)
    if rename is None:
        rename = request.json.get('rename', None)
    Screenplay.rename(resource_id, rename)
    return Response('done', mimetype='text/plain')
Ejemplo n.º 3
0
def rename_screenplay():
    resource_id = get_resource_id_from_request()
    rename = request.form.get('rename', None)
    if rename is None:
        rename = request.json.get('rename', None)
    Screenplay.rename(resource_id, rename)
    return Response('done', mimetype='text/plain')
Ejemplo n.º 4
0
def email_screenplay():
    resource_id = get_resource_id_from_request()
    title_page = request.form.get('title_page', None)
    if title_page is None:
        title_page = request.json.get('title_page', None)
    subject = "Screenplay"
    body_message = ""
    raw_recipients = request.form.get('recipients', None)
    if raw_recipients is None:
        raw_recipients = request.json.get('recipients', None)
    print request.json
    recipients = raw_recipients.split(',')

    # Build email body and html
    body = body_message + "\n\n\n    	"
    body += "--- This screenplay written and sent from RawScripts.com."
    body += " Check it out---"
    with app.open_resource('static/text/email.txt') as f:
        html_template = f.read()
    html = html_template.replace("FILLERTEXT", body_message)

    # get pdf file to attach
    include_title_page = title_page == '1'
    export_file = Screenplay.export_to_file(resource_id, 'pdf', include_title_page)
    _file, title, content_type = export_file
    filename = title + '.pdf'

    msg = Message(subject, recipients=recipients, body=body, html=html)
    msg.attach(filename, content_type, _file.getvalue())
    try:
        mail.send(msg)
    except:
        return Response('failed', mimetype='text/plain')
    return Response('sent', mimetype='text/plain')
Ejemplo n.º 5
0
def share_screenplay():
    resource_id = get_resource_id_from_request()
    collaborators_raw = request.form.get('collaborators', None)
    if collaborators_raw is None:
        collaborators_raw = request.json.get('collaborators', None)
    collaborators = collaborators_raw.split(',')
    new_collaborators = Screenplay.add_access(resource_id, collaborators)

    if new_collaborators and request.json.get('sendEmail', '') == 'y':
        user = current_user.email
        subject = 'Rawscripts.com: ' + user + " has shared a screenplay with you."
        title = Screenplay.get_title(resource_id)

        # build email body and html
        script_url = url_for('editor', _external=True, resource_id=resource_id)
        body = script_url + "\n\n\n    	"
        body += "--- This screenplay written and sent from RawScripts.com."
        divArea = ''

        replacements = {
            'SCRIPTTITLE': title, 'USER': user,
            'SCRIPTURL': script_url, 'TEXTAREA': divArea}
        with app.open_resource('static/text/notify.txt') as f:
            html = f.read()
        for key, val in replacements.items():
            html = html.replace(key, val)

        msg = Message(subject, recipients=new_collaborators, body=body, html=html)
        mail.send(msg)

        # TODO: send the danged email
    output = ",".join(new_collaborators)
    return Response(output, mimetype='text/plain')
Ejemplo n.º 6
0
def remove_access_to_screenplay():
    resource_id = get_resource_id_from_request()
    collaborator = request.form.get('removePerson', None)
    if not collaborator:
        collaborator = request.json.get('removePerson', None)
    collaborator = collaborator.lower()
    screenplay = Screenplay.get_by_resource_id(resource_id)
    if not current_user.owns_screenplay(screenplay):
        if not current_user.is_collaborator_on_screenplay(screenplay):
            return Response(collaborator, mimetype='text/plain')
        collaborator = current_user.email.lower()
    Screenplay.remove_access(resource_id, collaborator)
    return jsonify(collaborator=collaborator, resource_id=resource_id)
Ejemplo n.º 7
0
def remove_access_to_screenplay():
    resource_id = get_resource_id_from_request()
    collaborator = request.form.get('removePerson', None)
    if not collaborator:
        collaborator = request.json.get('removePerson', None)
    collaborator = collaborator.lower()
    screenplay = Screenplay.get_by_resource_id(resource_id)
    if not current_user.owns_screenplay(screenplay):
        if not current_user.is_collaborator_on_screenplay(screenplay):
            return Response(collaborator, mimetype='text/plain')
        collaborator = current_user.email.lower()
    Screenplay.remove_access(resource_id, collaborator)
    return jsonify(collaborator=collaborator, resource_id=resource_id)
Ejemplo n.º 8
0
def share_screenplay():
    resource_id = get_resource_id_from_request()
    collaborators_raw = request.form.get('collaborators', None)
    if collaborators_raw is None:
        collaborators_raw = request.json.get('collaborators', None)
    collaborators = collaborators_raw.split(',')
    new_collaborators = Screenplay.add_access(resource_id, collaborators)

    send_email = request.form.get('sendEmail', None)
    if not send_email:
        send_email = request.json.get('sendEmail', None)

    if new_collaborators and send_email == 'y':
        user = current_user.email
        subject = 'Rawscripts.com: ' + user + " has shared a screenplay with you."
        title = Screenplay.get_title(resource_id)

        # build email body and html
        script_url = url_for('editor', _external=True, resource_id=resource_id)
        body = script_url + "\n\n\n    	"
        body += "--- This screenplay written and sent from RawScripts.com."
        divArea = ''

        replacements = {
            'SCRIPTTITLE': title,
            'USER': user,
            'SCRIPTURL': script_url,
            'TEXTAREA': divArea
        }
        with app.open_resource('static/text/notify.txt') as f:
            html = f.read()
        for key, val in replacements.items():
            html = html.replace(key, val)

        msg = Message(subject,
                      recipients=new_collaborators,
                      body=body,
                      html=html)
        mail.send(msg)

        # TODO: send the danged email
    output = ",".join(new_collaborators)
    return Response(output, mimetype='text/plain')
Ejemplo n.º 9
0
def undelete_screenplay():
    resource_id = get_resource_id_from_request()
    Screenplay.remove_from_trash(resource_id)
    return Response(resource_id, mimetype='text/plain')
Ejemplo n.º 10
0
def duplicate_screenplay():
    resource_id = get_resource_id_from_request()
    version = Screenplay.get_latest_version_number(resource_id)
    screenplay = Screenplay.duplicate(resource_id, version, current_user.name)
    url = '/editor?resource_id=' + screenplay.resource_id
    return Response(url, mimetype='text/plain')
Ejemplo n.º 11
0
def hard_delete_screenplay():
    resource_id = get_resource_id_from_request()
    Screenplay.hard_delete(resource_id)
    return Response(resource_id, mimetype='text/plain')
Ejemplo n.º 12
0
def undelete_screenplay():
    resource_id = get_resource_id_from_request()
    Screenplay.remove_from_trash(resource_id)
    return Response(resource_id, mimetype='text/plain')
Ejemplo n.º 13
0
def duplicate_screenplay():
    resource_id = get_resource_id_from_request()
    version = Screenplay.get_latest_version_number(resource_id)
    screenplay = Screenplay.duplicate(resource_id, version, current_user.name)
    url = '/editor?resource_id=' + screenplay.resource_id
    return Response(url, mimetype='text/plain')
Ejemplo n.º 14
0
def hard_delete_screenplay():
    resource_id = get_resource_id_from_request()
    Screenplay.hard_delete(resource_id)
    return Response(resource_id, mimetype='text/plain')