automated creation of entities
This commit is contained in:
parent
87785e178d
commit
a8ec9d6d6a
3 changed files with 39 additions and 10 deletions
|
@ -41,7 +41,7 @@
|
|||
|
||||
<div id="export">
|
||||
<img alt="export" src="images/export.png" />
|
||||
<select>
|
||||
<select class="icons">
|
||||
<option value="default" style="background-image: url(images/export.png)" selected="selected">Export...</option>
|
||||
<option value="permalink" style="background-image: url(images/link.png)" >Permalink</option>
|
||||
<option value="png" style="background-image: url(images/image.png)" disabled="disabled" >Snapshot</option>
|
||||
|
@ -152,15 +152,14 @@
|
|||
<table>
|
||||
<tr class="property"><th>Eigenschaft</th><th>Wert</th></tr>
|
||||
<tr class="property"><td>Middleware:</td><td><input type="text" id="entity-create-middleware" /></td></tr>
|
||||
<tr class="property"><td>Typ:</td><td><select id="enti"name="type" size="1"></select></td></tr>
|
||||
<tr class="property"><td>Typ:</td><td><select class="icons" name="type" size="1"></select></td></tr>
|
||||
<tr class="property"><td>Öffentlich:</td><td><input type="radio" name="public" value="1"> ja <input type="radio" name="public" value="0"> nein</td></tr>
|
||||
<tr class="property"><td>Titel:</td><td><input type="text" name="title" value="Kuehlschrank" /></td></tr>
|
||||
<tr class="property"><td>Titel:</td><td><input type="text" name="title" value="Kühlschrank" /></td></tr>
|
||||
<tr class="property"><td>Auflösung:</td><td><input type="text" name="resolution" value="1000" /></td></tr>
|
||||
<tr class="property"><td>Kosten:<br /><p style="font-size: small">pro Wh</p></td><td><input type="text" name="cost" value="0.00025" /> €</td></tr>
|
||||
<tr class="property"><td>Beschreibung:</td><td><input type="text" name="description" value="Swissnox 1-phasig" /></td></tr>
|
||||
</table>
|
||||
<input type="hidden" name="operation" value="add" />
|
||||
<p><input type="submit" value="Erstellen" /></p>
|
||||
<p><input type="submit" value="Erstellen" /> <label for="entity-create-cookie">Cookie:</label> <input id="entity-create-cookie" type="checkbox" /></p>
|
||||
<p>Es wird ein neuer Kanal erstellt. Die Antwort der Middleware enthält dann die UUID.<br />
|
||||
Diese muss dann im Controller angegeben werden (z.B. AVR Net-IO).</p>
|
||||
</form>
|
||||
|
|
|
@ -127,7 +127,11 @@ vz.wui.dialogs.init = function() {
|
|||
// show available entity types
|
||||
vz.capabilities.definitions.entities.each(function(index, def) {
|
||||
$('#entity-create select[name=type]').append(
|
||||
$('<option>').html(def.translation[vz.options.language]).data('definition', def).val(def.name)
|
||||
$('<option>')
|
||||
.html(def.translation[vz.options.language])
|
||||
.data('definition', def)
|
||||
.val(def.name)
|
||||
.css('background-image', 'url(images/types/' + def.icon)
|
||||
);
|
||||
});
|
||||
$('#entity-create option[value=power]').attr('selected', 'selected');
|
||||
|
@ -187,8 +191,35 @@ vz.wui.dialogs.init = function() {
|
|||
});
|
||||
|
||||
$('#entity-create form').submit(function() {
|
||||
$(this).attr('action', $('#entity-create-middleware').val() + '/channel.json');
|
||||
$('#entity-add').dialog('close');
|
||||
var def = $('select[name=type] option:selected', this).data('definition');
|
||||
|
||||
vz.load({
|
||||
controller: (def.model == 'Volkszaehler\\Model\\Channel') ? 'channel' : 'aggregator',
|
||||
url: $('#entity-create-middleware').val(),
|
||||
data: $(this).serialize(),
|
||||
type: 'POST',
|
||||
success: function(json) {
|
||||
var entity = new Entity(json.entity);
|
||||
|
||||
try {
|
||||
entity.cookie = Boolean($('#entity-create-cookie').attr('checked'));
|
||||
entity.middleware = $('#entity-create-middleware').val();
|
||||
|
||||
vz.entities.push(entity);
|
||||
vz.entities.saveCookie();
|
||||
vz.entities.showTable();
|
||||
vz.entities.loadData().done(vz.wui.drawPlot);
|
||||
}
|
||||
catch (e) {
|
||||
vz.wui.dialogs.exception(e);
|
||||
}
|
||||
finally {
|
||||
$('#entity-add').dialog('close');
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
return false;
|
||||
});
|
||||
|
||||
// update event handler after lazy loading
|
||||
|
|
|
@ -109,8 +109,7 @@ tr.entity td {
|
|||
float: right;
|
||||
}
|
||||
|
||||
#export option {
|
||||
font-size: 16px;
|
||||
select.icons option {
|
||||
padding-left: 20px;
|
||||
background-repeat: no-repeat;
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue