/**
  * Constructor
  * @param {integer} $prueba Prueba ID
  * @param {integer} $jornada Jormada ID
  * @param {integer} $manga Manga ID
  * @throws Exception
  */
 function __construct($prueba, $jornada, $manga)
 {
     parent::__construct('Portrait', "print_entradaDeDatosEquipos4", $prueba, $jornada);
     if ($prueba <= 0 || $jornada <= 0) {
         $this->errormsg = "print_datosEquipos4: either prueba or jornada data are invalid";
         throw new Exception($this->errormsg);
     }
     // comprobamos que estamos en una jornada por equipos
     $flag = intval($this->jornada->Equipos3) + intval($this->jornada->Equipos4);
     if ($flag == 0) {
         $this->errormsg = "print_datosEquipos4: Jornada {$jornada} has no Team competition declared";
         throw new Exception($this->errormsg);
     }
     // guardamos info de la manga
     $this->manga = $this->myDBObject->__getObject("Mangas", $manga);
     // Datos del orden de salida de equipos
     $m = new OrdenSalida("ordenSalidaEquipos4", $manga);
     $teams = $m->getTeams();
     $this->equipos = $teams['rows'];
     // anyadimos el array de perros del equipo
     foreach ($this->equipos as &$equipo) {
         $equipo['Perros'] = array();
     }
     $r = $this->myDBObject->__select("*", "Resultados", "(Manga={$manga})", "", "");
     foreach ($r['rows'] as $perro) {
         foreach ($this->equipos as &$equipo) {
             if ($perro['Equipo'] == $equipo['ID']) {
                 array_push($equipo['Perros'], $perro);
                 break;
             }
         }
     }
 }
         $am->access(PERMS_OPERATOR);
         $result = $os->random($mode);
         break;
     case "reverse":
         $am->access(PERMS_OPERATOR);
         $result = $os->reverse($mode);
         break;
     case "sameorder":
         $am->access(PERMS_OPERATOR);
         $result = $os->sameorder($mode);
         break;
     case "getData":
         $result = $os->getData($tv);
         break;
     case "getTeams":
         $result = $os->getTeams();
         break;
     case "getDataByTeam":
         $result = $os->getDataByTeam($team);
         break;
     case "dnd":
         $am->access(PERMS_ASSISTANT);
         $result = $os->dragAndDrop($f, $t, $w);
         break;
     case "dndTeams":
         $am->access(PERMS_ASSISTANT);
         $result = $os->dragAndDropEquipos($f, $t, $w);
         break;
 }
 // result may contain null (error),  "" success, or (any) data
 if ($result === null) {