NEWS
Multiselect
-
Hi,
arbeite gerade an einem Multiselect im selectDialog. Ausserdem dass auch Objekte, die keine States sind, ausgewählt werden können (wichtig für die Raumzuordnung, klick mich sonst zu tote).
Frontendseitig schaut das soweit schon ganz gut aus. Fancytree is angepasst (bzw. die Optionen). Der callback für das Selektieren (select statt activate) hinzugefügt.

Jetzt steht natürlich die größte Hürde an, das Speichern der selektierten IDs. Ein einfaches````
_data.selectedID = newIds;Wahrscheinlich kann mir nur Bluefox einen Tipp geben, wäre sehr dankbar. LG Siedi -
Wie seht dein newIds aus? ["id1", "id2", "id3"] ? `
Ja, so kann ich es formatieren (derzeit ist es noch das Object us dem Fancytree).
Und was willst du damit machen? Einen Raum zuordnen? `
Genau. `
var IDs = ['id1', 'id2']; function addToRoom(IDs, room) { // read enum main.socket.emit('getObject', 'enum.rooms.' + room, function (err, obj) { if (err) return main.showError(err); if (obj && obj.common) { obj.common.members = obj.common.members || []; var changed = false; // add all IDs, but check if yet consist for (var id = 0; id < IDs.length; id++) { if (obj.common.members.indexOf(IDs[id]) == -1) { changed = true; obj.common.members.push(IDs[id]); } } // if something changed if (changed) { // write new settings main.socket.emit('setObject', 'enum.rooms.' + room, obj, function (err) { if (err) return main.showError(err); }); } } }); } addToRoom(IDs, 'DEIN_RAUM');Es kann sein, dass du statt "main" das "that.main" benutzen solltest. Das hängt davon ab wo du es aufrufst.
-
Hi Bluefox.
danke für deinen Vorschlag. Hab das jetzt mal direkt im admin.js / selectID.js des admin Moduls implementiert und einen Pull request dafür erstellt:
https://github.com/ioBroker/ioBroker.admin/pull/46
Leider weiss ich nicht, ob und wie die selectID.js auch in anderen Modulen verwendet wird. Ggf. lässt sich der Aufruf auch parametrisieren, so dass je nach Bedarf das Multiselect zur Verfügung gestellt wird oder nicht.
Würd mich über dein Feedback freuen.
LG
Siedi
-
Super, danke!
Musste allerdings noch zwei kleine Bugfixes vornehmen, hab noch mal ein Pull request erstellt.
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden