HEX
Server: Apache
System: Linux clpupre 5.4.0-90-generic #101-Ubuntu SMP Fri Oct 15 20:00:55 UTC 2021 x86_64
User: undanet (1000)
PHP: 7.4.3
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /home/undanet/www/PortalEmpleo/src/Views/ConvocatoriaListadoValoracionesView.php
<div class="lan-exp-popup" id="lan-exp-popup">
	<div class="content-lan-exp-popup">
		<svg xmlns="http://www.w3.org/2000/svg" width="9" height="24" viewBox="0 0 9 24">
		  <text id="x" transform="translate(0 19)" font-size="18" font-family="SegoeUI, Segoe UI"><tspan x="0" y="0">x</tspan></text>
		</svg>
		<h3><?php echo  __('The act have been generated, all the evaluators have been notified by email that they can now start signing it.', 'panoramic_child') ?></h3>
		<button type="button" id="close-popup" onClick="window.location.reload()"><?php echo __('Accept', 'panoramic_child'); ?></button>
	</div>
</div>

<?php

if(isset($data)) {        
	$load = new PortalEmpleo\Utils\Load();
	$root = get_site_url() . '/';
	$lang = pll_current_language();        
	$notdisplayed = (tieneDosVocales( $data )) ? '' : 'style="display: none;"';

	echo '<label id="lblfiltrar" class="link" onclick ="toggle();">+ ' . __('Filter', 'panoramic_child') . '</label>';
	echo '<section id="no-more-tables"><div id="divFiltar" hidden="true">';        
	echo '<input id="txtBuscar" type="text" placeholder="' . __('Type something to filter', 'panoramic_child') . '" />';
	echo '</div></section>';
	echo '<table border="0" class="azul" id="tbResultados"><thead>';
	
	if ( isset($nombreCombo) ){
		unset ($nombreCombo);
	}
	echo '<tr><th>' . __('Job', 'panoramic_child') . '</th><th>' . __('Last Name', 'panoramic_child') . '</th><th>' . __('Last Name 2', 'panoramic_child') . '</th><th>' . __('First Name', 'panoramic_child') . '</th><th>' . __('Email', 'panoramic_child') . '</th><th>' . __('Inscription Date', 'panoramic_child') . '</th><th></th></tr>';
	echo '</thead><tbody>';
		$candidatosr = array();
		$candidatosm = array();
		$candidatose = array();
		
		if( ($data['convocatoria']->getCodigoestadoconvocatoria())->getIdestadoconvocatoria() == 2 || ($data['convocatoria']->getCodigoestadoconvocatoria())->getIdestadoconvocatoria() == 3 || ($data['convocatoria']->getCodigoestadoconvocatoria())->getIdestadoconvocatoria() == 10 ){ 
			$candidatosr = $data['lcandidato'];
		}
		
		if( ($data['convocatoria']->getCodigoestadoconvocatoria())->getIdestadoconvocatoria() == 4 || ($data['convocatoria']->getCodigoestadoconvocatoria())->getIdestadoconvocatoria() == 11 || ($data['convocatoria']->getCodigoestadoconvocatoria())->getIdestadoconvocatoria() == 12 ){
			$candidatosm = $data['lcandidato'];
		}

		if( ($data['convocatoria']->getCodigoestadoconvocatoria())->getIdestadoconvocatoria() == 13 || ($data['convocatoria']->getCodigoestadoconvocatoria())->getIdestadoconvocatoria() == 14 || ($data['convocatoria']->getCodigoestadoconvocatoria())->getIdestadoconvocatoria() == 15 ){
			$candidatose = $data['lcandidato'];
		} 
		
		foreach ($candidatosr as $candidatoconvocatoria) {
			$pathurl =   __('en/candidate-tab/?id=', 'panoramic_child');
			echo '<tr class="cebra link" onClick="mostrarComentarios(' . ($candidatoconvocatoria->getCodigocandidato())->getIdcandidato() . ');"><td>';
			echo $candidatoconvocatoria->getPuestotrabajo() . '</td>';
			echo '<td>' . ($candidatoconvocatoria->getCodigocandidato())->getApellido1() . '</td>';
			echo '<td>' . ($candidatoconvocatoria->getCodigocandidato())->getApellido2() . '</td>';
			echo '<td>' . ($candidatoconvocatoria->getCodigocandidato())->getNombre() . '</td>';
			echo '<td>' . (($candidatoconvocatoria->getCodigocandidato())->getCodigousuariowp())->getUserEmail() . '</td>';
			echo '<td>' . $candidatoconvocatoria->getFechainscripcion()->format('d/m/Y') . '</td>';
			echo '<td class="centrado"><a href="' . $root . $pathurl . ($candidatoconvocatoria->getCodigocandidato())->getIdcandidato() . '&cvt=' . ($candidatoconvocatoria->getCodigoconvocatoria())->getIdconvocatoria() . '&ref=' . ($candidatoconvocatoria->getCodigoconvocatoria())->getReferencia() . '\';" target="_blank" class="small">' . __('Candidate Tab', 'panoramic_child') . '</td>';
			echo '</tr>';
			echo '<tr><td colspan="7"><div name="dvcomentarios" id="dvcomentarios' . ($candidatoconvocatoria->getCodigocandidato())->getIdcandidato() . '" hidden>';
			echo '<div class="comment comments-table">
				<table>
					<thead>
						<td></td><td>' . __('President', 'panoramic_child') . '</td><td>' . __('Secretary', 'panoramic_child') . '</td><td>' . __('Officer', 'panoramic_child') . '</td><td ' . $notdisplayed . '>' . __('Officer 2', 'panoramic_child') . '</td><td>' . __('Manager', 'panoramic_child') . '</td>
					</thead>
					<tbody class="requisitos-candidato-' . ($candidatoconvocatoria->getCodigocandidato())->getIdcandidato() . '">';
						
						if( ($data['convocatoria']->getCodigoestadoconvocatoria())->getIdestadoconvocatoria() == 2 || ($data['convocatoria']->getCodigoestadoconvocatoria())->getIdestadoconvocatoria() == 3 || ($data['convocatoria']->getCodigoestadoconvocatoria())->getIdestadoconvocatoria() == 10 ){
							include __DIR__ . '/ConvocatoriaListadorequisitos.php';
						}
						
					echo '</tbody>
					<div class="spinner-container"><div class="spinner"></div></div>
				</table>
			</div></td></tr>';
		}

		foreach ($candidatosm as $candidatoconvocatoria) {
			
			if(candidatoTieneReqSuperados($candidatoconvocatoria) && candidatoTieneExaSuperados($candidatoconvocatoria)) {
				$pathurl =   __('en/candidate-tab/?id=', 'panoramic_child');
				echo '<tr class="cebra link" onClick="mostrarComentarios(' . ($candidatoconvocatoria->getCodigocandidato())->getIdcandidato() . ');"><td>';
				echo $candidatoconvocatoria->getPuestotrabajo() . '</td>';
				echo '<td>' . ($candidatoconvocatoria->getCodigocandidato())->getApellido1() . '</td>';
				echo '<td>' . ($candidatoconvocatoria->getCodigocandidato())->getApellido2() . '</td>';
				echo '<td>' . ($candidatoconvocatoria->getCodigocandidato())->getNombre() . '</td>';
				echo '<td>' . (($candidatoconvocatoria->getCodigocandidato())->getCodigousuariowp())->getUserEmail() . '</td>';
				echo '<td>' . $candidatoconvocatoria->getFechainscripcion()->format('d/m/Y') . '</td>';
				echo '<td class="centrado"><a href="' . $root . $pathurl . ($candidatoconvocatoria->getCodigocandidato())->getIdcandidato() . '&cvt=' . ($candidatoconvocatoria->getCodigoconvocatoria())->getIdconvocatoria() . '&ref=' . ($candidatoconvocatoria->getCodigoconvocatoria())->getReferencia() . '\';" target="_blank" class="small">' . __('Candidate Tab', 'panoramic_child') . '</td>';
				echo '</tr>';
				echo '<tr><td colspan="7"><div name="dvcomentarios" id="dvcomentarios' . ($candidatoconvocatoria->getCodigocandidato())->getIdcandidato() . '" hidden>';
				echo '<div class="comment comments-table">
					<table>
						<thead>
							<td></td><td>' . __('President', 'panoramic_child') . '</td><td>' . __('Secretary', 'panoramic_child') . '</td><td>' . __('Officer', 'panoramic_child') . '</td><td ' . $notdisplayed . '>' . __('Officer 2', 'panoramic_child') . '</td><td>' . __('Manager', 'panoramic_child') . '</td>
						</thead>
						<tbody class="requisitos-candidato-' . ($candidatoconvocatoria->getCodigocandidato())->getIdcandidato() . '">';
													
							if( ($data['convocatoria']->getCodigoestadoconvocatoria())->getIdestadoconvocatoria() == 4 || ($data['convocatoria']->getCodigoestadoconvocatoria())->getIdestadoconvocatoria() == 11 || ($data['convocatoria']->getCodigoestadoconvocatoria())->getIdestadoconvocatoria() == 12 ){
								include __DIR__ . '/ConvocatoriaListadomeritos.php';
							}                        
						echo '</tbody>
						<div class="spinner-container"><div class="spinner"></div></div>
					</table>
				</div></td></tr>';
			}
		}
		
		foreach ($candidatose as $candidatoconvocatoria) {
		
			if(candidatoTieneReqSuperados($candidatoconvocatoria)) {
				$pathurl =   __('en/candidate-tab/?id=', 'panoramic_child');
				echo '<tr class="cebra link" onClick="mostrarComentarios(' . ($candidatoconvocatoria->getCodigocandidato())->getIdcandidato() . ');"><td>';
				echo $candidatoconvocatoria->getPuestotrabajo() . '</td>';
				echo '<td>' . ($candidatoconvocatoria->getCodigocandidato())->getApellido1() . '</td>';
				echo '<td>' . ($candidatoconvocatoria->getCodigocandidato())->getApellido2() . '</td>';
				echo '<td>' . ($candidatoconvocatoria->getCodigocandidato())->getNombre() . '</td>';
				echo '<td>' . (($candidatoconvocatoria->getCodigocandidato())->getCodigousuariowp())->getUserEmail() . '</td>';
				echo '<td>' . $candidatoconvocatoria->getFechainscripcion()->format('d/m/Y') . '</td>';
				echo '<td class="centrado"><a href="' . $root . $pathurl . ($candidatoconvocatoria->getCodigocandidato())->getIdcandidato() . '&cvt=' . ($candidatoconvocatoria->getCodigoconvocatoria())->getIdconvocatoria() . '&ref=' . ($candidatoconvocatoria->getCodigoconvocatoria())->getReferencia() . '\';" target="_blank" class="small">' . __('Candidate Tab', 'panoramic_child') . '</td>';
				echo '</tr>';
				echo '<tr><td colspan="7"><div name="dvcomentarios" id="dvcomentarios' . ($candidatoconvocatoria->getCodigocandidato())->getIdcandidato() . '" hidden>';
				echo '<div class="comment comments-table">
					<table>
						<thead>
							<tr><th>' . __('Qualification', 'panoramic_child') . '</th></tr>
						</thead>
						<tbody class="requisitos-candidato-' . ($candidatoconvocatoria->getCodigocandidato())->getIdcandidato() . '">';
						
							if( ($data['convocatoria']->getCodigoestadoconvocatoria())->getIdestadoconvocatoria() == 13 || ($data['convocatoria']->getCodigoestadoconvocatoria())->getIdestadoconvocatoria() == 14 || ($data['convocatoria']->getCodigoestadoconvocatoria())->getIdestadoconvocatoria() == 15 ){
								include __DIR__ . '/ConvocatoriaListadoexamen.php';
							}                        
						echo '</tbody>
						<div class="spinner-container"><div class="spinner"></div></div>
					</table>
				</div></td></tr>';
			}
		}			
	echo '</tbody></table>';        
	
	if( current_user_can('administrator') ) {		
		if ( ($data['convocatoria']->getCodigoestadoconvocatoria())->getIdestadoconvocatoria() == 3 ) {
			$subject = sprintf( __('Requirements phase information for call %s', 'panoramic_child'), $data['convocatoria']->getReferencia() );
			$message = '<p>' . sprintf( __('The record of requirements for the call %s has been generated', 'panoramic_child'), $data['convocatoria']->getReferencia() ) . '</p><p>' . __('As an evaluator assigned to this call you must access the Employment Portal and verify the Act', 'panoramic_child') . '</p><p>' . __('Access url: ', 'panoramic_child') . home_url() . '</p>'; 
			echo '<button type="submit" class="to-next-fase send_email" mailto="' . getEmailTodosTribunal( $data ) . '" subject="' . $subject . '" message="' . $message . '" fase="10">' . __('Generate Act', 'panoramic_child') . '</button>';
		}
		
		if ( ($data['convocatoria']->getCodigoestadoconvocatoria())->getIdestadoconvocatoria() == 11 ) {
			$subject = sprintf( __('Merits phase information for call %s', 'panoramic_child'), $data['convocatoria']->getReferencia() );
			$message = '<p>' . sprintf( __('The record of merits for the call %s has been generated', 'panoramic_child'), $data['convocatoria']->getReferencia() ) . '</p><p>' . __('As an evaluator assigned to this call you must access the Employment Portal and verify the Act', 'panoramic_child') . '</p><p>' . __('Access url: ', 'panoramic_child') . home_url() . '</p>'; 
			echo '<button type="submit" class="to-next-fase send_email" mailto="' . getEmailTodosTribunal( $data ) . '" subject="' . $subject . '" message="' . $message . '" fase="12">' . __('Generate Act', 'panoramic_child') . '</button>';
		}            

		if ( ($data['convocatoria']->getCodigoestadoconvocatoria())->getIdestadoconvocatoria() == 14 ) { 
			$subject = sprintf( __('Opposition phase information for call %s', 'panoramic_child'), $data['convocatoria']->getReferencia() );
			$message = '<p>' . sprintf( __('The record of opposition for the call %s has been generated', 'panoramic_child'), $data['convocatoria']->getReferencia() ) . '</p><p>' . __('As an evaluator assigned to this call you must access the Employment Portal and verify the Act', 'panoramic_child') . '</p><p>' . __('Access url: ', 'panoramic_child') . home_url() . '</p>'; 
			echo '<input type="date" name="examDate" id="examDate" value="' . date('Y-m-d') . '" /><br>';			
			echo '<button type="submit" class="to-next-fase send_email examination_date" mailto="' . getEmailTodosTribunal( $data ) . '" subject="' . $subject . '" message="' . $message . '" fase="15">' . __('Generate Act', 'panoramic_child') . '</button>';
		}
		
		// para resolucion fase de requisitos. 
		if ( ($data['convocatoria']->getCodigoestadoconvocatoria())->getIdestadoconvocatoria() == 10 && todosAprobaronReq( $data ) ) { ?>  
			<script>
				var sendmessageerrors = [ 
					"<?php echo __( 'check empty fields', 'panoramic_child' ) ?>", 
					"<?php echo __( 'check email address', 'panoramic_child' ) ?>"
					];
			</script>
			<div class="send-message">                    
				<span class="message"><span>
				<input type="email" class="email-send-message" placeholder="<?php echo __('Destination Email', 'panoramic_child') ?>:"><br/>
				<input type="text" class="subjet-send-message" placeholder="<?php echo __('Message Subject', 'panoramic_child') ?>:"><br/>
				<textarea class="message-send-message" rows="3" placeholder="<?php echo __('Message Body', 'panoramic_child') ?>:"></textarea><br/>
				<textarea class="escribir-texto-libre1" rows="3" placeholder="<?php echo __('Paragraph', 'panoramic_child') ?> 1:"></textarea><br/>
				<textarea class="escribir-texto-libre2" rows="3" placeholder="<?php echo __('Paragraph', 'panoramic_child') ?> 2:"></textarea><br/>
				<textarea class="escribir-texto-libre3" rows="3" placeholder="<?php echo __('Paragraph', 'panoramic_child') ?> 3:"></textarea>
				<span class="error-notice"></span>                   
			</div>
			<p class="form-field form-field-wide wc-customer-invoiceurl">
				<a class="button download-pdf-save-resol" href="#" pdftype="resreq" callid="<?php echo $data['convocatoria']->getIdConvocatoria()?>" ><?php echo __('Download resolution and send email', 'panoramic_child'); ?></a>
			</p>
		<?php
		}

		// para resolucion fase de meritos. 
		if ( ($data['convocatoria']->getCodigoestadoconvocatoria())->getIdestadoconvocatoria() == 12 && todosAprobaronMer( $data ) ) { ?> 
			<script>
				var sendmessageerrors = [ 
					"<?php echo __( 'check empty fields', 'panoramic_child' ) ?>", 
					"<?php echo __( 'check email address', 'panoramic_child' ) ?>"
					];
			</script>
			<div class="send-message">                    
				<span class="message"><span>
				<input type="email" class="email-send-message" placeholder="<?php echo __('Destination Email', 'panoramic_child') ?>:"><br/>
				<input type="text" class="subjet-send-message" placeholder="<?php echo __('Message Subject', 'panoramic_child') ?>:"><br/>
				<textarea class="message-send-message" rows="3" placeholder="<?php echo __('Message Body', 'panoramic_child') ?>:"></textarea><br/>
				<textarea class="escribir-texto-libre1" rows="3" placeholder="<?php echo __('Paragraph', 'panoramic_child') ?> 1:"></textarea><br/>
				<textarea class="escribir-texto-libre2" rows="3" placeholder="<?php echo __('Paragraph', 'panoramic_child') ?> 2:"></textarea><br/>
				<textarea class="escribir-texto-libre3" rows="3" placeholder="<?php echo __('Paragraph', 'panoramic_child') ?> 3:"></textarea><br/>
				<textarea class="escribir-texto-libre4" rows="3" placeholder="<?php echo __('Paragraph', 'panoramic_child') ?> 4:"></textarea>
				<span class="error-notice"></span>
			</div>
			<p class="form-field form-field-wide wc-customer-invoiceurl">
				<a class="button download-pdf-save-resol" href="#" pdftype="resmer" callid="<?php echo $data['convocatoria']->getIdConvocatoria()?>" ><?php echo __('Download resolution and send email', 'panoramic_child'); ?></a>
			</p>
		<?php
		}

		// para resolucion fase de examen. 
		if ( ($data['convocatoria']->getCodigoestadoconvocatoria())->getIdestadoconvocatoria() == 15 && todosAprobaronExa( $data ) ) { ?>  
			<script>
				var sendmessageerrors = [ 
					"<?php echo __( 'check empty fields', 'panoramic_child' ) ?>", 
					"<?php echo __( 'check email address', 'panoramic_child' ) ?>"
					];
			</script>
			<div class="send-message">                    
				<span class="message"><span>
				<input type="email" class="email-send-message" placeholder="<?php echo __('Type a email...', 'panoramic_child') ?>"><br/>
				<input type="text" class="subjet-send-message" placeholder="<?php echo __('Type a subject...', 'panoramic_child') ?>"><br/>
				<textarea class="message-send-message" rows="3" placeholder="<?php echo __('Type a message...', 'panoramic_child') ?>"></textarea><br/>
				<textarea class="escribir-texto-libre1" rows="3" placeholder="<?php echo __('Free Text 1...', 'panoramic_child') ?>"></textarea><br/>
				<textarea class="escribir-texto-libre2" rows="3" placeholder="<?php echo __('Free Text 2...', 'panoramic_child') ?>"></textarea>
				<span class="error-notice"></span>
			</div>
			<p class="form-field form-field-wide wc-customer-invoiceurl">
				<a class="button download-pdf-save-resol" href="#" pdftype="resexa" callid="<?php echo $data['convocatoria']->getIdConvocatoria()?>" ><?php echo __('Download resolution and send email', 'panoramic_child'); ?></a>
			</p>
		<?php
		}            
	}
} ?>

