public function usuarios_por_profesor($inicio = false, $fin = false, $grafica = 'usuarios_por_clases') { if (!$fin) { $fin = current_time('timestamp'); } if (!$inicio) { $inicio = current_time('timestamp') - dias(14); } $unix_time_inicio = strtotime($inicio); $unix_time_fin = strtotime($fin); $dias = ($unix_time_fin - $unix_time_inicio) / 60 / 60 / 24; $html = ''; $profesores = get_posts(array('post_type' => 'instructor', 'posts_per_page' => -1, 'fields' => 'ids')); if (!$profesores) { return; } $html .= $this->js_css(); foreach ($profesores as $profe_id) { $data = array('fechas' => array()); $profe = new Instructor($profe_id); $clases_por_fecha = $profe->get_clases($inicio, $fin, true, true); $maximo_bicis_dia = 0; if ($clases_por_fecha) { foreach ($clases_por_fecha as $fecha => $clase_array) { if (!count($clase_array)) { continue; } /*SETEAMOS EL DIA EN EL QUE TRABAJAMOS*/ if (!isset($data['fechas'][$fecha])) { $data['fechas'][$fecha] = array(); } /*RECORREMOS LAS CLASES*/ foreach ($clase_array as $clase_objeto) { $clase = new Clase($clase_objeto->ID); $bicis_totales = $clase->cantidad_bicis(2); $bicis_disponibles = $clase->cantidad_bicis(1); $bicis_tomadas = $bicis_totales - $bicis_disponibles; if ($maximo_bicis_dia < $bicis_tomadas) { $maximo_bicis_dia = $bicis_tomadas; } $data['fechas'][$fecha][] = array('hora' => date_i18n('H:i', $clase->fecha), 'asistencia' => $bicis_tomadas, 'totales' => $bicis_totales, 'id_clase' => $clase->ID, 'instructor' => get_the_title($clase->instructor)); } } $data['maximo'] = $maximo_bicis_dia; $data['instructor'] = $profe->nombre; $data['instructor_foto'] = $profe->foto; /*UNA VEZ SETEADA LA INFORMACIÓN LA IMPRIMIMOS*/ $html .= $this->crear_grafica('usuarios_por_clases', $data); $html .= $this->crear_grafica('porcentaje_por_clases', $data); } } return $html; }
public function imprimir($imprimir = true, $clase = '', $defecto = false, $front = false) { $dias = ($this->fecha_fin - $this->fecha_inicio) / dias(1); /*NUMERO DE DIAS A IMPRIMIR*/ $clases_format = array(); switch ($this->classe) { case 'ubicacion': $ubicacion = new Ubicacion($this->data_tipo); $clases_format = $ubicacion->get_clases($this->fecha_inicio, $this->fecha_fin, true); break; case 'salon': $salon = new Salon($this->data_tipo); $clases_format = $salon->get_clases(true, $this->fecha_inicio, $this->fecha_fin); break; case 'de_instructor': $instructor = new Instructor($this->data_tipo); $clases_format = $instructor->get_clases($this->fecha_inicio, $this->fecha_fin, true); if (!$clases_format) { return; } break; default: return; break; } $html = ''; $id_c = isset($this->ID) && $this->ID != false ? 'id="' . $this->ID . '"' : ''; $html .= '<div ' . $id_c . ' class="calendario calendario_' . $this->tipo . ' ' . $clase . '">'; for ($i = 0; $i < $dias; $i++) { /*IMPRIMIMOS TODOS LOS DIAS :)*/ $html .= $this->print_dia($i, $clases_format, $imprimir, $defecto, $front); } $html .= '</div>'; if ($imprimir) { echo $html; } else { return $html; } }
function reservaciones_instructor($id_instructor = false) { if (!$id_instructor) { return; } $instructor = new Instructor($id_instructor); $html = ''; //$html = header_secciones('Reservaciones'); $html .= '<div class="instructor_incoming_calendar">'; /*SETEAMOS LOS CALENDARIOS*/ $calendario = new Calendario(array('tipo' => 'back_end', 'data_tipo' => $instructor->ID, 'ID' => 'semana_1')); $calendario2 = new Calendario(array('tipo' => 'back_end', 'data_tipo' => $instructor->ID, 'ID' => 'semana_2', 'fecha_inicio' => strtotime(date_i18n('Y-m-d')) + dias(7))); $html .= '<div class="nueva_cabe_fer">'; $html .= '<span class="titulo_fer_n">Reservaciones</span>'; $html .= $calendario->imprimir_cabecera_back('semana_1', true); $html .= $calendario2->imprimir_cabecera_back('semana_1', true); $html .= '</div>'; /*CABECERA DIAS-----*/ $html .= $calendario->print_dias_reserva(); $html .= '</div>'; /*SEMANA 1*/ $html .= '<div id="semana_1" class="calendario_back_end">'; foreach ($instructor->get_clases() as $clase) { $html .= $clase->imprimir_reservaciones(); } $html .= '</div>'; /*SEMANA 2*/ $html .= '<div id="semana_2" class="calendario_back_end escondido">'; foreach ($instructor->get_clases(strtotime(date_i18n('Y-m-d')) + dias(7)) as $clase) { $html .= $clase->imprimir_reservaciones(); } $html .= '</div>'; return $html; }