var submit_abstract = function() {
    return {
        init : function() {
            //File Upload Trigger
            $("#file_upload_link").upload({
                name: 'filename',
                enctype: 'multipart/form-data',
                action: '/abstract/file_upload/',
                onSelect: function() {
                    if(this.filename().search(/\.pdf|\.doc|\.docx/) < 0){
                        this.autoSubmit = false;
                        alert("Error: The selected file, "+this.filename()+", is not an accecpted file type.");
                    }else{this.submit();}
                    },
                onSubmit: function(){
                    $("#upload_progress").text("Uploding File...");
                    },
                onComplete: function(){
                    if(this.filename().indexOf('C:\\fakepath') >= 0){filename = this.filename().substring(12);}
                    else{filename = this.filename();}
                    $("#abstract_filename").html("<label>Filename:</label>&nbsp;"+filename);
                    $("#abstract_filename_hidden").html("<input id=\"filename\" name=\"filename\" type=\"hidden\" value=\""+filename+"\">");
                    }
                });

            $("[name=submit_abstract_form]").validate({
                rules: {
                    title: {required: true},
                    abstract_text: {required: true}
                    //pub_date: {required: true, minlength: 10}
                    },
                messages: {
                    title: {required: "Please provide a title."},
                    abstract_text: {required: "Please provide the abstract text."}
                    //pub_date: {required: "Please provide a publication date.", minlength: "Invalid Date"}
                    }
                });

            //Add Abstract Trigger
            $("[name=submit_abstract_form]").submit(function(){return false;});
            $("#submit_abstract_button").click(function(){
                    $("[name=submit_abstract_form]").valid();
                if($("#filename").val() === undefined){alert("Please Upload an Abstract File!");}
                else{
                    form_data = $("[name=submit_abstract_form]").serialize()+"&filename="+$("#filename").val();
                    $.getJSON("/abstract/add_abstract/", form_data, function(data){
                        if(data.success == true){document.location.href="/abstract/";}
                        if(data.success == false){alert("You have submitted 5 abstracts. Please delete one.");}
                        //if(data.success == 'error'){alert("An abstract with this title already exists.");}
                        });
                    }
                });

            //Remove Abstract Redirects
            if($.uri.segment(1) == 'rm_abstract'){document.location.href="/abstract/";}
            if($.uri.segment(1) == 'admin'){
                if($.uri.segment(2) == 'rm_abstract'){document.location.href="/abstract/admin/";}
                else if($.uri.segment(2) == 'approved_abstracts'){
                    if($.uri.segment(3) == 'rm_abstract'){document.location.href="/abstract/admin/approved_abstracts/";}
                    }
                }

            if($.uri.segment(2) == 'approved_abstracts'){if($.uri.segment(3) == 'approve'){document.location.href="/abstract/admin/approved_abstracts/";}}
            if($.uri.segment(2) == 'approve'){document.location.href="/abstract/admin/";}
            }
        }
    }();
$(submit_abstract.init);
 