<script>
jQuery(document).ready(function($) {
	$("textarea").keyup(function () {
	  var value = $(this).val();
	  $("#results").text(value);
	}).keyup();

    $('.to-next-fase').click( function(e){        
        e.preventDefault();
        var codigoconvocatoria = <?php echo $data['convocatoria']->getIdConvocatoria(); ?>;  
        var mailto = '';
        var subject = '';
        var message = '';
		var examinatiodate = '';
		var fase = '';

		if ($(this).hasClass('examination_date')) {
			examinatiodate = $('#examDate').val();
		}
		console.log(examinatiodate);
        mailto = $(this).attr("mailto");
        subject = $(this).attr("subject");
        message = $(this).attr("message");
		var fase = $( this ).attr('fase')
        
        $.ajax({
            type: "POST",
            url: "/wp-admin/admin-ajax.php",
            data: { action: 'gestionarconvocatorias', accionConvocatoria: 'to_next_fase', codigoconvocatoria: codigoconvocatoria, fase: fase, mailto: mailto, subject: subject, message: message, examinatiodate: examinatiodate },
            success: function(response) {
                console.log(response.content);
                $('#lan-exp-popup').css('display','flex');
            },
            fail: function(err) {
                console.log("There was an error: " + err);
            }
        });        
    });
    
    $('.send-email').click( function(e){        
        e.preventDefault();
              
        $.ajax({
            type: "POST",
            url: "/wp-admin/admin-ajax.php",
            data: { action: 'send_email' },
            success: function(response) {
                console.log(response.content);
            },
            fail: function(err) {
                console.log("There was an error: " + err);
            }
        });        
    });

	$('.ajax-save.requisitos-save').click( function(e) {       
		e.preventDefault();
		$('.spinner-container' ).css('display', 'flex');

       var form = $(this).closest( "form" ); 
       var user_id = form.find('#user-id').val();
		var count_requisitos = form.find('#count-requisitos').val();
		var codigoconvocatoria = <?php echo $data['convocatoria']->getIdConvocatoria(); ?>;
		var codigocandidato = form.find('#candidato-id').val();
		var codigotribunalconvocatoria = form.find('#tribunalconvocatoria-id').val();
       
		var div = $(this).closest( "div" );
		var isadmin = <?php echo (current_user_can('administrator')) ? 'true' : 'false' ?>;
		var allfilled = true;
       
		$('.current-user-can.user-id-' + user_id ).not('.disabled').each( function( index ) {         
			if (!$.trim( $( this ).find('textarea').val() )) {           
				allfilled = false;            
			}    
		});
       
		var islastcomment = ( $('.current-user-can.disabled[id-valoracion="0"]').size() == 0  && isadmin && allfilled ) ? 'true' : 'false'; 
       
		var requisitos = $('.requisitos-candidato-' + codigocandidato );
		var data = [];
       
		requisitos.find('.current-user-can.user-id-' + user_id ).not('.disabled').each( function( index ) {         
			data[index] = {
				'req': $( this ).attr('req-id'),
				'comment': $( this ).find('textarea').val(),
				'eval_pass': ( $( this ).find('input[type="radio"]:checked').val().includes('nosuperado') ) ? 'no' : 'si',
				'id_valoracion': $( this ).attr('id-valoracion')
			}    
       });
       
       if( requisitos.find('.current-user-can.disabled[id-valoracion="0"]').size() > 0 && isadmin ) {            
            div.find('.error-notice').removeClass('green').text( "<?php echo __('Error:  there\'e committee members that have not provide an evaluation yet', 'panoramic_child') ?>" ).fadeIn( 1500 ).delay( 5000 ).fadeOut( 1500 );
			$('.spinner-container' ).css('display', 'none');   
        } else {
			
            $.ajax({
                type: "POST",
                url: "/wp-admin/admin-ajax.php",
                data: { action: 'gestionarconvocatorias', count: count_requisitos, accionConvocatoria: 'insertvalidation', codigoconvocatoria: codigoconvocatoria, codigocandidato: codigocandidato, codigotribunalconvocatoria: codigotribunalconvocatoria, data: data, fase: 'requisitos', islastcomment: islastcomment },
                complete: function(response) {                    
                    $('.spinner-container' ).css('display', 'none');
                },            
                success: function(response) {                    
                    console.log( response.content );
                    
                    if( response.content != 'ok') {        
                        div.find('.error-notice').removeClass('green').text( response.content ).fadeIn( 1500 ).delay( 5000 ).fadeOut( 1500 );
					} else {                        
                        div.find('.error-notice').addClass('green').text( "<?php echo __('All data has been saved successfully','panoramic_child') ?>" ).fadeIn( 1500 ).delay( 5000 ).fadeOut( 1500 );
                        
                        if ( isadmin ) {
							location.reload();
						} 
                    }
                },
                fail: function(err) {
                    console.log("There was an error: " + err);
                }
            });        
        }
    });
   
   $('.ajax-save.meritos-save').click( function(e) {       
		e.preventDefault();
		$('.spinner-container' ).css('display', 'flex');

		var form = $(this).closest( "form" ); 
		var user_id = form.find('#user-id').val();
		var count_requisitos = form.find('#count-meritos').val();
		var codigoconvocatoria = <?php echo $data['convocatoria']->getIdConvocatoria(); ?>;
		var codigocandidato = form.find('#candidato-id').val();
		var codigotribunalconvocatoria = form.find('#tribunalconvocatoria-id').val();
		var codigocandidatoconvocatoria = <?php echo $data['convocatoria']->getIdConvocatoria(); ?>;
        var puntuacionMaxima = <?php echo $data['convocatoria']->getTieneExamen() ? $data['convocatoria']->getPuntuacionMaximaMeritos() : 0 ; ?>;
		var puntuacionReal = 0;
		
		var div = $(this).closest( "div" );
		var isadmin = <?php echo (current_user_can('administrator')) ? 'true' : 'false' ?>;
		var allfilled = true;

        $('.current-user-can.user-id-' + user_id ).not('.disabled').each( function( index ) {
			
			if (!$.trim( $( this ).find('textarea').val() )) {           
				allfilled = false;            
			}    
		});

		var islastcomment = ( $('.current-user-can.disabled[id-valoracion="0"]').size() == 0  && isadmin && allfilled ) ? 'true' : 'false'; 
		var entrevista = ( isadmin ) ? $('#entrevista-' + codigocandidato ).val() : 'false';
        
		var requisitos = $('.requisitos-candidato-' + codigocandidato );
		var data = [];
       
		requisitos.find('.current-user-can.user-id-' + user_id ).not('.disabled').each( function( index ) {         
			data[index] = {
			   'req': $( this ).attr('req-id'),
			   'comment': $( this ).find('textarea.comment-val').val(),
			   'puntuacion': $( this ).find('.number > div > input[type="text"]').val(),
			   'id_valoracion': $( this ).attr('id-valoracion'),
			}
		});

		requisitos.find('.current-user-can.user-id-' + user_id).not('.disabled').each( function( index ) {			
			puntuacionReal += parseInt($( this ).find('.number > div > input[type="text"]').val());
		});        
          
        if( requisitos.find('.current-user-can.disabled[id-valoracion="0"]').size() > 0 && isadmin ) {            
			div.find('.error-notice').removeClass('green').text( "<?php echo __('Error:  there\'e committee members that have not provide an evaluation yet', 'panoramic_child') ?>" ).fadeIn( 1500 ).delay( 5000 ).fadeOut( 1500 );
            $('.spinner-container' ).css('display', 'none');   
		} else if(puntuacionMaxima > 0 && puntuacionReal > puntuacionMaxima){
			div.find('.error-notice').removeClass('green').text( "<?php echo __('Error: The entered score exceeds the set maximum score of', 'panoramic_child') ?> " + puntuacionMaxima + " <?php echo __('points', 'panoramic_child') ?>").fadeIn( 1500 ).delay( 5000 ).fadeOut( 1500 );
            $('.spinner-container' ).css('display', 'none');   
			
		}else {
           
            $.ajax({
                type: "POST",
                url: "/wp-admin/admin-ajax.php",
                data: { action: 'gestionarconvocatorias', count: count_requisitos, accionConvocatoria: 'insertvalidation', codigoconvocatoria: codigoconvocatoria, codigocandidato: codigocandidato, codigotribunalconvocatoria: codigotribunalconvocatoria, data: data, fase: 'meritos', islastcomment: islastcomment, entrevista: entrevista },
                complete: function(response) {                    
                    $('.spinner-container' ).css('display', 'none');                        
                },
                success: function(response) {
                    
                    if( response.content != 'ok') {        
                        div.find('.error-notice').removeClass('green').text( response.content ).fadeIn( 1500 ).delay( 5000 ).fadeOut( 1500 );
                    } else {                        
                        div.find('.error-notice').addClass('green').text( "<?php echo __('All data has been saved successfully','panoramic_child') ?>" ).fadeIn( 1500 ).delay( 5000 ).fadeOut( 1500 );
                        
                        if ( isadmin ){
							location.reload(); 
						}    
                    }
				},
                fail: function(err) {
                    console.log("There was an error: " + err);
                }
            });       
        }        
    });

	$('.ajax-save.examen-save').click( function(e) {       
		e.preventDefault();
		$('.spinner-container' ).css('display', 'flex');

		var form = $(this).closest( "form" ); 
		var user_id = form.find('#user-id').val();
		var codigoconvocatoria = <?php echo $data['convocatoria']->getIdConvocatoria(); ?>;
		var codigocandidato = form.find('#candidato-id').val();
		var codigotribunalconvocatoria = form.find('#tribunalconvocatoria-id').val();
		var valoracionid = form.find('#valoracion-id').val();
		var puntuacionmaxima = <?php echo $data['convocatoria']->getPuntuacionMaxima() ?>;
		var puntuacioncorte = <?php echo $data['convocatoria']->getPuntuacionCorte() ?>
	   
		var requisitos = $('.requisitos-candidato-' + codigocandidato );	   
		var nota = requisitos.find('#puntuacion-'  + codigocandidato).val();
	         
		var div = $(this).closest( "div" );          
		var allfilled = 'true';

        $('#tbResultados').find('.puntuacion').each( function( index ) {
         
			if ( jQuery.trim($( this ).val()) == '' || jQuery.trim($( this ).val()) == 0 ) {           
				allfilled = 'false';            
			}    
       });
	   
		$.ajax({
			type: "POST",
			url: "/wp-admin/admin-ajax.php",
			data: { action: 'gestionarconvocatorias', accionConvocatoria: 'insertexamen', codigoconvocatoria: codigoconvocatoria, codigocandidato: codigocandidato, valoracionid: valoracionid, codigotribunalconvocatoria: codigotribunalconvocatoria, nota: nota, fase: 'examen', allfilled: allfilled, puntuacionmaxima: puntuacionmaxima, puntuacioncorte: puntuacioncorte },
			
			complete: function(response) {				
				$('.spinner-container' ).css('display', 'none');
			},            
			success: function(response) {				
				console.log( response.content );
				
				if( response.content != 'ok') {	
					div.find('.error-notice').removeClass('green').text( response.content ).fadeIn( 1500 ).delay( 5000 ).fadeOut( 1500 );
				} else {					
					div.find('.error-notice').addClass('green').text( "<?php echo __('All data has been saved successfully','panoramic_child') ?>" ).fadeIn( 1500 ).delay( 5000 ).fadeOut( 1500 );
					location.reload();					
				}
			},
			fail: function(err) {
				console.log("There was an error: " + err);
			}
		});
    });
});
</script>
<script language="javascript">
    var cdt;
    function toggle() {
        var lbl = document.getElementById('lblfiltrar');
        var divFiltrar = document.getElementById('divFiltar');

        if(divFiltrar.hidden)
        {
            divFiltrar.hidden = false;
            lbl.innerHTML = "- Filter";
        }
        else
        {
            divFiltrar.hidden = true;
            lbl.innerHTML = "+ Filter";
        }
    }

    function cambiar() {
        var lbl = document.getElementById('lblfiltrar');
        var divFiltrar = document.getElementById('divFiltar');

        if(divFiltrar.hidden)
        {
            divFiltrar.hidden = false;
            lbl.innerHTML = "- Filtrar";
        }
        else
        {
            divFiltrar.hidden = true;
            lbl.innerHTML = "+ Filtrar";
        }
    }

    var busqueda = document.getElementById('txtBuscar');

    buscaTabla = function(){
      var table = document.getElementById("tbResultados").tBodies[0];
      texto = busqueda.value.toLowerCase();
      var r=0;
      while(row = table.rows[r++])
      {
        if ( row.innerText.toLowerCase().indexOf(texto) !== -1 )
          row.style.display = null;
        else
          row.style.display = 'none';
      }
    }

    busqueda.addEventListener('keyup', buscaTabla);

    function mostrarComentarios(x) {
        cdt = x;
        var dvComentarios = document.getElementById("dvcomentarios"+x);
        if(dvComentarios.hidden)
        {
            dvComentarios.hidden = false;
        }
        else
        {
            dvComentarios.hidden = true;
        }
        
    }

    function ocultarComentarios(x) {
        document.getElementById("dvcomentarios"+x).hidden = true;
    }

    function validar(i) {
        if(document.getElementById("txtComentario"+i).value.trim().length>0)
        {
            return true;
        }
        
        return false;
    }

    function fnccomentariosubmit(i,lang) {
        if(validar(i))
        {
            if(lang=="en" || lang=="en_GB")
            {
                var msg = "Do you want to register this comment?";
            }
            else
            {
                var msg = "¿Quieres enviar este comentario?";
            }
            if(confirm(msg))
            {
                if(document.getElementById("pestana1").classList.contains("seleccionada"))
                {
                    document.getElementById("slctMeritos").value = null;
                }
                if(document.getElementById("pestana2").classList.contains("seleccionada"))
                {
                    document.getElementById("slctRequisitos").value = null;
                }
                document.getElementById("btnaccionConvocatoria").name = "accionConvocatoria";
                document.getElementById("btnaccionConvocatoria").value = "Enviar Comentario";
                document.getElementById("txtCandidato").value = i;
                document.getElementById("frmValoraciones").submit();
            }
        }
    }
</script>