'myticket.php','name' => get_lang('MisTickets')); $interbreadcrumb[]= array ('url' =>'#','name' => get_lang('TicketDetail')); $htmlHeadXtra[]=' '; $htmlHeadXtra[] = ' '; $user_id = api_get_user_id(); $isAdmin = api_is_platform_admin(); $ticket_id = $_GET['ticket_id']; $ticket = TicketManager::get_ticket_detail_by_id($ticket_id,$user_id); if(!isset($ticket['ticket'])){ api_not_allowed(); } if(!isset($_GET['ticket_id'])){ header('location:myticket.php'); } if(isset($_POST['respuesta'])){ if($user_id == $ticket['ticket']['request_user']){ $respuesta = ($_POST['respuesta']=='si')?true:(($_POST['respuesta']=='no'?false:null)); if ($respuesta && $ticket['ticket']['status_id'] == 'XCF' ){ TicketManager::close_ticket($_GET['ticket_id'], $user_id); $ticket['ticket']['status_id'] = 'CLS'; $ticket['ticket']['status'] = 'CERRADO'; }else if(!is_null($respuesta) && $ticket['ticket']['status_id'] == 'XCF'){ TicketManager::update_ticket_status('PND',$_GET['ticket_id'], $user_id); $ticket['ticket']['status_id'] = 'PND'; $ticket['ticket']['status'] = 'PENDIENTE'; } } } if (isset($_REQUEST['action'])){ $action = $_REQUEST['action']; switch ($action){ case 'assign': if(api_is_platform_admin() && isset($_GET['ticket_id']) ) TicketManager::assign_ticket_user($_GET['ticket_id'], $_POST['admins']); $ticket['ticket']['assigned_last_user'] = $_POST['admins']; break; case 'unassign': if(api_is_platform_admin() && isset($_GET['ticket_id']) ) TicketManager::assign_ticket_user($_GET['ticket_id'], 0); $ticket['ticket']['assigned_last_user'] = 0; break; default: break; } } if(!isset($_POST['compose'])){ if(isset($_POST['close'])){ $_GET['ticket_id'] = $_POST['ticket_id'] ; TicketManager::close_ticket($_GET['ticket_id'], $user_id); $ticket['ticket']['status_id'] = 'CLS'; $ticket['ticket']['status'] = 'CERRADO'; } $ticket['ticket']['request_user'] = intval($ticket['ticket']['request_user']); if($ticket['ticket']['request_user'] == $user_id || intval($ticket['ticket']['assigned_last_user']) == $user_id ){ TicketManager::update_message_status($ticket_id, $ticket['ticket']['request_user']); } Display::display_header(); $form_close_ticket = ""; if($ticket['ticket']['status_id'] != 'REE' AND $ticket['ticket']['status_id'] != 'CLS' AND $isAdmin ){ if(intval($ticket['ticket']['assigned_last_user']) == $user_id){ if($ticket['ticket']['status_id']!='CLS'){ $form_close_ticket.= '
'; $form_close_ticket.= ' '; $form_close_ticket.= '
'; } } } $titulo = '

Ticket #'.$ticket['ticket']['ticket_code'].'

'; if($isAdmin && $ticket['ticket']['status_id'] != 'CLS' && $ticket['ticket']['status_id'] != 'REE'){ if( $ticket['ticket']['assigned_last_user'] != 0 && $ticket['ticket']['assigned_last_user'] == $user_id ){ $img_assing = ''; }else{ $img_assing .= ''; } } $negrita = ($ticket['ticket']['status_id'] == 'CLS')?'style = "font-weight: bold;"':''; $cadena = ($ticket['ticket']['status_id'] != 'CLS')?"sas":""; echo '
'; if($ticket['ticket']['course_url']!=null){ echo ''; } if ($isAdmin){ echo ''; } //select admins $select_admins .= '"; echo '
'; echo '
Responsable:
'.$select_admins.'
'; echo '
'; echo '
'.$titulo.' '.$img_assing.' '.$form_close_ticket.'

Enviado : '.$ticket['ticket']['start_date'].'

Ultima Respuesta : '.$ticket['ticket']['sys_lastedit_datetime'].'

Asunto : '.$ticket['messages'][0]['subject'].'

Estado : '.$ticket['ticket']['status'].'

Categoria : '.$ticket['ticket']['name'].'

Prioridad :'.$ticket['ticket']['priority'].'

Curso:

'.$ticket['ticket']['course_url'].'

Usuario:

'.$user_info = $ticket['ticket']['user_url'].' ('.$ticket['usuario']['username'].')
'; $messages = $ticket['messages']; foreach($messages as $message){ $class ="messageuser"; if($message['admin']){ $class ="messagesupport"; if($isAdmin)$message['message'].="
Atendido por: ".$message['user_created']." - ".api_convert_and_format_date(api_get_local_time($message['sys_insert_datetime']), DATE_TIME_FORMAT_LONG,_api_get_timezone()).""; }else{ $message['message'].="Enviado: ".api_convert_and_format_date(api_get_local_time($message['sys_insert_datetime']), DATE_TIME_FORMAT_LONG,_api_get_timezone()).""; } echo '
Asunto: '.$message['subject'].'
Mensaje:'.$message['message'].'
'; if(isset($message['atachments'])){ foreach($message['atachments'] as $attach){ echo $attach['attachment_link']; } } echo '
'; } $asunto = "RE: ".$message['subject']; $user_admin = api_is_platform_admin(); if($ticket['ticket']['status_id'] != 'REE' AND $ticket['ticket']['status_id'] != 'CLS' ){ if(!$isAdmin && $ticket['ticket']['status_id'] != 'XCF'){ show_form_send_message(); }else{ if(intval($ticket['ticket']['assigned_last_user']) == $user_id){ show_form_send_message(); $cheked =""; } } } }else{ $ticket_id = $_POST['ticket_id']; $content = $_POST['content']; $subject = $_POST['subject']; $mensajeconfirmacion = isset($_POST['confirmacion'])?true:false ; $file_attachments = $_FILES; $user_id = api_get_user_id(); TicketManager::insert_message($ticket_id, $subject, $content, $file_attachments, $user_id,'NOL',$mensajeconfirmacion); header("location:".api_get_self()."?ticket_id=".$ticket_id); } function show_form_send_message(){ global $isAdmin; global $ticket; global $asunto; echo '
'; echo '
Asunto:
'; echo '
mensaje
'; echo ''; echo '
'.get_lang('FilesAttachment').'
'; echo '
'.get_lang('AddOneMoreFile').'  ('.sprintf(get_lang('MaximunFileSizeX'),format_file_size(api_get_setting('message_max_upload_filesize'))).')
'; echo '
'.($isAdmin?'      Solicitar confirmación':""). '
'; echo '
'; } Display::display_footer(); ?>