First preview completed

This commit is contained in:
Paolo
2017-11-22 15:33:44 +01:00
parent ee3998f62e
commit c105363fd0
5 changed files with 124 additions and 17 deletions
+5 -4
View File
@@ -22,10 +22,11 @@ class Test extends VileSci_Controller
'app' => 'OpenProject',
'datasetName' => 'Arbeitspakete',
'query' => '
SELECT p.person_id AS PersonId,
p.nachname AS Nachname,
p.vorname AS Vorname,
k.kontakt AS Email
SELECT p.person_id AS "PersonId",
p.nachname AS "Nachname",
p.vorname AS "Vorname",
k.kontakt AS "Email",
p.aktiv AS "Aktiv"
FROM public.tbl_person p INNER JOIN public.tbl_kontakt k USING(person_id)
WHERE p.aktiv = TRUE
AND p.person_id = k.person_id
@@ -0,0 +1,15 @@
<div>
<?php $this->view('widgets/filter/selectFields', array('listFields' => $listFields)); ?>
</div>
<br>
<div>
<?php $this->view('widgets/filter/selectFilters', array('metaData' => $metaData)); ?>
</div>
<br>
<div>
<?php $this->view('widgets/filter/tableDataset', array('dataset' => $dataset)); ?>
</div>
@@ -2,7 +2,46 @@
<?php
foreach ($metaData as $key => $value)
{
echo $value->name.' - '.$value->type.'<br>';
echo '<div>';
echo $value->name;
if ($value->type == 'int4')
{
?>
<select>
<option value="">=</option>
<option value="">!=</option>
<option value="">>=</option>
<option value=""><=</option>
</select>
<input type="number" value="" name="">
<input type="button" value="X" name="">
<?php
}
elseif ($value->type == 'varchar')
{
?>
<select>
<option value="">contains</option>
<option value="">does not contain</option>
</select>
<input type="text" value="" name="">
<input type="button" value="X" name="">
<?php
}
elseif ($value->type == 'bool')
{
?>
<select>
<option value="">is true</option>
<option value="">is false</option>
</select>
<input type="button" value="X" name="">
<?php
}
echo '</div>';
}
?>
</div>
@@ -1,9 +1,50 @@
<script type="text/javascript" src="../../vendor/jquery/jqueryV1/jquery-1.12.4.min.js"></script>
<script type="text/javascript" src="../../include/js/jquery.ui.datepicker.translation.js"></script>
<script type="text/javascript" src="../../vendor/jquery/sizzle/sizzle.js"></script>
<script type="text/javascript" src="../../vendor/christianbach/tablesorter/jquery.tablesorter.min.js"></script>
<link rel="stylesheet" href="../../skin/tablesort.css" type="text/css"/>
<link href="../../skin/jquery-ui-1.9.2.custom.min.css" rel="stylesheet" type="text/css">
<script type="text/javascript" src="../../vendor/components/jqueryui/jquery-ui.min.js"></script>
<script>
$(document).ready(function() {
$("#t0").tablesorter({
widgets: ["zebra"]
});
});
</script>
<div>
<?php
$result = $dataset->retval;
foreach ($result as $key => $value)
{
var_dump($value);
}
?>
<table class="tablesorter" id="t0">
<thead>
<tr>
<th title="PersonId">PersonId</th>
<th title="Nachname">Nachname</th>
<th title="Vorname">Vorname</th>
<th title="Email">Email</th>
<th title="Aktiv">Aktiv</th>
</tr>
</thead>
<tbody>
<?php
$result = $dataset->retval;
foreach ($result as $key => $value)
{
?>
<tr>
<td><?php echo $value->PersonId; ?></td>
<td><?php echo $value->Nachname; ?></td>
<td><?php echo $value->Vorname; ?></td>
<td><?php echo $value->Email; ?></td>
<td><?php echo $value->Aktiv === true ? 'True' : 'False'; ?></td>
</tr>
<?php
}
?>
</tbody>
</table>
</div>
+16 -5
View File
@@ -28,11 +28,22 @@ class FilterWidget extends Widget
$dataset = $this->FiltersModel->execReadOnlyQuery($widgetData['query']);
$this->loadViewSelectFields($this->FiltersModel->getExecutedQueryListFields());
$listFields = $this->FiltersModel->getExecutedQueryListFields();
$this->loadViewSelectFilters($this->FiltersModel->getExecutedQueryMetaData());
$metaData = $this->FiltersModel->getExecutedQueryMetaData();
$this->loadViewTableDataset($dataset);
$this->loadViewFilters($listFields, $metaData, $dataset);
}
/**
*
*/
private function loadViewFilters($listFields, $metaData, $dataset)
{
$this->view(
'widgets/filter/filter',
array('listFields' => $listFields, 'metaData' => $metaData, 'dataset' => $dataset)
);
}
/**
@@ -54,8 +65,8 @@ class FilterWidget extends Widget
/**
*
*/
private function loadViewTableDataset($result)
private function loadViewTableDataset($dataset)
{
$this->view('widgets/filter/tableDataset', array('dataset' => $result));
$this->view('widgets/filter/tableDataset', array('dataset' => $dataset));
}
}