<?php 
session_start();
$pTipoUtilizador = $_SESSION['tipoUtilizador'];
if ($pTipoUtilizador=="anonymous") // separa por tipo de utilizador
  require('headersubUsers01.inc');
 else
   require('headersubAdmins01.inc');
?>



<center>
<h3 class="maketitle">Geometry Provers, Interaction with the Drawers</h3>
</center>



<?php
require('loginsub.php');
?>

<?php


$argumento = $_GET['argumento'];
$insercao  = $_Get['insercao']; // primeira vez, ou actualização

// Testa se é uma nova sessão ou se já estamos a re-introduzir código
if (!isset($argumento)) {
  // pode ser a primeira de todas ou então a escolha de um resultado da BD
  $insercao=1; // verdade
  $pFigIdTeoIdName = $_POST['FigIdTeoIdName'];

  if (isset($pFigIdTeoIdName)) {
    preg_match("§([0-9]+) -- ([A-Za-z0-9 _.]+) -- ([A-Za-z0-9 _.]+) -- (GEO[0-9]+) -- ([A-Za-z0-9 _.]+)§",$pFigIdTeoIdName,$matches);

    $pFigureId = $matches[1];

    //$pUserName = $matches[2];
    //$pUserEmail = $matches[3];


    // get the figure's code
    $sqlFigCode = "SELECT code,drawerId
                     FROM figures
                    WHERE figureId='$pFigureId'";
    $resultadoFigCode = mysql_query($sqlFigCode,$ligacao);
    $linhaFigCode = mysql_fetch_assoc($resultadoFigCode);
    $pCode      = trim($linhaFigCode['code']);
    $pDrwId     = trim($linhaFigCode['drawerId']);
    echo $pCode."-------------<br>";
    $pCode      = $linhaFigCode['code'];
    echo $pCode."-------------";
    $pCode="point A 60 10 point B 30 90 point C 80 90 point P 55 75 line a B C line b A C line c A B line pa P A line pb P B line pc P C intersec D a pa";
    echo "<script type='text/javascript'>"; // inicializa o editor com
					    // o valor do código
					    // previamente
					    // seleccionado
    echo "function init(){editor.setContents(\"$pCode\");}";
    echo "</script>";
  }
 }
 else {
   $insercao=0; // falso

   // cria uma pesquisa
   $sqlDrwCodeTmp = "SELECT code,drawerId
                       FROM codeTmp
                      WHERE codeTmpId ='$argumento'";

   $resultadoDrwCodeTmp = mysql_query($sqlDrwCodeTmp,$ligacao);
   //$ncamposDrwCodeTmp = mysql_num_fields($resultadoDrwCodeTmp);
   $linhaDrwCodeTmp = mysql_fetch_assoc($resultadoDrwCodeTmp);

   $pDrwId     = trim($linhaDrwCodeTmp['drawerId']);
   $pCode      = trim($linhaDrwCodeTmp['code']);
   $pCodeTmpId = $argumento;
   echo "<script type='text/javascript'>"; // inicializa o editor com
					    // o valor do código
					    // previamente
					    // seleccionado
   echo "function init(){editor.setContents($pCode);}";
   echo "</script>";
 }

// cria uma pesquisa - para a lista de drawers
$sql = "SELECT drawerId,name,version
          FROM drawers";

$resultado = mysql_query($sql,$ligacao);

$ncampos =mysql_num_fields($resultado);


$linha = mysql_fetch_assoc($resultado);

// uma forma bacoca de retirar o primeiro valor "No drawer selected"
$pDrawerId       = $linha['drawerId'];
$pName           = $linha['name'];
$pVersion        = $linha['version'];


echo "<!-- ficha -->";
echo "<table width='100%' bgcolor='white' cellpadding='4' cellspacing='4'>";
echo "<tr>";
echo "<td width='100%' colspan='8' align='center'>Geometric Drawer Workbench</td>";
echo "</tr>";
if (1) {
  echo "<form action='insertCode01.php' method='post'>";
  echo "<tr>";
  //  echo "<td width='25%' colspan='2'>&nbsp;</td>";
  echo "<td width='25%' colspan='2' align='right'><span class='ficha'>Figures Listing</span></td>";
  // select a figure from the database
  $sqlListaBD = "SELECT figureId,teoId,drawerId
                   FROM figures
               ORDER BY teoId,figureId";
  $resultadoListaBD = mysql_query($sqlListaBD,$ligacao);
  echo "<td width='50%' colspan='4'><span class='entrada'><SELECT NAME='FigIdTeoIdName'>";
  //   $pFigureIdAux=0;
  //   $pDrwName    ='None';
  //   $pDrwVersion =0;
  //   $pTeoIdAux   =0;
  //   $pTeoNameAux ='New Construction';
  //  print "<option selected>$pFigureIdAux -- $pDrwName -- $pDrwVersion -- $pTeoIdAux -- $pTeoNameAux</option>\n";   
  while ($linhaListaBD = mysql_fetch_assoc($resultadoListaBD)){
    $pFigureIdAux = trim($linhaListaBD['figureId']);
    $pTeoIdAux    = trim($linhaListaBD['teoId']);
    $pDrawerIdAux = trim($linhaListaBD['drawerId']);
    // Obtém a informação acerca do Teorema e do Desenhador
    $sqlThm = "SELECT teoName
                 FROM theorems
                WHERE teoId='$pTeoIdAux'";
    $resultadoThm = mysql_query($sqlThm,$ligacao);
    $linhaThm = mysql_fetch_assoc($resultadoThm);
    $pTeoNameAux = trim($linhaThm['teoName']);    
    $sqlDrw = "SELECT name,version
                 FROM drawers
                WHERE drawerId=$pDrawerIdAux";
    $resultadoDrw = mysql_query($sqlDrw,$ligacao);
    $linhaDrw = mysql_fetch_assoc($resultadoDrw);
    $pDrwName = trim($linhaDrw['name']);
    $pDrwVersion = trim($linhaDrw['version']);

    if ($pFigureId==$pFigureIdAux)
      print "<option selected>$pFigureIdAux -- $pDrwName -- $pDrwVersion -- $pTeoIdAux -- $pTeoNameAux</option>\n"; 
    else
      print "<option>$pFigureIdAux -- $pDrwName -- $pDrwVersion -- $pTeoIdAux -- $pTeoNameAux</option>\n"; 
  };
  echo "</SELECT>";
  echo "</td>";
  echo "<td width='25%' colspan='2' align='center'><input type='submit' value='&nbsp;&nbsp;&nbsp;choose a result&nbsp;&nbsp;&nbsp;'></td>";
  echo "</tr>\n";
  echo "</form>";
 }
echo "<form enctype='multipart/form-data' action='testeCode.php' method='post'>";
echo "<tr>";
echo "<td width='12.5%' colspan='1'><span class='ficha'>Drawer</span></td>";
// select a Drawer form a list of Drawers
$sql_drawer_idnameversion = "SELECT drawerId,name,version
                               FROM drawers
                              WHERE NOT(name='No drawer selected')
                           ORDER BY drawerId";
$resultado_drawer_idnameversion = mysql_query($sql_drawer_idnameversion,$ligacao);
echo "<td width='87.5%' colspan='7'><span class='entrada'><SELECT NAME='DrwIdNameVersion'>";
while ($linha = mysql_fetch_assoc($resultado_drawer_idnameversion)){
  $pDrawerId=trim($linha['drawerId']);
  $pDrawerName=trim($linha['name']);
  $pDrawerVersion=trim($linha['version']);
  if ($pDrwId==$pDrawerId)
    print "<option selected>$pDrawerId -- $pDrawerName -- $pDrawerVersion</option>\n";
  else
    print "<option>$pDrawerId -- $pDrawerName -- $pDrawerVersion</option>\n"; 
 };
echo "</SELECT>";
echo "</td>";
echo "</tr>";
echo "<tr>";
echo "<td width='12.5%' colspan='1'><span class='ficha'>Code</span></td>";
//echo "<td width='37.5%' colspan='3'><TEXTAREA NAME='DrawerCode' ROWS='20' COLS='50'>$pCode</TEXTAREA></td>";
//
// A inclusão do editor tem de ser feita com o iframe (included frame)
// :( isto dado que a numeração das linhas é feita através de uma
// lista enumerada de elementos o que (parece) só funciona numa página
// só para o efeito
//
echo "<td width='37.5%' colspan='3'><iframe name='editor' src='editor.html' style='width: 100%; height: 100%;'></iframe></td>";
//echo "<iframe name='editor' src='editor.html' style='width: 50%; height: 70%;'></iframe>";
echo "<td width='50%' colspan='4' align='center'><img src='view_image.php?argumento=$pCodeTmpId' alt='figure'></td>";
echo "</tr>";
echo "<tr>";
echo "<input type='hidden' name='insercao' value=$insercao></td>";
echo "<input type='hidden' name='CodeTmpId' value=$pCodeTmpId></td>";
echo "<input type='hidden' name='myfile'></td>";
echo "<td><input type=\"button\" name=\"clear\" value=\"Clear\" onClick=\"editor.setContents('');\"></td>";
echo "<td><input type=\"button\" name=\"save\" value=\"Save to Textarea\" onClick=\"myfile.value = editor.getContents();\"></td>";
echo "<td><input type=\"button\" name=\"load\" value=\"Load from Textarea\" onClick=\"editor.setContents(myfile.value);\"></td>";  
echo "<td width='100%' colspan='8' align='center'><input type='submit' value='&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(re)evaluate the code&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'></td>";
echo "</tr>  ";
echo "</form>";
echo "</table>";


?>

<?php
  require('footer.inc');
?>
