package SGN::View::Mason::Commands;
use strict;
use vars qw($m $c);
HTML::Mason::Component::FileBased->new(
'code' => sub {
use utf8; local $SGN::View::Mason::Commands::m = $HTML::Mason::Commands::m;
HTML::Mason::Exception::Params->throw
    ( error =>
      "Odd number of parameters passed to component expecting name/value pairs"
    ) if @_ % 2;
my ( $trial_id );
{
    my %pos;
    for ( my $x = 0; $x < @_; $x += 2 )
    {
        $pos{ $_[$x] } = $x + 1;
    }
#line 2 "/home/production/cxgn/sgn/mason/breeders_toolbox/trial/upload_additional_file.mas"
     $trial_id = exists $pos{'trial_id'} ? $_[ $pos{'trial_id'} ] :  undef;
}
$m->debug_hook( $m->current_comp->path ) if ( HTML::Mason::Compiler::IN_PERL_DB() );

#line 4 "/home/production/cxgn/sgn/mason/breeders_toolbox/trial/upload_additional_file.mas"
$m->print( '
' );
#line 5 "/home/production/cxgn/sgn/mason/breeders_toolbox/trial/upload_additional_file.mas"
$m->comp(   '/util/import_javascript.mas', classes => [ ]   
); #line 5 "/home/production/cxgn/sgn/mason/breeders_toolbox/trial/upload_additional_file.mas"
$m->print( '

<div id="trial_additional_uploaded_files_div">
[LOADING...]
</div>

<div class="modal fade" id="trial_upload_additional_file_dialog" name="trial_upload_additional_file_dialog" tabindex="-1" role="dialog" aria-labelledby="trialUploadAdditionalFileDialog">
    <div class="modal-dialog" role="document">
        <div class="modal-content">
            <div class="modal-header">
                <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
                <h4 class="modal-title" id="trialUploadAdditionalFileDialog">Upload Additional File to Trial</h4>
            </div>
            <div class="modal-body">
                <div class="container-fluid">
                    ' );
#line 20 "/home/production/cxgn/sgn/mason/breeders_toolbox/trial/upload_additional_file.mas"
$m->comp( { content => sub {
#line 20 "/home/production/cxgn/sgn/mason/breeders_toolbox/trial/upload_additional_file.mas"
$m->print( '
                        <p>
                            <b>File upload information</b>
                            <br>
                            <a id="trial_upload_additional_file_format">Upload Information</a>
                        </p>
                    ' );
#line 26 "/home/production/cxgn/sgn/mason/breeders_toolbox/trial/upload_additional_file.mas"
} }, '/page/explanation.mas', title=>'Template information'
 );
#line 26 "/home/production/cxgn/sgn/mason/breeders_toolbox/trial/upload_additional_file.mas"
$m->print( '

                    <form class="form-horizontal" role="form" method="post" enctype="multipart/form-data" encoding="multipart/form-data" id="trial_upload_additional_file_form" name="trial_upload_additional_file_form">

                        <div class="form-group">
                            <label class="col-sm-4 control-label">Upload File: </label>
                            <div class="col-sm-8" >
                                <input type="file" name="trial_upload_additional_file" id="trial_upload_additional_file" encoding="multipart/form-data" />
                            </div>
                        </div>

                    </form>
                </div>
            </div>
            <div class="modal-footer">
                <button type="button" class="btn btn-default" name="trial_upload_additional_file_cancel_button" id="trial_upload_additional_file_cancel_button"     data-dismiss="modal">Close</button>
                <button type="button" class="btn btn-primary" name="trial_upload_additional_file_submit_button" id="trial_upload_additional_file_submit_button" title="Submit">Submit</button>
            </div>
        </div>
    </div>
</div>

<div class="modal fade" id="trial_upload_additional_file_info_dialog" name="trial_upload_additional_file_info_dialog" tabindex="-1" role="dialog" aria-labelledby="trialUploadAdditionalFileInfoDialog">
    <div class="modal-dialog modal-lg" role="document">
        <div class="modal-content">
            <div class="modal-header" style="text-align: center">
                <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
                <h4 class="modal-title" id="trialUploadAdditionalFileInfoDialog">Upload Information</h4>
            </div>
            <div class="modal-body">
                <div class="container-fluid">
                    <b>This is for uploading any additional files you may have for a trial.</b>
                    <br/><br/>
                    <p>Possible additional files inlude, but are not limited to:</p>
                    <ul>
                        <li>Trial Related Images, such as a physical field image or an aerial picture of the field.</li>
                        <li>Trial Related Documentation, such as protocols or permits for the trial.</li>
                        <li>Trial Related Reports, such as supplementary information or publications.</li>
                        <li>Trial Related Recordings, whether audio or video.</li>
                    </ul>
                </div>
            </div>
            <div class="modal-footer">
                <button id="close_trial_upload_additional_file_info_dialog" type="button" class="btn btn-default" data-dismiss="modal">Close</button>
            </div>
        </div>
    </div>
</div>

<script>

jQuery(document).ready(function(){

    display_trial_additional_upload_files();

    jQuery(\'#trial_upload_additional_files_link\').click( function(){
        jQuery(\'#trial_upload_additional_file_dialog\').modal(\'show\');
    });

    jQuery(\'#trial_upload_additional_file_format\').click( function(){
        jQuery(\'#trial_upload_additional_file_info_dialog\').modal(\'show\');
    });

    jQuery(\'#trial_upload_additional_file_submit_button\').click(function () {
        trial_upload_additional_file_submit();
    });
    function trial_upload_additional_file_submit() {
        var uploadFile = jQuery("#trial_upload_additional_file").val();
        jQuery(\'#trial_upload_additional_file_form\').attr("action", "/ajax/breeders/trial/' );
#line 94 "/home/production/cxgn/sgn/mason/breeders_toolbox/trial/upload_additional_file.mas"
$m->print(  $trial_id  );
#line 94 "/home/production/cxgn/sgn/mason/breeders_toolbox/trial/upload_additional_file.mas"
$m->print( '/upload_additional_file");
        if (uploadFile === \'\') {
            alert("Please select a file");
            return;
        }
        jQuery("#trial_upload_additional_file_form").submit();
    }

    jQuery(\'#trial_upload_additional_file_form\').iframePostForm({
        json: true,
        post: function () {
            var uploadedAdditionalFile = jQuery("#trial_upload_additional_file").val();
            jQuery(\'#working_modal\').modal("show");
            if (uploadedAdditionalFile === \'\') {
                jQuery(\'#working_modal\').modal("hide");
                alert("No file selected");
            }
        },
        complete: function (response) {
            console.log(response);
            jQuery(\'#working_modal\').modal("hide");

            if (response.error) {
                alert(response.error);
                return;
            }
            if (response.error_string) {
                alert(response.error_string);
                return;
            }
            if (response.success) {
                alert("File uploaded successfully");
                display_trial_additional_upload_files();
            }
        }
    });


 



    function display_trial_additional_upload_files (){
        jQuery.ajax ({
            url : \'/ajax/breeders/trial/\'+' );
#line 138 "/home/production/cxgn/sgn/mason/breeders_toolbox/trial/upload_additional_file.mas"
$m->print(  $trial_id  );
#line 138 "/home/production/cxgn/sgn/mason/breeders_toolbox/trial/upload_additional_file.mas"
$m->print( '+\'/get_uploaded_additional_file\',
            beforeSend : function(){
                jQuery(\'#trial_additional_uploaded_files_div\').html("[LOADING...]");
            },
            success: function(response){
                //console.log(response);
                var html = "<table class=\'table table-hover table-condensed table-bordered\' id=\'trial_additional_uploaded_files_table\'><thead><tr><th>Filename</th><th>Date Uploaded</th><th>Uploaded By</th><th>Options</th></tr></thead><tbody>";
                for (i=0; i<response.files.length; i++) {
                    html = html + \'<tr><td>\'+response.files[i][4]+\'</td><td>\'+response.files[i][1]+\'</td><td><a href="/solpeople/profile/\'+response.files[i][2]+\'">\'+response.files[i][3]+\'</a></td><td><a href="/breeders/phenotyping/download/\'+response.files[i][0]+\'">Download</a> | <a href="javascript:obsolete_additional_file(\'+' );
#line 146 "/home/production/cxgn/sgn/mason/breeders_toolbox/trial/upload_additional_file.mas"
$m->print(  $trial_id  );
#line 146 "/home/production/cxgn/sgn/mason/breeders_toolbox/trial/upload_additional_file.mas"
$m->print( '+\', \'+response.files[i][0]+\')">Remove</a></td></tr>\';
                }
                html = html + "</tbody></table>";
                jQuery(\'#trial_additional_uploaded_files_div\').html(html);
                jQuery(\'#trial_additional_uploaded_files_table\').DataTable();
            },
            error: function(response){
                alert("Error retrieving additional uploaded files.");
            }
       });
   
    }						   
   

 

});						 

						   
 function obsolete_additional_file(trial_id, file_id) {
       var yes = confirm(\'Are you sure you want to obsolete this file? This operation cannot be undone.\');
       if (yes) {
          jQuery.ajax({
              url: \'/ajax/breeders/trial/\'+trial_id+\'/obsolete_uploaded_additional_file/\'+file_id,
	      success: function(r) {
	          if (r.error) { alert(r.error); }
						   else {
						    jQuery(\'#trial_additional_uploaded_files_table\').DataTable().clear().draw();
	              alert("The file has been obsoleted.");
		  }
	       },
	       error: function(r) {  alert("An error occurred!") }
	  });
	}
   }


</script>
' );
;return;
},
'declared_args' => {
  '$trial_id' => { default => ' undef' }
},
'load_time' => 1763102299,

)
;