JSON-Forms

This commit is contained in:
Paminger
2016-06-19 19:41:10 +02:00
parent 83540e068a
commit 377b1ecdd0
11 changed files with 249 additions and 10 deletions
+17 -3
View File
@@ -1,18 +1,32 @@
<?php
$this->load->view('templates/header', array('title' => 'TemplateEdit'));
$this->load->view('templates/header', array('title' => 'TemplateEdit', 'jsoneditor' => true));
?>
<div class="row">
<div class="span4">
<h2>Vorlage: <?php echo $vorlage->vorlage_kurzbz; ?></h2>
<form method="post" action="../save">
Bezeichnung: <input type="text" name="bezeichnung" value="<?php echo $vorlage->bezeichnung; ?>" />
Anmerkung: <input type="text" name="anmerkung" value="<?php echo $vorlage->anmerkung; ?>" />
Anmerkung: <input type="text" name="anmerkung" value="<?php echo $vorlage->anmerkung; ?>" /><br/>
MimeType:<?php echo $this->templatelib->widget("mimetype_widget", array('mimetype' => $vorlage->mimetype)); ?>
Attribute: <?php echo $this->templatelib->widget("jsoneditor_widget", array('json' => $vorlage->attribute)); ?>
<input type="hidden" name="attribute" id="attribute" value="<?=$vorlage->attribute?>" />
<input type="hidden" name="vorlage_kurzbz" value="<?php echo $vorlage->vorlage_kurzbz; ?>" />
<button type="submit">Save</button>
<button type="submit" onclick="getJSON(this.form);">Save</button>
</form>
</div>
</div>
<script type="text/javascript" >
// get json
function getJSON(form)
{
form.elements["attribute"].value = JSON.stringify(jsoneditor.get(), null, 2);
//alert(form.elements["attribute"].value);
}
</script>
</body>
</html>
+14 -3
View File
@@ -1,5 +1,5 @@
<?php
$this->load->view('templates/header', array('title' => 'TemplateEdit', 'tinymce' => true));
$this->load->view('templates/header', array('title' => 'TemplateEdit', 'tinymce' => true, 'jsonforms' => true));
?>
<div class="row">
@@ -18,13 +18,24 @@ StudiengangKZ: <?=$studiengang_kz?>
?>
<button type="submit">Save</button>
</form>
<hr/><h2>Preview-Data</h2>
<form method="post" action="../preview/<?=$vorlagestudiengang_id?>" target="TemplatePreview">
<button type="submit">Preview</button>
<?php echo $this->templatelib->widget("jsonforms_widget", array('id' => 'dataform')); ?>
<input type="hidden" name="formdata" id="formdata" value="" />
<button type="submit" onclick="getFormdata(this.form);">Preview</button>
</form>
</div>
</div>
<script type="text/javascript" >
// get json
function getFormdata(form)
{
form.elements["formdata"].value = JSON.stringify(bf.getData(), null, 2);
//alert(form.elements["formdata"].value);
}
</script>
<iframe name="TemplatePreview" width="100%" src="../preview/<?=$vorlagestudiengang_id?>"/>
</body>
</html>
+11
View File
@@ -8,6 +8,8 @@ isset($title) ? $title = 'VileSci - '.$title : $title = 'VileSci';
!isset($widgets) ? $widgets = 'zebra' : $widgets = $widgets;
!isset($headers) ? $headers = '' : $headers = $headers;
!isset($tinymce) ? $tinymce = false : $tinymce = $tinymce;
!isset($jsoneditor) ? $jsoneditor = false : $jsoneditor = $jsoneditor;
!isset($jsonforms) ? $jsonforms = false : $jsonforms = $jsonforms;
if ($tablesort)
$jquery = true;
@@ -46,6 +48,15 @@ if ($tablesort)
<script type="text/javascript" src="<?php echo base_url('vendor/tinymce/tinymce/tinymce.min.js');?>"></script>
<?php endif ?>
<?php if($jsoneditor) : ?>
<link href="<?php echo base_url('vendor/jsoneditor/dist/jsoneditor.css');?>" rel="stylesheet" type="text/css">
<script src="<?php echo base_url('vendor/jsoneditor/dist/jsoneditor.js');?>"></script>
<?php endif ?>
<?php if($jsonforms) : ?>
<link rel="stylesheet" href="<?php echo base_url('vendor/json-forms/dist/css/brutusin-json-forms.min.css'); ?>"/>
<script src="<?php echo base_url('vendor/json-forms/dist/js/brutusin-json-forms.min.js'); ?>"></script>
<?php endif ?>
</head>
<body>
+21
View File
@@ -0,0 +1,21 @@
<div id="<?=$id?>" style="<?=$style?>"></div>
<script>
var container = document.getElementById('<?=$id?>');
var options = {
mode: '<?=$mode?>',
modes: [<?=$modes?>],
onError: function (err) {
alert(err.toString());
},
onModeChange: function (newMode, oldMode) {
console.log('Mode switched from', oldMode, 'to', newMode);
}
};
var json = <?=$json?>;
var <?=$vareditor?> = new JSONEditor(container, options, json);
</script>
+10
View File
@@ -0,0 +1,10 @@
<div id="<?=$id?>" style="<?=$style?>"></div>
<script language="Javascript" type="text/javascript">
var container = document.getElementById('<?=$id?>');
var schema = <?=$schema?>;
var BrutusinForms = brutusin["json-forms"];
var <?=$objectname?> = BrutusinForms.create(schema);
<?=$objectname?>.render(container);
</script>
+21
View File
@@ -0,0 +1,21 @@
<div id="<?=$id?>" style="<?=$style?>"></div>
<script>
var container = document.getElementById('<?=$id?>');
var options = {
mode: '<?=$mode?>',
modes: [<?=$modes?>],
onError: function (err) {
alert(err.toString());
},
onModeChange: function (newMode, oldMode) {
console.log('Mode switched from', oldMode, 'to', newMode);
}
};
var json = <?=$json?>;
var <?=$vareditor?> = new JSONEditor(container, options, json);
</script>