예제 #1
0
 /** deploy a contest->journeys->series->rounds tree */
 function publicweb_deploy()
 {
     $result = array();
     // retrieve contest data
     $result['Prueba'] = $this->prueba;
     // retrieve journeys for this contest
     $result['Jornadas'] = $this->myDBObject->__select("*", "Jornadas", "(Prueba={$this->prueba['ID']}) AND (Nombre != '-- Sin asignar --') ", "", "")['rows'];
     foreach ($result['Jornadas'] as &$jornada) {
         // retrieve rounds for each series
         $jornada['Mangas'] = Jornadas::enumerateMangasByJornada($jornada['ID'])['rows'];
         // retrieve series for each journey
         $tnd = new Tandas("publicweb_deploy", $this->prueba['ID'], $jornada['ID']);
         $jornada['Tandas'] = $tnd->getTandas(0)['rows'];
         // incluye user defined rounds ( to display timetable )
         // retrieve final results index for each series
         $jornada['Series'] = Jornadas::enumerateRondasByJornada($jornada['ID'])['rows'];
     }
     return $result;
 }
예제 #2
0
 /**
  * Pagina de datos de las mangas de cada jornada
  */
 function createJornadaInfoPage($jornada)
 {
     $jdatapage = $this->myWriter->addNewSheetAndMakeItCurrent();
     $name = $this->normalizeSheetName("Info " . $jornada['Nombre']);
     $jdatapage->setName($name);
     $hdr = array(_('Type'), _('Round'), _('Dist'), _('Obst'), _('SCT'), _('MCT'), _('Vel'), _('Judge') . " 1", _('Judge') . " 2");
     $this->myWriter->addRowWithStyle($hdr, $this->rowHeaderStyle);
     // por cada manga buscamos el nombre, tipo y datos de trs/trm
     // obtenemos la lista de mangas de la jornada
     $res = Jornadas::enumerateMangasByJornada($jornada['ID'])['rows'];
     foreach ($res as $manga) {
         $results = new Resultados("excel_Clasificicaciones", $this->prueba['ID'], $manga['Manga']);
         $row = array();
         array_push($row, $manga['TipoManga']);
         // tipo de manga
         array_push($row, $manga['Nombre']);
         // nombre de la manga
         $resultados = $results->getResultados($manga['Mode']);
         $trs = $resultados['trs'];
         array_push($row, $trs['dist']);
         array_push($row, $trs['obst']);
         array_push($row, $trs['trs']);
         array_push($row, $trs['trm']);
         $vel = str_replace("≈", '± ', $trs['vel']);
         array_push($row, $vel);
         array_push($row, $this->jdbObject->selectByID($manga['Juez1'])['Nombre']);
         array_push($row, $this->jdbObject->selectByID($manga['Juez2'])['Nombre']);
         $this->myWriter->addRow($row);
     }
 }
예제 #3
0
         $result = $jornadas->update($jornadaid);
         break;
     case "select":
         $result = $jornadas->selectByPrueba();
         break;
     case "getbyid":
         $result = $jornadas->selectByID($jornadaid);
         break;
     case "enumerate":
         $result = $jornadas->searchByPrueba($allowClosed, $hideUnassigned);
         break;
     case "rounds":
         $result = $jornadas->roundsByJornada($jornadaid);
         break;
     case "enumerateMangasByJornada":
         $result = Jornadas::enumerateMangasByJornada($jornadaid);
         break;
     case "enumerateRondasByJornada":
         $result = Jornadas::enumerateRondasByJornada($jornadaid);
         break;
     case "access":
         $result = $jornadas->checkAccess($am, $jornadaid, $perms);
         break;
     default:
         throw new Exception("jornadaFunctions:: invalid operation: {$operation} provided");
 }
 if ($result === null) {
     throw new Exception($jornadas->errormsg);
 }
 if ($result === "") {
     echo json_encode(array('success' => true, 'insert_id' => 0, 'affected_rows' => 0));